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

Операции с данными (Переменные, Списки)

Действие «Операции с данными» — главный инструмент работы с данными внутри сценария. Через него можно проверять, присваивать, читать и изменять значения в переменных, списках, ответах, данных Data и глобальных переменных.


Поддерживаемые объекты​

ОбъектОписание
ПеременнаяОбычная переменная сценария — задаётся по имени.
ОтветОтвет подписчика на блок — указывается номер или ID блока.
Данные (Data)Данные, пришедшие в сценарий извне — указывается ID, который идёт после Data.
Глобальная переменнаяОбщая для всех подписчиков. Добавляется на странице Списки / WebApp.
СписокБаза данных аккаунта — поддерживает чтение, добавление, изменение, удаление.

Работа с переменными​

Проверки​

Сначала укажите имя переменной (для Ответа — номер или ID блока, для Данных — ID после Data). Затем выберите тип проверки:

ПроверкаЧто делает
ЧислоЗначение является числом.
ТелефонЗначение похоже на телефон.
Эл. почтаЗначение похоже на e-mail.
Регулярное выражениеСоответствие указанному regex.
ВыражениеПроизвольное выражение целиком. Пример: '#{myvar}' = '1'.

После проверки можно настроить присвоения — отдельно для успешного и неуспешного результата. Присваивать значения можно в переменную, список или глобальную переменную.

Присвоения​

Присвоение доступно сразу, без проверок. Ниже — особенности каждого типа объекта.

Добавление переменной

В переменную​

  • Укажите имя переменной и значение.
  • В качестве имени переменной можно указать значение другой переменной.
  • В качестве значения можно использовать математическое выражение, другие переменные, шаблоны замен и функции.
  • Значение можно обработать регулярным выражением.
  • Значение можно разделить — указав символ-разделитель и номер нужного элемента.
Присвоение математических выражений

Если в переменную присвоите математическое выражение, которое может быть вычислено, то оно будет вычислено и в переменную присвоится результат вычислений. Чтобы присвоить строку математического выражения, берите ее в кавычки. Например '1 + 1' или "1 + 1"

Считается и то, что пришло подстановкой: дата 2026-09-25 станет 1992, телефон 8-800-555-35-35 — -1417. Кавычки не помогают при записи в глобальную переменную (значение там считается дважды) и когда в самом значении есть кавычка. Надёжный способ взять значение как есть — знак ~ перед подстановкой: ~#{g_Дата старта}; знак потом нужно убрать. Подробнее — Значение как есть: знак ~.

В глобальную переменную​

  • Выберите глобальную переменную из списка (создаются на странице Списки / WebApp).
  • Чтобы изменить глобальную переменную, используя её предыдущее значение, укажите в поле значения шаблон [Self].

В список​

Доступны три операции:

ОперацияЧто делает
Добавить новую записьСоздаёт строку. Заполните поля списка значениями.
Изменить записьТребует отбор + изменяемые поля.
Удалить записьТребует только отбор.

Работа со списками​

Доступные операции:

  • Чтение записей
  • Добавить новую запись
  • Изменить запись
  • Удалить запись

Для работы выберите список (создаётся на странице Списки / WebApp).

Отбор записей​

Для чтения, изменения и удаления задайте условия отбора. Для каждого условия:

  1. Выберите поле списка.
  2. Выберите оператор сравнения (см. таблицу ниже).
  3. Укажите строку сравнения — значение, переменную, шаблон или функцию.

Операторы сравнения​

ОператорСмысл
РавноТочное совпадение.
Не равноНе совпадает.
СодержитПоле содержит подстроку.
Не содержитПоле не содержит подстроку.
Больше / Больше либо равноДля чисел и дат.
Меньше / Меньше либо равноДля чисел и дат.

Дополнительные настройки отбора​

НастройкаЭффект
Обратное сравнениеИщет строку сравнения в значениях полей списка — а не наоборот.
Количество строкОграничение, сколько записей нужно вернуть.
Переменная результата1 — отбор не пустой, 0 — пустой.

Чтение записей​

Дополнительно к отбору можно настроить:

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

Чтение списка

С отобранным набором можно сделать одно из следующих действий:

Сохранить в переменную​

Выберите поле списка и переменную. Если отобрано более одного значения — в переменную попадёт массив.

Массив в сообщении выглядит как ["Москва","Казань"]

Переменная-массив подставляется в текст целиком. Если из неё собрать сообщение или кнопку, подписчик увидит служебные скобки и кавычки, а кнопка с массивом в данных не откроет карточку — та ищет один номер.

Показывать несколько строк нужно операцией «Вывести список в бот» (ниже): движок отправит по сообщению на строку и подставит в текст и в кнопку значения именно этой строки. Одна строка (карточка записи) — другое дело: поставьте в отборе «только последняя», массива не будет.

Сформировать строку​

Поля списка собираются в одну строку в указанной последовательности. Между полями можно вставлять произвольные строки — значения, переменные, шаблоны и функции.

Сохранить в глобальную переменную​

Укажите поле списка и глобальную переменную для сохранения.

Добавить в другой список​

Выберите целевой список, поле из него, и источник — поле из отобранного списка или произвольную строку.

Изменить другой список​

То же, что «Добавить в список», но с отбором в целевом списке для изменения существующих записей.

Добавление записи​

Заполните поля списка новыми значениями.

Автоматические поля

В список автоматически добавляются служебные поля:

  • ClientID — идентификатор подписчика в мессенджере,
  • Messenger — тип мессенджера,
  • BotID — идентификатор бота,
  • CreationDate — дата добавления записи.

По ним позже можно получать записи конкретного подписчика.

Изменение записи​

После отбора укажите изменяемые поля и выберите операцию:

ОперацияЧто делает
Установить значениеПерезаписывает поле новым значением.
Добавить значениеПревращает ячейку в массив, который сохраняется как строка.
Удалить значениеОчищает поле.

Изменение списка

Удаление записи​

Кроме отбора, ничего настраивать не нужно — все записи, попавшие в отбор, будут удалены.

Внимание

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