Как сделать видимой кнопку «Исправить» в документе «Отпуск» в 1С:ЗУП 3.1 при ведении только кадрового учета?

Программист 1С v8.3 (Управляемые формы) 1С:Зарплата и Управление Персоналом
← На главную

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

Выясним причину работы механизма исправлений в 1С:ЗУП 3.1

Проанализируем архитектуру документа Отпуск. В программе он является кадрово-расчетным. В отличие от чисто кадровых документов (например, ПриемНаРаботу или КадровыйПеревод), механизм сторнирования и исправления расчетных документов привязан к физическому закрытию расчетного периода.

Типовая логика 1С:ЗУП 3.1 считает период закрытым для документа, если выполняется одно из условий:

  1. По документу проведен расчетно-выплатный документ (например, ВедомостьВКассу или ВедомостьВБанк).
  2. В месяце начисления зарегистрирован и проведен документ ОтражениеЗарплатыВБухучете.

Если база данных используется исключительно для кадрового учета, расчетчики не проводят ведомости и не формируют отражение зарплаты. В этом случае система считает период открытым, а документ — доступным для прямого редактирования. По этой причине гиперссылка Исправить на форме не отображается.

Вариант 1. Использование документа «Отражение зарплаты в бухучете»

Рассмотрим наименее трудоемкий методический способ. Чтобы программа посчитала расчетный период закрытым без фактического расчета выплат, достаточно создать технический документ за соответствующий месяц.

  1. Перейдем в раздел Зарплата или Кадры (в зависимости от настроек интерфейса).
  2. Создадим документ Отражение зарплаты в бухучете за текущий месяц начисления.
  3. Проведем этот документ (заполнять табличные части суммой не обязательно, если расчет зарплаты не ведется).

После проведения документа система начнет считать месяц закрытым, и во всех кадрово-расчетных документах (включая Отпуск) станет доступна гиперссылка «Исправить».

Вариант 2. Прямое редактирование исходного документа

Проанализируем целесообразность создания исправлений. Если в информационной базе не выполняются расчетные операции, финансовые ведомости не передаются в бухгалтерию и не формируют проводки, создавать отдельный документ-исправление методически не требуется.

В такой situation кадровику достаточно внести изменения непосредственно в исходный документ Отпуск и провести его повторно. Если в программе настроена дата запрета изменения данных, администратору необходимо временно снять или сместить эту дату для кадровой службы.

Вариант 3. Программная доработка через Расширение конфигурации

Если регламент предприятия строго требует сохранения истории изменений через механизм исправлений, разберем программное решение задачи без изменения типовой конфигурации.

Обработчики формирования команд управляемой формы документа Отпуск расположены в модуле формы или в подключаемых модулях БСП и кадрового учета. Мы можем принудительно изменить видимость элементов с помощью расширения конфигурации.

Посмотрим на пример кода в расширении формы документа Документ.Отпуск.Форма.ФормаДокумента:


&НаСервере
Процедура Расш1_ПриСозданииНаСервереПосле(Отказ, СтандартнаяОбработка)
    
    // Проверяем статус документа и включаем видимость команды исправления
    Если Объект.Ссылка.Пустая() = Ложь И Элементы.Найти("ГиперссылкаИсправить") <> Неопределено Тогда
        Элементы.ГиперссылкаИсправить.Видимость = Истина;
    КонецЕсли;

КонецПроцедуры

При использовании программной доработки обязательно проанализируем права доступа пользователей. Для корректного создания документа-исправления у роли кадровика должны быть права на добавление новых экземпляров документа Отпуск и регистрацию связанных кадровых приказов.

← На главную