В этой статье:
На странице «Структура справочника» создается логическая структура будущего дерева элементов:
Основой всей структуры справочника является блок. Блок - это условный элемент, который при построении справочника предоставит все элементы из одного источника данных. Количество блоков не ограничено, каждый будет связан со своим источником. Блоки могут быть простыми и рекурсивными.
Создание простого блока подразумевает прямую проекцию записей источника в элементы справочника без определения иерархии. Один простой блок будет предоставлять один уровень элементов.
Создание рекурсивного блока подразумевает создание иерархии справочника, где один элемент будет являться родительским для множества других элементов. Глубина рекурсии зависит в этом случае от данных в источнике и заранее не может быть вычислена.
Для создания блока выделите элемент «Блоки» или заголовок уже созданного блока и кнопку «Добавить блок»/ «Добавить блок». Будет открыто окно/панель «Свойства блока»:
Задайте наименование и уникальный идентификатор блока, а также тип блока: обычный или рекурсивный.
Раскрывающийся список «Индекс привязки родительского блока» будет доступен если создаваемый блок будет являться дочерним для какого-либо уже созданного блока.
После нажатия кнопки «ОК»/«Применить» блок будет создан в структуре справочника. Для каждого блока автоматически создаётся первичный индекс. Данный индекс будет использоваться при построении справочника для проверки на уникальность и идентификации элементов только этого блока.
При разработке иерархического справочника (справочника, в котором элементы могут располагаться в несколько уровней) учитывается место расположения исходных данных:
Если все данные предоставляет один источник, то справочник строится на базе рекурсивного блока;
Если данные предоставляют разные источники, то справочник может быть построен из комбинации простых и рекурсивных блоков. Также можно организовать иерархию из блоков.
Создание иерархии блоков осуществляется по следующему алгоритму:
После создания первого (родительского) блока, выделите его наименование в области «Блоки» и нажмите кнопку «Добавить блок»;
Будет открыт диалог создания второго (дочернего) блока;
В раскрывшемся диалоге укажите наименование, идентификатор и тип блока. Также будет доступен список «Индекс привязки родительского блока»;
В списке необходимо выбрать уникальный индекс родительского блока. При построении справочника по значениям атрибута(ов), входящих в выбранный индекс, будет осуществляться поиск родительских элементов. Сопоставление "родительский-дочерний элемент" будет осуществляться на основании связи, установленной для атрибутов индекса.
Для удаления блока выделите его заголовок в списке и нажмите кнопку «Удалить»/ «Удалить». После подтверждения блок будет удален.
Примечание. Дочерние блоки также будут удалены.
В структуре справочника можно выделить два вида индексов:
Индексы блока. Создаются внутри блока, используются для проверки уникальности и идентификации элементов только этого блока. Индекс блока также может использоваться для связи различных блоков;
Индексы справочника. Создаются как дочерний элемент у элемента «Индексы» в области «Блоки и индексы справочника». Используются для проверки уникальности и идентификации элементов всего справочника. Индексы справочника будут использоваться при включении справочника в состав структуры какого-либо куба для привязки данных к элементам справочника.
Совет. В индексах справочника рекомендуется создавать первичный индекс и включать в него атрибут с назначением «Идентификатор» или любой другой атрибут, по которому предполагается наличие уникальных значений. Для корректной работы справочника в дальнейшем не рекомендуются в индексы включать атрибуты, по которым могут присутствовать пустые значения.
Для создания индекса выделите элемент «Индексы» в области «Блоки и индексы справочника» или внутри какого-либо блока и нажмите кнопку «Добавить индекс»/ «Добавить индекс». Будет открыто окно/панель «Свойства индекса»:
Задайте наименование и уникальный идентификатор индекса. Также, используя флажки, можно указать специфику работы индекса:
Уникальный. Уникальный индекс осуществляет проверку на уникальность данных по атрибутам, которые будут в него включены;
Первичный. Уникальный индекс, используемый для идентификации элементов. Первичный индекс гарантирует, что в справочнике только один элемент будет иметь определенное значение атрибута (комбинацию значений атрибутов).
Примечание. При настройке табличного справочника в качестве календарного необходимо создать первичный индекс со следующим порядком атрибутов: первый атрибут - BLOCK_TYPE, второй атрибут - START_DATE. Данный индекс должен быть первым в списке индексов справочника.
Для задания атрибутов, значения которых будет проверять индекс при построении справочника, выполните одно из следующих действий:
в области «Атрибуты справочника» выделите атрибут, а в области «Блоки и индексы справочника» выберите индекс и нажмите кнопку «Связать»;
в области «Атрибуты справочника» выберите необходимый атрибут и перетащите в область индекса, в который атрибут необходимо включить.
Для удаления индекса выделите его заголовок в списке и нажмите кнопку «Удалить»/ «Удалить». После подтверждения индекс будет удалён.
См. также: