Пояснительная записка - Федоренко АВ 943 группа Хабаовск 2015 (1218829), страница 6
Текст из файла (страница 6)
End If
cn.Connectionstring = "Provider=*******;lntegrated Security=*****;" & "Initial Catalog=*****;Data source=******" cn.Open
cmd.ActiveConnection = cn
cmd.CommandType = adCmdText
sqlca = "select NOP from [check].[dbo].[ORFI_PHONES] where Phone_id=" & UserForml.phoneId &
cmd.CommandText = cmd.CommandText & sqlca
Set rec = cmd.Execute
If rec.Fields(0).Value = 0 Then
Run phone_boxe(rec.Fields(0).Value, 0)
Else
For i = 1 To rec.Fields(0).Value
If Application.Wait(Now + TimeValue("0:00:01")) Then
sqlca = "select * from [CHECK].[dbo].[ORFI_PHONES_BLOCK] where Phone_id=" & phone_block_id cmd.CommandText = cmd.CommandText & sqlca
rec2.Open "select * from [CHECK].[dbo].[ORFI_PHONES_BLOCK] where Phone_id=" & phone_block_id, cn
Set rec2 = cn.Execute("select * from
[check],[dbo].[ORFI_PHONES_BLOCK] where Phone_id=" &
UserForml.phoneId)
Run phone_boxe(rec.Fields(0).Value, 1)
End If
В результате выполнения программа проверяет наличие ранее проведенных проверок по заявке на сервере, и запускает функцию по загрузке данных на форму.
Function phone_boxe(num As Integer, nn As Integer)
If pnum <= 20 Then For j = 1 To num
Set mytextbox= UserForm3.Controls.Add("Forms.TextBox.l", "MyTextBox" & pnum)
mytextbox.Top = 20 + pnum2
mytextbox.Width = 100
mytextbox.MaxLength = 10
Set mycombobox= UserForm3.Controls.Add("Forms.ComboBox.l", "MyComboBox" & pnum)
mycombobox.Top = 20 + pnum2
mycombobox.Left = 100
mycombobox.Width = 300
Set MyComBox = UserForm3.Controls.Add("Forms.TextBox.l", "MyComBox" & pnum)
MyComBox.Top = 20 + pnum2
MyComBox.Left = 400
MyComBox.Width = 120
form_box = 25
For i = 2 To ThisWorkbook.Sheets("list").Cells(Rows.Count, ThisWorkbook.Sheets("Form").Cells(form_box, 5).Value).End(xlUp).row
mycombobox.Addltem ThisWorkbook.Sheets("list").Cells(i, ThisWorkbook.Sheets("Form").Cells(form_box, 5).Value).Value
Next
If nn = 1 Then
mytextbox.Text = rec2.Fields(l).Value
mycombobox.Text = rec2.Fields(2).Value
MyComBox.Text = rec2.Fields(3).Value
rec2.MoveNext
End If
pnum2 = pnum2 + 20
pnum = pnum + 1
If pnum > 9 Then
Me.ScrollBars = fmScrollBarsBoth
Me.ScrollHeight = Me.lnsideHeight * (1.1 + (pnum - 9) / 9)
End If
Next
Else End If
End Function
Результатом выполнения является загруженная форма, которая показана на рисунке 13.
Рисунок 13 – Загруженная форма прозвона логического телефона
Если сотруднику необходимо добавить дополнительную строчку, то при нажатии кнопки «Добавить +» функции описанные выше повторяются, за тем исключением, что счетчик количества доступных строчек увеличивается на единицу и в форму добавляется новая строчка (рисунок 14). Таким образом сотруднику доступно до 10 вариантов прозвонов.
Рисунок 14 – Пример добавление дополнительных строк для прозвона
Когда вся информация о проверке занесена пользователь поставить заявку в статус «выполнено». Для этого ему нужно нажать соответствующую кнопку на форме. В результате информация о заявке будет занесена в базу данных, а по заявке в таблице с результатами будет стоять статус «выполнено». После того, как информация на сервере будет обновлена, заявка исчезнет из рабочего файла Excel.
sqlca = "insert into [check].[dbo].[ORFI_Case_appl] " & _
"values((select CaseId from
[check].[dbo].[ORFI_CASE_info_v2] where Query_id=" & Cells(ActiveCell.row, 1) & ")," & Cells(ActiveCell.row, 2).Value & ", suser_name(), " & status & ",&ComboBoxl.Value &”,”& TextBoxl.Value &”,”& ComboBox2.Value &”,”& TextBox2.Value &”,”
& ComboBox3.Value &”,” & TextBox3.Value &”,”& ComboBox4.Value &”,”&TextBox4.Value &”,”& ComboBox35.Value &”,”&TexBoxl5.Value &'",“&ComboBox6.Value &”,”& TextBox6.Value &”,”& TextBox8.Value &”,”& ComboBox10.Value &”,”& TextBox9.Value &”,”& ComboBox11.Value &”,”& TextBox10.Value &”,”& ComboBoxl2.Value &”,”& ComboBox34.Value &”,”&ComboBox39.Value &”,”& ComboBox37.Value &”,”& ComboBox36.Value &”,”&ComboBox30.Value &”,”& ComboBox31.Value &”,”& ComboBox32.Value &”,”&
ComboBox33.Value &”,”& TextBoxl4.Value &”,”& ComboBoxl7.Value &”,”&ComboBoxl8.Value &”,”& TextBoxl3.Value &”,0,sysdatetime(),”’ & TextBox5.Value & '",0,null,null,null,null,null,’”& ComboBox40.Value & "')"
cmd.CommandText = cmd.CommandText & sqlca sqlca = "insert into [check].[dbo].[ORFI_ANOTHER] select" & Cells(ActiveCell.row, 1) &”,”&UserForml.TextBoxl6.Text &”,”& Cells(ActiveCell.row, 92) &”,”& Cells(ActiveCell.row, 93) &”,”&
Cells(ActiveCell.row, 94) &”,”& Cells(ActiveCell.row, 95) &”,”& Cells(ActiveCell.row, 96) & "7" &Cells(ActiveCell.row, 97) & "7" & Cells^ctiveCell.row, 98) && Cells(ActiveCell.row, 99) &&
Cells(ActiveCell.row, 100) & "7" & Cells(ActiveCell.row, 101) && Cells(ActiveCell.row, 102) &”,”& Cells(ActiveCell.row, 103)& '",1"cmd.CommandText = cmd.CommandText & sqlca
sqlca = "insert into [check],[dbo].[ORFI_CASE_TIME] select" & Cells(ActiveCell.row, 1) &”,”& UserForm1.TextBoxl6.Text & ",convert(time(7),"' & time_cor & "')"cmd.CommandText = cmd.CommandText & sqlca sqlca = "insert into [check],[dbo].[ORFI_CASE_SAS_SNA] select" & Cells(ActiveCell.row, 1) &”,”& UserForml.TextBoxl6.Text &”,”&UserForml.ComboBox41.Value &”,”& UserForml.TextBoxl7.Text & '",null"cmd.CommandText = cmd.CommandText & sqlca Debug.Print sqlca
cmd.Execute Run add_phone_reac Cells(1,1) = sqlca sqlca = "update [check].[dbo].[ORFI_Case_appl] set detalization_reac="' & ComboBox40.Value & "' where request_id=" & Cells(ActiveCell.row, 2).Value & " and Case_id=(select Casejd from [check].[dbo].[ORFI_CASE_info_v2] where Query_id=" & Cells(ActiveCell.row, l).Value & ") cmd.CommandText = cmd.CommandText & sqlca If Err.Number <> 0 Then MsgBox "Dont Panic!" Else Run update_status End If
Таким образом при создании рабочей формы ОРФИ были реализованы все технические требования, которые поставлены заказчиком. Так же были добавлены дополнительные функции такие как: проверка на наличие запрещенных символов в excel файле; автоматическая отправка уведомления руководителя отдела о статусах проверки; возможность возвращать в работу заявки, которые по определенным причинам были отправлены на сервер по ошибке; возможность автоматического заполнения поля с итоговыми комментариями, согласно выставленным результатам; возможность проверить ссуду на раннее проведенную проверку СЭЗ; возможность загрузки с сервера информации о раннее проведенной поверки ОРФИ, если она была.
Далее подробно опишем исполняемый функционал программных приложений на примере взаимодействия ОРФИ с бизнес-процессом.
5 ОПИСАНИЕ ПРОЦЕССА ПРОВЕРКИ КЕЙСА СОТРУДНИКАМИ ОРФИ С ИСПОЛЬЗОВАНИЕМ КЛИЕНСТКОГО ПРИЛОЖЕНИЯ
После того, как создана база данных, а также написан комплекс клиентских программных приложений, продемонстрируем выполненную работу на примере алгоритма действия сотрудниками ОРФИ.
5.1 Постановка задачи в работу ОРФИ
Ответственному сотруднику на электронную почту приходит уведомление о поступлении нового кейса в работу от заказчика (рисунок 15).
Рисунок 15 – Уведомление о поступлении задачи
Ответственный сотрудник открывает файл «4_ORFI», в котором отображаются все задачи, поступившие в работу ОРФИ. Составные части реестра представлены в приложении А.
Если на момент получения Уведомления файл «4_ORFI» был закрыт, ответственному сотруднику достаточно открыть файл, и информация о новых реестрах, поступивших в работу ОРФИ, подгрузится автоматически. Если на момент получения Уведомления файл «4_ORFI» уже был открыт на рабочем столе, тогда для обновления информации ответственному сотруднику необходимо отжать кнопку «Обновить» (рисунок 16).
Рисунок 16 – Рабочее окно файла «4_ORFI»
После нажатия кнопки так же происходит обновление рабочего файла.
5.2 Распределение задач в работу сотрудникам ОРФИ
Для постановки в работу сотрудникам ОРФИ новых заявок необходимо распределить кейс по сотрудникам. Для этого в файле «4_ORFI» в именных ячейках каждого сотрудника в ячейках с HR/без HR проставляем количество заявок, которое необходимо направить сотруднику в работу, учитывая текущую нагрузку. При этом в «желтых» ячейках под каждой фамилией количество заявок в работе будет суммироваться по каждому сотруднику, т.е. заявки в работе уже находящиеся в работе складываются с заявками только что распределенные в работу (рисунок 17). После того, как все заявки из кейса будут распределены по специалистам ОРФИ отжимаем кнопку «В работу». Кейс от заказчика будет автоматически распределен по сотрудникам в том количестве заявок, которое проставлено в именные ячейки каждого сотрудника.
Рисунок 17 – Распределение заявок по сотрудникам
После того, как заявки по кейсу распределены между сотрудниками файл автоматически обновится и заявки отправленные в работу отобразятся в общем списке заявок в работе.
5.3 Обработка заявок на уровне специалиста ОРФИ
После того как ответственный сотрудник отжимает кнопку «В работу», заявки автоматически распределяются в работу сотрудникам ОРФИ. Сотрудники, кому в работу назначены заявки к проверке, получают по электронной почте уведомление (рисунок 18).
Рисунок 18 – Уведомление сотрудника о поступлении кейса