К статье
Практический материал

Автоматизация · 11 мин

Как сделать бизнес-процесс в 1С: от карты маршрута до запуска

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

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

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

Подготовка: что нужно решить до открытия конфигуратора

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

Определите источник данных процесса. Чаще всего бизнес-процесс привязан к документу (заявка, заказ, служебная записка) — тогда документ хранится в реквизите процесса, а задачи формируются по нему. Также заранее решите, как определяются исполнители: жёстко указанным пользователем, ролью (например, «Руководитель отдела продаж») или вычислением в коде.

Создание объекта «Бизнес-процесс» в конфигураторе

Откройте конфигуратор, в дереве конфигурации найдите ветку «Бизнес-процессы» и добавьте новый объект. Задайте имя и синоним — например, «СогласованиеЗаявки». На закладке «Данные» добавьте реквизиты: ссылку на документ-основание, инициатора, комментарий, результат согласования. Эти реквизиты будут доступны во всех точках маршрута.

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

Проектирование карты маршрута

Откройте карту маршрута бизнес-процесса и перетащите на неё точки из панели элементов. Минимальный рабочий набор: точка старта, одна или несколько точек действия (выдача задачи исполнителю), точка условия (ветвление по результату) и точка завершения. Точки соединяются линиями переходов — именно они задают порядок движения.

Для согласования типовая схема выглядит так: «Старт → Задача руководителю → Условие “Согласовано?” → при «Да» задача в бухгалтерию, при «Нет» возврат инициатору на доработку → Завершение». Для параллельного согласования несколькими лицами используются точки «Разделение» и «Слияние»: процесс разветвляется на несколько веток и ждёт завершения всех.

Порядок построения карты
  1. 1
    Добавьте точку старта и точку завершения — они обязательны
  2. 2
    Разместите точки действий для каждого этапа выдачи задачи
  3. 3
    Добавьте точки условий в местах, где принимается решение
  4. 4
    Соедините точки линиями переходов, проверьте отсутствие «висячих» точек
  5. 5
    Для каждой точки действия укажите вид задачи и способ адресации
  6. 6
    Сохраните карту и проверьте отсутствие ошибок при обновлении конфигурации

Настройка задач и адресации исполнителей

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

Роли и реквизиты адресации заводятся в объекте «Задача» на закладке «Адресация». Состав реквизитов адресации у роли и у задачи должен совпадать — иначе задача не найдёт исполнителя и зависнет. В типовых конфигурациях соответствие пользователей ролям заполняется в справочнике настроек, в самописных — в регистре сведений, который нужно создать и заполнить самостоятельно.

Программная обработка событий

Карта маршрута задаёт скелет, а логика прописывается в обработчиках. Основные события бизнес-процесса: «ПередСтартом» (проверка условий запуска, отказ при ошибках), «ПриСозданииЗадач» и «ПриВыполненииЗадачи» (заполнение реквизитов, фиксация решений), обработчики точек условий (вычисление результата ветвления). Код пишется в модуле объекта бизнес-процесса.

Типовой приём — хранить результат каждого этапа в реквизите процесса, а в обработчике точки условия просто читать его. Например, задача руководителя при выполнении записывает «Согласовано» или «Отклонено», а условие возвращает Истина или Ложь в зависимости от этого значения. Старт процесса обычно выполняется из документа-основания: в обработчике проведения документа создаётся объект процесса, заполняются реквизиты и вызывается метод старта.

bsl
Процесс = БизнесПроцессы.СогласованиеЗаявки.СоздатьБизнесПроцесс();
Процесс.Дата = ТекущаяДатаСеанса();
Процесс.ДокументОснование = Ссылка;
Процесс.Инициатор = Пользователи.ТекущийПользователь();
Процесс.Записать();
Процесс.Старт();

Тестирование и запуск в работу

Тестируйте процесс только на копии базы или в отдельной тестовой среде: задачи создают реальные записи, а удалить «разлетевшиеся» по пользователям задачи без следов сложно. Заведите минимум двух тестовых пользователя с разными ролями и пройдите процесс целиком под каждым: старт, получение задачи, выполнение, переход к следующему этапу, ветка отказа, завершение.

Проверьте не только «счастливый путь». Обязательные сценарии: отклонение на каждом этапе, отсутствие исполнителя по роли, повторный старт по тому же документу, закрытие периода в момент выполнения задачи. Именно на этих сценариях всплывают ошибки адресации и незаполненные реквизиты.

Контрольные точки

Как проверить результат

Задача появляется у исполнителя
Норма

Видна в списке задач сразу после выполнения предыдущего этапа

Тревожный признак

Задача есть в базе, но ни у кого не отображается — ошибка адресации

Ветвление по условию
Норма

При «Да» и «Нет» процесс идёт по разным веткам карты

Тревожный признак

Процесс всегда идёт по одной ветке — обработчик условия не возвращает значение

Завершение процесса
Норма

После последнего этапа процесс в статусе «Завершён», задач не осталось

Тревожный признак

Активные задачи остаются после завершения — не все ветки сходятся в точку завершения

Типовые механизмы и альтернативы разработке

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

Собственный бизнес-процесс оправдан, когда логика ветвлений нестандартна, нужны особые формы задач, интеграция с внешними системами или нестандартная адресация. Промежуточный вариант — расширение конфигурации: бизнес-процесс добавляется в расширении, типовая конфигурация остаётся на поддержке и обновляется без конфликтов.

Сравнение вариантов

Типовые механизмы согласования

Подходят для стандартных цепочек утверждения; настройка без кода, но логика ограничена возможностями конфигурации

Свой бизнес-процесс в основной конфигурации

Полная гибкость, но конфигурация снимается с полной поддержки, обновления усложняются

Бизнес-процесс в расширении

Гибкость разработки при сохранении типовой поддержки; ограничение — не все объекты и события доступны в расширениях

Типичные ошибки и их последствия

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

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

Типичные ошибки
01
Адресация на конкретного пользователя — задачи зависают при его отсутствии
02
Несовпадение реквизитов адресации роли и задачи — задача не находит исполнителя
03
Изменение карты маршрута при активных экземплярах — старые процессы идут по устаревшей схеме
04
Отсутствие ветки отказа — при отклонении процесс некуда двигается и зависает
05
Тестирование в рабочей базе — тестовые задачи попадают реальным сотрудникам
Итог

Что важно запомнить

Бизнес-процесс в 1С строится в четыре шага: проектирование схемы, создание объекта и карты маршрута, настройка задач с адресацией по ролям, программная обработка событий. Тестируйте на копии базы, проверяйте ветки отказа и не меняйте карту, пока по ней идут активные экземпляры.

Частые вопросы

Можно ли создать бизнес-процесс без программирования?

Частично. Карту маршрута и простую адресацию можно настроить без кода, но любая нестандартная логика — вычисление исполнителя, проверки, запись результатов в документ — потребует обработчиков на встроенном языке. В 1С:Документооборот многие сценарии покрываются шаблонами процессов без разработки вообще.

Чем задача отличается от бизнес-процесса?

Бизнес-процесс — это маршрут целиком, а задача — отдельное поручение конкретному исполнителю внутри этого маршрута. Один процесс за время выполнения создаёт столько задач, сколько этапов проходит, включая повторные — например, при возврате на доработку.

Как узнать, на каком этапе находится запущенный процесс?

Откройте форму бизнес-процесса: в ней отображается карта маршрута с подсветкой текущей точки и список созданных задач с их состоянием. Также можно открыть список задач с отбором по бизнес-процессу и посмотреть, какая задача активна и у кого она находится.

Что делать, если задача «зависла» и никому не видна?

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

Можно ли запускать процесс автоматически по расписанию?

Да. Создайте регламентное задание, которое по расписанию проверяет условия (например, новые документы определённого вида), создаёт экземпляры процесса и вызывает метод старта. Учтите, что регламентные задания выполняются на сервере, поэтому весь код старта должен работать в серверном контексте.

Как безопасно изменить процесс, который уже используется?

Завершите или прервите все активные экземпляры, затем меняйте карту. Если прервать процессы нельзя, создайте новый объект бизнес-процесса с изменённой картой и переключите старт на него — старые экземпляры дойдут до конца по прежней схеме. Любые изменения предварительно отрабатывайте на копии базы.