Почему Заявка на расходование ДС в 1C:ERP требует двойного согласования от одного пользователя?

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

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

Это вызывает раздражение у топ-менеджмента и вопросы к службе поддержки. Однако, в большинстве случаев, это не ошибка кода, а корректная (с точки зрения логики системы), но, возможно, неоптимально настроенная работа механизма бизнес-процессов. Давайте подробно разберем, почему так происходит и как мы можем настроить систему, чтобы избежать лишних кликов.

Понимаем логику: Роли против Пользователей

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

Давайте проанализируем, как система строит маршрут. В настройках бизнес-процесса указаны этапы. Например:

  1. Этап 1: Согласование непосредственным руководителем инициатора.
  2. Этап 2: Согласование финансовым контролером (или руководителем ЦФО).

Если инициатор заявки — сотрудник финансового отдела, то его непосредственным руководителем является Финансовый директор. При этом тот же Финансовый директор выполняет роль ответственного за бюджет (финансовый контроль).

Что видит система?

Для системы это две разные сущности согласования: одна подтверждает целесообразность затрат (нужен ли нам этот товар/услуга), вторая подтверждает наличие бюджета (есть ли у нас деньги).

Основные причины дублирования задач

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

1. Пересечение функциональных и административных ролей

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

2. Вхождение в группы исполнителей и персональная адресация

В 1C:ERP широко используется адресация задач на Группы пользователей. Рассмотрим пример:

В системе есть роль СогласующийПлатежи. В эту роль (группу) включены три сотрудника, включая нашего руководителя. Маршрут настроен так, что сначала идет согласование руководителем ЦФО (персонально), а затем — группой казначейства. Если руководитель входит и туда, и туда, он получит задачу дважды: сначала лично, потом как участник группы.

3. Механизм заместителей

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

4. Разделение видов контроля (Лимиты vs Суть)

В подсистеме Казначейства есть разделение на согласование по существу (зачем платим) и контроль лимитов (в бюджете ли мы). Если заявка идет "сверх лимита", может включаться дополнительная ветка согласования. Если ответственный за сверхлимитные заявки — тот же человек, что и основной согласующий, система потребует отдельного подтверждения именно факта превышения бюджета.

Диагностика проблемы

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

Откройте проблемный документ ЗаявкаНаРасходованиеДС. Нам необходимо обратиться к отчету о прохождении процесса.

  1. В форме документа найдите ссылку или кнопку, которая обычно называется "Ход согласования" или перейдите на вкладку "Визы" (в зависимости от релиза и настроек интерфейса).
  2. В открывшемся окне вы увидите дерево или список этапов. Внимательно изучите строки, где исполнителем значится наш "пострадавший" пользователь.
  3. Обратите внимание на колонку "Роль", "Этап" или "Точка маршрута".

Если вы видите две записи с одним пользователем, но разными названиями этапов (например, "Согласование руководителем" и "Экономический контроль"), значит, гипотеза о пересечении ролей верна.

Методы решения

Теперь рассмотрим, как мы можем исправить ситуацию, чтобы облегчить жизнь руководителю.

Метод 1: Настройка "Схлопывания" этапов (Рекомендуемый)

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

Нам необходимо проверить настройки подсистемы согласования:

  1. Перейдите в раздел администрирования или настройки параметров подсистемы "Казначейство" (или общие настройки процессов, если используется интеграция с 1С:ДО).
  2. Поищите флаг с названием, близким к "Не направлять задачу, если пользователь уже согласовал на предыдущем этапе" или "Автоматически согласовывать, если исполнитель совпадает".
  3. Установка этого флага заставит систему анализировать историю виз. Если Иванов И.И. уже поставил визу на шаге 1, то на шаге 2 (где снова требуется Иванов И.И.) система автоматически поставит визу "Согласовано" и двинет процесс дальше без создания задачи.

Метод 2: Корректировка маршрута согласования

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

Необходимо зайти в справочник МаршрутыСогласования (или настройки правил обработки заявок). Проанализируйте условия перехода.

Мы можем добавить условие в маршрут. Рассмотрим логику условия на псевдокоде:


Если ИсполнительСледующегоЭтапа = ИсполнительПредыдущегоЭтапа Тогда
    // Пропускаем этап создания задачи
    ПерейтиНаСледующийШаг();
Иначе
    СоздатьЗадачу();
КонецЕсли;

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

Метод 3: Проверка адресации задач

Если дублирование происходит из-за того, что пользователь входит в Роль/Группу, проанализируйте состав исполнителей ролей:

  1. Откройте справочник "Роли исполнителей" (или "Исполнители задач").
  2. Найдите роли, участвующие в маршруте.
  3. Проверьте список пользователей, привязанных к этим ролям.

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

Заключение

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

← На главную