# Вычисление пользовательских полей

Создавайте формулы и условия для трансформации данных без сложных SQL-запросов.

## Для чего нужен модуль «Вычисление полей»

Модуль позволяет создавать новые поля на основе существующих данных без написания SQL. Это удобно, когда нужно:

*   преобразовать данные (например, объединить UTM-параметры или разделить категории);
*   добавлять вычисляемые метрики (например, ROAS, маржинальность);
*   внедрять условия (например, отмечать сделки как «высокие», если сумма > X);
*   упростить аналитику и отчётность — все вычисления выполняются на стадии загрузки, и в BI приходит уже готовая таблица.

## Как это работает

Для создания нового поля вы можете выбрать один из трех способов:

*   «Функции»;
*   «Поиск и замена значений»;
*   «Условные формулы».

**«Функции»**  
Быстрые формулы, в которые уже заложена стандартная логика — вам нужно только выбрать нужные поля.

Пример:  
Рассчитать ROAS (доход/затраты), выполнить умножение или деление значений.

**«Поиск и замена значений»**  
Позволяет находить конкретные значения в выбранном поле и заменять их на другие.

Пример:  
Заменить “Yandex” → “yandex”  
Объединить разные варианты названий (“РК”, “Рекламная кампания” → “Реклама”)

**«Условные формулы» (if-else логика)**  
Позволяет задавать правила: “Если выполняется условие — тогда результат X, иначе — Y”.  
Пример:

Если “utm\_medium содержит cpm, banner или display”, тогда “Тип трафика = Переходы по рекламе”  
Можно комбинировать условия по нескольким полям.

![Три примера вычисляемых полей: функция ROAS, замена значений utm\_source и условный тип трафика](https://help-ru.romi.center/images/vychislenie-polzovatelskih-polej/image-1.jpg)

Пример вычисляемого поля

> **Примечание**
> Важно  
> При вычислении полей используйте модуль «Приоритет запусков» — чтобы данные в ваших таблицах формировались в правильной последовательности и не перезаписывались при обновлении.
>
> В ROMI center таблицы и поля обновляются каждый час. Если при этом порядок запуска таблиц будет неправильным, можно получить неполные или некорректные данные.
>
> **Пример, когда возникает проблема:**
>
> 1.  Создаётся таблица «Данные по рекламе», в которой объединяются данные из Яндекс.Директ и VK Ads.
> 2.  К таблице «Данные по рекламе» добавляется вычисляемое поле «Подрядчик», значения которого берутся из объединённого utm\_source.
> 3.  Создаётся таблица «Статистика по подрядчикам», которая объединяет «Данные по рекламе» и «Сделки из CRM», включая поле «Подрядчик».
>
> **Правильная последовательность:**  
> Таблица «Данные по рекламе» → Вычисляемое поле «Подрядчик» → Таблица «Статистика по подрядчикам»
>
> Если нарушить порядок (например: «Данные по рекламе» → «Статистика по подрядчикам» → «Подрядчик»), то в момент создания итоговой таблицы поле «Подрядчик» ещё не будет готово, и данные в ней будут неверными.
>
> Модуль «Приоритет запусков» позволяет задать правильный порядок выполнения шагов, чтобы все необходимые поля были сформированы заранее, а итоговые таблицы содержали корректные данные.

[Как работает модуль «Приоритет запусков»](https://help-ru.romi.center/prioritet-zapuska-tablic-i-polej)

[Читать подробнее](https://help-ru.romi.center/prioritet-zapuska-tablic-i-polej)

## Инструкция по настройке

1.  До настройки последовательности запусков нужно настроить выгрузку данных в Хранилище. Подробнее о том, как это сделать, [читайте здесь](https://help-ru.romi.center/peredacha-dannyh-v-hranilishche-romi-center).

2\. Перейдите в раздел «Трансформация».

![Переход в раздел «Трансформация» в личном кабинете ROMI center](https://help-ru.romi.center/images/vychislenie-polzovatelskih-polej/image-2.jpg)

3\. На экране появится список всех доступных Хранилищ. Выберите нужное вам из списка, либо создайте новое.

![Список подключенных Хранилищ данных с кнопкой создания нового подключения](https://help-ru.romi.center/images/vychislenie-polzovatelskih-polej/image-3.jpg)

4\. После выбора Хранилища вы попадёте в раздел «Трансформация».

![Раздел «Трансформация данных» с вкладкой «Вычисляемые поля» в верхнем меню](https://help-ru.romi.center/images/vychislenie-polzovatelskih-polej/image-4.jpg)

В верхнем меню отображаются все модули ROMI center. По умолчанию открывается «Мастер таблиц». Вам нужно перейти во вкладку «Вычисляемые поля», а затем на кнопку «Новое поле» чтобы начать работу. 

5\. Настройте параметры нового поля:  
1 - выберите таблицу, в которой будет создаваться поле;  
2 - выберите название поля;  
3 - выберите тип данных нового поля;  
4 - выберите способ создания поля: «Функции», «Поиск и замена значений» либо «Условные формулы».

> **Примечание**
> **Типы данных**
>
> *   Строка — любая текстовая информация. Пример: utm\_source, город;
> *   Целое число — число без дробной части (клики, показы и т.д). Пример: 100, 500, 12345;
> *   Дробное число — число с десятичной частью (расходы, выручка и т.д). Пример: 10.5, 3.14, 99.99;
> *   Логический — булев тип данных который может принимать только два значения: true (истина) и false (ложь). Используется для представления состояний «да/нет» 
> *   Дата — дата в формате ГГГГ-ММ-ДД. Пример: 2025-01-01.
> *   Дата и время — дата в формате ГГГГ-ММ-ДД ЧЧ:ММ:CC. Пример: 2025-08-04 14:00:00

![Выбор типа нового поля ctr (Float64) и способа создания «Функции»](https://help-ru.romi.center/images/vychislenie-polzovatelskih-polej/image-5.jpg)

Настройка «Функции»

6\. Выберите одну из предложенных функций в списке:  
«Деление»  
«Умножение»  
«Сложение»  
«Regex»  
«Преобразовать в дату»

> **Примечание**
> Regex (регулярные выражения) — это способ описать шаблон текста, который нужно найти или проверить.  
> С его помощью можно, например, понять, похож ли текст на номер телефона, email или дату.
>
> Regex — умный поиск, который ищет не конкретные слова, а определённый формат текста.

7\. Выберите поля, участвующие в расчете формулы.  
Нажмите «Закончить настройку», чтобы вернуться к списку созданных полей.

![Настройка функции «Деление» для поля ctr: делимое clicks и делитель impressions](https://help-ru.romi.center/images/vychislenie-polzovatelskih-polej/image-6.jpg)

8\. Выберите поле из исходной таблицы, по которому будет выполняться поиск значений.

Заполните одно или несколько сравнений. Для этого укажите:

*   значение, которое нужно найти;
*   тип поиска;
*   значение, которое нужно проставить в новом поле, если совпадение найдено.

> **Примечание**
> **Тип поиска совпадений**
>
> Может быть следующим:
>
> *   Равно — поиск полного совпадения 
> *   Не равно — поиск отсутствия полного совпадения
> *   Содержит — поиск совпадения части текста. Например среди “yandex”, “yandex direct” , “Yandex” можно искать по правилу: содержит yandex. Алгоритм найдет все варианты строк, которые содержат yandex. Вне зависимости от регистра.
> *   Не содержит — поиск отсутствия совпадения части текста. Алгоритм будет искать все значения, которые не содержат указанного текста.
> *   Пустое — поиск пустых значений.
> *   Не пустое — поиск всех значений кроме пустых.
>
> Затем задайте значение, которое будет подставляться, если значение ячейки не совпало ни с одним, указанным в правилах.
>
> Можно задать либо статическое значение, либо значение из поля таблицы (тип этого поля должен совпадать с типом данных нового поля)

Пример условий:

*   Если в поле равно значение Yandex, присвоить значение Яндекс Директ
*   Если в поле содержит значение avito, присвоить значение Авито

Добавляйте новые сравнения кнопкой ”+ Добавить сравнение”

Нажмите «Закончить настройку», чтобы вернуться к списку созданных полей.

![Настройка «Поиск и замена значений» для поля utm\_source\_custom со списком сравнений и заменой на Яндекс Директ](https://help-ru.romi.center/images/vychislenie-polzovatelskih-polej/image-7.jpg)

Настройка «Поиск и замена значений»

9\. Создайте условия для поиска значения:

*   выберите поле для поиска значения;
*   выберите тип поиска совпадений;
*   выберите значение, по которому нужно сравнивать.

> **Примечание**
> К одному условию можно добавить несколько правил, задав условие их объединения, для этого нажмите на “Добавить правило”:
>
> *   Условие объединения AND (и):
>
> Алгоритм будет искать выполнения обоих правил.
>
> *   Условие объединения OR (или):
>
> Алгоритм будет искать выполнения одного из двух правил.

Вы также можете добавить дополнительный блок правил, нажав на «Добавить условие»  
После создания всех необходимых условий, нажмите «Закончить настройку», чтобы вернуться к списку созданных полей.

![Настройка условной формулы для поля source\_custom с условиями AND/OR и результатом «Яндекс Директ»](https://help-ru.romi.center/images/vychislenie-polzovatelskih-polej/image-8.jpg)

Настройка «Условные формулы»

10\. Перейдете в раздел «Трансформация» → «Приоритет запусков», выставьте порядок запуска таблиц и полей и нажмите на кнопку «Запустить сбор данных». Все таблицы и поля будут собираться автоматически в заданном порядке.

[Как работает модуль «Приоритет запусков»](https://help-ru.romi.center/prioritet-zapuska-tablic-i-polej)

[Читать подробнее](https://help-ru.romi.center/prioritet-zapuska-tablic-i-polej)

![Список созданных вычисляемых полей ctr, utm\_source\_custom и source\_custom в таблице reklama\_new](https://help-ru.romi.center/images/vychislenie-polzovatelskih-polej/image-9.jpg)

> **Примечание**
> Новое вычисляемое поле будет автоматически пересобираться каждый час. Это означает, что все изменения в данных автоматически попадут в отчет.

Пример настройки расчета CTR
