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

Конструктор формул

Конструктор формул — это визуальный редактор формул показателей, производных и константных измерений, а также производных и константных фактов. Формула отображается в нём как схема связанных блоков, причём схема и текст формулы синхронизированы: изменение одного обновляет другое.

Открытие конструктора

Кнопка Открыть конструктор формул доступна:

  • На панели управления таблицей на вкладках Показатели, Измерения и Факты, когда выделена ровно одна строка
  • В диалоговом окне Детали из РПИ элемента
  • Рядом с полем Формула в окне показателя

Для показателей кнопка активна всегда, для измерений и фактов — только когда их тип Производный или Константа: первичные элементы описываются подключённым источником, а не формулой. Для элементов с ошибками кнопка недоступна.

Окно конструктора

Область Содержание
Строка формулы Название элемента и его формула в виде текста. Формулу можно править прямо здесь
Панель элементов (слева) Элементы, функции, операторы и константы, из которых строится формула
Холст Формула в виде схемы блоков
Панель Свойства (под холстом) Информация о выбранном блоке
Нижняя панель Кнопки Отмена и Применить

Рядом со строкой формулы расположены кнопки Отменить, Повторить и Сбросить все изменения. Кнопка Сбросить все изменения возвращает формулу к состоянию на момент открытия конструктора. Работают также сочетания Ctrl + Z и Ctrl + Y. На холсте есть стандартные элементы управления масштабом и вписыванием схемы в окно.

Панель элементов

Панель начинается с поля поиска и разделена на сворачиваемые разделы:

Раздел Содержание
Показатели, Измерения, Факты Элементы текущей версии проекта
Функции Сгруппированы как Агрегация, Строковые, Дата и время, Условные и Обработка NULL
Операторы Арифметические и Строковые
Сравнения и логика Сравнения, Логические и Диапазон
Константы Числовая или текстовая константа, логические значения, пустое значение и текущая дата

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

Построение формулы

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

Виды блоков на холсте:

Блок Содержимое
Элемент Название показателя, измерения или факта
Функция Название функции в заголовке и по одной строке на аргумент
Оператор Символ оператора и его операнды, обозначенные A и B (а для операторов диапазона — C)
Константа Само значение. Числовая или текстовая константа редактируется двойным щелчком
Пустой слот Ещё не заполненный аргумент

У функций агрегации в блоке есть строка FILTER над строками FIELD: связь с FILTER становится условием, ограничивающим агрегируемые значения. У операторов IN, NOT IN, BETWEEN и NOT BETWEEN есть собственные поля для списка значений или границ диапазона.

Просмотр формулы вложенного элемента

Если блок ссылается на элемент, у которого есть собственная формула, у блока появляется кнопка раскрытия. При раскрытии формула этого элемента отображается слева от блока другим цветом как предварительный просмотр. При этом доступны два действия:

  • Применить к формуле — подставляет раскрытую формулу вместо ссылки, и она становится частью редактируемой формулы
  • Свернуть — скрывает предварительный просмотр и оставляет ссылку без изменений

У аргументов функции, к которым идёт связь, есть собственные элементы управления Развернуть и Свернуть, скрывающие или показывающие всё, что подаётся на этот аргумент.

Панель свойств

При щелчке по блоку в панели отображаются:

  • Вид блока и его название или значение
  • Для функций и операторов — описание того, что они делают, включая назначение входов FIELD и FILTER
  • Текущая формула — фрагмент формулы, который даёт этот блок с текущими связями
  • Для элемента — его тип расчёта, его собственная формула со ссылками в виде названий и ссылка Посмотреть детали из РПИ

Пока ничего не выбрано, панель показывает подсказку выбрать элемент или написать формулу.

Проверка формулы

Формула в строке формулы проверяется по мере ввода. Ошибки подчёркиваются, а их описание отображается при наведении; выполняется тот же набор проверок, что и для ячейки формулы в таблице РПИ (см. страницу Синтаксис формул).

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

Сохранение

Кнопка Применить записывает формулу в колонку Формула элемента. Кнопка недоступна, если формула пустая, а также в режиме просмотра.

Если закрыть конструктор кнопкой Отмена, крестиком или клавишей Escape при наличии несохранённых изменений, система задаст вопрос Сохранить изменения в формуле и предложит варианты Выйти без сохранения и Сохранить изменения.

Роли

Для редактирования формулы требуется роль Разработчик или выше и действующая лицензия.

Для ролей Аналитик и Наблюдатель конструктор открывается в режиме просмотра. Они могут читать формулу и всю схему, перемещать холст и блоки, менять масштаб, выделять блоки и читать панель Свойства, раскрывать и сворачивать формулы вложенных элементов, а также открывать окно Детали из РПИ. Кнопки Отменить, Повторить и Сбросить все изменения им не отображаются, кнопка Применить недоступна, а блоки и связи нельзя добавлять, изменять и удалять.