При работе с конфигурацией 1С:Зарплата и управление персоналом (ЗУП) редакции 3.1 пользователи часто сталкиваются с ограничением: система не позволяет вводить документ «исправление» для «Индивидуального графика» в рамках одного и того же расчетного периода. В этой статье мы разберем, почему так происходит, какие методологические риски несет принудительное вмешательство в код и как реализовать задачу правильно.
Архитектура ЗУП построена на строгом разделении расчетных периодов. Документы, влияющие на фонд рабочего времени (такие как Индивидуальный график), являются первичными для последующих начислений. Логика разработчиков заключается в следующем:
ДанныеИндивидуальныхГрафиковСотрудников.Прежде чем приступать к доработке конфигурации, рассмотрим штатные способы фиксации изменений, которые позволят сохранить «аудиторский след» без нарушения целостности данных:
Невыходы, Оплата по среднему или Регистрация переработок. Эти документы создают движения в регистрах накопления, которые перекрывают плановые показатели, заданные в графике, без необходимости его корректировки.Если бизнес-процессы вашей компании требуют жесткого соблюдения схемы «исправление через новый документ» и вы осознаете все риски, можно временно отключить проверку уникальности. Для этого в модуле документа Индивидуальный график необходимо найти процедуру проверки и закомментировать вызов следующего метода:
// Комментируем проверку уникальности для возможности создания исправления
// УчетРабочегоВремениРасширенный.ПроверитьУникальностьВводаИтоговыхДанных(МенеджерВТ, Ссылка, ПериодРегистрации, ОписанияОшибокВводаВремени, Истина);
После этого документ позволит провести запись данных. При проведении второго документа в том же периоде, система сформирует сторнировочные записи по оборотному регистру ДанныеИндивидуальныхГрафиковСотрудников, а затем запишет актуальные показатели.
Принудительное изменение типового поведения системы несет существенные риски, которые необходимо учитывать при обновлении конфигурации:
Перерасчеты может не среагировать на изменение данных, так как считает период уже закрытым. В результате итоговые суммы к выплате сотрудникам могут оказаться неверными.Таким образом, рекомендуем использовать штатный функционал Истории изменений, который является наиболее безопасным и прозрачным методом для аудиторского контроля, не требующим вмешательства в архитектуру 1С и обеспечивающим стабильность работы системы при расчете зарплаты.