Документация 0.4 Справочник действий

Присвоить

control.assign · Управление

Присваивает переменной результат выражения

Записывает в переменную результат выражения: число, текст, список, объект. Это основной способ посчитать что-то по ходу процесса — увеличить счётчик, собрать строку, отфильтровать список строк Excel, подготовить данные для очереди или отчёта.

Свойства #

Свойство Имя в файле Значение Обязательное По умолчанию Описание
Переменная variable имя переменной да —
Значение value выражение да — JS-выражение, напр. counter + 1

Результат #

Действие не возвращает значений.

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

  • Переменная (variable) — имя переменной процесса. Если переменная не объявлена на вкладке «Переменные», она будет создана при запуске; объявить её всё же лучше — тогда её видно в подсказках и при проверке.
  • Значение (value) — выражение JavaScript без {{ }}: counter + 1, 'Заявка ' + number, rows.filter(r => r['Сумма'] > 1000), { Номер: row['Номер'], ФИО: row['ФИО'] }. Текст пишется в кавычках, переменные — просто по имени.
  • Значение сохраняется как есть: число остаётся числом, список — списком.

Ошибки #

Код Причина и что делать
ExpressionError Ошибка в выражении: опечатка в имени переменной, текст без кавычек, незакрытая скобка. Сообщение показывает выражение и причину. Выражение дольше 2 с или больше 64 МБ памяти тоже останавливается этой ошибкой
InvalidArgument Не заполнено обязательное свойство

Пример #

Увеличить счётчик обработанных заявок:

{ "type": "control.assign", "props": { "variable": "processed", "value": "processed + 1" } }

Оставить только неоплаченные строки таблицы:

{ "type": "control.assign", "props": { "variable": "unpaid", "value": "rows.filter(r => r['Статус'] !== 'Оплачен')" } }