Управление учебным процессом ВУЗа- Интеграция с кадровой информационной системой  (раздел целиком)  (27.04.2024)
Интеграция с кадровой информационной системой

1. Руководство администратора

Автоматизированная заргузка данных кадрового учета из кадровой ИС.

Для осуществления автоматизированной загрузки необходимо проделать следующее:

  1. Выделить для обмена SMB-ресурс (далее - \\server\share.
  2. Внутри этого ресурса создать вложенную папку с именем "протоколы" без кавычек.
  3. Обеспечить автоматическое выкладывание файлов выгрузок из кадровой ИС на ресурс \\server\share. Файлы выгрузок должны удовлетворять следующим требованиям:
    • Файл информации о работниках
      Представляет собой рабочую книгу Microsoft Excel с единственным листом, на котором в строках, начиная со второй, расположены следующие данные:
      Номер колонки Наименование поля Требования к данным
      1 Идентификатор человека (физического лица) в кадровой ИС Значение должно быть уникальным в пределах всей выгрузки.
      2 Фамилия
      3 Имя
      4 Отчество
      5 Дата рождения Значение должно удовлетворять формату даты.
      6 Пол
      7 ФИО в винительном падеже
      8 ФИО в дательном падеже
      9 ФИО в родительном падеже

      Файл с информацией о работниках должен иметь имя, состоящие из временной метки и окончания "_CARD.XLS", например, "2011-02-23_CARD.XLS" или "2011-02-23T14-00-00_CARD.XLS".
    • Файл информации об ученых степенях
      Представляет собой рабочую книгу Microsoft Excel с единственным листом, на котором в строках, начиная со второй, расположены следующие данные:
      Номер колонки Наименование поля Требования к данным
      1 Идентификатор человека (физического лица)
      2 Ученое звание

      Файл с информацией об ученых степенях должен иметь имя, состоящие из временной метки и окончания "_Acad_Degrees.XLS", например, "2011-02-23_Acad_Degrees.XLS" или "2011-02-23T14-00-00_Acad_Degrees.XLS".
    • Файл информации о подразделениях
      Представляет собой рабочую книгу Microsoft Excel с единственным листом, на котором в строках, начиная со второй, расположены следующие данные:
      Номер колонки Наименование поля Требования к данным
      1 Идентификатор подразделения Идентификатор подразделения в кадровой ИС. Значение должно быть уникально в пределах всей выгрузки и не меняться от выгрузки к выгрузке.
      2 Идентификатор родительского подразделения в кадровой ИС Идентификатор родительского подразделения в кадровой ИС. Если ID родительского подразделения ноль, то подразделение находится на верхнем уровне иерархии.
      3 Вид подразделения Один из вариантов: "факультет", "отделение", "кафедра", "др. подразделение". Значение поля формируется на основании атрибута "Вид деятельности" Подразделения в кадровой ИС
      4 Наименование подразделения Полное наименование подразделения в кадровой ИС. Не должно быть подразделений с одним и тем же наименованием, принадлежащих одному и тому же родительскому подразделению.
      5 Шифр подразделения Шифр подразделения в кадровой ИС.
      6 Дата создания подразделения Значение должно удовлетворять формату даты.
      7 Дата расформирования подразделения Если значение =01.01.2099, то подразделение считается действующим.Если значение находится в диапазоне от текущей до 01.01.2099, не включая крайние значения, то подразделение считается подлежащим расформированию. Если значение даты относится к области прошлого, то подразделение является расформированным. Значение должно удовлетворять формату даты.
      8 Наименование в винительном падеже Наименование подразделения в кадровой ИС в винительном падеже.
      9 Наименование в предложном падеже Наименование подразделения в кадровой ИС в предложном падеже.
      10 Наименование в творительном падеже Наименование подразделения в кадровой ИС в творительном падеже.
      11 поле Наименование в родительном падеже Наименование подразделения в кадровой ИС в родительном падеже.
      12 Уровень вложенности Информационное поле, не участвует в загрузке

      Файл с информацией о подразделениях должен иметь имя, состоящие из временной метки и окончания "_STRUCTS.XLS", например, "2011-02-23_STRUCTS.XLS" или "2011-02-23T14-00-00_STRUCTS.XLS".
    • Файл информации о назначениях (работниках подразделений)
      Представляет собой рабочую книгу Microsoft Excel с единственным листом, на котором в строках, начиная со второй, расположены следующие данные:
      Номер колонки Наименование поля Требования к данным
      1 Идентификатор человека (физического лица)
      2 Идентификатор Работника
      3 Идентификатор назначения
      Идентификатор подразделения
      Наименование должности
      Наименование подразделения Информационное поле, не используемое модулем интеграции.
      Табельный номер
      Признак совместительства Одно из значений "штатный работник", "внутренний совместитель", "внешний совместитель
      Наименование категории персонала Одна из используемых в кадровой ИС категорий персонала (ППС, Н и т.д.). (Атрибут "Аналитика 1")
      10  Дата приема Значение должно удовлетворять формату даты
      11 Дата увольнения Значение должно удовлетворять формату даты. Если значение =01.01.2099, то работник считается действующим.
      12 Дата назначения Значение должно удовлетворять формату даты. Если значение =01.01.2099, то назначение считается действующим
      13 Дата окончания в должности Значение должно удовлетворять формату даты. Если значение =01.01.2099, то назначение считается действующим
      14 Фамилия Информационные поля, не используемые модулем интеграции.
      15 Имя
      16 Отчество
      17 Ставка  Дробное число

      Файл с информацией о назначениях должен иметь имя, состоящие из временной метки и окончания "_Works.XLS", например, "2011-02-23_Works.XLS" или "2011-02-23T14-00-00_Works.XLS".
  4. Создать командный файл со сценарием автоматической загрузки следующего содержания:
    01rem База данных.
    02rem Измените значние на параметры используемой базы данных
    03SET DATABASE=ora#owner/ownerpwd@instance
    04
    05rem Путь установки платформы "Мельница Данных".
    06rem Измените значние на реальный путь установки
    07SET MILLPATH=%ProgramFiles%\Data Mill
    08
    09rem SMB-ресурс, выделенный для обмена.
    10rem Измените значние на реальное имя ресурса обмена
    11SET SHARENAME=\\HOST\SHARE
    12
    13rem Имя пользователя для доступа к SMB-ресурсу, выделенному для обмена.
    14rem Измените значние на реальное имя пользователя.
    15SET SHAREUSER=User
    16
    17rem Пароль пользователя для доступа к SMB-ресурсу, выделенному для обмена.
    18rem Измените значние на реальное значение пароля.
    19SET SHAREUSERPASSWORD=userpwd
    20
    21chcp 1251
    22
    23net use P: %SHARENAME% %SHAREUSERPASSWORD% /USER:%SHAREUSER% /PERSISTENT:NO
    24
    25for %%r in (P:\*_BOSS_CARD.XLS) do call :process %%r TWorker
    26for %%r in (P:\*_BOSS_ACAD_DEGREES.XLS) do call :process %%r TPersAcadDegree
    27for %%r in (P:\*_BOSS_STRUCTS.XLS) do call :process %%r THSEDepartment
    28for %%r in (P:\*_BOSS_Works.XLS) do call :process %%r TDepWorkers
    29
    30net use P: /DELETE
    31
    32exit /B
    33
    34:process
    35SET LOGFILE=P:\ПРОТОКОЛЫ\%~n1
    36if exist %LOGFILE% exit /B
    37start /w "Импорт" rundll32 "%MILLPATH%\MillAppProvider.dll", ExecuteMethod %DATABASE% %2.SyncBoss "%1","%LOGFILE%"
    38exit /B
        
  5. Воспользуйтесь "Планировщиком задач" Windows для автоматизации запуска командного файла автоматически по нужному вам расписанию.

2. Руководство пользователя

Интеграция с системой БОСС-кадровик заключается в синхронизации данных четырех справочников:

  1. Работники ВУЗа
  2. Ученые степени
  3. Подразделения
  4. Работники подразделений

Синхронизация осуществляется на основе файлов формата MS Excel, выгружаемых из кадровой ИС в соответствии с определенными требованиями. Синхронизация справочников должна выполняться последовательно в приведенном выше порядке.

Для справочников Подразделения и Работники ВУЗа существует два варианта синхронизации:

- Первичная загрузка - первоначальная загрузка данных в БД.

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

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

Также операции синхронизации могут выполняться без участия пользователя в автоматизированном режиме. О настройке и использовании этой возможности можно прочесть в Руководстве администратора.


2.1. Синхронизация справочника "Работники"

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

БОСС, синхронизация работников

В качестве параметра процедуры запрашивают файл выгрузки из кадровой ИС в формате MS Excel. Выбор файла осуществляется при помощи стандартного диалога открытия файла MS Windows.

Процедура первичной загрузки реализована по следующему алгоритму:

  1. Для всех записей о работниках в справочнике Все работники устанавливается значение свойства Дата последней синхронизации, равное текущей дате и Результат синхронизации, равное Не найден.
  2. Для каждой записи исходного файла выполняется поиск работка в справочнике Все работники по полному совпадению значений свойств Фамилия, Имя и Отчество. Если такой работник найден, и дата рождения у него является пустой или совпадает с датой рождения, указанной в исходном файле для него устанавливаются значения полей Дата рождения (если она не была задана), Идентификатор физлица в кадровой ИС и Результат последней синхронизации, равный Синхронизировано.
  3. Если работник найден, но его дата рождения отличается от представленной в файле, то изменения свойств работника не произойдет, в файле протокола будет сделана запись о дублировании.
  4. Если работник не найден по ФИО, то будет создана новая запись о работнике. Результат последней синхронизации будет равен Добавлено.
  5. Записи о работниках, которые не будут найдены в файле-источнике сохранят значение свойства Результат последней синхронизации, равное Не найден.

Процедура синхронизации реализуется по следующему алгоритму:

  1. Для всех работников существующих в справочнике Все работники, системой должна установиться Дата последней синхронизации, равная текущей дате, и Результат последней синхронизации, равный Не найдено.
  2. Для каждой записи файла выгрузки физических лиц системой выполняется поиск работника в справочнике Все работники по его Идентификатору физического лица в кадровой ИС.
  3. В случае удачного поиска производится перезапись значений свойств для работника. В поле Результат последней синхронизации устанавливается значение Синхронизировано.
  4. Если запись не найдена, тогда система добавляет новую запись в таблицу Все работники. В поле Результат последней синхронизации устанавливается значение Добавлено.
  5. Таким образом, по завершении процедуры синхронизации для подразделений, не найденных в выгрузке из кадровой ИС в поле Результат последней синхронизации будет стоять значение Не найдено, установленное на шаге 1.

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

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


2.2. Синхронизация справочника "Ученые степени"

Синхронизация справочника  Ученые степени  должна выполняться только после того, как выполнена синхронизация справочников Работники и Подразделения, а также проведен анализ протоколов синхронизации и ручное исправление ошибок в необходимых случаях.

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

Синхронизация "Ученые степени"

В качестве параметра процедуры запрашивают файл выгрузки из кадровой ИС в формате MS Excel. Выбор файла осуществляется при помощи стандартного диалога открытия файла MS Windows.

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

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


2.3. Синхронизация справочника "Подразделения"

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

БОСС, синхронизация подразделений

В качестве параметра процедуры запрашивают файл выгрузки из кадровой ИС в формате MS Excel. Выбор файла осуществляется при помощи стандартного диалога открытия файла MS Windows.

Процедура первичной синхронизации предназначена для обнаружения случаев, когда подразделения, ранее не найденные при синхронизации или имеющие результат синхронизации Не синхронизировать, появились в выгрузке данных о подразделениях из кадровой ИС. Для подразделений, имеющих результат Не синхронизировать изменений в данных процедура не выполняет, она только информирует пользователя о том, что ряд подразделений теперь можно считать синхронизированными. Окончательное решение о синхронизации пользователь должен принять самостоятельно и выставить соответствующий результат синхронизации вручную. Процедура работает по следующему алгоритму:

  1. Для каждой записи файла-источника производится поиск подразделения в справочнике Все подразделения ВУЗа по наименованию и идентификатору родительского подразделения. Если подразделение найдено и у него не установлено значение свойства Идентификатор в кадровой ИС, то в зависимости от значения свойства Результат последней синхронизации будет выполнено одно из следующих действий:
    • Если Результат последней синхронизации равен Не найдено, то для подразделения будет установлено значение Идентификатор в кадровой ИС, Результат последней синхронизации равен Синхронизировано, также будут проставлены дополнительные свойства подразделения.
    • Если Результат последней синхронизации равен Не синхронизировать, то никаких действий над данными системы произведено не будет, но в протоколе будет сделана запись о том, что найдено подразделение из числа не подлежащих синхронизации, а также информация о значениях свойств, которые могут быть обновлены.
  2. По завершении обработки всех данных файла ряд подразделений, ранее считавшихся не найденными, будет синхронизировано. В случаях, когда в исходном файле были обнаружены подразделения, не подлежащие синхронизации, об этом будут сделаны записи в протоколе.

Процедура синхронизации реализуется по следующему алгоритму:

  1. Для всех подразделений, существующих в справочнике Все подразделения ВУЗа, устанавливается Дата последней синхронизации, равная текущей дате, и Результат последней синхронизации, равный Не найдено.
  2. Для каждой записи файла выгрузки из кадровой ИС системой выполняется поиск подразделения в справочнике системы по его Идентификатору в кадровой ИС. Возможные результаты поиска обрабатываются следующим образом:
    • В случае удачного поиска проверяется совпадение поля Идентификатор родительского подразделения в кадровой ИС. Если идентификатор родителя совпадает, то следующие поля перезаписываются из кадровой ИС:
      • Дата закрытия подразделения
      • Имя
      • Наименование
      • Наименование в винительном падеже
      • Наименование в предложном падеже
      • Наименование в творительном падеже
      • Наименование в родительном падеже
      • Признак типа подразделения
      В поле Результат последней синхронизации устанавливается значение Синхронизировано.
    • Если идентификатор родителя не совпадает, тогда система производит поиск записи в таблице Все подразделения ВУЗа со значением Идентификатор подразделения в кадровой ИС, совпадающим с искомым полем Идентификатор родительского подразделения в кадровой ИС.
    • Если найден родитель, производится запись нового значения Идентификатор родительского подразделения в кадровой ИС и меняется поле Родитель для этого подразделения в справочнике подразделений. В поле Результат последней синхронизации заносится значение Синхронизировано.
    • Если родитель не найден, тогда в поле Результат последней синхронизации заносится значение Найдены расхождения.
    • Если система не нашла запись с указанным идентификатором подразделения в кадровой ИС, тогда система производит поиск записи в таблице подразделений со значением Идентификатор подразделения в кадровой ИС, совпадающим с искомым полем Идентификатор родительского подразделения в кадровой ИС.
    • Если найден родитель, то система добавляет новую запись в таблицу Все подразделения ВУЗа, входящую в найденное родительское подразделение. В поле Результат последней синхронизации заносится значение Добавлено.
    • Если родитель не найден, то система добавляет запись в таблицу Все подразделения ВУЗа без привязки к родителю. В поле Результат последней синхронизации заносится значение Найдены расхождения.

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

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

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


2.4. Синхронизация справочника "Работники подразделений"

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

Синхронизацию справочника Работники подразделений можно вызвать в форме Подразделения, здания, аудиторный фонд на вкладке Все подразделения вуза в подчиненной таблице Работники подразделения. Для вызова процедуры нужно воспользоваться действием Синхронизация с кадровой ИС / Синхронизация.

БОСС, синхронизация работников подразделений

В качестве параметра процедуры запрашивают файл выгрузки из кадровой ИС в формате MS Excel. Выбор файла осуществляется при помощи стандартного диалога открытия файла MS Windows.

Процедура синхронизации реализована по следующему алгоритму:

  1. Для всех работников подразделений существующих в справочнике, будет установлена Дата последней синхронизации, равная текущей дате, и Результат синхронизации - Не найдено.
  2. Для каждой записи файла выгрузки системой выполняется поиск по критерию Идентификатор человека + Идентификатор подразделения.
  3. В случае удачного поиска производится перезапись полей:
    • Идентификатор назначения
    • Табельный номер
    • Признак совместительства
    • Наименование категории персонала (только если не было заполнено ранее)
  4. В случае удачного поиска после перезаписи значений полей выполняются следующие проверки
    • Для записи файла выгрузки будет произведено сравнение значений полей Дата увольнения и Дата окончания в должности. В качестве даты увольнения будет выбрана наименьшая из этих дат.
    • Если дата увольнения не равна 01.01.2099, то в поле в справочнике Работники подразделения будет установлено значение свойства Дата увольнения должна быть записана дата увольнения из файла выгрузки.
    • если дата увольнения равна 01.01.2099, то в поле Дата увольнения будет записано пустое значение.
    • В поле Результат последней синхронизации устанавливается значение Синхронизировано.
  5. Если запись не найдена, то система добавляет новую запись в таблицу Работники подразделения. В поле Результат последней синхронизации устанавливается значение Добавлено.

Таким образом, по завершении процедуры синхронизации для подразделений, не найденных в выгрузке из кадровой ИС, в поле Результат последней синхронизации будет стоять значение Не найдено, установленное на шаге 1.

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

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