Перейти к основному содержимому

Сценарий "Интеграция Business Central и HCM & LMS"

Extension — SMART Payroll and SMART HCM & LMS Connector (дополнение к SMART Payroll)

В системе есть возможность настроить интеграцию между Business Central и SMART HCM & LMS (Human Capital Management & Learning Management System). Интеграция обеспечивает автоматическую синхронизацию кадровых и зарплатных данных между двумя системами.

Основные возможности:

  • синхронизация организационной структуры (подразделения, должности, позиции, категории работников)
  • синхронизация данных физ. лиц и трудовых договоров со строками
  • синхронизация причин отсутствия и групп временных активностей
  • передача зарплатных документов и статусов табелей
  • получение заявлений на отсутствие из HCM & LMS в Business Central
  • поддержка кросс-компанийных физ. лиц

Синхронизация работает по событийной модели: при изменении данных в Business Central автоматически создается запись в очереди интеграции, которая затем обрабатывается очередью задач и отправляется в HCM & LMS.

Шаг 1: Настройка интеграции

Путь: HCM & LMS Setup

На странице настройки доступны следующие блоки полей:

Блок «Общее»

ПолеОписаниеЗависимости и особенности
HCM Company IdИдентификатор (GUID) компании в системе HCM & LMS. Используется как AccountId во всех запросах интеграции.Заполняется автоматически при первом открытии страницы настройки (берется из Company.Id). Обязательное для активации.
HCM Company CodeКод компании в системе HCM & LMS.Обязательное для активации. Используется при создании записи компании в HCM. При удалении значения — очищается очередь интеграции.
ActiveВключает или выключает обмен данными между системами.При первой активации система автоматически генерирует начальные записи интеграции для всех сущностей (подробнее в Шаге 2). Для активации обязательно должны быть заполнены: HCM Company Id, HCM Company Code, HCM User ID.
Integration TokenТокен авторизации для API HCM & LMS.Хранится в защищенном (маскированном) поле. Присваивается индивидуально.
Integration URLБазовый URL-адрес API HCM & LMS.Не следует включать пути /create, /update, /delete — они добавляются автоматически. Присваивается индивидуально.
Restore Integration Func.Автоматическое восстановление очереди задач интеграции при неожиданной остановке.Если включено, система автоматически перезапускает очередь задач при входе пользователя, если очередь остановилась из-за ошибки.

Блок «Администрирование»

ПолеОписаниеЗависимости и особенности
Default Taxpayer Document TypeТип документа, удостоверяющего лицо, по умолчанию. Используется для передачи паспортных данных физ. лиц.Зависит от справочника «Типы документов физ. лица» (SMA Person Document Type). Если заполнено — при синхронизации физ. лица передаются серия, номер, дата выдачи и кем выдан документ указанного типа.
HCM User IDКод пользователя Business Central, изменения которого НЕ синхронизируются в HCM.Зависит от таблицы Users. Обязательное для активации. Используется для предотвращения циклов синхронизации — изменения, внесенные этим пользователем (например, со стороны HCM), не создают записей интеграции.
API TimeZoneЧасовой пояс Windows для форматирования дат и времени в запросах.Например: «FLE Standard Time» для Киева.
Enable Payroll DocumentsСинхронизировать ли зарплатные документы в HCM & LMS.По умолчанию включено. Если выключено — зарплатные документы не передаются.
Enable Between Payroll DocsВключать ли межпериодные зарплатные документы в синхронизацию.По умолчанию включено. Работает вместе с Enable Payroll Documents.
Enable Employee TimesheetСинхронизировать ли статусы табелей в HCM & LMS.По умолчанию включено. Передаются только табели со статусом «Выпущен».

Блок «Фильтры»

ПолеОписаниеЗависимости и особенности
Labor Contract FilterФильтр для таблицы «Трудовой договор».Ограничивает, какие трудовые договора синхронизируются в HCM. Редактируется через AssistEdit — открывается конструктор фильтров. Если пустой — синхронизируются все договора.
Position FilterФильтр для таблицы «Позиция».Ограничивает, какие позиции синхронизируются в HCM. Редактируется через AssistEdit. По умолчанию позиции со статусом «Планируемая» и бюджетные позиции не синхронизируются.

Блок «Портал»

ПолеОписаниеЗависимости и особенности
Paid Leave Group CodeКод группы временной активности для оплачиваемых отпусков.Зависит от справочника «Группы временных активностей» (SMA Time Activity Group). Используется для расчета дней табеля на портале HCM.
Unpaid Leave Group CodeКод группы временной активности для неоплачиваемых отпусков.Зависит от справочника «Группы временных активностей».
Sick Leave Group CodeКод группы временной активности для больничных.Зависит от справочника «Группы временных активностей».
Other Leave Group CodeКод группы временной активности для других типов отсутствий.Зависит от справочника «Группы временных активностей».

Шаг 2: Активация интеграции

При установке поля Active = Да, система автоматически создает начальные записи интеграции для передачи всех текущих данных в HCM & LMS. Записи создаются в следующем порядке:

  1. Информация об организации — создается одна запись для текущей компании
  2. Должности (справочник Job Titles) — все должности
  3. Категории работников (Employee Categories) — все категории
  4. Причины отсутствия (Causes of Absence) — только те, где включен флажок «Export to HCM»
  5. Подразделения (Organizational Units) — все подразделения
  6. Группы временных активностей (Time Activity Groups) — только те, где включен флажок «Export to HCM»
  7. Физ. лица (Persons) — только те, у которых поле «Основная компания HCM» пустое
  8. Позиции (Positions) — с учетом фильтра Position Filter, исключая позиции со статусом «Планируемая» и бюджетные позиции
  9. Трудовые договора (Labor Contracts) — с учетом фильтра Labor Contract Filter, только с заполненным номером сотрудника. Для каждого договора также создаются:
    • строки договора (утвержденные)
    • зарплатные документы (если Enable Payroll Documents включено, за последний год)
    • статусы табелей (если Enable Employee Timesheet включено, только со статусом «Выпущен»)

Обратите внимание: порядок создания важен — справочники (должности, категории, причины отсутствия, подразделения) создаются первыми, чтобы при обработке зависимых сущностей (позиции, договора) справочные данные уже были в HCM & LMS.

После активации необходимо запустить очередь задач (Job Queue) для фактической отправки данных. Очередь задач создается автоматически при установке дополнения со статусом «На удержании» — её нужно активировать вручную. Рекомендуемый интервал: 1–5 минут.

Шаг 3: Страницы между которыми интегрируются системы

Ниже приведен маппинг полей для каждой сущности, которая синхронизируется. Стрелка указывает направление передачи данных:

  • Business Central в HCM & LMS
  • HCM & LMS в Business Central
  • двусторонний обмен

Для каждой сущности указано, какие изменения полей в Business Central инициируют синхронизацию и какие операции поддерживаются (создание, изменение, удаление).


3.1. Информация об организации (Business Central) → Название организации (HCM & LMS)

Операции: изменение

Синхронизация инициируется при изменении любого из полей: Название, Адрес, Телефон, Веб-сайт, Эл. почта.

Поле Business CentralПоле HCM & LMSОписание и зависимости
idБерется из HCM Company Id в настройках
CodeБерется из HCM Company Code в настройках
Название (Name)Название организации (Name)Название компании
Телефон (Phone No.)Телефон (Telephone1)Телефон компании
Адрес (Address)Адрес (Address)Адрес компании
Веб-сайт (Home Page)Веб-сайт (WebSiteUrl)Домашняя страница компании
Основная деятельность (SMA Principal Activity)Описание (Description)Передается только если заполнено
Эл. почта (E-Mail)Эл. почта (Emailaddress1)Электронная почта компании

3.2. Должности (Business Central) → Должности (HCM & LMS)

Операции: создание, изменение, удаление

Синхронизация инициируется при: создании, изменении полей Название или Статус, удалении, переименовании кода.

Поле Business CentralПоле HCM & LMSОписание и зависимости
Код (Code)Код (Code)Код должности
Название (Name)Название (Name)Название должности
Статус (Status)Состояние (State)Если Статус = «Закрыта» → «Inactive», иначе → «Active»

3.3. Категории работников (Business Central) → Уровень Должности (HCM & LMS)

Операции: создание, изменение, удаление

Синхронизация инициируется при: создании, изменении поля Описание, удалении, переименовании кода.

Поле Business CentralПоле HCM & LMSОписание и зависимости
Код (Code)Код (Code)Код категории
Описание (Description)Название (Name)Название уровня должности

3.4. Подразделения (Business Central) → Подразделение (HCM & LMS)

Операции: создание, изменение, удаление

Синхронизация инициируется при: создании, изменении полей Название, Полное название, Статус, Менеджер, Родительское подразделение или Дата начала, удалении.

Поле Business CentralПоле HCM & LMSОписание и зависимости
Код (Code)Код (Code)Код подразделения
Название (Name)Название (Name)Краткое название подразделения
Полное название (Full Name)Описание (Description)Полное название подразделения
Менеджер (Manager No.)Руководитель подразделения (HeadOfSubdivisionId)Зависит от: Сотрудник → Физ. лицо. Передается SystemId физ. лица менеджера. Для кросс-компанийных лиц используется SystemId из основной компании.
Позиция менеджераПозиция руководителя (HeadOfSubdivisionPositionId)Зависит от: Сотрудник → Позиция (SMA Position No.). Передается SystemId позиции менеджера.
Родительское подразделение (Parent Code)Главное подразделение (MainSubdivisionId)Зависит от: родительское подразделение. Передается SystemId родительского подразделения.
Дата начала (Starting Date)Дата создания (CreatedOn)Дата создания подразделения
Статус (Status)Состояние (State)Если Статус = «Закрыта» → «Inactive», иначе → «Active»

3.5. Позиции (Business Central) → Позиции (HCM & LMS)

Операции: создание, изменение, удаление

Синхронизация инициируется при: создании, изменении контролируемых полей, удалении. Позиции из фильтра Position Filter и со статусом «Планируемая» или бюджетные не синхронизируются.

Поле Business CentralПоле HCM & LMSОписание и зависимости
Номер (No.)Код (Code)Номер позиции
Должность (Job Title Code)Название (Name)Зависит от: справочник Должности. Передается название должности (Job Title.Name).
Работник на позицииРаботник (employeeId)Определяется автоматически: ищется активный сотрудник, назначенный на эту позицию через трудовой договор. Передается SystemId физ. лица. Если работника нет — null.
Дата назначенияДата назначения (positionAssignmentDate)Определяется автоматически: дата начала последней утвержденной строки трудового договора для этой позиции.
Является руководителемРуководитель подразделения (IsHeadOfSubdivision)Определяется автоматически: true, если этот сотрудник является менеджером какого-либо подразделения.
Дата начала (Starting Date)Дата открытия позиции (PositionOpeningDate)Дата открытия позиции. Пустая, если не заполнена.
Дата окончания (Ending Date)Дата закрытия позиции (PositionClosingDate)Дата закрытия позиции. Пустая, если не заполнена.
Ставка (Rate)Эквивалент полной занятости (FullTimeEquivalency)Ставка позиции (например, 1.0 или 0.5)
Дата утверждения (Approval Date)Дата утверждения (ApprovalDate)Дата утверждения позиции. Пустая, если не заполнена.
Статус (Status)Статус (Status)Текстовое значение статуса
Статус (Status)Состояние (State)Если Статус = «Закрыта» → «Inactive», иначе → «Active»
Должность (Job Title Code)Должность (jobId)Зависит от: справочник Должности. Передается SystemId должности.
Подразделение (Org. Unit Code)Подразделение (SubdivisionId)Зависит от: справочник Подразделения. Передается SystemId подразделения.
Родительская позиция (Parent Position No.)Позиция руководителя (ManagerPositionId)Зависит от: родительская позиция. Передается SystemId родительской позиции.
Подразделение + ДолжностьПрофиль должности (jobProfileId)Составное поле: формируется как комбинация SystemId подразделения и SystemId должности через «/».

3.6. Физ. лица (Business Central) → Сотрудники (HCM & LMS)

Операции: создание, изменение, удаление

Синхронизация инициируется при: создании, изменении полей (имя, фамилия, отчество, пол, дата рождения, эл. почта, телефоны, ИНН, семейное положение), удалении. Также инициируется при изменении документа физ. лица типа, указанного в Default Taxpayer Document Type.

Кросс-компанийное взаимодействие: зачем оно нужно

В Business Central каждая компания имеет свою отдельную карточку физического лица. Один и тот же человек (например, Иванов Иван Иванович) может иметь запись физ. лица в Компании A и отдельную запись в Компании B. Это стандартное поведение BC — данные каждой компании изолированы.

В HCM & LMS, напротив, существует одна единственная запись сотрудника на каждое физическое лицо — независимо от того, в скольких компаниях оно работает.

Поэтому коннектор должен определить, из какой именно компании BC брать данные для синхронизации каждого физического лица в HCM & LMS, и обеспечить, что все компании ссылаются на одну и ту же запись в HCM & LMS.

Поле «Основная компания HCM» (SMAHCM Primary Company Name)

Это ключевое поле на карточке физ. лица, которое определяет роль этой записи в кросс-компанийной синхронизации:

  • Пустое значение — эта запись является первичной (основной). Именно из неё данные физ. лица отправляются в HCM & LMS.
  • Заполненное значение (название другой компании) — эта запись является вторичной (копией). Она не синхронизируется самостоятельно в HCM & LMS. Значение указывает, в какой компании находится первичная запись этого физ. лица.

Как поле заполняется автоматически:

При создании или изменении карточки физ. лица система автоматически ищет совпадения во всех компаниях, где активна интеграция HCM & LMS:

  1. Поиск по ИНН + Дата рождения: система проверяет все другие компании с активной интеграцией. Если находит физ. лицо с таким же ИНН и датой рождения, где поле «Основная компания HCM» пустое (то есть это лицо является первичным в той компании), — текущая запись отмечается как вторичная (заполняется название той компании).
  2. Резервный поиск по документу физ. лица: если ИНН пуст, система ищет совпадение по серии и номеру документа физ. лица (обозначенного как документ по умолчанию).
  3. Первое совпадение выигрывает: если совпадение найдено в нескольких компаниях, используется первое найденное.

Поле также можно заполнить вручную. При ручной установке система предложит скопировать все данные из первичной карточки физ. лица.

На что влияет поле «Основная компания HCM»:

  • Синхронизация физ. лица: только записи с пустым полем отправляются в HCM & LMS. Вторичные записи пропускаются.
  • Подстановка SystemId: когда другие сущности (трудовые договоры, строки договоров, табели, позиции, подразделения) ссылаются на вторичное физ. лицо, система автоматически подставляет SystemId первичного физ. лица из основной компании. Это обеспечивает, что в HCM & LMS все ссылки ведут к одной записи сотрудника.
  • Активация интеграции (Шаг 2): при начальном создании записей интеграции система пропускает физ. лиц с заполненным полем «Основная компания HCM».

Как определяется сотрудник (Employee) для физ. лица

Для заполнения полей, связанных с сотрудником (номер сотрудника, подразделение, должность, профиль должности, дата приёма), система ищет первичного сотрудника среди всех компаний с активной интеграцией по такому приоритету:

  1. Основное место работы — наивысший приоритет. Ищется утверждённый трудовой договор с режимом работы «Основное место».
  2. Внутреннее совместительство — если основное место не найдено, ищется договор с режимом «Внутреннее совместительство».
  3. Внешнее совместительство — наименьший приоритет. Ищется договор с режимом «Внешнее совместительство».

Поиск сначала выполняется в текущей компании. Если не найдено — ищется в других компаниях, где есть первичная запись этого физ. лица. Учитываются только утверждённые трудовые договоры.

Источник данных для полей контакта

  • Персональные данные (имя, фамилия, дата рождения, пол, телефоны, эл. почты, ИНН, семейное положение, паспортные данные) — берутся из первичной записи физ. лица (где поле «Основная компания HCM» пустое).
  • Данные, связанные с сотрудником (employeeId, subdivisionId, jobProfileId, employmentStartDate) — берутся от найденного первичного сотрудника по приоритету, описанному выше.
  • Если первичный сотрудник находится в другой компании, чем первичное физ. лицо, система переключается на запись физ. лица из компании сотрудника для получения контактных данных.
Поле Business CentralПоле HCM & LMSОписание и зависимости
Код (No.)Код (code)Код физ. лица
Фамилия (Last Name)Фамилия (lastName)Фамилия
Имя (First Name)Имя (firstName)Имя
Отчество (Middle Name)Отчество (middleName)Отчество
Пол (Gender)Пол (gender)Маппинг значений: Мужской → «Male», Женский → «Female», Небинарный → «Nonbinarygenderdiverse», Самоопределенный → «SelfDescribed», Не желаю отвечать → «Idontwishtoanswer». Передается только если заполнено.
Дата рождения (Birth Date)День рождения (birthdate)Дата рождения в формате ГГГГ-ММ-ДД
Дата приема на работу (Employment Date)Дата начала работы (employmentStartDate)Зависит от: Сотрудник (Employee). Дата первого трудоустройства. Передается только если заполнено.
Рабочий E-Mail (Company Email)Email (email)Рабочая электронная почта
Мобильный телефон (Mobile Phone No.)Мобильный (mobilePhone)Мобильный телефон
Телефон (Phone No.)Телефон (telephone)Личный телефон
Эл. почта (E-Mail)Личная эл. почта (personalEmail)Личная электронная почта
Рабочий телефон (Company Phone No.)Рабочий телефон (businessPhoneNo)Телефон компании
Семейное положение (Person Family Status)Семейное положение (maritalStatus)Маппинг значений: Не женат/не замужем → «Single», Разведен(а) → «Divorced», Женат/замужем → «Married», Вдовец/вдова → «Widowed», Гражданский брак → «CivilMarriage». Передается только если заполнено.
ИНН (VAT Registration No.)ИНН (VATRegistration)Индивидуальный номер налогоплательщика. Обязательное поле.
Серия документаСерия паспорта (passportSeries)Зависит от: поле Default Taxpayer Document Type в настройках. Берется из документа физ. лица указанного типа, действительного на текущую дату.
Номер документаНомер паспорта (passportNumber)Зависит от: поле Default Taxpayer Document Type в настройках.
Дата выдачи документаДата выдачи паспорта (passportIssueDate)Зависит от: поле Default Taxpayer Document Type в настройках. Передается только если заполнено.
Кем выдан документКем выдан паспорт (passportIssuedBy)Зависит от: поле Default Taxpayer Document Type в настройках.
Подразделение сотрудникаПодразделение (subdivisionId)Зависит от: Сотрудник → Подразделение. Передается SystemId подразделения.
Подразделение + Должность сотрудникаПрофиль должности (jobProfileId)Зависит от: Сотрудник → Подразделение + Должность. Составное поле.
Номер сотрудникаНомер сотрудника (employeeId)Зависит от: поиск первичного сотрудника по трудовым договорам. Приоритет: основное место → внутреннее совместительство → внешнее совместительство.

3.7. Трудовые договора (Business Central) → Контракты (HCM & LMS)

Операции: создание, изменение, удаление

Синхронизация инициируется при: создании, изменении контролируемых полей, удалении. Договора фильтруются через фильтр Labor Contract Filter в настройках.

Поле Business CentralПоле HCM & LMSОписание и зависимости
Номер договора (No.)Код (Code)Номер трудового договора
Номер + ФИОНазвание (Name)Формируется автоматически: номер договора + полное имя сотрудника
Дата начала (Starting Date)Дата начала (StartingDate)Дата начала действия договора. Пустая, если не заполнена.
Дата окончания (Ending Date)Дата окончания (EndingDate)Дата окончания действия договора. Null, если не заполнена (бессрочный договор).
Физ. лицо (Person No.)Контакт (ContactId)Зависит от: физ. лицо трудового договора. Передается SystemId физ. лица. Для кросс-компанийных лиц используется SystemId из основной компании.
Номер сотрудника (Employee No.)Код сотрудника (EmployeeId)Номер сотрудника
Подразделение сотрудникаПодразделение (SubdivisionId)Зависит от: Сотрудник → Подразделение. Передается SystemId подразделения.
Подразделение + Должность сотрудникаПрофиль должности (jobProfileId)Зависит от: Сотрудник → Подразделение + Должность. Составное поле.
Тип договора (Contract Type)Тип сотрудничества (CooperationType)Маппинг значений: Гражданский договор → «Civil Contract», Трудовой договор → «Labor Contract»
Режим работы (Work Mode)Характер работы (Type)Маппинг значений: Основное место → «Main», Внутреннее совместительство → «internal cowork», Внешнее совместительство → «external cowork»
Статус (Status)Состояние (State)Если Статус = «Закрыта» → «Inactive», иначе → «Active»

3.8. Строки трудового договора (Business Central) → Назначение на позицию (HCM & LMS)

Операции: создание, изменение, удаление

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

Синхронизация инициируется при: создании (утверждении строки), изменении, удалении. При утверждении строки также обновляется соответствующая позиция.

Поле Business CentralПоле HCM & LMSОписание и зависимости
Название подразделения позицииНазвание (Name)Зависит от: Позиция → Подразделение. Берется название подразделения позиции.
Позиция (Position No.)Позиция (PositionId)Зависит от: справочник Позиции. Передается SystemId позиции.
Номер договора (Contract No.)Контракт (EmployeeContractId)Зависит от: трудовой договор. Передается SystemId трудового договора.
Физ. лицо (Person No.)Контакт (ContactId)Зависит от: трудовой договор → физ. лицо. Передается SystemId физ. лица. Для кросс-компанийных лиц — SystemId из основной компании.
Подразделение позицииПодразделение (SubdivisionId)Зависит от: Позиция → Подразделение. Передается SystemId подразделения.
Должность позицииДолжность (JobId)Зависит от: Позиция → Должность. Передается SystemId должности.
Подразделение + ДолжностьПрофиль должности (jobProfileId)Составное поле: SystemId подразделения + «/» + SystemId должности.
Дата начала (Starting Date)Дата создания (CreatedOn)Дата начала действия строки
Дата начала (Starting Date)Дата назначения (AssignmentDate)Дата назначения на позицию
Дата окончания (Ending Date)Дата увольнения (RemovedDate)Дата окончания строки. Если пустая — ищется дата окончания из записи Employee Job Entry для этой позиции.
Основная позицияОсновная позиция (PrimaryPosition)Определяется автоматически: true, если режим работы = «Основное место», тип операции ≠ «Совмещение», и это последняя утвержденная строка с наиболее поздней датой начала.
Тип операции (Operation Type)Тип операции (OperationType)Текстовое значение типа кадровой операции (Найм, Перевод, Совмещение, Увольнение и т.д.)
Испытательный срокНа испытании (IsOnProbation)Определяется автоматически: true, если заполнены обе даты испытательного срока (Trial Period Start Date и Trial Period End Date).
ЗарплатаОклад (Salary)Зависит от: условия трудового договора (SMA Labor Contract Terms). Ищется сумма для элементов зарплаты (оклад/ставка), определенных в настройках Персонала (Element Code Salary Days, Salary Hours, Salary Amount, Hourly Rate, Daily Rate).
ВалютаВалюта (Currency)Зависит от: валюта в условиях трудового договора. Если пустая — берется код локальной валюты из настроек главной книги. Передается ISO-код валюты.
Статус (Status)Статус (Status)Маппинг: Открыто → «Open», Утверждено → «Approved»

3.9. Причины отсутствия (Business Central) → Причины отсутствия (HCM & LMS)

Операции: создание, изменение, удаление

Обратите внимание: синхронизируются только причины отсутствия, у которых включен флажок «Export to HCM» (SMA Export to HCM = Да). Этот флажок добавляется расширением коннектора к стандартной таблице «Причины отсутствия» (Cause of Absence).

Синхронизация инициируется при: создании, изменении полей Описание, Детальное описание, Тип временной активности или флажка Export to HCM, удалении.

Поле Business CentralПоле HCM & LMSОписание и зависимости
Код (Code)Код (code)Код причины отсутствия
Описание (Description)Название (name)Название причины отсутствия
Детальное описание (SMA Detailed Description)Описание (description)Развернутое описание причины
Тип временной активности (SMA Time Activity Type)Тип (type)Текстовое значение типа
Группа временной активностиГруппа (groupid)Определяется автоматически: ищется группа временных активностей (с флажком Export to HCM), которая содержит этот код отсутствия в своих кодах фильтрации. Если группа не найдена — пустое значение.

3.10. Группы временных активностей (Business Central) → Группы отсутствий (HCM & LMS)

Операции: создание, изменение, удаление

Обратите внимание: синхронизируются только группы, у которых включен флажок «Export to HCM» (SMA Export to HCM = Да). Этот флажок добавляется расширением коннектора к таблице «Группы временных активностей» (SMA Time Activity Group).

Поле Business CentralПоле HCM & LMSОписание и зависимости
Описание (Description)Название (name)Название группы отсутствий
Описание (Description)Описание (description)Дублируется в поле описания

3.11. Заявления на отсутствие (Business Central) ← Отсутствия (HCM & LMS)

Направление: HCM & LMS → Business Central

В Business Central создаются заявления трех типов: Заявление на отпуск, Заявление на командировку, Заявление на прочие отсутствия.

Поле Business CentralПоле HCM & LMSОписание и зависимости
КодКодСоздание, изменение, удаление
ОписаниеНазваниеСоздание, изменение, удаление
Код временной активностиКод отсутствия (Reason code)Заполнение внешнего ключа для такого кода является обязательным. Создание, изменение, удаление.
Группа временной активностиГруппа временной активностиЗаполнение внешнего ключа для такой группы является обязательным. Выбирается или код, или группа.
Дата запросаДата запросаСоздание, изменение, удаление
Дата началаДата НачалаСоздание, изменение, удаление
Дата окончанияДата окончанияСоздание, изменение, удаление
Календарные дниКоличество днейСоздание, изменение, удаление

3.12. Операции начисления по сотруднику (Business Central) → Баланс отсутствий (HCM & LMS)

Операции: создание

Поле Business CentralПоле HCM & LMSОписание и зависимости
На датуНа датуДата расчета баланса
Код временной активностиКод отсутствия (Reason code)Код причины отсутствия
Плановые календарные дниПлановые календарные дниЗапланированные дни
Использование календарных днейИспользование календарных днейИспользованные дни
Компенсация календарных днейКомпенсация календарных днейКомпенсированные дни
Плановый баланс календарные дниПлановый баланс календарные дниПлановый остаток
Баланс на датуБаланс на датуФактический остаток на дату

3.13. Зарплатные документы (Business Central) → Документы выплат (HCM & LMS)

Операции: создание

Синхронизация инициируется при: учете (posting) зарплатного документа.

Зависимости: синхронизация работает только если поле Enable Payroll Documents включено в настройках. Если также включено Enable Between Payroll Docs — синхронизируются и межпериодные документы. Иначе — только документы с пустым типом группы расчета.

Заголовок

Поле Business CentralПоле HCM & LMSОписание и зависимости
Номер документа (No.)Номер (DocumentNumber)Номер зарплатного документа
Код работника (Employee No.)Код работника (EmployeeId)Номер сотрудника
Описание (Posting Description)Описание (Name)Описание проводки
Дата учета (Posting Date)Дата учета (PostingDate)Дата учета документа
Код периода (Period Code)Период (Period)Зависит от: справочник Зарплатные периоды. Передается название периода.
Сторнировано (Reversed)Корректировка (IsCorrected)Флажок сторнирования. Передается только если документ сторнирован.

Строки

Поле Business CentralПоле HCM & LMSОписание и зависимости
Тип элементаТип элементаТип элемента расчета
Код элементаКод элементаКод элемента расчета
ОписаниеОписаниеОписание элемента
Плановые часыПлановые часыПлановые часы
Фактические часыФактические часыФактические часы
Сумма заработной платыСумма заработной платыСумма начисления
Налогооблагаемая суммаНалогооблагаемая суммаНалогооблагаемая сумма

3.14. Статусы табелей (Business Central) → Табели (HCM & LMS)

Операции: создание, удаление

Зависимости: синхронизация работает только если поле Enable Employee Timesheet включено в настройках. Передаются только табели со статусом «Выпущен» (Released).

Синхронизация инициируется при: изменении статуса табеля на «Выпущен» (создание записи), удалении.

Поле Business CentralПоле HCM & LMSОписание и зависимости
ФИО + ПериодНазвание (Name)Формируется автоматически: полное имя сотрудника + « - » + название периода
Физ. лицоКонтакт (ContactId)Зависит от: Сотрудник → Физ. лицо. Передается SystemId физ. лица. Для кросс-компанийных лиц — SystemId из основной компании.
Трудовой договорКонтракт (ContractId)Зависит от: Сотрудник → Трудовой договор. Передается SystemId трудового договора.
Код периода (Period Code)Период (Period)Зависит от: справочник Зарплатные периоды. Передается название периода.

Шаг 4: Создание записей в таблице HCM & LMS Integration Records

При каких-либо изменениях в указанных полях страниц в Шаге 3, на странице HCM & LMS Integration Records отображаются записи этих изменений. Каждая запись соответствует одной операции синхронизации.

ПолеОписание
Номер операции (Entry No.)Порядковый номер записи
Тип записи (Record Type)Тип операции: Создание, Изменение, Удаление
Таблица (Table Id)Номер таблицы, в которой произошло изменение
Название таблицы (Table Name)Название таблицы
Дата и время созданияДата и время создания записи
ID пользователяКод пользователя, инициировавшего изменение
Статус процесса (Processing Status)Статус обработки: «Создано» (ожидает отправки) или «Обработано» (отправлено)
Текст последней ошибки (Last Error Text)Текст ошибки, если отправка завершилась неудачей. Помогает диагностировать проблемы.

Доступные действия на странице

  • Пометить как созданный — возвращает статус записи на «Создано», чтобы очередь задач повторно попробовала её отправить. Используется для повторной отправки после ошибки.
  • Отправить записи — немедленная ручная отправка записей без ожидания очереди задач.
  • Показать информацию запроса — показывает JSON-данные, которые будут или были отправлены в HCM & LMS. Полезно для диагностики.
  • Открыть запись-источник — открывает карточку записи в Business Central, которая инициировала эту запись интеграции.
  • Удалить выбранные — удаляет выбранные записи из очереди интеграции. Это действие не может быть отменено.

Шаг 5: Обработка ошибок и мониторинг

Что происходит при ошибке

Если отправка записи в HCM & LMS завершается ошибкой:

  • Статус записи остается «Создано»
  • Текст ошибки записывается в поле «Текст последней ошибки»
  • При следующем запуске очереди задач система повторно попробует отправить эту запись

Если при обновлении записи (операция «Изменение») HCM & LMS возвращает ошибку 404 (запись не найдена), система автоматически меняет тип операции на «Создание» и повторяет попытку.

Повторная отправка

Для ручной повторной отправки ошибочных записей:

  1. Откройте страницу HCM & LMS Integration Records
  2. Найдите записи со статусом «Обработано» и непустым текстом ошибки
  3. Нажмите «Пометить как созданный» — статус изменится на «Создано»
  4. Запись будет обработана при следующем запуске очереди задач, или нажмите «Отправить записи» для немедленной отправки

Восстановление очереди задач

Если очередь задач остановилась из-за ошибки:

  • Включите поле Restore Integration Func. в настройках HCM & LMS Setup
  • Система автоматически перезапустит очередь при следующем входе пользователя с соответствующими правами
  • Рекомендуемый интервал очереди задач: 1–5 минут
В этой статье
© 2008 - 2026 SMART business