Перейти к содержанию

Слой подключений

Слой «Подключения» вкладки «Конфигурация» связывает логическую модель с физической базой данных: он отображает таблицы подключённых баз данных и позволяет сопоставить каждый элемент таблицы фактов с реальной колонкой. Именно это сопоставление делает возможной генерацию SQL для показателей и витрин.

Переключение слоёв

Холст вкладки «Конфигурация» содержит два независимых слоя, которые переключаются кнопкой слоёв на панели над холстом:

Слой Содержание
«Показатели» Показатели, факты, измерения и справочники из РПИ — логическая структура таблицы фактов
«Подключения» Таблицы подключённых баз данных и их связи с элементами модели

Оба слоя включены по умолчанию и включаются или отключаются независимо. На той же панели расположены кнопка «Сохранить» и кнопка «Перезаполнить».

Добавление таблиц базы данных на холст

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

  • Установите флажок у таблицы, чтобы поместить её на холст, и снимите флажок, чтобы убрать. Таблицу также можно перетащить с панели на холст
  • Таблицу, у которой есть хотя бы одно сопоставление, снятием флажка убрать нельзя — сначала удалите её сопоставления
  • Поле поиска над панелью фильтрует названия таблиц внутри каждого подключения и одновременно фильтрует список элементов слоя «Показатели»
  • Для подключений MS SQL Server названия таблиц отображаются в виде схема.таблица, для остальных диалектов — как имя таблицы
  • Список таблиц берётся из схемы, сохранённой для подключения, а не из запроса к базе данных в момент открытия. Неактивные подключения не предлагаются
  • Если данные прочитать не удалось, на панели выводится сообщение «Не удалось получить данные из подключенной базы данных.» и ссылка «Проверьте подключение к базе данных», открывающая раздел «Подключения»

Сопоставление элемента с колонкой

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

Проведите связь от элемента к строке колонки. Сопоставить можно следующие элементы:

Элемент Результат сопоставления
Измерение, факт, показатель таблицы фактов Задаёт подключённый источник этого элемента в РПИ
Первичный ключ справочника Задаёт первичный ключ справочника
Внешний ключ справочника внутри таблицы фактов Задаёт внешний ключ связи между таблицей фактов и этим справочником
Первичный ключ таблицы фактов Задаёт первичный ключ таблицы фактов

Примечания:

  • Связь всегда соединяет один элемент и одну колонку. Две колонки соединить друг с другом нельзя, как и два элемента
  • У элемента может быть только одно сопоставление. Новая связь от уже сопоставленного элемента заменяет предыдущую
  • Связи сопоставления отображаются анимированными пунктирными линиями
  • Сопоставление измерения, факта или показателя хранится у элемента в РПИ, поэтому оно является общим для всех таблиц фактов и всех витрин, использующих этот элемент

Удаление сопоставления

Щёлкните по связи, а затем по появившейся на ней круглой кнопке удаления. Требуется подтверждение: окно «Удалить связь» предупреждает — «Вы уверены, что хотите удалить эту связь? Это повлияет на РПИ и все таблицы фактов и витрины, которые используют данный показатель/измерение».

Блок физической таблицы убирается с холста кнопкой закрытия на блоке, которая появляется только после того, как у таблицы не осталось сопоставлений.

Предупреждения о сопоставлении

Об отсутствующих и нарушенных сопоставлениях сообщается на узле элемента, но сохранению это не препятствует:

Сообщение Значение
«Поле подключенного источника данных в РПИ не настроено» У элемента нет сопоставления
«Поле подключенного источника данных в РПИ ссылается на поле базы данных, которое не может быть найдено в настроенных подключениях к базе данных» Сопоставленную колонку не удаётся найти ни в одном настроенном подключении
«Подключенное поле источника данных в РПИ ссылается на поле базы данных из подключения к базе данных, которое в данный момент неактивно» Подключение сопоставленной колонки неактивно
«Столбец источника данных был удален из базы данных» Колонки больше нет в базе данных
«Неверный формат подключенного источника данных в РПИ» Сохранённое значение источника не удаётся распознать
«Такой таблицы не существует в подключенной базе данных» Сопоставленной таблицы нет в подключённой базе данных
«Такой колонки не существует в выбранной таблице из подключенной базы данных» Сопоставленной колонки нет в сопоставленной таблице

Расположение блоков и сохранение

  • Положения узлов слоя «Подключения» хранятся отдельно от положений узлов слоя «Показатели», но фиксируются одной кнопкой «Сохранить». Автосохранения нет
  • Сохранённое положение всегда имеет приоритет. Узел, у которого сохранённого положения ещё нет, размещается автоматически: таблица базы данных, связанная со справочником, размещается рядом с этим справочником на следующем за ним уровне, а остальные таблицы — в свободном пространстве так, чтобы блоки не перекрывались
  • Положения сохраняются при редактировании: добавление и удаление элементов, а также перезаполнение таблицы фактов не сбрасывают положение уже размещённых на холсте таблиц базы данных
  • После перезаполнения таблицы фактов таблицы базы данных, у которых не осталось сопоставлений, убираются с холста

Права доступа

Для редактирования слоя «Подключения» требуется уровень доступа Разработчик или выше в проекте (Разработчик, Администратор компании, Суперадминистратор) и действующая лицензия. Без них слой доступен только для чтения: узлы нельзя перемещать, связи нельзя создавать и удалять, таблицы нельзя добавлять и убирать, а кнопки «Сохранить» и «Перезаполнить» не отображаются.

Ограничения:

  • Связи проводятся только от элемента к колонке — соединения между двумя физическими таблицами создать нельзя. Соединения в сформированном SQL строятся по первичным и внешним ключам справочников
  • У связи нет собственных настроек: тип соединения и редактор пар колонок отсутствуют
  • В строках колонок отображается только имя колонки, без типа данных и без ключей, заданных в базе данных