Формулы в виджетах (Pro)
Formula Pro — продвинутый режим виджета, где его значение задаётся формулой, а не парой «поле + агрегат». Подходит для метрик, которые нельзя выразить одним полем: разница двух сумм, средний чек, условный итог.
Чем отличается от формулы-поля
Заголовок раздела «Чем отличается от формулы-поля»| Формула поля | Формула виджета (Pro) | |
|---|---|---|
| Где живёт | Внутри столбца таблицы | Внутри настройки виджета |
| Как считается | На каждой строке | По всем строкам набора |
| Ссылка на поле | Прямо: amount | Только внутри агрегата: sum([Таблица.Поле]) |
Формула поля даёт значение в каждой строке. Формула виджета сводит весь набор строк к одному результату (или к серии/категориям), поэтому каждое поле в ней обязано быть внутри агрегата.
Для кого
Заголовок раздела «Для кого»Режим доступен на тарифе Pro (функция formula_pro). Если функции нет, переключатель Pro-режима недоступен — значение виджета задаётся обычными селекторами «поле + агрегат». Сменить тариф можно в разделе Тариф и оплата.
Как включить
Заголовок раздела «Как включить»- Нажмите на виджет → шестерёнка («Настроить»).
- Включите переключатель Pro-режим.
- Вместо селекторов «поле + агрегат» появится редактор формулы.
- Введите формулу (см. правила ниже).
- Выберите формат результата: процент / деньги / число.

Слева — поле для формулы и быстрые кнопки операторов. Справа — список доступных полей (с подсказкой ключа [Таблица.Поле]) и встроенных функций: их можно вставлять кликом. Внизу — индикатор корректности и выбор формата результата.
Правило: всё в агрегат
Заголовок раздела «Правило: всё в агрегат»В формуле виджета поле нельзя использовать «голым» — оно должно быть обёрнуто в агрегат. Доступные агрегаты:
| Агрегат | Что считает |
|---|---|
sum | Сумму значений |
avg | Среднее |
count | Количество значений |
min | Минимум |
max | Максимум |
sumpos | Сумму только положительных значений (приток) |
sumneg | Сумму отрицательных по модулю (отток) |
Поле вне агрегата даёт ошибку: «Поле вне агрегата — оберните в агрегат».
SUM([Транзакции.Сумма])Несколько таблиц
Заголовок раздела «Несколько таблиц»К виджету можно подключить несколько таблиц и ссылаться на их поля по синтаксису [Таблица.Поле]. Основная таблица подключена по умолчанию; остальные добавляются в настройке (список подключённых таблиц).
Важное ограничение: один агрегат относится к одной таблице. Смешивать поля разных таблиц внутри одного агрегата нельзя — разнесите их по отдельным агрегатам и комбинируйте арифметикой.
SUM([Аренда.Платёж]) - SUM([Расходы.Сумма])Если смешать таблицы в одном агрегате, появится ошибка «Агрегат смешивает таблицы … — разнесите по отдельным агрегатам».
Формы по типам виджетов
Заголовок раздела «Формы по типам виджетов»Что именно вводить, зависит от типа виджета.
| Форма | Что задаёте | Виджеты |
|---|---|---|
| Значение | Одну формулу → одно число | KPI, Счётчик, Цель, Факт vs цель (bullet) |
| Два слота | Две формулы (две величины) | Сравнение, ROI-карточка, Долговая нагрузка (слоты «Капитал» / «Долг»), Сводка cashflow (слоты «Поступления» / «Списания») |
| Серия (формула × время) | Формулу + ось времени | Линейный график, График с заливкой, Прогноз |
| Категории (формула × измерение) | Формулу + измерение | Столбчатый, Горизонтальные, Donut, Круговая, Разбивка, Treemap, Топ-N, Капитал, Валютная корзина, Waterfall |
Денежные поля перед агрегированием автоматически конвертируются в валюту отображения профиля (по умолчанию ₽). Это значит, что суммы из разных валют складываются корректно — в одной валюте. Курсы подтягиваются автоматически, отдельно настраивать их не нужно.
Функции
Заголовок раздела «Функции»Доступны те же встроенные функции, что и в формулах полей — см. Функции. Отличия Pro-режима:
- Вне агрегата нельзя ссылаться на поля.
- Кросс-строчные функции (
lag,lead,running_sum,window_avg,rank) внутри агрегатов не доступны.
Примеры
Заголовок раздела «Примеры»Цель: чистый поток средств (KPI). Настройки: виджет KPI, Pro-режим, формат «деньги».
SUM([Транзакции.Сумма])Результат: сумма всех транзакций в валюте профиля.
Цель: разница доходов и расходов из двух таблиц. Настройки: KPI, подключены таблицы «Аренда» и «Расходы», формат «деньги».
SUM([Аренда.Платёж]) - SUM([Расходы.Сумма])Результат: поступления минус списания.
Цель: средний чек. Настройки: KPI, таблица «Продажи», формат «деньги».
SUM([Продажи.Сумма]) / COUNT([Продажи.Сумма])Результат: сумма продаж, делённая на их количество.
Цель: показать прибыль, но не уходить в минус. Настройки: KPI, таблица «Сделки», формат «деньги».
IF(SUM([Сделки.Прибыль]) > 0, SUM([Сделки.Прибыль]), 0)Результат: прибыль, если она положительна, иначе 0.
Ошибки и как чинить
Заголовок раздела «Ошибки и как чинить»Сообщения показываются прямо в редакторе формулы.
| Сообщение | Причина | Как починить |
|---|---|---|
| «Поле вне агрегата — оберните в агрегат» | Поле использовано без агрегата | Оберните в sum/avg/count/min/max |
| «Таблица «…» не подключена» | Ссылка на таблицу, которой нет в подключённых | Подключите таблицу в настройке виджета |
| «Нет поля «…» в таблице «…»» | Опечатка в имени поля или поле удалено | Проверьте имя поля в выбранной таблице |
| «Результат не число» | Формула возвращает не числовое значение | Приведите выражение к числу (например, через агрегат или if) |
| «Агрегат смешивает таблицы …» | В одном агрегате поля разных таблиц | Разнесите по отдельным агрегатам |
Ограничения
Заголовок раздела «Ограничения»- Только тариф Pro (функция
formula_pro). - Каждое поле — внутри агрегата.
- Один агрегат — одна таблица.
- Кросс-строчные функции в агрегатах недоступны.
- Доступные агрегаты:
sum,avg,count,min,max.