Оргструктура для DocTrix
Есть такая система электронного документооборота DocTrix на базе SP.
Угораздило нас ее купить… J
И понеслась…. Нужно обеспечить ее оргструктурой из 1С.ЗУП.
Думаю, описание оргструктуры для DocTrix есть у всех, кому будет интересна данная обработка…
Суть файла с оргструктурой для DocTrix в том, что нужно выгрузить в xml-файл данные по организациям, по подразделениям, по ролям = должностям (в нашем случае), по сотрудникам, привязанным к организациям, отделам и ролям, с указанием руководителя.
Первым делом нужно было четко продумать что и как мы будем выгружать. У нас логика менялась несколько раз, приходилось переделывать всю выгрузку каждый раз.
У самого DocTrix-а видела такой вариант: завели в DocTrix роли, с определенным названием = уникальным идентификатором, и при выгрузке сотрудников из 1С присваивают каждому сотруднику конкретную роль из DocTrix, анализируя сотрудника и/или подразделение и/или должность. Такой вариант работоспособен, когда структура предприятия не сложная и ролей немного.
У нас все сложнее…
Мы остановились на следующем варианте:
В DocTrix выгружаем по всем организациям, по не помеченным на удаление подразделениям, данные по должностям из штатного расписания, сотрудников по штатному расписанию + необходимых сотрудников-договорников.
Каждая должность – это отдельная роль в DocTrix, причем в разных организациях/подразделениях одинаковые должности – это будут разные роли.
Это значит, что наш админ по DocTrix должен будет настраивать права для каждой должности!!! Это много работы… но иначе нам не организовать работу… не удается всех под одну гребенку причесать…
Реализация:
- Организации: DocTrix захотели у себя иметь другие префиксы, чем в 1С. У меня это в коде прописывается. Можно к организациям добавить доп сведения и оттуда брать префикс для DocTrix – это вы сможете сами сделать.
В качестве уникального идентификатора применяем префикс организации.
Организации должны содержать ссылку на руководящую роль = должность руководителя организации – берем из ответственных лиц организации.
- Подразделения: выгружаем только непомеченные на удаление.
В качестве уникального идентификатора применяем префикс организации + код подразделения.
Подразделения должны содержать ссылку на руководящую роль = должность руководителя подразделения – берем руководителя подразделения и ищем его должность. Если нет руководителя подразделения, ищем руководителя вышестоящего подразделения, если и его нет, то берем руководителя организации.
- Роли = Должности: должности выгружаем из штатного расписания (занятые и свободные) + должности сотрудников-договорников, которые нужны в DocTrix.
В качестве уникального идентификатора применяем префикс организации + код подразделения + код должности. Это необходимо для того, чтобы можно было разделить роли с одинаковой должностью, т.к. в разных организациях/подразделениях сотрудники на одинаковых должностях имеют разные права в DocTrix.
Для роли нужно указать подразделение и руководящую роль. Руководящая роль – это должность руководителя подразделения. Если руководитель подразделения не заполнен, то ищем руководителя вышестоящего подразделения – пока не найдем. Если и у вышестоящих подразделений нет руководителя, тогда берем должность руководителя организации.
Для роли = «руководителя подразделения» руководящая роль – это должность руководителя вышестоящего подразделения.
Для роли = «руководитель организации» руководящей роли нет.
Для выгрузки ролей сотрудников-договорников (как известно у договорников нет подразделения, нет должности), для них мы добавили доп сведения в справочник ФизическиеЛица. (Это сделано по такой логике, что у нас есть еще одна система и в ней новые сотрудники должны попадать еще до оформления документов по приему на работу (т.е еще нет записи в Справочнике Сотрудники организаций), для этого кадровики заводят таких людей в справочник Физические лица заранее и там заполняют данные куда на какую должность принимают и с какого числа. Это дело мы используем и для DocTrix).
Доп Сведения:
"По договору подряда" – признак, что данный сотрудник-договорник нужен в DocTrix.
"Организация" – организация, в которой будет отражен этот сотрудник в DocTrix.
"Подразделение организаций" - подразделение, в котором будет отражен этот сотрудник в DocTrix.
"Должность организации" - должность, на которой будет отражен этот сотрудник в DocTrix.
«ДатаПриема" – дата приема для DocTrix.
«ДатаУвольнения – дата увольнения для DocTrix.
Соответственно, в DocTrix выгружаю роли всех договорников с установленным свойством "По договору подряда".
- Сотрудники: сотрудников выгружаем всех, работающих по штатному расписанию + сотрудников-договорников, которые нужны в DocTrix.
В качестве уникального идентификатора сотрудника в DocTrix используется учетная запись сотрудника (его сетевое имя). Для этого мы добавили в контактную информацию ФизическогоЛица вид контактной информации «Сетевое имя пользователя». (сделали так, что при записи ФизЛица, если сетевое имя не заполнено, то оно формируется, с учетом занятых сетевых имен в 1С и АД, но это другая обработка).
При выгрузке в DocTrix перед сетевым именем добавляем домен.
Также добавили в контактную информацию вид контактной информации «Электронная почта служебная» - она тоже выгружается в DocTrix.
Для сотрудника нужно указать Основное подразделение – это подразделение, по которому сотрудник работает по основному месту работы. (Одно и тоже ФизЛицо может работать в одной организации по основному месту работы и по внутреннему совместительству, также он может работать в другой организации по внешнему совместительству).
Для сотрудника нужно указать ПодразделениЯ – все подразделения, в которых числится данное ФизЛицо во всех организациях.
Аналогично с ролями: нужно указать Основную роль (должность по основному месту работы) и все РолИ = все должности, на которых числится данное ФизЛицо во всех организациях.
Для сотрудника нужно указать компанию – организацию – в которую ФизЛицо принято по основному месту работы.
Для выгрузки сотрудников-договорников используем данные из добавленных нами доп сведения в справочник ФизическиеЛица.
Алгоритм выгрузки такой: в отдельные таблицы значений собираю данные по организациям, по подразделениям, по ролям, по сотрудникам. Потом по готовым данным формирую xml-файл.
Не претендую на гуру, на догму… просто, то, что сделано – оно выстрадано, много раз передумано и переделано… Мне было сложно выстроить нашу 1С под DocTrix. Особенно кадровиков… И может быть наши идеи кому-то помогут!
Приму к сведению все замечания!