Категория

Категория представляет из себя тип данных с набором полей, атрибутов и шаблонов наименований. Поддерживается иерархическая структура категорий, при которой атрибуты родительской категории наследуются дочерними категориями.

Категория, присвоенная типу данных, позволяет динамически менять список заполняемых атрибутов в зависимости от выбранного экземпляра категории.

Рабочая область категории содержит вкладки Основные, Структура, Атрибуты, Объекты интерфейса, Портал. При установке флажка Сохраняемый тип данных отображаются дополнительные вкладки Параметры объекта и Шаблоны наименований.

Основные настройки

Вкладка Основные содержит следующие поля:

  • Название: название типа данных, обязательно для заполнения.

  • Имя: имя типа данных, необязательно для заполнения (заполняется автоматически из значения поля Название).

  • Комментарий: описание типа данных, необязательно для заполнения.

  • Параметр Сохраняемый тип данных. При включении параметра отображаются дополнительные вкладки Параметры объекта и Шаблоны наименований.

  • Параметр Иерархический. При включении параметра добавляется возможность указать родительские категории, атрибуты которых будут наследоваться данной категорией.

../../_images/datatype_cat1.png

Структура

Вкладка Структура предназначена для работы с полями категории. Содержит панель функциональных кнопок и таблицу для отображения параметров полей аналогично типам данных. При добавлении категории типу данных, собственные поля категории недоступны типу.

Примечание

У каждой категории есть предопределенное системное поле «Наименование», не отраженное в ЦН.

../../_images/cat_structure.png
  • Наименование: наименование поля.

    Внимание

    В качестве наименования полей не следует использовать следующие значения: local, __value, LastException, CurrentProcessId, Count, Message, LinkType, BaseClass, Message_DataType, Message_Process, Message_Module, Message_Algorithm, Message_Source, OwnDictionary, OwnList, MessageBaseField, BaseClassUtils, Blob, ExpressionsUtils, IBankType, target, abstract, as, base, bool, break, byte, case, catch, char, checked, class, const, continue, decimal, default, delegate, do, double, else, enum, event, explicit, extern, false, finally, fixed, float, for, foreach, goto, if, implicit, in, int, interface, internal, is, lock, long, namespace, new, null, object,*operator*, out, override, params, private, protected, public, readonly, ref, return, sbyte, sealed, short, sizeof, stackalloc, static, string, struct, switch, this, throw, true, try, typeof, uint, ulong, unchecked, unsafe, ushort, using, using static, virtual, void, volatile, while.

  • Тип: тип поля:

    ../../_images/datatype_field.png

    Примечание

    Иерархия типа поля допускает не более 10 уровней вложенности.

  • Массив: установите флажок, если предполагается использование массива.

    Внимание

    В типе данных допускается не более пяти полей-массивов. При попытке сохранить тип данных с большим количеством полей-массивов отобразится соответствующая ошибка.

  • Разрешить NULL: установите флажок, если предполагается использование нулевых значений.

  • Проверка заполнения: проверка на наличие данных в отмеченных полях, выполняется с помощью метода Check.

  • Проверка: флажок устанавливается автоматически в отношении полей, для которых выбрана функция проверки корректности введенного значения. Для получения списка доступных функций выделите необходимое поле и нажмите на кнопку Выбор функции для проверки.

    Примечание

    Функция проверки должна содержать один входящий параметр и возвращать исключение в случае неудачной проверки. Вызов проверки заполнения атрибутов выполняется с помощью метода Check.

  • Комментарий: комментарий к полю.

Для создания новой структуры нажмите на кнопку + (Добавить поле). В таблице структуры будет добавлена строка нового поля.

На вкладке присутствует функциональность импорта метаданных из внешних источников (из систем , СУБД, а также файлов swagger, wsdl, xml и json). Для этого нажмите на кнопку меню Импорт метаданных.

../../_images/ext_dt_6.png

В открывшемся всплывающем окне укажите внешний источник импорта данных и нажмите на кнопку Далее.

../../_images/ext_dt_7.png

Система произведет загрузку структуры из внешнего источника. Выберите требуемую структуру и нажмите на кнопку Ок.

Атрибуты

Вкладка Атрибуты предназначена для работы с атрибутами категории. Содержит панель функциональных кнопок и таблицу для отображения атрибутов аналогично вкладке Структура.

При заполнении экземпляра категории есть возможность указать для его атрибутов параметр необходимости заполнения (enabled). В зависимости от значения этого параметра у записей типа данных с этим экземпляром категории будет доступен или не доступен данный атрибут.

Также есть возможность указать значение для атрибутов экземпляра категории. В дальнейшем при заполнении типа с этой категорией указанное значение будет предлагаться в качестве значения по умолчанию, но может быть перезаписано для конкретного экземпляра типа.

Объекты интерфейса

Вкладка Объекты интерфейса содержит список объектов интерфейса Портала, связанных с категорией. Вкладка используется для создания конфигураций объектов и их быстрого размещения на Портале.

Рабочая область вкладки содержит панель функциональных кнопок и таблицу конфигураций объектов, у которых значение параметра refId совпадает со значением EntityId выбранного типа данных.

Функциональность кнопок Добавить, Редактировать, Удалить и Обновить совпадает с аналогичными кнопками в разделе Конфигурации объектов.

С помощью кнопки Добавить меню на портал объект типа BlazorMenu будет размещен на Портале. При отсутствии готового объекта BlazorMenu соответствующий объект будет создан. При этом в соответствующий пункт меню будет подставлен табличный объект интерфейса, либо будет подставлен созданный объект типа GridElementContent. Итоговый пункт меню будет добавлен на Портал.

С помощью кнопки Добавить выбранный объект конфигурации на портал размещается готовое представление на Портале. При отсутствии объекта конфигураций типа BlazorMenu будет создан соответствующий объект с выбранной конфигурацией и добавлен на Портал. Если конфигурация типа BlazorMenu присутствует, конфигурация объекта будет заменена на выбранную, после чего объект будет добавлен на Портал.

Примечание

При генерации меню Портала для типа используются привязанные к типу конфигурации объектов.

Параметры объекта

Вкладка Параметры объекта доступна только для сохраняемых категорий. Содержит настройки хранения аналогичные типам данных.

Примечание

Категория и связанные с ней сохраняемые типы данных и категории должны храниться в одном банке данных.

Шаблоны наименований

Вкладка Шаблоны наименований доступна только для сохраняемых категорий. Позволяет настроить шаблоны, использующие в своём составе атрибуты категории. Значения шаблонов категории могут использоваться в шаблонах наименований типов с данной категорией.

Шаблон категории хранится в банке данных в экземпляре категории аналогично значениям собственных полей, имеет тип String и размерность 150. В шаблоне категории могут использоваться только атрибуты самой категории и статичные вставки (буквы, цифры, спецсимволы).

Правила заполнения шаблонов категорий:

  • При добавлении значения из атрибута простого типа используется формат %ИмяКатегории.ИмяАтрибутаПростого%.

  • При добавлении значения из атрибута типа ссылка используется формат %ИмяКатегории.ИмяАтрибутаСсылки.ИмяПоля% , где поле ИмяПоля имеет простой тип и не является массивом.

  • При использовании спецсимвола % его необходимо экранировать с помощью символа ^. Остальные статичные вставки не требуют экранирования.

Пример значения шаблона категории:

%ИмяКатегории.ИмяПоля1% %ИмяКатегории.ИмяАтрибутаСсылки.ИмяПоля% 100^% качество

Портал

Вкладка Портал позволяет работать с конфигурацией типа данных на Портале. Описание вкладки доступно в разделе Тип данных.