Бухгалтерия обнаружила ошибку в проведении документа, который находится в закрытом периоде (ошибка округления в аналитике). Алгоритм проведения документа был оперативно исправлен, но пользователи настоятельно попросили не перепроводить по изменённому алгоритму документы в закрытом периоде, но отразить корректирующие проводки и движения отдельным документом "Корректировка записей регистров" (для контроля "что изменилось" и из-за боязни нарушить закрытый период). Была создана обработка,которая позволяет отразить изменения движений документа корректировкой записей регистров.
Данная обработка:
1. Проводит в транзакции каждый обрабатываемый документ.
2. Определяет, какие изменения произошли в проводках и регистрах накопления данного документа (вычитает новые проводки и движения из старых).
3. Создаёт документ "Корректировка записей регистров" ("КЗР") по данным отклонениям.
4. Откатывает транзакцию, чтобы вернуть существующие движения обрабатываемого документа.
5. Позволяет обрабатывать несколько документов с созданием одного сводного документа "КЗР" или отдельного документа "КЗР" на каждый исходный документ.
6. Позволяет отразить изменение проводок и движений как датой исходного документа, так и текущим периодом (изменяя дату документа "КЗР").
Для ограничения доступа требует наличия роли "Полные права".
Создана на конфигурации "Управление производственным предприятием", обычная форма.
Если движения документа не изменяются, документ "Корректировка записей регистров" не создаётся.
Указываем список документов.
Для заполнения списка документов в обработку добавлена консоль запросов. Список документов можно указать как вручную, так и с помощью консоли запросов (кнопка "заполнить по запросу"). Первым параметром должна возвращаться ссылка на документ.
Возможны 2 режима:
1. Создание одного документа "Корректировка записей регистров" на изменения движений всех документов. В данном случае в разделе "заполнение движений" документа "Корректировка записей регистров" отражаются все документы, по которым изменились движения.
2. Создание отдельного документа "Корректировка записей регистров" на изменения движений каждого перепроводимого документа.
Обработка в транзакции пытается два раза провести каждый документ, указанный в списке (в том числе непроведенные документы). Если провести не удается, дальнейшая работа зависит от того, какой режим выбран:
- В режиме "Создать отдельные КЗР" не создается документ "Корректировка записей регистров", но флажок "Пометка" остаётся активным, чтобы Вы могли повторно запустить данную обработку. Флажок "Пометка" становится неактивным, если удалось провести и обработать исходный документ.
- В режиме "Создать сводный КЗР" выполнение обработки прекращается, если не удалось провести хотя бы один исходный документ.
Обработка тестировалась на релизе 1С:Предприятие 8.3.10.2580, конфигурация "Управление производственным предприятием", редакция 1.3.97.2.
Примечание:
1. Перед выполнением обработки в рабочей базе проверьте её работу на копии.
2. Если проводятся документы закрытого периода, период конечно должен быть открыт для текущего пользователя.