Пора реализовать задачу посерьезней! Создадим свой последовательный бизнес-процесс!
Бизнес-процесс хоть и будет похож по реализации на процесс из урока, но добавим деталей, которых нет в видео. Вы
обязательно с ними справитесь, будет интересно :)
Пара рекомендаций:
- Сначала текстовое описание преобразуйте в алгоритм (блок-схему), которую вы будете переносить в Битрикс24. Для описания простого бизнес-процесса по большому счету вам нужно всего 3 типа "блоков": действие, условие, цикл. Будет достаточно обычной блок-схемы, не обязательно рисовать полноценную диаграмму в нотации BPMN 2.0.
- Стоит подойти к реализации составленной блок-схемы в Битрикс24 пошагово, как показано в уроках. Создайте первую часть утверждения у начальника, затем наращивайте цепочку путей в шаблоне бизнес-процесса. Сложная система обычно создается через развитие простой. Так гораздо проще, меньше придется отлавливать нестыковок в работе реализованного алгоритма.
Перенесите в Битрикс24 следующий процесс заказа доставки:
- Сотрудник заполняет заявку на доставку, при этом указывает: текстовое описание необходимости данной отправки, ее максимальную стоимость, вариант отправки из двух готовых вариантов (в черте города / другой город), тип отправления из двух вариантов (небольшое / крупногабаритное), компанию и Ф.И.О. получателя, адрес, контакты.
- Заявку согласовывает руководитель. Он может отправить ее на доработку сотруднику несколько раз, пока не будет готов одобрить.
- После одобрения может быть два пути. Если отправка по городу + небольшая, то заявка возвращается к сотруднику. Он сам оформляет доставку курьером и контролирует ее выполнение. Бизнес-процесс успешно завершается, когда сотрудник отчитается, что все ok.
- Если отправка крупногабаритная или междугородняя, то заявка переходит офис-менеджеру, который и оформляет отправку через службу доставки.
- Офис-менеджер контролирует выполнение доставки и завершает процесс.
Что нужно реализовать
- Для начала - процесс в живой ленте, который будет хранить заявки. Заявки - это объект, по которому будет запускаться бизнес-процесс, с соответствующим набором полей (решите сами, какие из них должны быть обязательными). Права - пока на запись всем. Запускается бизнес-процесс при создании новой заявки. Здесь все должно быть просто :)
- Создание бизнес-процесса рекомендую начать с небольшой части: согласование заявки у руководителя, в цикле.
Здесь все похоже на видео-урок:
- Определите руководителя. Рекомендую и его, и пользователя, запустившего БП, сохранить в переменные.
- Не забудьте очень хорошо продумать выход из цикла, иначе БП никогда не завершиться :) Вам поможет специальная переменная или использование поля документа.
- Задание на доработку можете сделать с отклонением и без, поэкспериментируйте. При доработке сотрудник пусть заполняет пару полей: максимальная цена и описание-обоснование.
- Не забудьте сохранить данные из формы задания в документ
- В заданиях на одобрение и доработку рекомендую выключить комментарий, живая лента отлично подойдет для обсуждения.
- Добавьте уведомления для пользователей о заданиях БП.
- Не забудьте внести запись в лог, чтобы ориентироваться, как идет БП, установку текста статуса для большей информативности пользователей.
- Запустите БП, проиграйте его под добавленными сотрудниками Михаилом и Александром. Все ли работает, как ожидаемо? Что в логе?
- Давайте немного доработаем созданный блок:
- При создании заявки ее название нужно заполнять руками, это будет довольно разнобойно, каждый
заполнит как сможет :).
Предлагаю сразу после старта БП установить название документа в формате "[ID заявки] - [ФИО получателя]".
А чтобы сотрудник не заполнял название зря, скройте его с помощью настроек поля. Так как название - обязательное поле, то вам поможет установка его значения по умолчанию (любым, все равно перезапишете :) ) - Для того, чтобы уведомление для руководителя о новом задании БП на согласовании было более
информативно, добавьте в него ссылку на задание БП, она будет вида https://
адреспортала/company/personal/bizproc/960/ , где 960 - ID задания.
Где же взять ID задания? Вы наверняка уже догадались :) ID будет доступен в форме вставки значений, в блоке "Дополнительные результаты".
Но тут парадокс. Значение появится после выполнения действия, уведомление нужно разместить после задания. А БП не пойдет дальше, пока задание не будет выполнено.
С "парадоксом" поможет справиться действие "Параллельное выполнение" (из раздела "Конструкции"). Оно позволит выполнить несколько действий, не дожидаясь, пока завершится какая-либо ветка.
Важная ремарка - ветки запускаются так же, как и в действии "условие", слева направо.
Должно получиться как-то так:
Можете по аналогии добавить ссылку в уведомление и для сотрудника. - И еще одна доработка - можно показывать в форме задания для сотрудника не пустые поля, а текущие их значения из документа! В этом вам помогут значения по умолчанию полей и вставка значения. Хоть там и нет кнопки вызова формы вставки значений, задать вставку необходимых значений можно "руками" - "{=...}".
- При создании заявки ее название нужно заполнять руками, это будет довольно разнобойно, каждый
заполнит как сможет :).
- Добавим реализацию оставшейся части - оформление отправки:
- После одобрения заявки у руководителя вам потребуется реализовать два возможных пути в шаблоне бизнес-процесса.
- Поможет в этом, конечно, действие "Условие". Судя по постановке задачи, офис-менеджеру нужно
ставить задание в случае габаритной отправки и пересылки в другой город. У вас есть возможность
указать составное условие, главное - правильно выставить, по какой логике выполнять условия, И
или ИЛИ :)
- Для указания, кто "офис менеджер", конечно, используйте константу.
- В остальном все более-менее просто, задания офис-менеджеру или сотруднику на отправку и на контроль получения. Не забываем про уведомления пользователям, запись в лог.
- При отправке через службу доставки будет логичным сохранить в заявку название службы, номер отправления, трек-код. В этом случае поля не нужно отображать при создании заявки.
- Остался последний штрих - задайте права:
- Сотрудникам - на добавление и чтение. Вот такая конфигурация позволит это организовать:
- Руководителю - внутри БП с помощью действия добавьте права на изменение документа, по которому сейчас запущен бизнес-процесс.
- Сотрудникам - на добавление и чтение. Вот такая конфигурация позволит это организовать:
В общем-то, все :) Поздравляем с реализацией бизнес-процесса!