Системные dbproc
Путь расположения
Путь в сборочном каталоге | Назначение |
---|---|
|
|
|
Обзор
Набор ассетов осуществляющих фильтрацию типов сущностей и состава их полей, подлежащих переносу в смежные БД (report). Перенесены могут быть только сущности, управляемые функциональной ролью mdc.
На основе файлов метаданных:
-
Автоматически в БД назначения создаются таблицы категорий, столбцы указанных типов.
-
Осуществляется регулярная синхронизация сущностей между БД.
-
Фильтруется состав полей сущностей в таблицах категорий БД назначения.
Список сущностей
Список сущностей, подлежащих автоматическому переносу из БД сущностей домена в БД журнала/отчетов домена.
Каждому из перечисленных типов в папке sysdbprocs должен соответствовать отдельный файл, описывающий состав полей, подлежащих переносу.
Должен быть назван идентично типу сущности в API /api/crud/v1/<OBJECT>/<METHOD>
.
{ "objects": array<str> }
-
objects
– список имен типов сущностей домена, подлежащих переносу в справочник смежной БД (report).
Состав полей сущности
Дескрипторы полей сущности и связанных с ними столбцов таблицы категорий в реляционной БД PostgreSql.
{ "name": str, "object": str, "id_field": str, "fields": array<object> }
-
name
– название таблицы справочника для типа сущности. -
object
– название типа сущности в функциональной роли mdc. -
id_field
– название поля идентификатора сущности в функциональной роли mdc. -
fields
– состав полей типа сущности, подлежащих переносу.-
name
– название поля. -
type
– тип столбца в таблице справочника смежной БД для поля. Допустимые значения:integer
,uuid
,varchar
,jsonb
-
default_field
– …
-
Пример
Определяет структуру таблицы справочника сущностей типа user в смежной БД (report), устанавливает к переносу указанные поля. Расположение /rostell_env/priv/metadata/<SOLUTION>/sysdbprocs/user.json
.
{ "name": "users", "object": "user", "id_field": "id", "fields": [ {"name": "id", "type": "uuid", "default_field": true}, {"name": "name", "type": "varchar", "default_field": true}, {"name": "login", "type": "varchar", "default_field": true}, {"name": "timezone", "type": "varchar"}, {"name": "opts", "type": "jsonb"}, {"name": "ext", "type": "jsonb"} ] }