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