Типы атрибутов

Атрибуты отличаются не только видом, но и типом. Тип атрибута выбирается при добавлении того или иного вида атрибута. Ниже представлены все типы атрибутов, их особенности и дополнительные поля.

Таблица 1 – Возможные типы значений простого и массив-атрибута

Тип атрибута

Значение

Описание

Для простого и массив-атрибута

Простой тип

Строковый

Строка без дополнительных ограничений

Целочисленный

Целое число

Численный

Число с дробным значением

Логический

Может принимать следующие значения: true, false, null. Тип значения недоступен для массив-атрибутов

Дата

Дата

Дата/время

Дата и время

Время

Время

Файл

Бинарный массив. Приложенный файл (один или несколько), поиск по которому не выполняется

Текстовый файл

Диапазон

Диапазон значений

Ссылка на справочник

Ссылка на справочник

Ссылка на один из справочников модели данных

Ссылка на реестр

Ссылка на реестр

Ссылка на один из реестров модели данных

Локальное перечисление

Локальное перечисление

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

Только для простого атрибута

Перечисление

Перечисление в системе

Выбор одного из значений перечисления, ранее созданного в системе.

Ссылка на веб-ресурс

Ссылка

Шаблон ссылки на сторонний ресурс (адрес и переменная), в записи из шаблона формируется ссылка с использованием данных записи. Указывается имя атрибута, который будет использоваться в качестве переменной для указания конкретной сущности на веб-ресурсе в следующем виде: {attr_name}. Итоговый результат должен выглядеть так: http://www.example.ru/%7Battr_name%7D

Ограничения длины атрибутов и производительность:

  • Физические ограничения: Ограничений на длину значений атрибутов не предусмотрено.

  • Влияние на производительность: Производительность системы при поиске и индексации напрямую зависит от размера данных в атрибутах (количество символов в строковых). Использование больших значений может привести к значительному замедлению работы.

  • Рекомендации для поисковых атрибутов: Для атрибутов, у которых установлен флаг «Поисковый», рекомендуется придерживаться следующих пределов:

  • Строковый атрибут: не более 2 000 – 4 000 символов.

  • Общее правило: Если планируется хранить большие значения, не следует устанавливать для такого атрибута флаг "Поисковый".

  • Точная настройка: Для определения точных максимальных значений и их влияния на производительность в конкретных условиях необходимы тестирование на рабочей системе и балансировка нагрузки.

Предупреждение

Атрибутам типа "Ссылка на справочник" не допускается указывать в качестве отображаемых атрибуты справочника, которые не являются обязательными и отображаемыми.

Дополнительные поля

Дополнительные поля открываются при выборе определенных типов атрибута и типов значений.

Для простого и массив-атрибута:

  1. Тип атрибута: "Простой тип", тип значения: "Строковый".

    • Флаги:

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

      • Регистронезависимый поиск. Определяет, будет ли при поиске записи по этому атрибуту учитываться регистр. По умолчанию активна зависимость от регистра. Если флаг установлен как "Нет" при поиске точного значения фамилии "Иванов" будут найдены все записи с указанным значением, при этом записи, где указана фамилия "ИВАНОВ", "иванов", "иванОВ" и т.п. не будут отображаться.

      • Поиск по синонимам. Позволяет осуществлять полнотекстовый поиск атрибутов с учетом синонимов для критериев поиска: "По сходству с" и "Не имеет сходства с". Поддержка синонимов работает только для поиска и не используется в механизме сопоставления. Опции морфологического поиска и транслитерации не поддерживают синонимы.

      • Поддержка транслита. Поиск значений атрибута при вводе запроса транслитом. Работает в простых строковых и массив-атрибутах. При этом поиск атрибута кириллицей также работает. При включении опции поддержки транслитерации автоматически включается опция регистронезависимого поиска. Записи, в результате транслитерации имеющие равные значения, имеют произвольный порядок при сортировке по транслитерованным значениям. Более подробно о транслитерации.

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

    • Параметр "Тип поисковой сортировки":

      • По умолчанию (A-z, А-я).

      • По транслитерованным значениям (A-z).

    • Параметр "Вид":

      • По умолчанию.

      • Многострочное поле. Отображает значения атрибута в несколько строк (до 5). Для массив-атрибута недоступен

      • Маска.

      • Редактируемая ссылка. Отображает введенное значение как ссылку для перехода на внешний ресурс (с возможностью редактирования). В поле "Пример ссылки" можно задать значение ссылки. Для массив-атрибута недоступен

    • Параметр "Выбрать стратегию". Позволяет указать стратегию генерации значения атрибута. Параметр доступен только для простого строкового атрибута, а также для кодового атрибута (для альтернативного кодового - недоступен).

    • Параметр "Включить ограничитель". Позволяет настраивать маску и допустимые значение диапазонов атрибутов.

  2. Тип атрибута: "Локальное перечисление". Помогает задать список предустановленных значений для атрибута. Правила качества для такого списка не поддерживаются. При удалении значения из модели данных на записях значения остаются. Записи, содержащие неактуальные значения потребуется отредактировать (более несуществующие значения перечисления подсвечиваются красным при открытии записи).

  3. Параметр "Вес атрибута". Значение параметра используется при поиске записей реестра/справочника без указания сортировки по определенному столбцу. Параметр работает при условии, если в разделе "Параметры системы" включен параметр "Вычисление score". В случае если, у атрибута нет свойства "Поисковый", то поле не будет доступно.

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

    • Ссылка на справочник. Указывается справочник, который будет использоваться при выборе значений атрибута, а также отображаемые и поисковые атрибуты.

    • Ссылка на реестр. Указывается реестр, который будет использоваться при выборе значений атрибута, а также отображаемые и поисковые атрибуты.

    • Отображаемые атрибуты. Указывается набор атрибутов справочника, которые будут отображаться при выборе значения атрибута "Ссылка на справочник".

    • Поисковые атрибуты. Выбор атрибутов, по которым будет производиться поиск связанных записей при заполнении карточки реестра/справочника в разделе "Данные". Если атрибуты выбраны, то поиск осуществляется по поисковым атрибутам, настроенным в поле "Поисковые атрибуты". Если атрибуты не выбраны, то поиск осуществляется по поисковым атрибутам, настроенным в закладке "Атрибуты" связанного справочника.

    • Показывать названия атрибутов. Если параметр включен, то к значению атрибута добавляется его название по формуле "Название атрибута: значение". Отображение названия необходимо в ситуациях, когда значение отображаемого атрибута не дает точного представления о себе, например, если он содержит числовое значение.

    • Значение по умолчанию. В зависимости от типа справочника отображается селектор для выбора записи справочника. Установить значение по умолчанию можно только для справочников, у которых в настройках модели отключен параметр "Отображать периоды актуальности" (периоды скрыты). Для справочников с включенными периодами актуальности это поле будет заблокировано. При создании новой записи в атрибут типа "Ссылка на справочник" с заполненным полем "Значение по умолчанию" будет автоматически подставлено соответствующее значение (как отображаемое, так и служебный etalonId). Если значение по умолчанию было задано до введения ограничения, поле останется активным, позволяя его просматривать или сбрасывать. После сброса значения установить его заново для такого справочника будет невозможно.

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

    • Настройки подстановки значений. Являются обратным механизмом настроек фильтрации и позволяют настроить подстановку атрибута справочника в атрибут текущего реестра.

Примечания:

  • Атрибут, имеющий включенные флаги "Морфологический/Регистронезависимый поиск", "Поиск по синонимам", "Поддержка транслита", обязательно должен иметь включенным параметр "Поисковый".

  • Создать атрибут "Ссылка на справочник" можно при наличии у пользователя прав на "Модель данных".

  • Около атрибута "Ссылка на справочник" будет отображаться иконка, которая будет сообщать об отсутствии необходимых прав у пользователя.

  • При копировании атрибутов, при отсутствии прав на "Модель данных" атрибуты "Ссылка на справочник" не будут отображаться.

  • При отсутствии прав на "Модель данных", атрибут "Ссылка на справочник" невозможно просмотреть/создать/скопировать.

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

  • В типе атрибута "Ссылка на реестр", для включения поля "Значение по умолчанию" необходимо, чтобы на реестре, на который ссылается атрибут, были отключены периоды актуальности.

Только для простого атрибута:

  1. Тип атрибута: "Простой тип", тип значения: все, кроме "Файл" и "Текстовый файл".

    • Значение по умолчанию. Конкретное значение, заданное по умолчанию. Настройка применена только к новым записям. Если в реестре/справочнике добавить атрибут со значением по умолчанию, то старые записи не будут им заполнены.

  2. Тип атрибута: "Простой тип", тип значения: "Численный" и "Диапазон".

    • Единица измерения. Список измеряемых величин (доступен, если единицы измерения настроены). Пример: валюта, длина

    • Используемая единица. Выбор единицы измерения (доступен, если единицы измерения настроены). Указанная единица измерения будет по умолчанию использоваться в записи. Пример: доллар.

  3. Тип атрибута: "Простой тип", тип значения: "Логический".

    • Вид — определяет способ отображения логического атрибута в карточке записи. Доступны следующие варианты:

      • Выпадающий список (используется по умолчанию) — значение выбирается из выпадающего списка с вариантами "Да/Нет".

      • Радиокнопки — выбор осуществляется с помощью двух радиокнопок ("Да/Нет"). Если значение не задано, то ни одна из кнопок не будет выбрана.

      • Чекбокс — отображается как одиночный флаг. Отмеченное состояние соответствует "Да", пустое - "Нет". Если значение не задано, флаг отображается в виде текста "Не задано".

  4. Тип атрибута: "Простой тип", тип значения: "Файл" и "Текстовый файл".

    • Провайдер хранилища. Выбор провайдера из списка существующих.

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

      • При загрузке файла через карточку записи в запросе отправляется containerId, определяющий, в какой контейнер будет помещен файл.

  5. Тип атрибута: "Простой тип", тип значения: "Время".

    • Значение по умолчанию. Конкретное значение времени, заданное по умолчанию, в формате ЧЧ:ММ:СС. Для более точной детализации времени после точки можно указать до 9 цифр включительно.

  6. Тип атрибута: "Перечисление".

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

Примечания:

  • У атрибутов типа Ссылка на справочник, Единица измерения, Ссылка на веб-ресурс выявлена некорректная работа с правилами качества. Ведутся работы по исправлению.

Ограничения значений атрибутов

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

Поддерживаемые сущности

Ограничения можно настраивать для атрибутов следующих сущностей:

Поддерживаемые типы атрибутов

Ограничители можно создавать для:

  • Простых атрибутов.

  • Кодовых атрибутов.

  • Альтернативных кодовых атрибутов.

Типы ограничителей

  1. Маска

    • Применяется к строковым атрибутам.

    • Проверяет соответствие значения заданной маске. При наведении курсора мыши на иконку image2 возникнет окно с подсказкой по ее формату.

    • Пример маски: +7 (###) ###-##-## для номера телефона.

  2. Диапазон

    • Поддерживается для следующих типов атрибутов:

      • Численный

      • Целочисленный

      • Дата

      • Время

      • Дата/время

    • Можно задать нижнюю и/или верхнюю границу.

Настройка ограничителей в метамодели

Для настройки ограничений необходимо:

  1. В настройках атрибута активировать флаг "Ограничители"

  2. Выбрать тип ограничителя: "Маска" или "Диапазон".

  3. Для ограничителя типа "Маска" ввести маску с подсказкой по ее формату.

  4. Для ограничителя типа "Диапазон" ввести верхнюю и/или нижнюю границу.

Примечания:

  • Для численных атрибутов с выбранной единицей измерения диапазон указывается в единице измерения по умолчанию.

  • Проверка ограничений происходит при работе с атрибутами через карточку записи и при запуске массовых операций.

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

  • Если для строкового атрибута уже задана маска через параметр "Вид" (см. Дополнительные поля), то настройка ограничителя "Маска" в метамодели имеет приоритет.

Стратегии генерации значений атрибутов

  1. Автогенерация (GUID). Значение атрибута генерируется для записей автоматически. Длина ограничена 512 символами.

  2. Объединение. Значение атрибута генерируется путем соединения в единую строку заданных в конфигурации атрибутов. Также необходимо заполнить следующие параметры:

    • Показывать названия атрибутов. Необходимо выбрать атрибуты, которые будут объединены в одну строку.

    • Разделитель. Необходимо ввести знак или набор знаков, которые будут разграничивать атрибуты в генерируемой строке.

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

    • Имя пользовательского способа генерации.

    • Библиотека. Выбор .jar-файла библиотеки из списка ранее загруженных.

    • Java класс. Выбор класса, который содержится в файле библиотеки.

Примечания:

  • Для атрибутов типа Дата используется фиксированный формат yyyy-mm-dd. Другие форматы даты не поддерживаются при генерации внешнего ключа.