Автоматическая настройка замещения пользователей

>300
пользователей
>90
ТОП-менеджеров
на 20%
снижение количества неисполненных заданий
на 50%
снижение затрат человеко-часов на настройку
Заказчик: ФГБОУ ВО Югорский государственный университет
Исполнитель: Самостоятельно

Автоматическая настройка замещения пользователей

В процессе развития документооборота в организации (ФГБОУ ВО «Югорский государственный университет») очень часто пользователи обращались к администраторам с просьбой добавить замещения (автоматизированных пользователей более 300). Особенно часто возникали проблемы с отпусками и командировками – пользователи не оставляли заместителей, соответственно задачи не исполнялись.

Описание и возможности решения

Решение позволяет автоматизировать процесс настройки замещений пользователей с учетом интеграции Галактика-ERP, а также добавления новых пользователей в СЭД DIRECTUM (задания отправляются за 5 дней до отпуска/командировки).

Состав решения

  1. Справочник по управлению отпусками и командировками работников (используется в большинстве типовых маршрутов);
  2. Сценарий обновления справочника по управлению отпусками и командировками работников из Галактика-ERP;
  3. Сценарий вычисления отпусков и командировок сотрудников в Галактика-ERP с последующей отправкой задач на создание замещений в СЭД DIRECTUM с использованием справочника исключений (справочника по управлению отпусками и командировками работников);
  4. Типовой маршрут согласования замещений;
  5. Механизм автоматического создания пользователей с запросом данных о пользователях из Галактика-ERP.

Порядок формирования задач на выбор замещающих:

  1. Для вычисления отпусков и командировок сотрудников выполняется SQL-запрос к Галактика-ERP из СЭД DIRECTUM.
  2. На стороне СЭД DIRECTUM формируются и отправляются задачи по типовому маршруту на согласование замещений.
  3. Работник выбирает своего заместителя в списке работников, если нужного работника нет – формирует запрос на создание пользователя.
  4. Отправка задачи на согласование замещения:
  • если работник есть в СЭД – отправляется задание на согласование замещения;
  • если работника нет в СЭД – отправляется задание для администратора на создание пользователя, после генерации пользователя происходит отправка задания на согласование замещения.
  1. Настройка замещения.

 

Рисунок 1. Типовой маршрут «Выбор замещающих лиц»

Рисунок 2. Интерфейс задачи на выбор замещающего

Рисунок 3. Интерфейс задачи на создание пользователя

Рисунок 4. Справочник исключений

Фрагмент программного кода выполнения SQL-запроса к Галактика-ERP из DIRECTUM

  ADOConnectOtp = CreateObject('ADODB.Connection') 
  ADOConnectOtp.Provider = "msdaora"
  ADOConnectOtp.ConnectionString = "Data Source=******;Persist Security Info=True;User ID=" & 
                                    Конст('******') & ";Password=" & Конст('********') 
  ADOConnectOtp.Open
  ADOComOtp = CreateObject('ADODB.Command') 
  ADOComOtp.ActiveConnection = ADOConnectOtp 
//~~~~запрос отпуска~~~~               
  ADOComOtp.CommandText = "select a.fstrtabn tabel, 
                                  p.ffio FIO, 
                                  to_char(to_oradate(v.ffactyearbeg), 
                                  'dd.mm.yyyy') nach, 
                                  to_char(to_oradate(v.ffactyearend),'dd.mm.yyyy') kon 
                           from persons p 
                           inner join Appointments A on A.fperson = P.fnrec 
                           inner join vacations v on v.fappoint=a.fnrec 
                            
                           where 
                            to_oradate(v.ffactyearbeg)=to_date(to_char(sysdate+5,'dd.mm.yyyy'), 
                                                              'dd.mm.yyyy')and 
                            to_oradate(v.ffactyearend)>=sysdate-1 and 
                            (A.fDisMissDate = 0 or to_oradate(A.fDisMissDate) >= sysdate) and 
                            A.flprizn=0 and 
                            not exists (select a1.fstrtabn tabel1, 
                                               p.ffio FIO1, 
                                               to_oradate(v.ffactyearbeg) nach1, 
                                               to_oradate(v.ffactyearend) kon1 
                            from persons p 
                            inner join Appointments A1 on A1.fperson = P.fnrec 
                            inner join vacations v on v.fappoint=a1.fnrec 

                           where 
                            to_oradate(v.ffactyearbeg)<=to_date(to_char(sysdate,'dd.mm.yyyy'),  
                                                                'dd.mm.yyyy')and 
                            to_oradate(v.ffactyearend)>=sysdate-1 and
                            A1.flprizn=0 and
                            a.fstrtabn=a1.fstrtabn) 
                           order by p.ffio
                          "                         

//~~~~выполнить запрос~~~~ 
  objRecordsetOtp = ADOComOtp.Execute 

//~~~~обработка результатов~~~~

  ADOConnectOtp.Close() 
//~~~~Старт задач~~~~

Результаты

  • Снизились затраты человеко-часов на настройку замещения ~50%;
  • 90% замещений настраиваются через данное решение;
  • снижение на 20% количество неисполненных, нерассмотренных заданий;
  • срок реализации – 2 месяца.
  • топ-менеджеров более 90
  • автоматизированных пользователей более 300.

Команда проекта

  • Богданов Никита;
  • Гончаренко Олег.
Номинация: Forum
5
Подписаться
Опубликовано:
12 декабря 2018 в 09:29
  • 0

Комментарии

Пока комментариев нет
Авторизуйтесь, чтобы написать комментарий