Категория
Категория представляет из себя тип данных с набором полей, атрибутов и шаблонов наименований. Поддерживается иерархическая структура категорий, при которой атрибуты родительской категории наследуются дочерними категориями.
Назначение и описание работы
Категория, присвоенная типу данных, позволяет динамически менять список заполняемых атрибутов в зависимости от выбранного экземпляра категории.
Рабочая область категории содержит вкладки Основные, Структура, Атрибуты, Объекты интерфейса, Портал. При установке флажка Сохраняемый тип данных отображаются дополнительные вкладки Параметры объекта и Шаблоны наименований. Установка флажка Иерархический добавляет возможность указать родительские категории, атрибуты которых будут наследоваться данной категорией.
Вкладка Структура предназначена для работы с полями категории. Содержит панель функциональных кнопок и таблицу для отображения параметров полей аналогично типам данных. При добавлении категории типу данных, собственные поля категории недоступны типу.
Примечание
У каждой категории есть предопределенное системное поле «Наименование», не отраженное в ЦН.
Наименование: наименование атрибута.
Тип: тип поля:
Примечание
Иерархия типа поля допускает не более 10 уровней вложенности.
Массив: установите флажок, если предполагается использование массива.
Внимание
В типе данных допускается не более пяти полей-массивов. При попытке сохранить тип данных с большим количеством полей-массивов отобразится соответствующая ошибка.
Разрешить NULL: установите флажок, если предполагается использование нулевых значений.
Проверка заполнения: проверка на наличие данных в отмеченных полях, выполняется с помощью метода Check.
Проверка: флажок устанавливается автоматически в отношении полей, для которых выбрана функция проверки корректности введенного значения. Для получения списка доступных функций выделите необходимое поле и нажмите на кнопку Выбор функции для проверки.
Примечание
Функция проверки должна содержать один входящий параметр и возвращать исключение в случае неудачной проверки. Вызов проверки заполнения атрибутов выполняется с помощью метода Check.
Комментарий: комментарий к полю.
Для создания новой структуры нажмите на кнопку + (Добавить поле). В таблице структуры будет добавлена строка нового поля.
На вкладке присутствует функциональность импорта метаданных из внешних источников (из систем 1С, СУБД, а так же файлов swagger, wsdl, xml и json). Для этого нажмите на кнопку меню Импорт метаданных.
В открывшемся всплывающем окне укажите внешний источник импорта данных и нажмите на кнопку Далее.
Система произведет загрузку структуры из внешнего источника. Выберите требуемую структуру и нажмите на кнопку Ок.
Вкладка Атрибуты предназначена для работы с атрибутами категории. Содержит панель функциональных кнопок и таблицу для отображения атрибутов аналогично вкладке Структура.
При заполнении экземпляра категории есть возможность указать для его атрибутов параметр необходимости заполнения (enabled). В зависимости от значения этого параметра у записей типа данных с этим экземпляром категории будет доступен или не доступен данный атрибут.
Также есть возможность указать значение для атрибутов экземпляра категории. В дальнейшем при заполнении типа с этой категорией указанное значение будет предлагаться в качестве значения по умолчанию, но может быть перезаписано для конкретного экземпляра типа.
Вкладка Объекты интерфейса содержит список объектов интерфейса Портала, связанных с категорией. Вкладка используется для создания конфигураций объектов и их быстрого размещения на Портале.
Рабочая область вкладки содержит панель функциональных кнопок и таблицу конфигураций объектов, у которых значение параметра refId совпадает со значением EntityId выбранного типа данных.
Функциональность кнопок Добавить, Редактировать, Удалить и Обновить совпадает с аналогичными кнопками в разделе Конфигурации объектов.
С помощью кнопки Добавить меню на портал объект типа BlazorMenu будет размещен на Портале. При отсутствии готового объекта BlazorMenu соответствующий объект будет создан. При этом в соответствующий пункт меню будет подставлен табличный объект интерфейса, либо будет подставлен созданный объект типа GridElementContent. Итоговый пункт меню будет добавлен на Портал.
С помощью кнопки Добавить выбранный объект конфигурации на портал размещается готовое представление на Портале. При отсутствии объекта конфигураций типа BlazorMenu будет создан соответствующий объект с выбранной конфигурацией и добавлен на Портал. Если конфигурация типа BlazorMenu присутствует, конфигурация объекта будет заменена на выбранную, после чего объект будет добавлен на Портал.
Примечание
При генерации меню Портала для типа используются привязанные к типу конфигурации объектов.
Вкладка Параметры объекта доступна только для сохраняемых категорий. Содержит настройки хранения аналогичные типам данных.
Примечание
Категория и связанные с ней сохраняемые типы данных и категории должны храниться в одном банке данных.
Вкладка Шаблоны наименований доступна только для сохраняемых категорий. Позволяет настроить шаблоны, использующие в своём составе атрибуты категории. Значения шаблонов категории могут использоваться в шаблонах наименований типов с данной категорией.
Шаблон категории хранится в банке данных в экземпляре категории аналогично значениям собственных полей, имеет тип String и размерность 150. В шаблоне категории могут использоваться только атрибуты самой категории и статичные вставки (буквы, цифры, спецсимволы).
Правила заполнения шаблонов категорий:
При добавлении значения из атрибута простого типа используется формат %ИмяКатегории.ИмяАтрибутаПростого%.
При добавлении значения из атрибута типа ссылка используется формат %ИмяКатегории.ИмяАтрибутаСсылки.ИмяПоля% , где поле ИмяПоля имеет простой тип и не является массивом.
При использовании спецсимвола % его необходимо экранировать с помощью символа ^. Остальные статичные вставки не требуют экранирования.
Пример значения шаблона категории:
%ИмяКатегории.ИмяПоля1% %ИмяКатегории.ИмяАтрибутаСсылки.ИмяПоля% 100^% качество
Вкладка Портал позволяет настроить отображение и операции с категориями на Портале.