Обработка с одной кнопкой для конфигураций на зарплатной подсистеме ЗУП: 1С:ERP для Казахстана и её родня. Лечит ошибку, с которой не проводится "Начисление зарплаты и взносов":
Запись не верна! Значение поля "Регистрация в налоговом органе" не может быть пустым! (Регистр накопления: Сведения о доходах физических лиц; Номер строки: 1)
При этом в карточке организации регистрация заполнена, и перезапись карточки ничего не меняет.
Почему падает
Проведение берёт регистрацию не из карточки, а срезом регистра "История регистраций в налоговом органе" на конец месяца начисления, причём по подразделению строки начисления, а не по организации. Если история у этого подразделения начинается позже месяца начисления, срез пустой, а измерение регистра "Сведения о доходах физических лиц" пустых значений не допускает.
Типичный случай: история заведена с какого-то месяца текущего года, а сотрудников принимали раньше, и начисление идёт за один из тех ранних месяцев.
Что делает кнопка
Повторяет штатную процедуру конфигурации, которая заполняет историю на дату отсчёта периодических сведений, но пишет без режима загрузки. Поэтому при записи пересчитывается и вторичный регистр "История регистраций в налоговом органе (вторичный)", на который тоже смотрят запросы проведения.
- Организации и обособленные подразделения. Если первая запись истории позже даты отсчёта (в типовой это 01.01.1900) или записей нет вовсе, добавляется запись на эту дату с той же регистрацией: из первой записи истории, а если её нет, из карточки.
- Необособленные подразделения. История головной единицы разносится на них штатной процедурой конфигурации, тоже без режима загрузки.
- Протокол. После запуска видно, что добавлено и какая история получилась у каждой единицы.
Всё выполняется одной транзакцией. Повторный запуск ничего не меняет. Документы обработка не трогает, после неё упавшее начисление надо просто провести заново.
Что учесть до запуска
Запись на 01.01.1900 делается в обход даты запрета изменения, так же как у штатных процедур заполнения истории. Проведённые документы закрытых периодов остаются как были, но история регистраций за эти периоды после запуска становится другой. Если это важно для отчётности, первый запуск лучше сделать на копии базы.
На чём проверялась
1С:ERP для Казахстана, платформа 8.3.27, клиент-серверный вариант. Логика прогнана в транзакции с откатом: запись добавилась, подразделение получило историю, вторичный регистр пересчитался, упавший документ начисления провёлся. Собранный файл проверен проверкой модулей в контексте той же базы и вызовом на сервере 1С, тоже с откатом.
Казахстанских конфигураций в списке тестирования площадки нет, поэтому в поле конфигурации тестирования стоит ближайшая российская ветка. Реальный прогон был только на ERP для Казахстана. На ЗУП для Казахстана и Комплексной автоматизации регистры и процедуры, скорее всего, называются так же, но их код не сверялся.
Что в файле
Внешняя обработка на управляемых формах, одна кнопка и протокол. Открывается через "Файл - Открыть", работает на сервере. Код открыт.
Как искать причину руками, какой запрос проведения ищет регистрацию и почему карточка здесь не помогает - в статье-паровозе к этой обработке: "Регистрация в налоговом органе пуста, хотя в карточке есть".
Проверено на следующих конфигурациях и релизах:
- 1С:ERP Управление предприятием 2, релизы 2.5.27.93
Вступайте в нашу телеграмм-группу Инфостарт