1. Главная страница » Компьютеры » 1С создать бизнес процесс программно

1С создать бизнес процесс программно

Автор: | 16.12.2019

Общее описание

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

  1. Потребность в дополнительных командах по отправке задач из окна Текущие дела . Например, "Сообщить о проблеме", "Заявка в АХО", "Заявка в ремонтно-хозяйственный отдел" и т.д.
  2. Отправка документа на согласование в "один клик". Например, по команде На согласование из меню Отправить необходимо отправить документ по заранее подготовленному шаблону документа и закрыть карточку документа.
  3. Старт процессов по бизнес-событию.

Рассмотрим пример отправки заявки в IT-отдел из окна Текущие дела .

Пример добавления команды отправки заявки в IT-отдел

Для решения поставленной задачи потребуется:

  1. Создать шаблон процесса рассмотрения с названием "Обработка заявки в IT".
  2. Добавить расширение конфигурации ( РасширениеФормыТекущиеДела ).
  1. В расширение РасширениеФормыТекущиеДела добавить форму ФормаТекущиеДела .
  2. На форме разместить дополнительную команду. В обработчике команды написать код по созданию процесса на основании шаблона.

При этом следует учесть:

  1. Подойдет не любой шаблон процесса. В шаблоне процесса обязательно должен быть указан исполнитель, иначе задача не будет создана.
  2. В процессе обязательно должны быть указаны Автор и Дата . В противном случае возможны ошибки прав доступа и расчета времени выполнения процесса.
  3. Заполнение на основании шаблона производится процедурой ЗаполнитьПоШаблону() модуля объекта процесса.
  4. Процесс рекомендуется запускать через механизм фонового старта процессов ( РегистрыСведений.ПроцессыДляЗапуска.ДобавитьПроцессДляФоновогоСтарта ) – это позволит сократить время отклика в интерфейсе пользователя.

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

Объекты Бизнес-процессы и Задачи очень тесно связаны между собой. Выполнение задачи представляет собой передвижение по маршруту бизнес-процесса. Рассмотрим процесс внедрения бизнес процессов в 1С подробнее.

Условие задачи Специалист по платформе по бизнес-процессам

Сотрудник Подразделение Должность
Васина Бухгалтерия Кассир
Мишина Бухгалтерия Кассир
Мишина Бухгалтерия Бухгалтер
Кротов Бухгалтерия Бухгалтер
Иванов Бухгалтерия Гл. бухгалтер
Онопко Отдел закупок Начальник отдела
Петренко Отдел закупок Зам. начальника отдела
Бельдыев Отдел закупок Менеджер
Рахимов Отдел закупок Менеджер
Мансуров Отдел закупок Менеджер
Жупиков Отдел закупок Кладовщик
Сидоров Отдел закупок Кладовщик
Галкин Отдел продаж Менеджер
Палкин Отдел продаж Менеджер

Настройка бизнес процессов и задач в 1С 8.3

Первый шаг для настройки механизма бизнес-процесса в нашем примере — создание новых объектов «Бизнес-процесс» и «Задача»:

Задача, можно сказать, «подчинена» бизнес-процессу.

Адресация бизнес процесса 1С 8.3

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

Читайте также:  Intel core i3 3120

В поле Адресация задается регистр сведений, с помощью которого будет настроена адресация. В нашем примере это регистр сведений с измерениями: Исполнитель, Подразделение, Должность.

Получите 267 видеоуроков по 1С бесплатно:

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

Текущий исполнитель — поле, в котором указывается Параметр сеанса, по которому будет определяться текущий исполнитель. Подробнее об этом можно прочитать в статье Параметры сеанса.

Для тестового примера необходимо создать несколько предопределенных элементов справочника: подразделения, должности, физические лица.

Карта маршрута бизнес-процесса

Следующим действием для настройки бизнес-процесса является формирование карты бизнес-процесса:

Рассмотрим формирование бизнес-процесса на основе процесса закупки товара:

  1. отдел закупок дает старт бизнес-процессу ;
  2. после задача переходит в отдел «Бухгалтерия», где, в зависимости от того, как будет происходить оплата товара, задача переходит либо кассиру, либо бухгалтеру;
  3. после оплаты товар должен приходоваться конкретным пользователем — Сидоровым.

Для простоты предположим, что метод оплаты указывается в задаче: если в задаче установлен флаг «оплата наличными, значит, оплата пойдет через кассира.

Создание форм бизнес-процесса

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

Для этого сформируйте форму справочника по умолчанию. Затем в реквизиты формы добавьте реквизит с типом «ГрафическаяСхема». Этот реквизит перенесите на форму:

И последнее для формы — процедура отображения бизнес-процесса:

Ее нужно выполнять при открытии элемента бизнес-процесса и назначить на команду «Обновить карту».

Форма списка задач бизнес-процесса

Форма списка задач по условию задачи должна отображать только открытые задачи текущего исполнителя. Сделать это очень просто.

Достаточно создать форму списка задач по умолчанию. После этого в динамическом списке выбрать Основную таблицу — Задача.Задача.ЗадачиПоИсполнителю. Эта настройка позволит указать отбор по исполнителю задач:

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

Настройка адресации в пользовательском режиме 1С 8.2

Последний этап, но не последний по значимости — настройка адресации в пользовательском режиме в регистре «Адресации».

В этом регистре необходимо указать всех участников бизнес-процесса и прописать членов того или иного подразделения, должности и т.д:

Вот и всё! Настройка бизнес-процесса готова!

Другие статьи по 1С:

Если Вам всё же не понятно, рекомендую следующее видео:

Если Вы начинаете изучать 1С программирование, рекомендуем наш бесплатный курс (не забудьте подписаться на YouTube — регулярно выходят новые видео):

К сожалению, мы физически не можем проконсультировать бесплатно всех желающих, но наша команда будет рада оказать услуги по внедрению и обслуживанию 1С. Более подробно о наших услугах можно узнать на странице Услуги 1С или просто позвоните по телефону +7 (499) 350 29 00. Мы работаем в Москве и области.

Что необходимо

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

Читайте также:  Gt c6712 операционная система

При старте бизнес-процесса способ оплаты (через банк или кассу) должен быть известен, чтобы в процессе выполнения произошел переход на соответствующее действие.

Шаг за шагом

И так, начнем. Мы имеем пустую конфигурацию, поэтому необходимо будет добавить все используемые в дальнейшем объекты самостоятельно. Все действия проделаем в несколько этапов:

1) На первом этапе добавим в конфигурацию необходимые справочники с соответствующими предопределенными элементами.

Заполнение предопределенных элементов мы осуществили в соответствии со значениями адресации задач на карте маршрута (см. выше).

2) На втором этапе нужно реализовать механизм, который будет хранить в системе текущего пользователя, а именно ссылку на элемент справочника "Пользователи" связанного с пользователем информационной базы.

Чтобы не усложнять пример, соответствие между элементом справочника "Пользователи" и пользователем информационной базы будем осуществлять по наименованию. При запуске программы система должна сохранить ссылку на текущего пользователя (элемент справочника "Пользователи") в параметр сеанса "ТекущийПользователь". Тип данного параметра — "СправочникСсылка.Пользователи".

На скриншоте выше показан программный код для инициализации значения параметра сеанса "ТекущийПользователь" для текущего пользователя информационной базы. Поиск в справочнике осуществляется по наименованию. Если элемент не найден, то создается новый. В конце стандартной процедуры "УстановитьПараметрыСенаса", в модуле сеанса конфигурации, полученная ссылка на элемент справочника "Пользователи" записывается в соответствующий параметр сеанса.

3) На третьем шаге создадим объект конфигурации "Задача", чтобы в дальнейшем бизнес-процесс адресовал задачи установленным пользователям. Для этого добавим объект конфигурации в ветке "Задачи" и дадим ему такое же имя.

Прежде чем настраивать свойства добавленного объекта, нам необходимо создать регистр адресации задач, по содержимому которого система будет определять конечного исполнителя для задачи (пользователя). Для этого добавим регистр сведений "РолиИсполнителейЗадач" с тремя измерениями. Тип измерений понятен по их именам.

Теперь необходимо в свойстве объекта задач выполнить следующие настройки:

Описанные настройки на вкладке "Адресация" влияют на поведение системы при присвоении исполнителя задачам, создаваемым бизнес-процессом. Немного подробнее:

  1. Параметр "Адресация" используется для указания таблицы, в которой настраивается адресация задач.
  2. Свойство "ТекущийПользователь" ссылается на значение, в котором сохраняется текущий исполнитель для задачи (в нашем примере это текущий пользователь).
  3. Основной реквизит адресации выбирается из реквизитов адресации задачи. Значение этого реквизита будет заполнятся системой при автоматическом создании задачи из текущего исполнителя.

И последний штрих для объекта бизнес-процесса. Добавим собственную основную форму объекта. На ней будем отображать текущее состояние карты маршрута для бизнес-процесса. Для этого добавим новый реквизит формы "Карта" с типом "ГрафическаяСхема" и поместим для него элемент на форму с типом "Поле графической схемы". Для отображения текущего состояния карты маршрута на форму добавим команду "ОбновитьКарту" и соответствующую ей кнопку.

При нажатии на кнопку "Обновить карту" будет выполнен следующий программный код:

Примечание: конвертировать обеъкт формы в объект бизнес-процесса необходимо для вызова метода "ПолучитьКартуМаршрута()", поскольку объект формы не поддерживает его.

5) На этом этапе выведем на панель рабочего стола список задач для текущего пользователя. Для этого будем использовать виртуальную таблицу объекта задач — "ПоИсполнителю". Создадим новую форму списка "РабочийСтол", при этом не будем устанавливать ее основной. Откроем ее в редакторе форм и в качестве основной таблицы для динамического списка (реквизит формы "Список") изменим основную таблицу.

Читайте также:  Linux работа с текстовыми файлами

После этого добавим созданную форму в рабочую область рабочего стола.

Теперь перейдем к последнему этапу — настройки регистра адресации задач в режиме 1С:Предприятие.

6) Настройка регистра адресации задач — очень важный этап. Запустим программу в режиме предприятия и перейдем в таблицу регистра адресации задач. Создадим там следующие записи:

А теперь подробнее. Первая запись с заполненным измерением "Пользователь" говорит системе, что если для точки действия на карте маршрута в качестве исполнителя установлен пользователь "Сидоров", то задача адресуется непосредственно ему. Если бы мы заполнили измерение "Должность" или "Бизнес-процесс", то задача бы пришла к пользователю только в том случае, если адресация точки маршрута была настроена аналогичным образом.

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

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

Таким образом, основной принцип работы механизма адресации платформы заключается в следующем: задача адресуется пользователю в соответствии со значением основного реквизита адресации в объекте конфигурации "Задача", если совпадают значения остальных измерений регистра адресации (кроме связанного с основным реквизитом адресации) и значений адресации на точке маршрута бизнес-процесса.

На этом задача решена. Проведем небольшое тестирование.

Тестируем

В режиме предприятия выполним старт нового бизнес-процесса.

В соответствии с правилами адресации точки маршрута "Заказ товара", задача должна придти пользователям, для которых в регистре адресации создана запись с подразделением "Бухгалтерия" и пустым измерением "Должность". В нашем примере это пользователь "Бухгалтер" и "Кассир". Запустим программу от пользователя "Бухгалтер" и на рабочем столе видим новую задачу.

Тест завершен, все работает.

Механизм бизнес-процессов теперь используется во многих типовых конфигурациях. Даже в задачах для сертификации "1С:Специалист" по платформе 8.2 имеется отдельный блок задач по бизнес-процессам. Но несмотря на привлекательность данного механизма, во многом он остается неудобным с точки зрения разработки в таких моментах, как программное формирование карты маршрута и связь объекта бизнес-процесса с другими объектами конфигурации.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *