{"id":14284,"url":"\/distributions\/14284\/click?bit=1&hash=82a231c769d1e10ea56c30ae286f090fbb4a445600cfa9e05037db7a74b1dda9","title":"\u041f\u043e\u043b\u0443\u0447\u0438\u0442\u044c \u0444\u0438\u043d\u0430\u043d\u0441\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435 \u043d\u0430 \u0442\u0430\u043d\u0446\u044b \u0441 \u0441\u043e\u0431\u0430\u043a\u0430\u043c\u0438","buttonText":"","imageUuid":""}

SQL. Оптимизируем процесс поиска системности нарушений по каждому сотруднику

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

Чтобы сделать вывод о необходимости применения наказания проводится анализ повторяющихся нарушений за последние 12 месяцев. Поскольку анализ в ручном режиме занимал существенное время, было решено оптимизировать этот процесс.

Так, в MС Ассеss мы реализовали алгоритм автоматического поиска повторяющихся нарушений в Базе Данных по табельному номеру сотрудника, допустившего нарушение. Автоматический поиск запрашиваемых данных осуществляется при помощи запроса SQL. В результате формируется отчет за последние 12 месяцев с перечнем сотрудников, допустивших нарушения, указанием количества повторных случаев, видов нарушений и вида ответственности.

Итак, предлагаем вашему вниманию практический инструмент, который позволит вам существенно сэкономить время для данной процедуры.

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

SELECT migr_vw_rep_VROS.KM_ID, migr_vw_rep_VROS.ActDate, migr_vw_rep_VROS.TB, migr_vw_rep_VROS.Division, migr_vw_rep_VROS.EmployeeFIO, migr_vw_rep_VROS.EmployeeTNum, migr_vw_rep_VROS.EmployeePosition, migr_vw_rep_VROS.ActPunkt, migr_vw_rep_VROS.ProcessStep, migr_vw_rep_VROS.MatrixPunkt, migr_vw_rep_VROS.ViolationTime, migr_vw_rep_VROS.ORDNum,

— форматирование столбца «табельный номер1» до 8 знаков. Этот шаг необходим чтобы соблюсти размерность поля в соответствии с форматом базы данных

migr_vw_rep_VROS.PunishmentMatrix,FORMAT([EmployeeTNum],"00000000") AS EmployeeTNum1 FROM migr_vw_rep_VROS

— выбор подразделения

WHERE migr_vw_rep_VROS.[TB]="СЗБ" AND

— получение даты акта от текущей даты за минусом 365 дней

(migr_vw_rep_VROS.[ActDate])>(DATE( )-365);

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

Данный пример наглядно демонстрирует, как можно с помощью простого запроса SQL оптимизировать процедуру по анализу повторяющихся нарушений, и, в дальнейшем, оценить систему внутреннего контроля в подразделении.

0
Комментарии
-3 комментариев
Раскрывать всегда