Практическая работа №8. Разработка Бизнес-процессов в 1С:Предприятие



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

· предоставить пользователю возможность в режиме 1С:Предприятия видеть текущее состояние бизнес-процесса на карте маршрута;

· подключить механизм автоматического создания задач при продвижении но карте маршрута бизнес-процесса;

· при запуске в режиме "1С:Предприятие» на рабочем столе необходимо отобразить список невыполненных .задач текущего пользователя. Кроме того, пользователь должен иметь возможность видеть полный список задач.

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

· пользователь вручную осуществляет старт нового бизнес-процесса;

· в зависимости от карты маршрута стартовавшего бизнес-процесса автоматически должна быть создана соответствующая задача;

· выполнение созданной задачи приводит к созданию следующей задачи и так далее. Необходимо иметь в виду, что в зависимости от настройки карты маршрута, в каждой ее точке, может быть создана одна или несколько задач;

· после выполнения всех задач бизнес-процесс должен завершиться.

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

Задача. организуйте Бизнес-процесс для оплаты заказа поставщику и приемке товара.

 

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

 

 

1. Запустим программу и подключим пустую информационную базу без конфигурации

2. Запустим через конфигуратор подключенную информационную базу

3. Подключим каркасную конфигурацию

4.  Преиндексировать данные и Перезапустить Конфигуратор

 

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

 

6. Находим в дереве конфигурации элемент Общие|Подсистемы, создаем подчиненную подсистему БизнесПроцессы (через правую клавишу мыши)

 

 

7. По условию задачи перед нами 3-мерная система адресации – «Сотрудник», «Подразделение», «Должность».

В каркасной конфигурации уже есть два подходящих справочника: ФизическиеЛица и Подразделения для измерений адресации «Сотрудник» и «Подразделение» соответственно. Создадим дополнительный справочникДолжности.

 

 

 

 

8. Включим справочники ФизическиеЛица,Подразделения и Должности в подсистемуБизнесПроцессы.

 

 

 

9. Заполним справочники предопределенными значениями, согласно условию задачи:

 

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

 

 

 

 

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

Таким образом, устанавливается связь ПараметраСеанса со справочником ФизическиеЛица. Данные ПараметраСеанса нужны, чтоб фильтровать задачи бизнес процесса по конкретному исполнителю.

 А) Чтобы пользователь мог произвести авторизацию в системе, ему нужно назначить роль. Создадим роль администратора, добавим одноименный объект в элемент дерева конфигурации Роли.

При этом в меню Действия, устанавливаем все права (то есть создаем роль с правами администратора):

 

 

Б) Создав роль, нужно сохранить конфигурацию базы данных, (через меню Конфигурация ® Сохранить конфигурацию в файл,а потомКонфигурация ® загрузить конфигурацию из файла) - игнорируя ругательства платформы, что не все объекты «раскиданы» по подсистемам. Заходим в меню Администрирование| Пользователи,

и формируем пользователей, всех с созданной ролью права администратора (для экономии времени):

Для каждого устанавливаем доступную роль Администратор(для экономии времени):..

 

В) Теперь создаем параметр сеанса ТекущийИсполнитель (с типом Справочник.Ссылка.ФизическиеЛица), в параметре сеанса будет храниться ссылка на авторизовавшегося пользователя, который ищется в справочникеФизическиеЛица. Для этого в модуль сеанса пропишем:

 

 

 

Процедура УстановкаПараметровСеанса(ТребуемыеПараметры)

ТекИсполнитель = Справочники.ФизическиеЛица.НайтиПоНаименованию(ИмяПользователя());

 

Если ТекИсполнитель.Пустая() Тогда

Сообщение = Новый СообщениеПользователю;

Сообщение.Текст = "Не найден сотрудник по наименованию "+ Строка(ИмяПользователя());

Сообщение.Сообщить();

Иначе

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

КонецЕсли;

КонецПроцедуры

 

11. Для того, чтобы система «знала», по каким правилам она должна производить адресацию к пользователям в бизнес-процессе для выполнения тех или иных задач, нужно создать регистр, в котором будут храниться правила адресации. В каркасной конфигурации уже есть нужный для этого регистр сведений РегистрАдресации.

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

 

 
   
 
   

 

 

12. Запускаем отладку и заполняем РегистрАдресации в соответствии с условием задачи (по структуре бизнес-процесса):

13. Закрываем отладку, возвращаемся в конфигуратор и создаем новый объект Задача элемента дерева конфигурации Задачи. В представление списка укажем «Список задач».

14. Поместим её в подсистему БизнесПроцессы и в свойство «Адресация» установим созданный ранее регистр сведений РегистрАдресации

 

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

15. В основном реквизите адресации укажем исполнителя.

 

16. Создадим бизнес процесс и установим у него ссылку на созданную ранее задачу (свойство «Задачи»). Поместим объект БизнесПроцессов подсистему БизнесПроцессы.

   

 

17. Чтобы пользователь мог видеть ход выполнения бизнес процесса нужно создать форму бизнес процесса и вставить в неё ГрафическуюСхему.

 А) При создании формы бизнес процесса, реквизит ВедущаяЗадача исключаем, в нашем случае он лишний.

б) Добавим в форму реквизит КартаМаршрута, и укажем тип: ГрафическаяСхема. Перенесем реквизит КартаМаршрута в элементы формы (перетаскиванием ):

В) Добавим в Команды Формы команду ОбновитьКарту,

Г) назначим ей действие следующего содержания:

&НаКлиенте

Процедура ОбновитьКарту(Команда)

ОбновитьСхему();

КонецПроцедуры

&НаСервере

Процедура ОбновитьСхему()

БизнесПроцесс = РеквизитФормыВЗначение("Объект");

КартаМаршрута = БизнесПроцесс.ПолучитьКартуМаршрута();

КонецПроцедуры

 

&НаСервере

Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка)

ОбновитьСхему();

КонецПроцедуры

 

Д) Перенесем команду ОбновитьКарту в Командную панель формы (соседняя левая часть окна перетаскиванием) , на форме автоматически создастся одноименная кнопка, обновления данных на карте.

е) Сгруппируем элементы формы, добавив две обычные Группы, с отображением как «Рамка группы». Номер и Дата добавим в Группа1, Стартован и Завершен в Группа2. В результате получим следующую форму, как на рисунке.

18. Переходим на закладку БизнесПроцесса «Прочее», осталось «нарисовать» саму карту маршрута бизнес процесса (это даже легче, чем делать схемы в Visio), назначая соответствующие должности и исполнителя для точек действия.

18. Настроим интерфейс. Выберем подсистему Бизнес процессы в дереве конфигурации, и через правую кнопку мыши выберем пункт "Открыть командный интерфейс". Бизнес процесс и Список задач поместим в Панель навигации.Важное.

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

20. Выберем корень дерева объектов конфигурации, вызовем контекстное меню и выберем пункт «Открыть рабочую область рабочего стола». Здесь по условию задачи нужно отобразить список невыполненных задач текущего пользователя. Для того, чтобы пользователь мог видеть список собственных задач, создадим специальную форму списка задач, уберем галочку "назначить основной", назовем форму как, ФормаСпискаПоИсполнителю, при этом установим дополнительно вывод на форму реквизитов Исполнитель,Подразделение, Должность:

 

21. В свойствах динамического списка в качестве основной таблицы необходимо указать:

22. Чтобы пользователь видел список невыполненных задач, в настройке списка необходимо указать Отбор:

 

23. В модуле формы добавим процедуру:

 

&НаСервере

Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка)

Заголовок = "Список невыполненных задач по исполнителю: " +ПараметрыСеанса.ТекущийИсполнитель;

КонецПроцедуры

 

 24. Создав форму списка задач по исполнителю, выберем корень дерева объектов конфигурации, вызовем контекстное меню и выберем пункт «Открыть рабочую область рабочего стола», добавим в левую колонку созданную форму ФормаСпискаПоИсполнителю.

 25. Перейдем в свойства объекта Задача, на закладку «Формы» и убедимся, что ФормаСпискаПоИсполнителю не установлена формой по умолчанию!

Если это так, то нажмем крестик, таким образом, удалим из списка форм по умолчанию созданную форму. Это нужно, чтобы отображать на рабочем столе текущего пользователя только его список невыполненных задач. А для меню «Список задач» в «Панели Навигации.Важное» форма списка задач будет генерироваться системой автоматически, отображая тем самым по умолчанию задачи всех пользователей.

26. Сохраняем созданную конфигурацию (не как файл !!!!)

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

 

Отчет по лабораторной работе

1. Скриншоты выполнения бизнес процесса в режиме пользователя.

2. Каталог с Файлами конфигурации.

3.  Скриншоты бизнес-процесса, его маршрутная карта, все программные модули с кодами.


Дата добавления: 2018-04-04; просмотров: 3030; Мы поможем в написании вашей работы!

Поделиться с друзьями:






Мы поможем в написании ваших работ!