Отсутствия перейти к списку

Отсутствия сотрудников — отпуска, больничные, командировки, отгулы и т.п. ARMS выступает хабом-агрегатором: отсутствия приходят из нескольких источников (SAP, 1С, ручной ввод) и выгружаются наружу (SAPsync → Bitrix). Маршрут тот же, что у оргструктуры и сотрудников: SAP/1C/ручной ввод → ARMS → Bitrix.

Каждая запись привязана к конкретному трудоустройству сотрудника, имеет нормализованный тип и период. Организация у отсутствия не хранится — она однозначно определяется сотрудником (его юрлицом). Тип хранится стабильным строковым кодом, совпадающим со словарём XML_ID типов отсутствия в Bitrix, чтобы выгрузка отображала тип один-в-один без второго словаря.

Актуальные отсутствия — идущее сейчас и ещё не начавшиеся — видны одним списком прямо на карточке сотрудника (а идущее сейчас там же выводит предупреждение об отсутствии на рабочем месте); полный список, включая прошедшие, живёт здесь.

Источники и идемпотентность

Поле источник (sap / c1 / manual) разделяет владение записями: синхронизация из источника обновляет только свои записи и не затирает ручной ввод и записи других источников. Пара источник + внешний ключ уникальна и обеспечивает идемпотентный upsert из источника; у ручного ввода внешний ключ пуст (под ограничение уникальности такие записи не попадают).

Маппинг кодов конкретного источника (для SAP — коды Awart) в нормализованный тип выполняется на стороне приёма (SAPsync); ARMS хранит уже нормализованные данные, о кодах источника не знает.

Удаление

Записи, исчезнувшие из источника, удаляются обратным проходом синхронизации (по паре источник + сотрудник), не затрагивая ручной ввод и другие источники.

Список

Доступен через общий CRUD ARMS. Фильтрация (поля под заголовками) по сотруднику, типу, источнику и периоду; сортировка — клик по заголовку.

Добавление

Ручной ввод отсутствия: выбираются сотрудник, тип из списка, период (с — по) и, при необходимости, комментарий. Источник таких записей — manual, внешний ключ не заполняется.

Атрибуты

Атрибут Описание
Идентификатор
id
Комментарий Текст отсутствия из источника (для SAP — поле Abstext)
Время изменения Дата/время изменения объекта в БД
Дата и время в формате ГГГГ-ММ-ДД ЧЧ:ММ; можно выбрать в календаре.
Редактор
Сотрудник Конкретное трудоустройство сотрудника (users.id), к которому относится отсутствие
Тип Нормализованный тип отсутствия. Код совпадает со словарём XML_ID типов отсутствия в Bitrix, чтобы выгрузка отображала тип один-в-один без второго словаря
С Дата начала периода отсутствия
Дата в формате ГГГГ-ММ-ДД; можно выбрать в календаре.
По Дата окончания периода отсутствия (включительно)
Дата в формате ГГГГ-ММ-ДД; можно выбрать в календаре.
Источник Откуда пришла запись: sap / c1 / manual. Синхронизация из источника обновляет только свои записи, не трогая ручной ввод и другие источники
Внешний ключ Натуральный ключ записи в источнике для идемпотентного upsert (для SAP: Pernr-Awart-Begda-Endda). Для ручного ввода — пусто