Перейти к содержимому

Обзор формул

Формула — это правило вычисления значения. В Sumvest формулы используются в двух местах:

  1. Поле-формула в датасете («Формула») — считается на каждой строке отдельно. Этот раздел в основном про неё.
  2. Формула значения виджета — на тарифе Pro можно задать значение виджета формулой по всем строкам (а не просто «поле + агрегат»). Это отдельный режим: «Формулы в виджетах (Pro)».

Синтаксис и встроенные функции у них общие — отличается только то, на каком наборе данных формула считается.

  • Брать значения из других полей строки.
  • Применять арифметику и сравнения.
  • Вызывать одну из 45 встроенных функций (математика, даты, финансы, агрегаты, кросс-строчные).
  • Возвращать число, строку, булево или null.
  • В колонке таблицы датасета (видно сразу).
  • В KPI / графиках / таблицах на дашборде — как любое другое поле.
  • В фильтрах — формулы можно фильтровать так же, как обычные поля.
  • В drill-down — формула показывается в превью строки.
  • Принимать значения вне строки. Формула считается на каждой строке отдельно. Исключение — агрегатные функции (sum, avg, count) и кросс-строчные (lag, lead, running_sum, window_avg, rank), которые работают на уровне виджета/таблицы.
  • Обращаться к полям связанной строки. Точечной нотации (object.price) нет. См. «Связи в формулах».
  • Вызывать пользовательские функции. Своих функций добавить нельзя; только встроенные.
  • Менять данные. Формула только читает и возвращает значение.
amount * 12
if(category == "Зарплата", amount, 0)
roi(monthly_rent * 12 - annual_expenses, purchase_price)
date_diff(today(), purchase_date, 'years')
ЗадачаРешение
«Хочу колонку «Сумма зарплаты»».Формула в датасете.
«Хочу видеть только зарплаты на дашборде».Фильтр виджета.
«Хочу одну цифру: сумма зарплат за месяц».Виджет KPI с агрегацией по фильтрованному датасету.
«Хочу каждой строке посчитать процент от месячного дохода».Формула + кросс-строчная или агрегатная функция (но нужны границы).

Если значение нужно в строке — пишите формулу-поле. Если нужно на дашборде — настраивайте агрегат и фильтры виджета.