Nodul LogoNodul
Поток данных

Передача данных (виджет-помощник)

Для настройки каждого узла необходимо заполнить его поля. Поля в узлах сценария могут быть заполнены:

  • Переменными, созданными внутри сценария
  • Глобальными переменными
  • Выходными параметрами других узлов сценария

Эти поля узлов можно заполнять вручную или автоматически.

Переменные

Существующие переменные отображаются в окне-помощнике для заполнения полей узла или связи. Чтобы переменная появилась в окне-помощнике, её сначала нужно создать:

  • Чтобы создать «обычную» переменную для использования в сценарии, добавьте узел [SetVariables](../../../ core-nodes/setvariables.mdx) и запустите его.
  • Чтобы создать глобальную переменную, добавьте узел [SetGlobalVariables](../../../ core-nodes/setglobalvariables.mdx) (в текущем или любом другом сценарии) и запустите его. Другой способ создания глобальных переменных — добавить их через отдельный интерфейс.

Создание переменных

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

Для автоматического заполнения поля переменной:

  • (1) Нажмите на поле настройки узла или связи.
  • (2) Просмотрите доступные параметры из предыдущих узлов в окне Variables. Вкладка Variables отображает как обычные переменные (добавленные в сценарий с помощью узла [SetVariables](../../../ core-nodes/setvariables.mdx)), так и глобальные переменные (добавленные в аккаунт с помощью узла [SetGlobalVariables](../../../ core-nodes/setglobalvariables.mdx) или вручную).
  • (3) Выберите необходимые обычные или глобальные переменные.

Автозаполнение переменных

Ручное заполнение

Для ручного заполнения поля узла значениями переменных напишите имя переменной в фигурных скобках в указанном формате:

  • Для обычных переменных используйте формат — {{_.VariableName}}.

Пример: Переменная "SetVar" — {{_.SetVar}}

Обычная переменная

  • Для глобальных переменных используйте формат — {{%.VariableName}}.

Пример: Переменная "dayTemp" — {{%.dayTemp}}.

Глобальная переменная

Данные узлов

Выходные данные предыдущих узлов отображаются в окне-помощнике для заполнения полей узла или связи.

Данные узлов

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

Для автоматического ввода параметра:

  • (1) Нажмите на поле настройки узла или связи.
  • (2) Просмотрите доступные параметры из предыдущих узлов в окне Data.
  • (3) Выберите необходимые параметры или целые узлы.

Автозаполнение данных

Ручное заполнение

Для ручного заполнения поля существующими данными напишите имя параметра в фигурных скобках в указанном формате:

  • Все данные из узла в формате — {{$NodeNumber}}.

Пример: Узел 2 — {{$2}}

Все данные узла

  • Конкретный параметр в формате — {{$NodeNumber.ParameterPath.ParameterName}}.

Пример: Параметр "name" в узле 2 — {{$2.name}}

Конкретный параметр

JavaScript и Headless Browser

В узлах JavaScript и Headless Browser вы можете выбирать параметры из предыдущих узлов или переменные. Например, чтобы легко создать константу в узле JavaScript:

  • Напишите выражение для добавления константы, например const =.
  • Выберите необходимый параметр из предыдущих узлов.

JavaScript константа

При добавлении данных из других узлов часть выражения может быть обёрнута в обратные кавычки, например: data["{{1.headers.Content-Type}}"], даже если другой узел вернул свойство без них. Вам не нужно удалять обратные кавычки, так как они будут проигнорированы при обработке кода. Ручное их удаление может привести к сбою кода.

Массивы

Иногда выходные параметры узла могут быть массивами, содержащими набор элементов. Вы можете использовать нужный элемент массива или весь массив в других узлах.

Автозаполнение

Например, создадим сценарий, в котором триггерный узел активируется при добавлении новой строки в Google Таблицу и предоставляет массив значений ячеек из новой строки в качестве выходных параметров. Мы укажем весь массив и отдельные элементы как переменные. Для создания этого сценария добавьте два узла:

Сценарий с массивами

  • (1) New Row Added (Shared Drive, Instant) — для запуска сценария и предоставления данных о добавленной строке. Для этого узла необходима авторизация и выбор нужной таблицы и листа.

Настройка триггера

  • (2) SetVariables — для записи переменных Val1, Val2 и Val3.

SetVariables

Запустите сценарий один раз, нажав кнопку Run Once, и добавьте строку в указанную таблицу. Выходные данные узла New Row Added (Shared Drive, Instant) будут включать массив значений ячеек из добавленной строки:

Выходные данные

Установите значения переменных:

Значения переменных

  • Val1 — весь массив значений {{$1.data.newRow}}. Нажмите на newRow[ ].
  • Val2 — первый элемент массива {{$1.data.newRow.[0]}}. Нажмите на [0].
  • Val3 — второй элемент массива {{$1.data.newRow.[1]}}. Нажмите на [0] и вручную замените 0 на 1.

Запустите узел SetVariables один раз и проверьте записанные значения переменных. Затем вы можете использовать каждую из этих переменных для заполнения полей других узлов в виджете-помощнике.

Результат

Использование переключателя «Select / Map» в настройках

Некоторые параметры, такие как выпадающий список или переключатель, по умолчанию не имеют поля ввода, позволяющего передавать данные из переменных или предыдущих узлов.

Для таких параметров есть специальный переключатель:

Переключатель Select/Map

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

Например, в Google Calendar вы можете выбрать правила отправки уведомлений о новом событии:

Пример Select

Это значение всегда останется неизменным, пока не будет изменено вручную. На него не могут повлиять другие узлы или входящие данные.

Используйте Select, когда значение должно оставаться фиксированным во время выполнения сценария.


В случаях, когда значение нужно задавать динамически, переключите переключатель в режим «Map». Это позволяет передавать данные из предыдущих узлов:

$5.query.send_updates_notification_rule

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

Используйте Map, когда значение должно реагировать на динамический ввод из других узлов.


Почему режим Map более мощный

В отличие от Select, который ограничен предопределёнными значениями, режим Map позволяет:

  • Булевы значения типа true / false
  • 🔧 **Динамическое форматирование с использованием [операторов](../ Callout>