Бизнес-процессы
страницаДокументооборот ПРОФ, КОРП, ДГУ
25.02.2016
Бизнес-процессы
- Общее описание
- Как устроено определение роли предметов
- Обработка основных предметов при выполнении процесса
- Как подключить свой объект к механизму бизнес-процессов
Общее описание
Механизм бизнес-процессов (далее "Процесс") направлен на автоматизацию порядка взаимодействия сотрудников в организации.
В рамках бизнес-процессов сотрудники не только взаимодействуют, но и работают над какими либо сущностями (файлы, документы, письма и т.д.). Такие сущности в процессах называются предметами.
С каждым процессом может быть связано любое количество предметов.
Каждый из предметов по отношению к процессу имеет свою роль:
- Основной,
- Вспомогательный,
- Заполняемый.
Основные – это те предметы, над которыми выполняются действия процесса. Такие предметы подлежат особой обработке при выполнении процесса. Например, внутренние документы меняют свое состояние, к ним добавляются визы согласования и т.д.
Вспомогательные предметы не изменяются и не обрабатываются при выполнении/продвижении процесса.
Заполняемые – особые предметы, которые должны быть заполнены в определенных задачах процесса. Но процесс, в котором происходит заполнение предметов не направлен на выполнение действий над ними. Обычно в рамках одного процесса происходит заполнение предмета, а в рамках другого – действие над предметом. Например, в процессе Исполнение следует подготовить проект договора, а в процессе Согласование – согласовать договор.
Роль для предмета в процессе может быть определена способом создания процесса, настройками шаблона процесса и вручную в карточке самого процесса.
При создании процесса на основании через меню основные команды Отправить предмету присваивается роль Основной. Основными командами являются все, кроме Еще варианты… и По почте. Если процесс создается по шаблону с предметами, то роль определяется шаблоном.
Меню Отправить:

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

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

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

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