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

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

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


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

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

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

Проверки

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

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

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

Присвоения

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

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

В переменную

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

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

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

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

В список

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Внимание

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