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