Бизнес-процесс "Отсутствие сотрудника"
Допустим, что один из сотрудников - менеджер отдела логистики Семен Белых - заболел и не вышел на работу. В этом случае запускается процесс "Отсутствие сотрудника", в ходе которого происходит выяснение причин его отсутствия и предпринимаются все необходимые в такой ситуации действия.![](/upload/iblock/04c/Absence_1.png)
Первая задача - указать информацию об отсутствующем менеджере, в том числе его руководителя - направляется системой в отдел кадров.
![](/upload/iblock/164/Absence_2.png)
Руководитель должен назначить заместителя на время отсутствия Семена Белых.
![](/upload/iblock/1df/Absence_3.png)
Администратор информационной системы адресует все задачи Семена Белых его заместителю.
![](/upload/iblock/e54/Absence_choice.png)
Далее, в зависимости от того, какую причину отсутствия сотрудника указали в отделе кадров ("Болезнь", "Другое" или "Неизвестно"), система идет по одной из трех ветвей.
![](/upload/iblock/e41/Absence_4.png)
Семен Белых не явился на работу по болезни, поэтому система идет по ветке "Болезнь" и направляет в отдел кадров задачу - получить от сотрудника больничный лист.
![](/upload/iblock/9a7/Absence_5.png)
Руководителю отдела кадров ставится задача проверить достоверность больничного листа.
![](/upload/iblock/798/Absence_IF2.png)
В зависимости от решения, принятого руководителем отдела кадров, система идет далее по одной из двух ветвей ("Да" или "Нет").
![](/upload/iblock/8eb/Absence_IFclause2.png)
Если бы руководитель отдела кадров счел предоставленный больничный лист недостоверным, система пошла бы по ветке "Нет" и снова направила бы в отдел кадров задачу получения больничного листа.
![](/upload/iblock/7a7/Absence_6.png)
Но в нашем случае больничный лист оказался достоверным (ветка "Да"). Тогда система ставит себе следующую задачу - автоожидание окончания отсутствия сотрудника. Это означает, что процесс временно приостанавливается до наступления даты выхода на работу Семена Белых, которую указали в отделе кадров.
![](/upload/iblock/fac/Absence_7.png)
Пусть Семен Белых вышел на работу в назначенный день. Тогда его руководитель должен выставить об этом отметку. Если бы Семен Белых не появился на работе, руководитель должен был бы указать новую дату выхода.
![](/upload/iblock/b0a/Absence_IF3.png)
В зависимости от того, выставил ли отметку руководитель Семена Белых, система идет далее по одной из двух ветвей ("Да" или "Нет").
![](/upload/iblock/324/Absence_IFclause3.png)
Если бы Семен Белых не вышел на работу в назначенный день, то руководитель указал бы новую дату выхода, и система пошла бы по ветке "Нет". Тогда произошел бы возврат к задаче "Автожидание окончания отсутствия сотрудника", после чего руководителю снова была бы поставлена та же задача и т.д. до тех пор, пока Семен Белых не вышел бы на работу.
![](/upload/iblock/25f/Absence_8.png)
Но в нашем случае Семен Белых вышел на работу в указанный день (ветка "Да"), поэтому теперь администратор должен назначить ему задачи, которые временно были адресованы заместителю.
![](/upload/iblock/532/Absence_9.png)
После этого система направляет в отдел кадров задачу оформления документа об отсутствии Семена Белых, где будет указана вся необходимая информация. На этом процесс завершается.
![](/upload/iblock/5b8/Absence_12.png)
А теперь вернемся в тот момент, когда система должны была пойти по одной из трех ветвей: "Болезнь", "Другое" или "Неизвестно". Могло оказаться так, что в отделе кадров не смогли выяснить причину отсутствия Семена Белых, и система пошла по ветке "Неизвестно". Тогда отдел кадров получает задачу выяснить и указать эту причину.
![](/upload/resize_cache/iblock/0d7/450_600_1/Absence_IFclause4.png)
Если отдел кадров не может выяснить причину отсутствия Семена Белых, т.е. указывает "Неизвестно", то система снова возвращается в точку выбора одного из трех вариантов и идет по ветке "Неизвестно". Таким образом, отдел кадров продолжает получать одну и ту же задачу - выяснить причину отсутствия сотрудника - до тех пор, пока не будет указано значение, отличное от "Неизвестно".
![](/upload/iblock/e1f/Absence_10.png)
Предположим, что Семен Белых не вышел на работу не по болезни. Тогда система идет по ветке "Другое" и направляет в отдел кадров задачу получить от него документ-основание об отсутствии.
![](/upload/iblock/093/Absence_11.png)
Следующая задача - проверить достоверность этого документа - ставится руководителю отдела кадров.
![](/upload/iblock/cc8/Absence_IF1.png)
В зависимости от того, счел ли руководитель отдела кадров документ достоверным, система идет далее по одной из двух ветвей ("Да" или "Нет").
![](/upload/iblock/625/Absence_IFclause1.png)
Если документ-основание недостоверен, система идет по ветке "Нет" и снова направляет в отдел кадров задачу получить от сотрудника документ об отсутствии. Затем руководитель должен еще раз принять решение о его достоверности. Это продолжается до тех пор, пока руководитель не сочтет документ-основание достоверным.
![](/upload/resize_cache/iblock/277/450_600_1/Absence_EndClause.png)
Предположим, что система пошла по ветке "Да". В этом случае далее система идет так, как это было описано ранее - происходит автоожидание окончания отсутствия сотрудника и т.д., согласно описанным выше шагам (см. рис.)