Сбои, ошибки базы и неверные цифры в 1С:Бухгалтерии 8.3: что проверять и как чинить
Содержание
Чтобы исправить ошибку в 1С:Бухгалтерии 8.3, сначала определите её тип: сбой платформы, повреждение базы, ошибка сервера СУБД, сбой обновления или ошибка учёта. От этого зависит инструмент: очистка кэша, Конфигуратор → Администрирование → Тестирование и исправление, утилита chdbfl.exe, проверка сервера или перепроведение документов
. Перед любым исправлением базы сделайте резервную копию.
Типичная картина: утром бухгалтер открывает базу и видит Ошибка формата потока, а вчера всё работало. Или база открывается, но баланс в ОСВ не сходится после закрытия месяца. Это разные ошибки, и лечатся они по-разному. Ниже — порядок, который применяют специалисты по сопровождению.
Откуда брать сведения об ошибке
Без точного текста ошибки чинить вслепую — путь к лишним действиям. Соберите факты в таком порядке.
Текст сообщения и подробности
- 📸 Сделайте снимок окна ошибки целиком.
- 🔍 Если в окне есть кнопка или ссылка «Подробнее», раскройте её — там стек вызовов и имя модуля.
- 🕐 Запишите время, пользователя и действие: открытие базы, проведение документа, формирование отчёта.
Сообщение вида {ОбщийМодуль.ИмяМодуля.Модуль(123)} указывает на конкретное место кода конфигурации. Такая ошибка — дело разработчика или обновления, а не повреждения базы.
Журнал регистрации
Журнал есть в каждой базе. В пользовательском режиме он находится в Администрирование → Обслуживание → Журнал регистрации, в Конфигураторе — Администрирование → Журнал регистрации.
- Отберите события с уровнем «Ошибка» за нужный период.
- Посмотрите, у одного пользователя ошибка или у всех.
- Сравните время ошибки со временем обновления, завершения работы сервера, загрузки данных.
Технологический журнал
Если ошибка «плавающая» или приводит к аварийному завершению клиента, включите технологический журнал. Он настраивается файлом logcfg.xml в каталоге conf платформы, например C:\Program Files\1cv8\conf\.
<?xml version="1.0" encoding="UTF-8"?>
<config xmlns="http://v8.1c.ru/v8/tech-log">
<log location="C:\1C_TechLog" history="24">
<event>
<eq property="name" value="EXCP"/>
</event>
<property name="all"/>
</log>
</config>
Журнал пишет исключения (событие EXCP) в каталог C:\1C_TechLog и хранит 24 часа.
Технологический журнал быстро растёт. Включайте его на время поиска причины и удаляйте файл logcfg.xml после диагностики.
Частые ошибки 1С:Бухгалтерии и что за ними стоит
Большая часть обращений укладывается в несколько групп. Определите свою по тексту сообщения.
Отдельная группа — ошибки учёта. Программа работает, но в отчётах неверные суммы, красное сальдо или минусы по складу. Их разбираем ниже, в разделе про документы.
Исправление ошибок в файловой базе
Файловая база хранится в одном файле 1Cv8.1CD. Её повреждают внезапное выключение компьютера, обрыв сетевой папки и антивирус, который проверяет файл во время записи.
Прежде чем что-либо исправлять, скопируйте каталог базы целиком в другое место. Исправление может удалить повреждённые записи безвозвратно.
Шаг 1. Очистка кэша
Если ошибка возникает только на одном компьютере, сначала очистите локальный кэш.
- Закройте 1С на этом компьютере.
- Откройте папки
%APPDATA%\1C\1cv8\и%LOCALAPPDATA%\1C\1cv8\. - Удалите папки с длинными именами вида GUID. Файлы списка баз (
ibases.v8iхранится в%APPDATA%\1C\1CEStart\) не трогайте.
Другой способ — добавить параметр /ClearCache в дополнительные параметры запуска базы в окне выбора информационной базы (кнопка Изменить, последний шаг).
Шаг 2. Тестирование и исправление в Конфигураторе
Для этой операции нужен монопольный доступ: все пользователи должны выйти из базы.
- Запустите базу в режиме
Конфигуратор. - Откройте
Администрирование → Тестирование и исправление. - Отметьте проверки (см. таблицу).
- Выберите режим «Тестирование и исправление», а при ссылках на несуществующие объекты — «Создавать объекты» или «Очищать ссылки».
- Нажмите
Выполнитьи дождитесь протокола.
| Флажок | Что делает | Когда нужен |
|---|---|---|
| Реиндексация таблиц | Перестраивает индексы | Медленные отборы, ошибки поиска |
| Проверка логической целостности | Ищет нарушенную структуру данных | Почти всегда |
| Проверка ссылочной целостности | Находит «битые» ссылки | После сбоев, ручного удаления объектов |
| Пересчёт итогов | Пересчитывает итоги регистров | Расхождения в остатках |
| Сжатие таблиц | Уменьшает размер файла | После удаления больших объёмов |
| Реструктуризация таблиц | Перестраивает таблицы заново | Долго; только при явных ошибках структуры |
Если ссылок на несуществующие объекты много, выберите «Создавать объекты». Так проще найти, кто и что удалил, а созданные «заглушки» потом удалить вручную.
Шаг 3. Утилита chdbfl.exe
Когда база не открывается даже в Конфигураторе, используйте утилиту chdbfl.exe. Она лежит в каталоге bin установленной платформы: C:\Program Files\1cv8\8.3.xx.xxxx\bin\.
- Убедитесь, что базу никто не открыл.
- Запустите
chdbfl.exe, укажите путь к файлу1Cv8.1CD. - Поставьте флажок «Исправлять обнаруженные ошибки».
- Нажмите
Выполнить.
После утилиты всё равно выполните тестирование и исправление в Конфигураторе: chdbfl.exe чинит физическую структуру файла, но не логику данных.
Сбои клиент-серверной базы на SQL-сервере
В клиент-серверном варианте данные хранит СУБД (MS SQL Server или PostgreSQL). Ошибки здесь начинаются со слов Ошибка СУБД: и содержат текст самой СУБД.
| Сообщение (фрагмент) | Причина | Что делать |
|---|---|---|
The transaction log for database ... is full | Переполнен журнал транзакций | Сделать резервную копию журнала или сменить модель восстановления, освободить место на диске |
Could not allocate space / нет места | Закончилось место на диске с базой или tempdb | Освободить диск, проверить автоприращение файлов |
Превышено максимальное время ожидания предоставления блокировки | Конфликт блокировок | Найти долгую транзакцию в консоли кластера |
deadlock / взаимоблокировка | Встречные блокировки двух сеансов | Повторить операцию; при регулярности — разбирать технологическим журналом |
| Ошибка соединения с сервером 1С:Предприятия | Не работает служба агента или сеть | Проверить службу, порт 1540, брандмауэр |
Проверка целостности на стороне СУБД
Для MS SQL Server целостность проверяет команда:
DBCC CHECKDB ('ИмяБазы') WITH NO_INFOMSGS;
Если команда сообщает об ошибках, сначала восстановите базу из последней исправной копии. Режимы исправления с потерей данных в DBCC — крайняя мера, решение о ней принимает администратор СУБД.
Тестирование серверной базы
Тестирование и исправление в Конфигураторе работает и для серверной базы. Но на большой базе оно идёт часами, поэтому запускайте его в нерабочее время.
Если для освобождения базы приходится завершать сеансы в консоли кластера, пользователи потеряют несохранённые данные. Предупредите их и делайте это вне рабочего дня.
Ошибки при обновлении конфигурации
Обновление — частый источник проблем. Чаще всего встречаются три ситуации.
Обновление прервалось
Сообщение о несоответствии конфигурации базы данных означает, что новая конфигурация загружена, но структура базы не обновлена.
- Откройте базу в Конфигураторе.
- Выполните
Конфигурация → Обновить конфигурацию базы данных. - Примите изменения в окне реорганизации.
- Запустите базу в пользовательском режиме и дождитесь завершения обработчиков обновления.
Ошибка обработчика обновления
После запуска программа показывает ошибку обработчика и не пускает в работу. Откройте подробности: там имя обработчика и причина, например не заполнен реквизит в справочнике.
- Исправьте данные, на которые указывает сообщение, и повторите запуск.
- Если ошибка в отложенной обработке данных, программа работает, но часть отчётов может быть неточной. Результаты смотрите в
Администрирование → Обслуживание, в группе результатов обновления программы.
Не тот путь обновления
Типовую Бухгалтерию нельзя обновить через несколько релизов
сразу — только по цепочке, указанной в описании обновления. Если файл .cfu не подходит к текущему релизу, Конфигуратор его не примет. Автоматическое обновление
в Администрирование → Интернет-поддержка и сервисы выбирает цепочку само.
Если конфигурация снята с поддержки или доработана, обновление идёт через сравнение и объединение. Это работа программиста: ошибки при объединении ломают типовые механизмы незаметно.
Ошибки в документах, проводках и отчётах
Такие ошибки не связаны с повреждением базы. Программа работает, но учёт неверный.
Документ не проводится
Прочтите сообщение внизу формы или в окне сообщений. Частые причины:
- 🔒 дата документа попадает в закрытый период — дата запрета изменения задаётся в настройках пользователей и прав раздела
Администрирование; - 📦 не хватает остатка товара или материала на дату документа;
- 📝 не заполнен обязательный реквизит: счёт учёта, договор, статья затрат;
- 👤 у пользователя нет прав на проведение этого вида документа.
Неверные цифры в отчётах
Порядок проверки, который быстрее всего находит причину:
- Запустите
Отчеты → Анализ учета → Экспресс-проверказа период. Отчёт покажет красное сальдо, незакрытые счета, проблемы с НДС и ссылками. - Сформируйте оборотно-сальдовую ведомость и найдите счёт с аномалией.
- Расшифруйте сумму двойным щелчком до документа-источника.
- Исправьте документ и перепроведите его.
- Если документ влияет на себестоимость или закрытие месяца
, повторите
Операции → Закрытие месяцаза этот и последующие месяцы.
Массовое перепроведение документов за закрытый период меняет уже сданную отчётность. Делайте его в копии базы, сверяйте итоги и только потом повторяйте в рабочей базе.
Ручные корректировки
Операцию, введённую вручную, программа не пересчитает при закрытии месяца. Если ошибка возникла из-за неё, исправляйте саму операцию, а не добавляйте вторую, «компенсирующую». Иначе через квартал разобраться в счёте будет невозможно.
Как восстановить данные после сбоя
Если исправление не помогло или удалило важные данные, остаётся восстановление из копии.
| Способ | Когда применять | Что потеряете |
|---|---|---|
Загрузка выгрузки .dt | Есть свежая выгрузка | Данные после её создания |
Замена файла 1Cv8.1CD из копии | Файловая база, есть копия каталога | Данные после копии |
| Восстановление копии СУБД | Серверная база | При полной модели восстановления — почти ничего |
| Восстановление из облака или архива хостинга | База в аренде | Зависит от расписания копий у провайдера |
Загрузка выгрузки .dt
- Создайте новую пустую базу или используйте существующую.
- Откройте её в Конфигураторе.
- Выберите
Администрирование → Загрузить информационную базуи укажите файл.dt.
Загрузка полностью заменяет данные базы, в которую выполняется. Не загружайте выгрузку в рабочую базу, не сохранив её текущую копию.
Восстановление на SQL-сервере
При полной модели восстановления можно вернуть базу на момент за минуту до сбоя: полная копия плюс копии журнала транзакций. При простой модели — только на момент последней полной копии. Восстанавливайте в отдельную базу, проверяйте данные и только потом переключайте пользователей.
Если копии нет
Данные за потерянный период придётся ввести заново по первичным документам. Банковскую выписку загрузите повторно из клиент-банка, документы контрагентов — из ЭДО, если он подключён. Этот опыт обычно убеждает настроить регулярное копирование.
Когда без специалиста не обойтись
Часть ошибок пользователь исправит сам: кэш, данные документа, повторный запуск обновления . Остальное лучше отдать специалисту.
Обращайтесь к администратору или программисту 1С, если:
- 🧩 ошибка указывает на модуль конфигурации и повторяется после обновления;
- 💾
chdbfl.exeи тестирование не исправили базу или удалили данные; - 🖥️ ошибки СУБД повторяются, а
DBCC CHECKDBпоказывает повреждения; - 🔀 конфигурация доработана, а обновление ломает объединение;
- 📊 после перепроведения не сходится отчётность за сданные периоды.
Что подготовить для обращения: текст ошибки со снимком экрана, время, выгрузку журнала регистрации, номер платформы и релиз конфигурации из Справка → О программе. С этим набором разбор занимает заметно меньше времени.
Если у вас есть договор ИТС, линия консультаций отвечает и по ошибкам типовой Бухгалтерии. Для доработанных конфигураций нужен программист, который их сопровождает.