Как в 1С:ERP сделать обязательным заполнение статьи ДДС в заявке на расходование денежных средств?

Бизнес-аналитик 1С v8.3 (Управляемые формы) 1С:ERP Управление предприятием Управленческий учет
← На главную

В процессе работы с программным продуктом 1С:ERP Управление предприятием многие пользователи и администраторы сталкиваются с ситуацией, когда инициаторы платежей создают документ Заявка на расходование денежных средств, оставляя поле Статья движения денежных средств (ДДС) пустым. Это создает трудности для финансовой службы и искажает аналитику управленческого учета. Рассмотрим подробно, почему система позволяет проводить такие документы и какими способами — от штатных до технических — можно заставить пользователей заполнять этот важный реквизит.

Анализ типовой логики работы документа

Для начала проанализируем, почему система в стандартном исполнении позволяет проводить заявку без указания статьи. В конфигурации 1С:ERP заложена определенная бизнес-логика: инициатор заявки (например, рядовой сотрудник) может не знать точную статью ДДС. Его задача — зафиксировать потребность в средствах, а уточнить аналитику должен казначей или финансовый менеджер на этапе согласования.

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


Если Статус = Перечисления.СтатусыЗаявокНаРасходованиеДенежныхСредств.НеСогласована
    Или Статус = Перечисления.СтатусыЗаявокНаРасходованиеДенежныхСредств.Отклонена Тогда
    
    НепроверяемыеРеквизиты.Добавить("СтатьяДвиженияДенежныхСредств");
    НепроверяемыеРеквизиты.Добавить("РасшифровкаПлатежа.СтатьяДвиженияДенежныхСредств");
КонецЕсли;

Из этого кода становится ясно, что в статусе Не согласована система намеренно отключает проверку. Однако, как только заявка переводится в статус Согласована или К оплате, механизм НепроверяемыеРеквизиты перестает действовать, и штатная проверка 1С потребует заполнения статьи ДДС. Таким образом, первый «штатный» способ контроля — это использование бизнес-процесса согласования.

Метод 1: Настройка подсистемы лимитирования

Разберем наиболее корректный с точки зрения методологии 1С:ERP способ. Обязательность статьи ДДС тесно связана с подсистемой Казначейства. Если в вашей организации ведется бюджет движения денежных средств, мы можем включить контроль лимитов.

  1. Перейдем в раздел НСИ и администрирование — Казначейство.
  2. Установим флаг Контроль лимитов по статьям ДДС.
  3. Настроим правила лимитирования для соответствующих статей.

При включенном контроле лимитов система физически не позволит перевести документ в статус К оплате, если статья ДДС не указана, так как программа не сможет определить, по какому лимиту проверять остаток средств. Это самый надежный «штатный» метод, не требующий внесения изменений в конфигурацию.

Метод 2: Индивидуальная настройка формы документа

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

Выполним следующие шаги:

  1. Откроем форму документа Заявка на расходование денежных средств.
  2. Нажмем кнопку Ещё в правом верхнем углу и выберем пункт Изменить форму.
  3. В дереве элементов найдем поле СтатьяДвиженияДенежныхСредств (или соответствующее поле в табличной части Расшифровка платежа).
  4. В свойствах выбранного элемента найдем пункт Проверка заполнения и установим значение Выдавать ошибку.

Важный нюанс: данный метод является «мягким». Пользователь с правами на изменение формы может вернуть настройки назад. Кроме того, это не защищает от программного создания документов или загрузки из внешних систем.

Метод 3: Использование расширений конфигурации

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

Мы можем создать расширение и в нем для документа ЗаявкаНаРасходованиеДенежныхСредств изменить свойство реквизита СтатьяДвиженияДенежныхСредств, установив Проверка заполнения в значение Выдавать ошибку. Однако помните о коде, который мы рассматривали выше: типовой механизм может принудительно очищать список проверяемых реквизитов в статусе Не согласована. Поэтому в расширении может потребоваться перехватить процедуру ПередЗаписью или ОбработкаПроверкиЗаполнения, чтобы закомментировать или изменить условие исключения статьи из проверки.

Метод 4: Административный контроль через профили доступа

Выясним, как можно ограничить права пользователей для достижения нашей цели. Мы можем настроить Профили групп доступа таким образом, чтобы обычные инициаторы имели право только на создание документов в статусе Не согласована.

В таком сценарии:

Это заставляет ответственное лицо (казначея) либо заполнить статью самостоятельно, либо вернуть заявку инициатору на доработку.

Подведение итогов

Мы рассмотрели несколько подходов к решению проблемы обязательности статьи ДДС в 1С:ERP. Подведем итог:

  1. Штатная логика: Поле становится обязательным автоматически при переходе из статуса Не согласована в более высокие статусы.
  2. Контроль лимитов: Самый эффективный метод, блокирующий проведение пустых заявок на уровне бизнес-логики казначейства.
  3. Интерфейсные настройки: Позволяют визуально подсказать пользователю о необходимости заполнения, но легко обходятся.
  4. Расширения: Позволяют гибко изменить поведение системы, не затрагивая типовой код конфигурации.

Выбор метода зависит от строгости учета в вашей компании. Если важно, чтобы статья была заполнена «любой ценой» еще на этапе черновика, оптимальным будет использование расширения. Если же вы следуете типовой методологии 1С, то достаточно правильно настроить статусы и лимитирование.

← На главную