Книги, научные публикации

ОГЛАВЛЕНИЕ Введение..2 Основные понятия и определения 4 Бизнес-процессы, задачи, карты и точки маршрута 4 Виды маршрутизации 6 Пример создания бизнес-процесса в л1 С:Предприятии 8.0 8 Карта маршрута

бизнес-процесса 9 Работа с бизнес-процессом в режиме 1С Предприятия 12 Система адресации 15 Бизнес-процесс с жесткой маршрутизацией 17 Ролевая адресация задач бизнес-процесса 22 Бизнес-процесс с жесткой, свободной и условной маршрутизацией 28 Интерактивная работа с бизнес-процессами и задачами 32 Особенности формирования задач 37 Приложение №1. Решенные упражнения 48 Приложение №2. Курсы фирмы 1С по изучению "1С:Предприятие 8.0".. 61 Курсы, проводимые 1С:Учебным Центром №1 61 Курсы, проводимые в Центрах Сертифицированного Обучения 83 Введение Данное пособие представляет собой конспект лекций к курсу Механизм бизнес-процессов в платформе л1С:Предприятие 8.0. Цель курса - познакомить слушателей с устройством механизма бизнеспроцессов платформы л1С:Предприятия 8.0, дать им практические навыки по проектированию бизнес-процессов. Особо хотелось бы отметить, что целью данного курса не является подготовка экспертов по обследованию организации, моделированию бизнеспроцессов и их реинжинирингу. Предполагается, что слушатели имеют опыт конфигурирования платформы л1С:Предприятие 8.0 , но не имеют опыта работы с объектами конфигурации Бизнес-процессы. Перед изучением материала необходимо ознакомиться с документацией, входящей в комплект стандартной поставки, а именно: 1С:Предприятие 8.0. Руководство пользователя;

1С:Предприятие 8.0. Конфигурирование и администрирование;

1С:Предприятие 8.0. Описание встроенного языка. Изучение этих книг необходимо, т.к. данное пособие не заменяет, а всего лишь дополняет документацию к программе более конкретными примерами и практическими заданиями. Очень полезным подспорьем при освоении материала курса являются сведения, расположенные на диске ИТС в разделе л1С. Методическая поддержка л1С:Предприятия 8.0. Именно в статьях диска, на сегодняшний день, наиболее полно освещены вопросы, касающиеся работы как с л1С:Предприятия 8.0, так и л1С:Предприятия 7.7. Для облегчения изучения предлагаемого в курсе материала, с целью сокращения рутинных операций (типа формирования структуры справочников или заполнения данных документов), мы не будем строить решение задачи с нуля, а используем некоторую начальную информационную базу, содержащую определенное количество заранее созданных объектов конфигурации и заполненную в режиме 1С:Предприятия необходимыми начальными данными. Основной акцент в курсе сделан на самостоятельную работу слушателей. В связи с этим, методика подачи материала претерпела некоторые изменения. В процессе проведения занятий каждый теоретический раздел курса будет подкреплен небольшим практическим примером, выполняемым слушателями вместе с преподавателем. Решение же общего сквозного примера будет реализовано слушателями самостоятельно. В результате прохождения курса обучения слушатели, исходя из понятного им описания бизнес-процесса, смогут в рамках л1С:Предприятия 8.0 спроектировать сам бизнес-процесс и связать его с другими объектами прикладного решения. Данное пособие состоит из отдельных глав. Каждая глава посвящена отдельной теме, которая рассматривается на конкретных примерах. В этих примерах изложена последовательность действий, вьшолняя которую слушатели шаг за шагом смогут освоить материал, изложенный в соответствующей главе.

Обозначения, принятые в этом документе Для обозначения клавиш на клавиатуре мы будем использовать то название, которое на них написано, заключенное в символы <л...>. Например: , , и т.п. Для обозначения клавиш управления курсором будет использоваться фраза клавиши управления курсором, а для ссылки на конкретную клавишу - Стрелка вниз, Стрелка вверх и т.п. Обозначения кнопок в диалогах всегда будут браться в кавычки, например: Ok, Отмена и т.п. При обозначении элементов встроенного языка будет использоваться другой шрифт, например: Р а б о ч а я Д а т а. При описании выбора пункта меню будет использоваться конструкция Меню-ПодМеню-ПодМеню-...-Пункт.

Основные понятия и определения В этом разделе будут даны основные понятия и определения, необходимые для понимания сути механизма бизнес-процессов, реализованного в системе программ л1С:Предприятие 8.0.

Бизнес-процессы, задачи, карты и точки маршрута На сегодняшний день, в существующей литературе можно встретить достаточно большое количество определений бизнес-процессов. В нашей работе мы будем ориентироваться на определение, данное разработчиками в книге л1С:Предприятие 8.0. Конфигурирование и администрирование: Бизнес-процессы в 1С.Предприятии предназначены для объединения отдельных операций в цепочки взаимосвязанных действий, приводящих к достижению конкретной цели. Например, последовательность действий по выписке счета на продажу, получению наличной оплаты и отгрузке товаров со склада Рис. 1. Цепочка бизнес-процесса Продажа товара за наличный расчет можно представить как бизнес-процесс Продажа товара за наличный расчет. В системе л1С:Предприятие 8.0 такая цепочка действий будет представлена с помощью карты маршрута бизнес-процесса. Именно карта маршрута описывает всю логику бизнес-процесса и его жизненный цикл от точки старта до точки завершения, в виде схематического изображения последовательности прохождения взаимосвязанных точек маршрута. В свою очередь, отдельная точка маршрута отражает определенный этап жизненного цикла бизнес-процесса, связанный, с выполнением, как правило, одной автоматической или ручной операции.

Рис. 2. Примерный вид карты и точек маршрута бизнес-процесса в л1С:Предприятии 8.0 С понятием Бизнес-процесса в системе л1С:Предприятие 8.0 тесно связано понятие Задача. Задачи формируются бизнес-процессом при прохождении маршрута в момент перехода на очередную точку действия или точку вложенного бизнес-процесса и позволяют вести учет заданий по исполнителям. Необходимо отметить, что в общем случае, задачи могут создаваться не только бизнес-процессами, но и другими объектами информационной базы и непосредственно пользователями. Как показано на приведенном ниже рисунке, в момент перехода бизнеспроцесса на точку действия ВыпискаСчета бизнес-процессом будет сформирована одноименная задача.

Рис. 3. Формирование задачи при переходе на точку действия Красным пунктиром на карте отображена текущая точка маршрута. С другой стороны, переход на следующую точку маршрута будет осуществлен только после того, как задача сообщит бизнес-процессу о своем выполнении.

Виды маршрутизации Цепочки взаимосвязанных действий, представляющие реальные бизнеспроцессы, могут иметь достаточно сложную структуру, содержащую точки условного перехода, зацикливания, параллельного ветвления и т.п. Исходя из этого, документация по системе программ л1С:Предприятие 8.0 определяет для своих бизнес-процессов следующие виды маршрутизации: Х Жесткая. Бизнес-процесс имеет строгую карту маршрута, не включающую в себя условных и параллельных переходов, с жестко определенными адресатами для каждой точки маршрута. Данный вид бизнес-процесса не допускает свободной и условной маршрутизации. (См. Рис. 2). Х Свободная. Адресаты точки карты маршрута бизнес-процесса не установлены и определяются программно или интерактивно в течении жизненного цикла бизнес-процесса.

Рис. 4. Пример карты маршрута со свободной маршрутизацией Х Условная. Карта маршрута предусматривает проверку условий и переход по соответствующим ветвям. Переходы могут быть как бинарными (условие), так и множественными (выбор варианта). Рис. 5. Фрагмент карты маршрута с условной маршрутизацией Х Параллельная. Карта маршрута предусматривает разделение бизнеспроцесса на параллельные ветви с возможностью последующего слияния (ожидания). Продвижение бизнес-процесса по каждой из параллельных ветвей происходит независимо по мере вьшолнения соответствующих задач.

Рис. 6. Фрагмент карты маршрута с параллельной маршрутизацией Как правило, в реальных картах бизнес-процессов встречаются все эти типы маршрутизации.

Пример создания бизнес-процесса в л1С:Предприятии 8.0 Попробуем применить полученные теоретические знания на практике, создав простейший бизнес-процесс. На диске С:\ создадим каталог л\Student. Запустим систему л1С:Предприятие 8.0 и добавим новую информационную базу. Дадим ей название Учебный курс Бизнес-процессы. В режиме конфигуратора через пункт меню Администрирование-Загрузить информационную базу... загрузим начальную информационную базу, выбрав файл Начальная.dt. Войдем в созданную нами базу в режиме конфигуратора и создадим новую задачу:

Таблица Свойство Имя Синоним и новый бизнес-процесс:

Значение Задача Задача Таблица Свойство Имя Синоним Задачи Основная форма бизнес-процесса Значение ПродажаТоваров Продажа товаров Задача ФормаБизнесПроцесса Вид основной формы бизнес-процесса представлен на следующем рисунке:

Рис. 7. Вид основной формы бизнес-процесса Продажа товаров Кроме реквизитов самого бизнес-процесса в форме размещены элементы управления:

Таблица Элемент управления Поле графической схемы Надпись Надпись Надпись Надпись Свойство/Событие Имя Имя Синоним Гиперссылка Нажатие Значение/ Имя обработчика ПолеКартыМаршрута ОбновитьКарту Обновить карту V ОбновитьКартуНажатиеО В модуле формы размещены два обработчика событий, связанные с отображением и обновлением карты маршрута бизнес-процесса:

Процедура ПриОткрытии() ЭлементыФормы.ПолеКартыМаршрута.УстановитьСхему(ПолучитьКартуМаршр ута ());

КонецПроцедуры Процедура ОбновитьКартуНажатие(Элемент) ЭлементыФормы.ПолеКартыМаршрута.УстановитьСхему(ПолучитьКартуМаршр ута () ) ;

КонецПроцедуры Вернемся в окно редактирования бизнес-процесса Продажа товаров на закладку Прочее и перейдем к созданию карты маршрута бизнес-процесса.

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

Таблица Для бизнес-процесса Продажа товаров, цепочка действий которого была приведена на Рис. 1, сформируем карту маршрута, приведенную на следующем рисунке Рис. 8. Карта маршрута бизнес-процесса Продажа товаров В таблице 5 приведены значения свойств элементов карты:

Работа с бизнес-процессом в режиме 1С:Предприятия После того, как карта маршрута сформирована мы можем перейти в режим исполнения л1С:Предприятия 8.0 и создать новый бизнес-процесс Кнопка Старт Рис. 9. Вид основной формы бизнес-процесса Продажа товаров 1 Старт бизнес-процесса можно осуществить или при нажатии кнопки Старт верхней командной панели, или кнопки ОК на нижней командной панели. В обоих случаях бизнес-процесс сначала будет записан, а потом стартован. В результате старта произойдет переход на точку действия ВыпискаСчета и будет сформирована новая задача Выписка счета 1. Изменения, произошедшие в системе, показаны на рисунках. У бизнеспроцесса система установила флаг Стартован, при обновлении карты маршрута текущей точкой в ней стала точка маршрута ВыпискаСчета.

Рис. 11. Отображение признака старта и текущей точки маршрута в основной форме бизнес-процесса В списке задач появилась новая задача:

Рис. 12. Вид списка задач после перехода на точку маршрута ВыпискаСчета Для перехода на следующую точку маршрута необходимо выполнить показанную на рисунке задачу. Это можно сделать, нажав соответствующую кнопку в форме списка задач или в форме самой задачи. Заметим, что если в форме задачи установить флаг Вьшолнена и записать задачу, то перехода на новую точку маршрута не произойдет.

Выполнить задачу Рис. 13. Вид основной формы задачи Выписка счета 1 В результате выполнения рассматриваемой задачи произойдет переход на следующую точку маршрута и формирование новой задачи:

Рис. 14. Вид карты маршрута бизнес-процесса Продажа товаров 1 после выполнения задачи Выписка счета 1 Рис. 15. Вид списка задач после выполнения задачи Выписка счета 1 Последовательное выполнение формируемых задач приведет к завершению бизнес-процесса.

Рис. 16. Бизнес-процесс Продажа товаров 1 завершен, все задачи выполнены Система адресации В рассмотренном нами выше примере использования бизнес-процесса присутствует один существенный недостаток. Все задачи, порождаемые бизнес-процессом, не имеют конкретного исполнителя. Таким образом, участники бизнес-процесса не знают, кому из них должна быть предназначена та или иная задача. Если нашу задачу дополнить сотрудниками, ответственными за выполнение конкретной операции, например Таблица Сотрудник Иванов Петров Сидоров Операция Выписка счета Оплата товаров Отгрузка товаров со склада то цепочка действий, представленная на Рис. 1 может быть дополнена следующим образом:

Рис. 17. Цепочка бизнес-процесса Продажа товара за наличный расчет с исполнителями В результате мы осуществили так называемую персональную адресацию задач участникам бизнес-процесса. В конфигурации определение конкретного исполнителя осуществляется с помощью свойств задачи - Адресация, Основной реквизит адресации и Текущий исполнитель. В таблице 7 приведено соответствие указанных свойств объектам конфигурации.

Таблица Свойство задачи Адресация Объект конфигурации Регистр сведений Назначение Хранит актуальную на текущий момент информацию о соответствии исполнителей (основной реквизит адресации) всем остальным реквизитам адресации задач (структурным подразделениям, рабочим группам, выполняемым функциям и т.д.). Позволяет адресацию Означает конкретного сотрудника исполнителя задач. Если исполнитель не будет указан, то значение реквизита будет определяться из регистра сведений, указанного в свойстве Адресация Используется для отбора задач по исполнителю, установленному в данном параметре сеанса Основной реквизит адресации Справочник Текущий исполнитель Параметр сеанса Поясним на примере работу системы индексации, модернизировав нашу конфигурацию.

Бизнес-процесс с жесткой маршрутизацией Для реализации цепочки бизнес-процесса, представленной на Рис. 17, нам достаточно создать одномерную систему адресации, добавив в конфигурацию новый регистр сведений только с одним измерением. В окне редактирования регистра зададим значения его свойств Закладка Основные Основные Основные Основные Данные Свойство Имя Синоним Периодичность Режим записи Измерения Значение Регистр Адресации Регистр адресации Непериодический Независимый Сотрудник (СправочникСсылка.Сотрудники, ведущее) Таблица Перейдем в окно редактирования нашей задачи. На закладке Адресация заполним свойство Адресация, выбрав в качестве значения только что созданный регистр. Добавим в список реквизитов адресации новый реквизит Сотрудник. Значения свойств созданного реквизита показаны на Рис. 18.

Рис. 18. Палитра свойств реквизита адресации задачи Сотрудник Выберем этот реквизит в качестве значения свойства Основной реквизит адресации рассматриваемой задачи. Для возможности отбора задач по исполнителю добавим в конфигурацию параметр сеанса, назначив ему следующие значения свойств:

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

Рис. 19. Вид настроек раздела Адресация задачи Задача Используя конструктор форм, создадим для задачи форму списка ФормаСпискаПоИсполнителю. В палитре свойств элемента формы табличное поле ЗадачаСписок в разделе Использование найдем свойство Отображение задач и выберем для него в качестве значения По исполнителю. В окне редактирования задачи на закладке Интерфейсы поставим флажок л...Открыть список задач, после чего, перейдя в настройку интерфейса, настроим свойство элемента панели как показано на рисунке:

Рис. 20. Определение вида открываемой формы при выборе пункта меню ПрочиеЗадача В результате, вызывая список задач через пункт главного меню Прочие, мы будем получать задачи, отфильтрованные по текущему исполнителю, а, вызывая этот же список через пункт главного меню Операции, мы получим список задач сразу по всем исполнителям. Правда, для этого, необходимо в начале работы системы задать значение для созданного ранее параметра сеанса ТекущийИсполнитель. Воспользуемся методикой, используемой в типовых конфигурациях. Настроим соответствие между списком пользователей, созданным нами в конфигурации и записями в справочнике Сотрудники таким образом, чтобы имя пользователя совпадало со значением поля Код элемента справочника.

Таблица Имя пользователя Иванов Петров Сидоров Степанов Федоров Справочник Сотрудники Код Наименование Иванов Иванов А.А. Петров Петров В.П. Сидоров Сидоров К.Л. Степанов Степанов И.И. Федоров Федоров И.Т.

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

Процедура ПриНачалеРаботыСистемы() ПараметрыСеанса.ТекущийИсполнитель = Справочники.Сотрудники.НайтиПоКоду(ИмяПользователя());

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

Рис. 21. Выбор исполнителя для точки действия Выписка счета Прежде, чем перейти в режим исполнения изменим настройки нашего интерфейса, добавив пункты меню Прочие-Новая продажа и ПрочиеПродажа товаров.

Рис. 22. Изменения в пункте основного меню Прочие Войдем в режим исполнения под пользователем Иванов. Создадим и стартуем новый бизнес-процесс. Откроем список задач по исполнителю и убедимся, что для Иванова сформирована задача по выписке счета.

Рис. 23. Сформированная для Иванова задача по выписке счета Обратите внимание, что реквизит адресации Сотрудник заполнен значением, переданным из одноименного реквизита адресации точки маршрута. Выполним показанную задачу. Бизнес-процесс перейдет на следующую точку действия:

Рис. 24. Переход бизнес-процесса на точку оплаты Список задач для Иванова окажется пустым. Это произошло по двум причинам: Х Как видно из рисунка, новая задача сформирована для Петрова. Х В форме, по умолчанию, отображаются только невыполненные задачи. Посмотреть текущую задачу можно или зайдя в информационную базу еще раз под пользователем Петровым, или получив список всех задач через пункт меню Операции-Задачи....

Рис. 25. Список невыполненных задач, сформированный для Петрова Рис. 26. Список всех сформированных задач Выполнив задачу Петрова, мы автоматически сформируем задачу для Сидорова, а, выполнив и ее, завершим бизнес-процесс. В результате проделанной работы мы рассмотрели простейший вид бизнеспроцесса - бизнес-процесс с жесткой маршрутизацией.

Ролевая адресация задач бизнес-процесса На практике, не всегда заранее можно знать, какую задачу какой сотрудник должен выполнить, и в системе л1С:Предприятие 8.0 кроме персональной адресации, имеется возможность задать ролевую адресацию. Документация определяет ролевую адресацию как л...набор правил и соглашений, зафиксированных в настройках объектов метаданных, который позволяет определять конечного адресата (исполнителя), исходя из назначенных ему ролей, принадлежности к подразделению, а также других реквизитов адресации. Допустим, что для решения задач учебного курса будет достаточно трех мерной системы адресации: Х Сотрудник;

Х Роль исполнителя;

Х Подразделение. Продемонстрируем использование такой адресации, внеся изменения в пример, рассмотренный выше. Напомним, что кроме предопределенных, в справочник Сотрудники введены еще две обычные записи: по Степанову и Федорову. Распределим наших сотрудников по ролям и подразделениям, следующим образом Таблица Сотрудник Иванов Петров Сидоров Степанов Федоров Роль исполнителя Менеджер Бухгалтер Кладовщик Кладовщик Начальник отдела Подразделение Отдел продаж Бухгалтерия Основной склад Оптовый склад Отдел продаж Внесем изменению в рассматриваемую нами цепочку действий бизнеспроцесса Продажа товаров.

Рис. 27. Цепочка бизнес-процесса Продажа товара за наличный расчет с использованием ролевой адресации Таким образом, выписку счета может осуществлять любой сотрудник отдела продаж, получать оплату должен бухгалтер, а отгружать товары со склада - персонально сотрудник Сидоров. Реализуем предложенную схему. В регистр адресации добавим еще два измерения Закладка Данные Свойство Измерения Значение РольИсполнителя (СправочникСсылка. РолиИсполнителей, ведущее) Подразделение (СправочникСсылка. Подразделения, ведущее) Данные Измерения Дополним список реквизитов адресации задачи одноименными реквизитами, настроив связь с соответствующими измерениями регистра сведений (см. Рис. 18).

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

Формирование задачи и заполнение у нее реквизитов адресации происходит по схеме, показанной на Рис. 29 Мы видим, что, как согласно схеме, так и в действительности, будет создана одна задача, у которой заполнен реквизит адресации Подразделение, поскольку он определен для текущей точки маршрута. Отображение сформированных задач в форме списка по исполнителю происходит в следующих случаях: Значение основного реквизита адресации у задачи совпадает с текущим пользователем;

Х Основной реквизит адресации у задачи не заполнен, но комбинация значений остальных реквизитов адресации позволяет определить значение основного реквизита из регистра адресации, отобрав в нем записи по этой комбинации. Заметим, что в отборе участвуют и незаполненные реквизиты адресации. Полученное таким образом значение основного реквизита адресации должно совпадать с текущим пользователем. Так как в момент создания задачи в точке маршрута Выписка счета основной реквизит адресации не определен, следовательно, для отображения задач в форме будет задан фильтр по значениям остальных реквизитов адресации: Роль исполнителя Пустая ссылка Таблица Х Подразделение Отдел продаж Записей с такой комбинацией значений измерений в регистре нет, выборка получается пустой, основной реквизит адресации определить нельзя и наша задача в формах по исполнителям Иванов и Федоров не отображается. Чтобы данная задача появилась в этих формах, необходимо изменить записи регистра адресации: Сотрудник Иванов Федоров Роль исполнителя Таблица Подразделение Отдел продаж Отдел продаж Рис. 29. Схема формирования задач при переходе бизнес-процесса на точку маршрута Заметим, что, по умолчанию, в форме списка задач по исполнителю отображаются только невьшолненные задачи. Теперь, система, основываясь на данных, приведенных в Таблица 14, сможет по регистру адресации определить возможных исполнителей задач.

Упражнение № Внесите изменения в регистр сведений Регистр адресации таким образом, чтобы в процессе вьшолнения бизнес-процесса имелась возможность просмотреть невьшолненные задачи у сотрудников, которые могут это сделать согласно карты маршрута и данных, приведенных в Таблица 11. Создайте новый бизнес-процесс Продажа товаров. Войдите в систему одновременно под несколькими пользователями и проверьте правильность вашего решения.

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

Рис. 30. Цепочка бизнес-процесса Продажа товара за наличный расчет с условным переходом и выбором варианта Причем, при работе с бизнес-процессом и формируемыми в процессе его выполнения задачами должна быть реализована следующая функциональность: 1. При старте нового бизнес-процесса должны быть сформированы два документа Счет и Расходная накладная. Если старт бизнеспроцесса произошел в результате нажатия кнопки ОК, то должны быть открыты формы вновь созданных документов для возможности занесения в них необходимых данных. Документы для 2.

3. 4. 5.

6.

7. 8. 9.

конкретного бизнес-процесса должны создаваться только один раз. Старт бизнес-процесса должен сопровождаться появлением информации в окне сообщений;

Задача Выписка счета.... По двойному клику мышью или нажатию клавиши в списке задач должны открываться формы документов Счет и Расходная накладная. Задача может быть интерактивно выполнена только в том случае, если количество строк в табличных частях обоих документов не равно нулю;

Предоставление скидки. Если процент скидки больше нуля, то должно произойти утверждение скидки у руководителя отдела;

Задача Оплата товаров. В наименовании задачи должен быть указан покупатель товаров;

Задача Утверждение счета. По двойному клику мышью или нажатию клавиши в списке задач должна открываться форма документа Счет, в которой руководитель отдела отмечает, утвердил он скидку или нет;

Задача Отгрузка товаров со склада. По двойному клику мышью или нажатию клавиши в списке задач должна открываться форма документа Расходная накладная. Задача может быть создана только в том случае, если в накладной заполнен склад. Задача должна появляться в форме списка задач того кладовщика, который работает на указанном в накладной складе;

Завершение бизнес-процесса должно сопровождаться появлением информации в окне сообщений;

При создании новой задачи должно появляться сообщение о наименовании задачи и значениях ее реквизитов адресации;

У всех выполненных задач обязательно должны быть указаны исполнитель и дата выполнения.

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

Таблица Точка маршрута Выписка счета и расходной накладной Оплата товаров Отгрузка товара со склада Х Реквизиты адресации Сотрудник Роль исполнителя Подразделение Отдел продаж Бухгалтер Кладовщик Мы видим, что согласно Рис. 30. Цепочка бизнес-процесса Продажа товара за наличный расчет с условным переходом и выбором варианта после выписки документов бизнеспроцесс может пойти по одной из двух ветвей в зависимости от того, предоставлена скидка или нет. Для решения подобных задач существует специальная точка маршрута Точка условия. Вставим такую точку в нашу схему: Рис. 30. Добавление в карту маршрута точки условия Х За утверждение счета отвечает руководитель отдела продаж. Для реализации данного события создадим еще одну точку действия Реквизиты адресации Сотрудник Роль исполнителя Руководитель отдела Таблица Точка маршрута Утверждение счета Подразделение Отдел продаж Х После утверждения счета бизнес-процесс может пойти по одной из трех ветвей, поэтому вместо точки условия мы используем еще одну новую точку маршрута - точку выбора варианта. Окончательный вид карты маршрута бизнес-пропесса Продажа товарои показан на рисунке 31:

Рис. 32. Вид карты маршрута бизнес-процесса Продажа товаров с точками условия и варианта Теперь мы можем реализовать остальные требования. 1. По условию задачи в процессе прохождения бизнес-процесса нам придется иметь дело с конкретным счетом и конкретной расходной накладной. Для организации связи между бизнес-процессом и документами создадим у бизнес-процесса два дополнительных реквизита.

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

Процедура СтартПередСтартом(ТочкаМаршрутаВизнесПроцесса, Отказ) Если Счет.Пустая() Тогда СчетОбъект = Документы.Счет.СоздатьДокумент();

СчетОбъект.Дата = ТекущаяДата();

СчетОбъект.Записать() ;

Счет = СчетОбъект.Ссылка;

: КонецЕсли;

Если РасходнаяНакладная.Пустая() Тогда РасходнаяНакладнаяОбъект = Документы.РасходнаяНакладная.СоздатьДокумент();

РасходнаяНакладнаяОбъект.Дата = ТекущаяДата();

РасходнаяНакладнаяОбъект.ОснованиеСчет = Счет;

РасходнаяНакладнаяОбъект.Записать() ;

РасходнаяНакладная = РасходнаяНакладнаяОбъект.Ссылка,Х КонецЕсли;

Сообщить("Старт бизнес-процесса: " + """" + ЭтотОбъект.Метаданные().Синоним + " " " " ) ;

КонецПроцедуры Интерактивная работа с бизнес-процессами и задачами Возможность замены формы задачи формами документов и открытие форм документов после нажатия на кнопку ОК в форме бизнес-процесса реализуем с помощью механизма интерактивной активации. Различают интерактивную активацию самого бизнеспроцесса и интерактивную активацию конкретной задачи. Согласно документации интерактивная активация бизнес-процесса происходит в следующих случаях: Х Нажатие кнопки ОК в форме нового объекта бизнеспроцесса, что приводит к записи, старту и интерактивной активации бизнес-процесса;

Х Выбор пункта Действия-Активировать;

Х Вызов метода АктивироватьИнтерактивно () у объекта бизнес-процесса на встроенном языке. При этом будет выполнена последовательность действий, приведенная на рисунке 33:

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

Х При выборе пункта меню Действия-Активировать списка задач;

Х При вызове метода АктивироватьИнтерактивно () у объекта задачи на встроенном языке;

Х При вызове метода АктивироватьИнтерактивно () у соответствующего бизнес-процесса задачи на встроенном языке (см. выше). Последовательность действий, выполняемая системой в этом случае, приведена на рисунке 35:

Рис. 36. Последовательность действий системы при интерактивной активации задачи Из анализа действий системы, приведенных на рисунках 37 и 38, следует, что в нашем решении мы можем использовать обработчик события Обработка интерактивной активации точки действия маршрута Выписка счета и расходной накладной. Он сработает и при интерактивной активации бизнес-процесса, и при интерактивной активации задачи. Осуществим вызов обработчика. В тело процедуры поместим необходимый программный кол:

Процедура ВыпискаСчетаОбработкаИнтерактивнойАктивации( ТочкаМаршрутаБизнесПроцесса, Задача, СтандартнаяОбработка) РасходнаяНакладная.ПолучитьФорму().Открыть();

Счет.ПолучитьФорму().Открыть() ;

СтандартнаяОбработка = Ложь;

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

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

Процедура ВыпискаСчетаПередИнтерактивнымВыполнением( ТочкаМаршрутаБизнесПроцесса, Задача, Отказ) Если Счет.Товары.Количество() = 0 Тогда Отказ =Истина;

Сообщить("Для задачи: " + """" + Задача.Наименование + """ не заполнен документ "+Счет);

КонецЕсли;

Если РасходнаяНакладная.Товары.Количество() = 0 Тогда Отказ =Истина;

Сообщить("Для задачи: " + """" + Задача.Наименование + """ не заполнен документ " + РасходнаяНакладная);

КонецЕсли;

КонецПроцедуры 3. Для точки условия УсловиеСкидки обязательно должен быть сформирован обработчик события Проверка условия. Исходя из условия задачи, можно сформировать следующий программный код:

Процедура УсловиеСкидкиПроверкаУсловия(ТочкаМаршрутаВизнесПроцесса, Результат) СкидкаПредоставлена = Ложь;

Если Счет.ПроцентСкидки > 0 Тогда СкидкаПредоставлена = Истина;

КонецЕсли;

Результат = СкидкаПредоставлена;

КонецПроцедуры Особенности формирования задач 4. Для возможности внесения изменений в наименование формируемой в точке маршрута задачи необходимо знать, в какой момент времени мы можем это сделать. Или, другими словами, иметь представление о последовательности вызова обработчиков событий, которые можно обработать во встроенном языке в момент перехода на новую точку действия маршрута. Согласно документации эта последовательность будет выглядеть так, как показано на рисунке 41:

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

Процедура ОплатаПриСозданииЗадач(ТочкаМаршрутаБизнесПроцесса, ФормируемыеЗадачи, Отказ) Для Каждого Задача Из ФормируемыеЗадачи Цикл Если Не Задача.Выполнена Тогда Задача.Наименование = Задача.Наименование + " по покупателю " + Счет.Контрагент;

КонецЕсли;

КонецЦикла;

КонецПроцедуры Обратите внимание, что доступ к конкретной задаче мы можем получить только спозиционировавшись на определенном элементе массива ФормируемыеЗадачи.

Упражнение № Реализуйте необходимый функционал для задачи Оплата товаров, описанный в пункте 5.

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

Процедура ВариантУтвержденияОбработкаВыбораВарианта( ТочкаВыбораВарианта, Результат) Если Счет.СкидкаУтверждена = 0 Тогда Результат = ТочкаВыбораВарианта.Варианты.НеУтвержден;

ИначеЕсли Счет.СкидкаУтверждена = 1 Тогда Результат = ТочкаВыбораВарианта.Варианты.ОтправленНаДоработку;

Иначе Результат = ТочкаВыбораВарианта.Варианты.Утвержден;

КонецЕсли;

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

Процедура ОтгрузкаОбработкаИнтерактивнойАктивации( ТочкаМаршрутаВизнесПроцесса, Задача, СтандартнаяОбработка) РасходнаяНакладная.ПолучитьФорму().Открыть();

СтандартнаяОбработка = Ложь;

КонецПроцедуры Процедура ОтгрузкаПриСозданииЗадач( ТочкаМаршрутаВизнесПроцесса, ФормируемыеЗадачи, Отказ) Если Не РасходнаяНакладная.Склад.Пустая() Тогда Для Каждого Задача Из ФормируемыеЗадачи Цикл Задача.Подразделение = РасходнаяНакладная.Склад;

КонецЦикла;

Иначе Отказ = Истина;

Сообщить("Создание задачи по отгрузке товаров не произошло. В накладной "+ """" + РасходнаяНакладная + """ не заполнен склад");

КонецЕсли;

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

Х Упражнение № Реализуйте вывод сообщений при завершении бизнес-процесса, описанный в пункте 7.

8. Внесем необходимые изменения в объект конфигурации Задача. Создадим у задачи два дополнительных реквизита:

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

Процедура ПередВыполнением(Отказ) Если ДатаВыполнения = '00010101' Тогда ДатаВыполнения = ТекущаяДата();

КонецЕсли;

Если Исполнитель.Пустая() Тогда Исполнитель = ПараметрыСеанса.ТекущийИсполнитель;

КонецЕсли;

КонецПроцедуры Процедура ПередЗаписью(Отказ) Если ЭтоНовый() Тогда Сообщить("Сформирована задача: " + """" + Наименование + " " " " ) ;

Перейдем в режим 1С:Предприятия и проверим работоспособность внесенных нами изменений: 1. Войдем в систему под пользователем Федоров;

2. Создадим новый бизнес-процесс Продажа товаров. Стартуем его, нажав кнопку Старт;

3. Обновим карту маршрута бизнес-процесса. Как видно из рисунка 43, бизнес-процесс будет записан, реквизиты бизнес-процесса Счет и РасходнаяНакладная будут заполнены ссылками на вновь созданные документы, в окно сообщений будет выведена требуемая информация о бизнес-процессе и задаче;

Рис. 44. Старт бизнес-процесса Продажа товаров 4 4. Через пункт главного меню Прочие-Задача откроем список невыполненных задач Федорова. Активизируем задачу, находящуюся в списке. Заполним формы документов данными, как показано на рисунке 45:

Рис. 46. Заполнение документов бизнес-процесса Продажа товаров 4 5. Попытаемся выполнить задачу по выписке счета. сообщение, показанное на рисунке 47:

Получим Рис. 48. Вид сообщения о невозможности выполнения задачи 6. Заполним табличную часть накладной на основании счета. Попробуем еще раз выполнить задачу. После выполнения задачи по выписке документов, поскольку скидка в счете больше нуля, должна быть сформирована задача по утверждению счета.

Рис. 40. Вид сообщения о формировании задачи Утверждение счета Обратите внимание, несмотря на то, что Федоров по условию задачи является руководителем отдела, его список невыполненных задач пуст. Это произошло потому, что мы не внесли изменения в систему адресации. Откройте форму задачи по утверждению счета, например, через форму списка задач, подчиненных бизнес-процессу (см. рисунок 49). Мы видим, что у задачи заданы значения двух реквизитов адресации Роль исполнителя и Подразделение. Однако в регистре адресации записей с такой комбинацией реквизитов нет. Поэтому, добавим в регистр запись следующего вида:

Таблица Сотрудник Федоров Роль исполнителя Руководитель отдела Подразделение | Отдел продаж Проверим, что теперь задача по утверждению счета появилась в списке невыполненных задач у Федорова (см. Рисунок 50).

Рис. 51. Заполнение реквизитов адресации при создании задачи Утверждение счета Рис. 52. Вид списка невыполненных задач сотрудника Федорова 7. Активизируем показанную на рисунке задачу. В открывшейся форме счета установим трехпозиционный переключатель в положение Утвержден. Запишем документ.

Рис. 55. Вид сообщения в момент формирования задачи на оплату 9. Задача по оплате товаров адресована бухгалтеру. Поэтому список невыполненных задач у Федорова пуст. По условию задачи бухгалтером работает Петров. Войдем в систему под Петровым и проверим его список невыполненных задач:

Рис. 56. Вид списка невыполненных задач сотрудника Петрова 10. Откроем форму текущего бизнес-процесса и посмотрим изменения, произошедшие в карте маршрута:

Рис. 57. Вид карты маршрута бизнес-процесса Продажа товаров 4 после формирования задачи Петрову по оплате товаров 11. После выполнения задачи по оплате товаров будет создана задача на отгрузку:

Рис. 58. Вид сообщения в момент формирования задачи на отгрузку 12. Проверьте, что данная задача не отображается в списке невыполненных задач ни у одного сотрудника. Это обстоятельство опять связано с отсутствием необходимых записей в регистре адресации. Внесем в регистр необходимые изменения. Окончательный состав записей регистра сведений Регистр адресации приведен на рисунке 59:

Рис. 60. Окончательный состав записей регистра адресации 13. Убедитесь, что у Сидорова в списке невыполненных задач отображается задача по отгрузке:

Рис. 61. Вид списка невыполненных задач сотрудника Сидорова 14. Отгрузим товар. Убедимся, что бизнес-процесс завершен:

Рис. 50. Бизнес-процесс Продажа товаров 4 завершен Упражнение № В режиме 1С:Предприятия создайте еще два бизнес-процесса. При прохождении одного - выберите вариант изменения скидки. При прохождении другого - вариант неутвержденного счета.

Приложение №1. Решенные упражнения Упражнение №1 Сотрудник Иванов Федоров Петров Роль исполнителя Подразделение Отдел продаж Отдел продаж Бухгалтер Упражнение № 5 Текст обработчика события Обработка интерактивной активации точки действия Утверждение счета Процедура УтверждениеСчетаОбработкаИнтерактивнойАктивации (ТочкаМаршрутаБизнесПроцесса, Задача, СтандартнаяОбработка) Счет.ПолучитьФорму().Открыть();

СтандартнаяОбработка = Ложь;

КонецПроцедуры Упражнение № 6 Текст обработчиков события При завершении точек завершения Завершение и Отмена Процедура ЗавершениеПриЗавершении(ТочкаМаршрутаБизнесПроцесса, Отказ) Сообщить("Нормальное завершение бизнес-процесса: " + """" + ЭтотОбъект.Метаданные().Синоним + иипн\.

КонецПроцедуры Процедура ОтменаПриЗавершении(ТочкаМаршрутаБизнесПроцесса, Отказ) Сообщить("Завершение бизнес-процесса отменой: " + """" + ЭтотОбъект.Метаданные().Синоним + " " " ") ;

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

Если ЗадачаОбъект.ПроверитьВыполнение{) ЗадачаОбъект.ВыполнитьЗадачу();

КонецЕсли;

Тогда Последовательность действий, которая произойдет в результате его отработки, показана на рисунке, приведенном ниже Обработка вызова метода ПроверитьВыполнение () Вызов обработчика ОбработкаПроверкиВыполнения(<Результат>) у задачи Если Результат = ЛОЖЬ, то метод ПроверитьВыполнение () сразу возвращает ложь. Предназначен для проверки достаточных условий, чтобы считать задачу выполненной Вызов обработчика ОбработкаПроверкиВыполнения (<Точка маршрута б и з н е с - п р о ц е с с а >, < 3 а д а ч а >, < Р е з у л ь т а т > ) у соответствующей точки маршрута Можно использовать только для точек действия.

Возврат результата вызова обработчика из предыдущего пункта. Если Р е з у л ь т а т = ИСТИНА, то вызов метода ВыполнитьЗадачу () Последовательность действий системы при переходе на точку маршрута Вложенный бизнеспроцесс 2. Создать новый бизнес-процесс с помощью пункта главного меню Прочие - Начать согласование. При этом должна открыться форма настройки согласования:

3. 4.

5.

6.

a. Выберите документ для согласования, например, Расходная накладная;

b. Установите контрольный срок;

c. Если по окончании обхода всех рецензентов нужно обработать результаты согласования и, возможно, провести согласование повторно, то установите флажок Нужно обработать рецензии;

d. Укажите пояснение, которое может кратко характеризовать суть и причину согласования;

e. Заполните список рецензентов. При этом нужно учитывать, что, в соответствии с используемой системой адресации каждый рецензент может описываться либо колонкой Рецензент, либо парой колонок Подразделение и Роль исполнителя;

f. Нажмите кнопку <ОК>;

При старте бизнес-процесса Инициатор должен быть определен по текущему пользователю и выдано сообщение о старте бизнес-процесса;

Если список рецензентов пуст, то должна быть сформирована задача по определению списка рецензентов. При нажатии на кнопку <ОК> должна быть опять открыта показанная выше форма. Кроме того, данная форма открывается при активации рассматриваемой задачи;

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

Если список рецензентов заполнен, то для каждого рецензента должны быть сразу сформированы задачи На согласование с установленным контрольным сроком. Для рецензирования используется специальная форма, в которой флажок Согласен показывает согласие данного рецензента с согласовываемым документом. Отображаемая информация и в первой, и во второй формах должна быть согласована;

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

8. При нажатии на кнопку <ОК> происходит выполнение задачи.

Представление данных в информационной базе Таблицы объектов Х Бизнес-процессы о _BPRoutePoint - таблица точек маршрута бизнес-процесса для каждого бизнес-процесса;

о _BusinessProcess - основная таблица бизнес-процесса;

о _BusinessProcess_VT - табличная часть бизнес-процесса для каждой табличной части. Х Задачи о _Task - основная таблица задачи;

о _Task_VT - табличная часть задачи для каждой табличной части. Индексы таблиц базы данных Бизнес-процессы. Основная таблица бизнес-процесса Индекс Ссылка Дата + Ссылка Номер + Ссылка Завершен + Дата + Ссылка ВедущаяЗадача + Ссылка Реквизит + Ссылка Условие Всегда. Всегда. Свойство Длина номера не равно 0. Всегда Всегда Для реквизита Реквизит свойство Индексировать установлено в значение Индексирование. Для реквизита Реквизит свойство Индексировать установлено в значение Индексировать с доп. упорядочиванием. Бизнес-процесс включен в критерий отбора через реквизит "Реквизит".

Реквизит + Дата + Ссылка Реквизит Таблица точек маршрута бизнес-процесса Индекс Порядок + Ссылка Условие и описание Всегда. Поле Порядок таблиц точек соответствует порядку в котором точки маршрута были введены в графическую схему бизнес-процесса.

Задачи Индекс Ссылка Дата + Ссылка Номер + Ссылка Наименование + Ссылка Выполнена + Наименование Условие Всегда. Всегда. Свойство Длина номера не равно 0. Всегда Всегда + Ссылка Выполнена + Дата + Ссылка БизнесПроцесс + ТочкаМаршрута + Ссылка Выполнена + БизнесПроцесс + ТочкаМаршрута + Ссылка БизнесПроцесс + Дата + Ссылка Реквизит + Ссылка Всегда Всегда Всегда Всегда Для реквизита Реквизит свойство Индексировать установлено в значение Индексирование. Для реквизита Реквизит свойство Индексировать установлено в значение Индексировать с доп. упорядочиванием. Задача включена в критерий отбора через реквизит Реквизит.

Реквизит + Дата + Ссылка Реквизит Задача на самостоятельную работу Создайте новую информационную базу, загрузите в нее начальную конфигурацию и решите предложенную задачу. Компания занимается продажей автомобилей двух марок: Лада и BMW. Причем, каждой маркой торгует свой отдел. Структура компании: Сотрудник Иванов Петров Суриков Сидоров Степанов Федоров Федоров Должность Менеджер Бухгалтер Старший бухгалтер Начальник отдела Менеджер Начальник отдела Начальник отдела Отдел BMW Бухгалтерия Бухгалтерия Лада Лада BMW Торговый зал 1. Старт бизнес-процесса осуществляется в форме:

2. Задача Оформить сводный заказ. По двойному клику мышью или нажатию клавиши в списке задач должна открываться указанная выше форма. После выполнения задачи должны сформироваться один или два процесса по оформлению документов (по количеству указанных в бизнес-процессе марок);

3. Задача Заказ на завод-изготовитель. По двойному клику мышью или нажатию клавиши в списке задач должны открываться форма документа Заказ на завод. Задача может быть интерактивно выполнена только в том случае, если стоит флаг Заполнен. При записи заказа подключить механизм оповещений;

4. Задача Растаможить. Выполняется только при работе с импортными автомобилями. 5. Задача Оформить документы на машину. Количество сформированных задач равно количеству продаваемых автомобилей. В наименовании задачи должна быть указана марка автомобиля;

6. Задача Начислить зарплату. Количество сформированных задач равно количеству сотрудников в отделе Бухгалтерия.

   Книги, научные публикации