Поток создания и обновления активов
Поток выполнения создания/обновления активов выполняет базовую проверку параметров актива и исходного контекста.
Поток выполнения вставки/обновления актива
Стартовый сегмент [RECORD_UPSERT_START] - Начинает процесс вставки/обновления актива.
Сегмент типа Point [RECORD_UPSERT_ACCESS] - Проверяет права текущего пользователя на вставку/обновление актива, согласно системным ролям.
Сегмент типа Point [RECORD_UPSERT_MEASURED] - Проверяет единицы измерения значений атрибутов вставляемого/обновляемого актива.
Сегмент типа Point [RECORD_UPSERT_PERIOD_CHECK] - Проверяет периоды актуальности вставляемого актива.
Сегмент типа Point [RECORD_UPSERT_MODBOX] - Сохраняет новую модификацию записи в контекст вставки/обновления актива.
Сегмент типа Point [RECORD_UPSERT_TIMELINE] - Вычисляет текущий и следующий таймлайн вставляемого/обновляемого актива. В потоке выполнения сегмент должен находиться ПОСЛЕ сегмента, сохраняющего новую модификацию актива - [RECORD_UPSERT_MODBOX].
Сегмент типа Point [RECORD_UPSERT_DRAFT_ID] - Создает ID черновика актива, если это необходимо.
Сегмент типа Connector [RELATIONS_DELETE_CONNECTOR] - Удаляет связи текущего актива.
Сегмент типа Connector [RELATIONS_UPSERT_CONNECTOR] - Создает/обновляет связи текущего актива.
Сегмент типа Connector [CLASSIFICATION_DELETE_CONNECTOR] - Удаляет классификации текущего актива.
Сегмент типа Connector [CLASSIFICATION_UPSERT_CONNECTOR] - Создает/обновляет классификации текущего актива.
Сегмент типа Selector [RECORD_UPSERT_SELECTOR] - Определяет, по какой ветви потока исполнения пойдет процесс: черновик [DRAFT] или регулярный поток [REGULAR].
Финишный сегмент [RECORD_UPSERT_FINISH] - Завершает процесс вставки/обновления актива.
Ветвь потока [DRAFT]:
Сегмент типа Selector [RECORD_UPSERT_DRAFT_DQ_SELECTOR] - Определяет, по какой ветви потока исполнения пойдет процесс: фаза черновика [DRAFT_PHASE] или регулярная фаза [REGULAR].
Фаза черновика [DRAFT_PHASE] добавляет к основному потоку еще 3 сегмента выполнения:
[RECORD_QUALITY_CONNECTOR] - Выполняет проверку назначенных на реестр/справочник наборов правил качества и, в случае их наличия, запускает поток выполнения правил качества для активов.
[RELATION_UPSERT_CONTINUE_CONNECTOR] - Создает/обновляет связи текущего актива.
[CLASSIFICATION_UPSERT_CONTINUE_CONNECTOR] - Создает/обновляет классификации текущего актива.
Сегмент типа Point [RECORD_UPSERT_DRAFT] - Создает/обновляет черновик актива с указанием соответствующей операции черновика.
Сегмент типа Point [RECORD_UPSERT_DRAFT_REFRESH] - Обновляет информацию об активе в черновике, которую обновляют в кэше и других временных хранилищах.
Сегмент типа Point [RECORD_UPSERT_DRAFT_WORKFLOW_REFRESH] - Запускает переиндексацию процессов и задач бизнес-процессов, относящихся к обновляемому черновику актива, с целью обновления отображаемого значения объекта.
Сегмент типа Point [RECORD_UPSERT_POSTPROCESSING] - Выполняет пост-обработку вставляемого/обновляемого актива.
Ветвь потока [REGULAR]:
Сегмент типа Connector [RECORD_QUALITY_CONNECTOR] - Выполняет проверку назначенных на реестр/справочник наборов правил качества и, в случае их наличия, запускает поток выполнения правил качества для активов.
Сегмент типа Point [RECORD_UPSERT_VALIDATE] - Выполняет валидацию актива, в случае если актив невалиден, выбрасывает исключение.
Сегмент типа Point [RECORD_UPSERT_INDEXING] - Подготавливает данные вставляемого/обновляемого актива для индексации. В потоке выполнения сегмент должен находиться ПОСЛЕ сегмента, вычисляющего таймлайн актива [RECORD_UPSERT_TIMELINE].
Сегмент типа Point [RECORD_UPSERT_LOB_SUBMIT] - Планирует прием атрибутов-файлов актива.
Сегмент типа Point [RECORD_UPSERT_TRANSITION] - Фиксирует/обновляет список переходов состояний актива (например, удаление или восстановление).
Сегмент типа Point [RELATION_UPSERT_CONSTRAINTS] - Проверяет ограничения связей при обновлениях актива.
Сегмент типа Point [CLASSIFICATION_UPSERT_CONSTRAINTS] - Проверяет ограничения классификации при обновлениях актива.
Сегмент типа Connector [RELATION_UPSERT_CONTINUE_CONNECTOR] - Создает/обновляет связи текущего актива.
Сегмент типа Connector [CLASSIFICATION_UPSERT_CONTINUE_CONNECTOR] - Создает/обновляет классификации текущего актива.
Сегмент типа Point [RECORD_UPSERT_PERSISTENCE] - Выполняет финальную фазу вставки/обновления актива - перенос данных в постоянное хранилище.
Сегмент типа Point [RECORD_UPSERT_REFRESH] - Обновляет информацию об активе из кэша или других временных хранилищ.
Сегмент типа Point [RECORD_UPSERT_POSTPROCESSING] - Выполняет пост-обработку вставляемого/обновляемого актива.
Сегмент типа Connector [RECORD_UPSERT_MATCHING_CONNECTOR] - Позволяет встраивать сегмент для сохранения данных сопоставления в момент сохранения изменений актива и запускать правила сопоставления для них.
Сегмент типа Point [RECORD_AUDIT_EVENT] - Обрабатывает успешные действия с активом данных и передает их в аудит или любому другому потребителю данных через домен сообщений. Сегмент желательно размещать в потоке выполнения в секции для обычных сегментов как можно позже.
Сегмент типа Fallback [RECORD_AUDIT_FALLBACK] - Обрабатывает ошибки выполнения потока, если основная логика потока (Start, Point и Connector) завершилась с ошибкой. Обрабатывает неуспешные действия с активом и передает их в аудит или любому другому потребителю данных через домен сообщений. Сегмент нужно размещать в потоке выполнения в секции для сегментов - обработчиков ошибок.
Поток формирования кластеров запрашиваемого актива
Стартовый сегмент [RECORD_GET_START] - Начинает процесс получения кластеров для запрашиваемого актива.
Сегмент типа Point: [RECORD_READ_ACCESS] - Проверяет права текущего пользователя на получение актива согласно системным ролям.
Сегмент типа Point: [RECORD_GET_DIFF] - Получает разницу ревизий актива.
Сегмент типа Point: [RECORD_GET_VISTORY] - Получает историю изменений актива.
Сегмент типа Point: [RECORD_GET_ATTRIBUTES_POSTPROCESSING] - Выполняет пост обработку получаемого актива.
Сегмент типа Point: [RECORD_GET_SECURITY_POSTPROCESSING] - Фильтрует атрибуты получаемого актива по правам доступа.
Сегмент типа Point: [RECORD_AUDIT_EVENT] - Пример сегмента успешных действий с активом, которые могут быть сообщены в аудит или любому другому потребителю данных через домен сообщений. Сегмент желательно размещать в потоке выполнения в секции для обычных сегментов как можно позже.
Сегмент типа Connector [RELATIONS_GET_CONNECTOR] - Позволяет встраивать сегмент для получения данных о связях.
Сегмент типа Connector [CLASSIFICATION_GET_CONNECTOR] - Позволяет встраивать сегмент для получения данных о классификациях.
Сегмент типа Connector [RECORD_GET_QUALITY_CONNECTOR] - Получает вычисленные ошибки правил качества для запрашиваемого актива.
Сегмент типа Connector [RECORD_GET_MATCHING_CONNECTOR] - Позволяет встраивать сегмент для получения данных сопоставления для запрашиваемого актива.
Финишный сегмент [RECORD_GET_FINISH] - Завершает процесс получения кластеров для запрашиваемого актива.
Поток пакетного сохранения изменений актива
Стартовый сегмент [BATCH_RECORD_UPSERT_START] - Начинает процесс пакетной вставки/обновления актива.
Сегмент типа Point: [BATCH_RECORD_GET_PROCESS] - Получает записи из пакета.
Сегмент типа Point: [BATCH_RECORD_AUDIT_EVENT] - Пример сегмента успешных пакетных действий с активом, которые могут быть сообщены в аудит или любому другому потребителю данных через домен сообщений. Сегмент желательно размещать в потоке выполнения в секции для обычных сегментов как можно позже.
Сегмент типа Connector [RELATIONS_GET_CONNECTOR] - Позволяет встраивать сегмент для получения данных о связях.
Сегмент типа Connector [BATCH_RECORD_UPSERT_MATCHING_CONNECTOR] - Позволяет встраивать сегмент для сохранения/удаления данных сопоставления при выполнении пакетного сохранения изменений актива.
Финишный сегмент [BATCH_RECORD_UPSERT_FINISH] - Завершает процесс пакетной вставки/обновления актива.
Поток пакетного удаления актива
Стартовый сегмент [BATCH_RECORD_DELETE_START] - Начинает процесс пакетного удаления актива.
Сегмент типа Point: [BATCH_RECORD_DELETE_MULTI_DRAFT] - Создает/продолжает родительский мультичерновик для удаления группы активов. Сегмент обязателен для поддержки массового согласования.
Сегмент типа Point: [BATCH_RECORD_DELETE_PROCESS] - Обрабатывает удаление активов из пакета, собирает статистику по результатам обработки.
Сегмент типа Point: [BATCH_RECORD_DELETE_DRAFT_SKIP] - Пропускает оставшуюся часть потока выполнения, если этот поток начал удаление из существующего массового черновика. Сегмент обязателен для поддержки массового согласования.
Сегмент типа Point: [BATCH_RECORD_DELETE_PERSISTENCE] - Выполняет удаление активов из пакета, которые были успешно обработаны в точке [BATCH_RECORD_DELETE_PROCESS].
Сегмент типа Point: [BATCH_RECORD_AUDIT_EVENT] - Пример сегмента успешных пакетных действий с удалением данных, которые могут быть сообщены в аудит или любому другому потребителю данных через домен сообщений. Сегмент желательно размещать в потоке выполнения в секции для обычных сегментов как можно позже.
Финишный сегмент [BATCH_RECORD_DELETE_FINISH] - Завершает процесс пакетного удаления актива.