В данном разделе рассматривается порядок действий пользователя в кейсах изменения структуры мультисферы (добавление и/или удаление размерностей и фактов) для SQL-источников.

В качестве примера создана мультисфера «Demo» с использованием следующего SQL-запроса:

SELECT checkdate, chequeid, category, quant, sumprod
FROM db_consulting.demo;

В данном примере уже удалены поля quant и sumprod из списка фактов. 

Добавление размерностей/фактов

Предположим, в таблице db_consulting.demo добавилось поле (например, числовой показатель seb) и пользователю необходимо добавить его в мультисферу (в качестве факта). Для этого необходимо выполнить следующие шаги:

  1. Перейти к редактированию мультисферы, выбрав в контекстном меню мультисферы Изменить.

  2. Перейти на вкладку «Источники данных» и нажать на иконку Редактировать справа от источника.

  3. Перейти на вкладку «SQL», ввести измененный SQL-запрос (с новым полем seb), после чего нажать на кнопку Выполнить SQL-запрос и затем на кнопку Сохранить.

  4. Система вернется на вкладку «Источники данных» где нужно нажать на кнопку Сохранить, чтобы внесенные изменения сохранились.

  5. Перейти на вкладку «Структура данных» и отметить в списке размерностей добавленное поле seb, после чего нажать на крестик (x) для удаления этого поля.

    Удаление поля seb необходимо только в том случае, если данное поле не предполагается к использованию в качестве размерности.

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

    Если же поле предполагается к использованию как в качестве размерности, так и в качестве факта, то шаг с удалением можно пропустить, закрыв окно редактирования мультисферы после выполнения шага 4. 

    После выполнения SQL-запроса система заново добавляет все поля, поэтому требуется повторно отметить размерности quant и sumprod для исключения из списка размерностей. 

  6. Нажать на кнопку Сохранить, которая станет активной после удаления размерности seb.

    Структура мультисферы (набор размерностей и фактов) обновится только после обновления мультисферы (вручную или по расписанию).

  7. Закрыть окно редактирования мультисферы.
  8. Для того, чтобы начать работать с новой структурой мультисферы, необходимо выполнить обновление мультисферы (выполним в рамках примера обновление вручную).

  9. Вынести мультисферу на слой.

Идентичная последовательность шагов должна быть выполнена в случае, если при создании мультисферы в SQL-запросе (в SELECT`е) были выбраны не все поля, присутствующие в источнике, а через некоторое время работы с мультисферой появилась необходимость добавить их в мультисферу. 

Удаление размерностей/фактов

Предположим, в таблице db_consulting.demo удалено поле (например поле sumprod) и пользователю необходимо исключить его из мультисферы. Для этого необходимо выполнить следующие шаги:

  1. Перейти к редактированию мультисферы, выбрав в контекстном меню мультисферы Изменить.

  2. Перейти на вкладку «Источники данных» и нажать на иконку Редактировать справа от источника.

  3. Перейти на вкладку «SQL», ввести измененный SQL-запрос (без поля sumprod), после чего нажать на кнопку Выполнить SQL-запрос и затем на кнопку Сохранить.

  4. Система вернется на вкладку «Источники данных» где нужно нажать на кнопку Сохранить, чтобы внесенные изменения сохранились.

  5. Перейти на вкладку «Структура данных» и отметить в списке размерностей поле quant, после чего нажать на крестик (x) для удаления этой колонки.

    После выполнения SQL-запроса система заново добавляет все колонки, поэтому требуется повторно отметить размерность quant для исключения из списка размерностей. 

  6. Нажать на кнопку Сохранить, которая станет активной после удаления размерности quant.

    Структура мультисферы (набор размерностей и фактов) обновится только после обновления мультисферы (вручную или по расписанию).

  7. Закрыть окно редактирования мультисферы.
  8. Для того, чтобы начать работать с новой структурой мультисферы, необходимо выполнить обновление мультисферы (выполним в рамках примера обновление вручную).

  9. Вынести мультисферу на слой.

В случае если в SQL-запросе отсутствует явное перечисление полей, то есть используется SQL-запрос формата SELECT * FROM, для удаления размерности/факта из мультисферы достаточно перейти на вкладку «Структура данных» и удалить «неактуальные» поля. После чего обновить мультисферу.

Идентичная последовательность шагов должна быть выполнена в случае, если отпала необходимость в наличии некоторых размерностей/фактов.