Тип данных
Элемент представляет собой пользовательский тип данных с настроенным набором полей.
Рабочая область типа данных содержит вкладки Основные, Структура, Базовые модели, Объекты интерфейса, Портал.
Основные настройки
Вкладка Основные содержит следующие поля:
Название: название типа данных, обязательно для заполнения.
Имя: имя типа данных, необязательно для заполнения (заполняется автоматически из значения поля Название).
Комментарий: описание типа данных, необязательно для заполнения.
Параметр Сохраняемый тип данных. При включении параметра отображаются дополнительные вкладки Параметры объекта, Категории и Шаблоны наименований.
Структура
Вкладка Структура предназначена для работы с полями типа данных. Содержит панель функциональных кнопок и таблицу для отображения параметров полей:
Наименование: наименование поля. Наименование поля должно начинаться с буквы или символа нижнего подчеркивания (_). Наименование может содержать только буквы, цифры, символ подчеркивания. Поддерживается использование алиасов со спецсимволами. Пример: ВнутреннееИмяПоля(АлиасПоля-100%).
Внимание
В качестве наименования полей не следует использовать следующие значения: 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.
Тип: тип поля:
Массив: установите флажок, если предполагается использование массива.
Внимание
В типе данных допускается не более пяти полей-массивов. При попытке сохранить тип данных с большим количеством полей-массивов отобразится соответствующая ошибка.
Разрешить NULL: установите флажок, если предполагается использование нулевых значений.
Проверка заполнения: проверка на наличие данных в отмеченных полях, выполняется с помощью метода Check.
Примечание
Проверка заполнения не работает с булевыми значениями.
Примечание
При использовании проверки заполнения значение 0 для полей типов int и Decimal считается незаполненным.
Проверка: флажок устанавливается автоматически в отношении полей, для которых выбрана функция проверки корректности введенного значения. Для получения списка доступных функций выделите необходимое поле и нажмите на кнопку Выбор функции для проверки.
Примечание
Проверка не используется автоматически, ее следует вызывать, используя метод Check.
Примечание
Функция проверки должна содержать один входящий параметр и возвращать исключение в случае неудачной проверки.
Комментарий: описание поля, необязательно для заполнения.
Для создания новой структуры нажмите на кнопку + (Добавить поле). В таблице структуры будет добавлена строка нового поля.
Также можно импортировать структуру путем импорта метаданных из внешних источников.
Для этого нажмите на кнопку меню Импорт метаданных:

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

Для загрузки файлов swagger, wsdl, xml и json нажмите на кнопку Импорт метаданных:

После нажатия на кнопку Далее система произведет загрузку структуры из внешнего источника. Выберите требуемую структуру и нажмите на кнопку Ок.
Примечание
Если в поле типа данных размерность меняется в меньшую сторону, это поле будет удалено и создано заново.
Базовые модели
Вкладка Базовые модели предназначена для работы с базовыми моделями типа данных. Вкладка содержит панель функциональных кнопок и таблицу для отображения выбранных базовых моделей. Для успешного сохранения типа данных необходимо наличие в структуре всех полей его базовых моделей.
Для добавления новой базовой модели нажмите на функциональную кнопку Добавить поле. В результате таблице будет добавлена новая строка. В колонке Тип нажмите на кнопку выбора, чтобы выбрать базовую модель.
Для копирования поля базовой модели в тип данных выберите базовую модель и нажмите на кнопку Обновить поле.
Вкладка Объекты интерфейса содержит список объектов интерфейса Портала , связанных с типом данных. Вкладка используется для создания конфигураций объектов и их быстрого размещения на Портале.
Рабочая область вкладки содержит панель функциональных кнопок и таблицу конфигураций объектов, у которых значение параметра refId совпадает со значением EntityId выбранного типа данных.
Функциональность кнопок Добавить, редактировать, Удалить и Обновить совпадает с аналогичными кнопками в разделе Конфигурации объектов.
С помощью кнопки Добавить меню на портал объект типа BlazorMenu будет размещен на Портале. При отсутствии готового объекта BlazorMenu соответствующий объект будет создан. При этом в соответствующий пункт меню будет подставлен табличный объект интерфейса, либо будет подставлен созданный объект типа GridElementContent. Итоговый пункт меню будет добавлен на Портал.
С помощью кнопки Добавить выбранный объект конфигурации на портал размещается готовое представление на Портале. При отсутствии объекта конфигураций типа BlazorMenu будет создан соответствующий объект с выбранной конфигурацией и добавлен на Портал. Если конфигурация типа BlazorMenu присутствует, конфигурация объекта будет заменена на выбранную, после чего объект будет добавлен на Портал.
Параметры объекта
Вкладка Параметры объекта отображается только при установленном флажке Сохраняемый тип данных. Вкладка предназначена для настройки параметров хранения записей типа в банке данных.
Вкладка Категории отображается только при установленном флажке Сохраняемый тип данных. Вкладка предназначена для работы с категориями типа данных и содержит список категорий, доступных для добавления. После добавления категории выберите экземпляр категории и заполните значения включенных атрибутов.
Пример использования:
Создана категория КатегорияЧаи с атрибутами Вид, Форма, КолВоПакетиков, СтранаПроизводитель. Записано 2 экземпляра КатегорияЧаи с разным набором включенных атрибутов.
Создан тип данных Чай с полями Название и ВидУпаковки, для типа добавлена категория КатегорияЧаи. Таким образом, при записи экземпляра типа Чай есть возможность заполнить значения атрибутов выбранного экземпляра категории. В данном случае это Вид и СтранаПроизводитель.
Структура записи экземпляра типа Чай (без сервисных параметров) будет иметь следующий вид:
{
"Название": "GREENFIELD Flying Dragon",
"ВидУпаковки": "коробка",
"Категории": {
"КатегорияЧаи": {
"Вид": "зеленый",
"Форма": "",
"КолВоПакетиков": 0,
"СтранаПроизводитель": "Россия",
"Коммент": "",
"Атрибуты": {
"Items": []
}
}
}
}
Шаблоны наименований
Вкладка Шаблоны наименований отображается только при установленном флажке Сохраняемый тип данных и позволяет настроить автозаполнение значений для выбранных полей.
В шаблоне типа могут использоваться его простые поля, для которых не настроен собственный шаблон, шаблоны его категорий и статичные вставки (буквы, цифры, спецсимволы).
Правила заполнения шаблонов типа:
при добавлении значения из поля простого типа используется формат %ИмяПоля1%;
при добавлении значения из поля типа ссылка используется формат %ИмяПоля2.ИмяПоляИзВложенногоТипа%, где поле ИмяПоляИзВложенногоТипа имеет простой тип и не является массивом;
при добавлении значения из шаблона категории используется формат %ИмяКатегории.ИмяШаблонаКатегории%;
при использовании спецсимвола % его необходимо экранировать с помощью символа ^. Остальные статичные вставки не требуют экранирования.
Пример использования:
В конфигурации категории, представленной в прошлом примере, добавлены шаблоны наименований ШаблонКраткий и ШаблонПолный. При создании нового экземпляра категории КатегорияЧаи значения шаблонов заполнены.
В структуре типа Чай добавлены поля НаименованиеКраткое и НаименованиеПолное, для которых в дальнейшем будут применяться шаблоны наименований. На вкладке Шаблоны наименований типа заполнены шаблоны, в соответствии с которыми будут заполняться значения этих полей.
В результате при записи экземпляра типа Чай значения полей НаименованиеКраткое и НаименованиеПолное заполнятся автоматически с использованием значения из полей типа и атрибутов выбранной категории.
Шаблон применяется в момент записи экземпляра типа данных. Если полю, для которого заполнен шаблон, на момент отправки в банк данных уже присвоено значение, оно будет переопределено в соответствии с настроенным шаблоном.
Для полей типа dateTime и boolean при использовании в шаблоне заполняются значения в формате local и true/false соответственно.
Внимание
Для корректной работы шаблонов наименований тип данных и связанные с ним типы данных и категории должны храниться в одном банке данных.
Портал
Вкладка Портал позволяет работать с конфигурацией типа данных на Портале.

На вкладке доступны следующие поля и элементы настройки:
Имя типа для отображения: DisplayName - наименование типа данных, отображаемое на портале.
Шаблон представление записи: Description - шаблон-описание. Названия полей вводятся в фигурных скобках.
Шаблон расширенного представления записи: FullDescription - шаблон полного описания. Названия полей вводятся в фигурных скобках.
Группировать по дате при просмотре истории: DoGroupHistoryChangeData - флажок устанавливается для соответствующей группировки при просмотре.
Форма записи: FormElementViewerId, идентификатор objectConfig - конфигурация UI элемента, открывающегося по двойному щелчку по строке, типизированной данным типом таблицы.
Форма просмотра истории: GridHistoryChangesId: идентификатор объекта конфигурации - таблицы, содержащей историю изменений полей выбранной записи.
Таблица представления имен полей (словарь наименования полей типа данных, отображаемого на Портале - наименования полей форм, колонок таблиц):
Имя поля: наименование поля типа данных.
Отображаемое имя: псевдоним, используемый на Портале.
Настройка индексов
Доступно только для Объектов банка. Система предоставляет возможность создания составных и нечетких индексов.