← На главную
Ситуация, когда после обновления конфигурации или при закрытии отчетного периода групповое перепроведение документов останавливается на определенной дате и зависает, является распространенной проблемой в «1С:Управление производственным предприятием» (УПП). Разберем по шагам, как выявить проблемный документ, выяснить причины блокировки процесса и успешно завершить перепроведение данных.
Шаг 1. Локализация проблемного документа с помощью Журнала регистрации
Когда стандартная обработка Проведение документов зависает без вывода диагностических сообщений, в первую очередь обратимся к системному аудиту платформы.
- Откроем Журнал регистрации через меню Сервис — Журнал регистрации (или через конфигуратор: Администрирование — Журнал регистрации).
- Настроим отбор по времени: установим интервал вокруг момента зависания процесса.
- Проанализируем последние зафиксированные события. При проведении документа платформа последовательно регистрирует транзакции записи в регистры.
- Найдем последнюю незавершенную транзакцию или строку перед остановкой фиксации событий. В поле Представление данных или в метаданных будет указан конкретный документ (например,
Амортизация ОС или Расчет себестоимости выпуска), на котором остановилась запись движений по регистрам.
Шаг 2. Анализ специфики регламентных документов в 1С:УПП
В конфигурации 1С:УПП регламентные операции нельзя перепроводить общей массой через стандартный интерфейс пакетного перепроведения. Такие документы, как начисление амортизации, расчет себестоимости и списание затрат, требуют соблюдения строгой технологической цепочки.
- Исключение регламентных документов из общего списка: регламентные документы месяца необходимо рассчитывать последовательно после того, как проведены все первичные документы (поступления, реализации, перемещения, требования-накладные).
- Проверка параметров объектов: откроем найденный документ вручную и проведем его отдельно. Если зависание повторяется, проверим исходные данные: корректность сроков полезного использования ОС, отсутствие нулевых сумм при делении в формулах расчета или циклических ссылок в способах отражения расходов.
- Восстановление последовательностей: перед закрытием периода выполним обработку
Восстановление последовательности партионного учета и Восстановление последовательности расчетов, чтобы исключить деление на ноль и бесконечные перерасчеты остатков.
Шаг 3. Устранение ограничений файловой базы данных
Файловый режим работы платформы (файл базы данных 1Cv8.1CD размером свыше 10–12 ГБ) имеет жесткие технические ограничения:
- Ограничение адресного пространства: в 32-разрядном файловом движке клиентский процесс
1cv8.exe ограничен объемом памяти до 2–4 ГБ. Тяжелые запросы с выборкой по регистрам партий и незавершенного производства вызывают утечку или переполнение памяти, из-за чего процесс впадает в бесконечное ожидание или падает. - Блокировка таблиц: при пакетном проведении в файловом режиме блокируется вся таблица целиком, что многократно увеличивает время записи каждой строки.
- Переход в клиент-серверный режим: для стабильной работы и ускорения расчетов развернем базу данных на СУБД (PostgreSQL, MS SQL Server). Это снимает лимиты файловой системы и позволяет серверным рабочим процессам эффективно обрабатывать масштабные выборки данных.
Шаг 4. Сервисное обслуживание и оптимизация итогов регистров
Если перепроведение зависает на этапе записи в регистры накопления (например, Незавершенное производство, Партии товаров на складах), причиной часто является разрушение или неактуальность таблиц итогов.
- Выполним резервное копирование информационной базы.
- Запустим утилиту проверки целостности
chdbfl.exe (расположена в каталоге bin установленной платформы 1С) и исправим возможные физические ошибки файла. - Зайдем в конфигуратор и запустим Администрирование — Тестирование и исправление... со следующими обязательными опциями:
- Реиндексация таблиц информационной базы;
- Пересчет итогов;
- Сжатие таблиц информационной базы.
- В пользовательском режиме через меню Операции — Управление итогами проверим период рассчитанных итогов. Для ускорения проведения документов за прошлые периоды можно временно отключить итоги, провести документы порциями по 1–2 недели, а затем заново включить и пересчитать итоги на текущую дату.
Шаг 5. Отладка и мониторинг зависшего процесса
Если требуется точно определить участок программного кода, вызывающий задержку:
- Откроем конфигуратор и перейдем в меню Отладка — Подключение..., подключимся к сеансу предприятия.
- Включим режим Отладка — Остановка по ошибке....
- Откроем модуль объекта проблемного документа (например,
Документ.АмортизацияОС.МодульОбъекта) и установим точку останова в начале процедуры ОбработкаПроведения. - Включим Замер производительности перед нажатием кнопки «Провести» и пошагово (клавишей F10/F11) определим, на каком именно запросе или цикле обхода выборки происходит бесконечный расчет.