Создание и сохранение переменных контекста | Слот Memory

Назначение и общая информация

Слот Memory — Слот, позволяющий записывать данные в Пользовательские контекстные переменные, а также создавать новые Пользовательские контекстные переменные путем записи значения в несуществующую ранее переменную.Изменять Системная контекстная переменная в слоте Memory запрещено, за исключением client_message.

Создание и настройки слота Memory

Атрибуты слота

  1. Name*ー название Слота, которое будет отображено в Дерево сценария. Максимальная длина значения поля — 40 символов.

  2. FIELDS*ー массив пар Key — Value.

  3. Важно:

  4. 1. Обязательно должна быть минимум одна пара Key — Value

  5. 2. Максимальное количество пар Key — Value не ограничено

    1. Key* ー имя переменной, указанное в соответствии с требованиями к именам Пользовательские контекстные переменные. При неправильном указании переменной произойдет ошибка Валидация сценария.

    2. Value* ー значение, которое будет записано в переменную:

      • точное значение (число, строка, булева)

      • результат операции

      • значение другой переменной

      1. Обрезка пробелов: по нажатию кнопки CREATE (при создании слота) или SAVE (при редактировании слота) обрезаются пробелы и переносы строк в начале и в конце поля Value.

  6. Важно: при указании KEY обратите внимание на зависимость имени переменной от регистра (var и Varー разные переменные). Также, обратите внимание на требования к именам контекстных переменных.

Использование синтаксиса в Слоте Memory

В Слоте Memory допустимо использование Выражение и Выражение с управляющей конструкцией в поле Value. Подробнее: Синтаксис

Если результатом вычисления шаблона является значение, которое можно привести к типу отличному от строки (число, логический тип, список, и т.п.), то сохраняемая Контекстная переменная будет иметь этот тип. Иначе Контекстная переменная будет сохранена как строка. Например, результатом вычисления шаблона:{% for i in range(1, 4) %}{{ i }}{% endfor %}будет строка “123”, которую можно привести к целочисленному типу, и в целевую Контекстная переменная будет сохранено целое число 123.

Пример:

  • В Контекстная переменная numbers будет сохранено целое число 199;

  • В Контекстная переменная random – псевдо-случайное число от 0 до 10 включительно;

  • В Контекстная переменная string – строка из Контекстная переменная client_message;

  • В Контекстная переменная flag – значение логического типа True;

  • В Контекстная переменная numbers – список (массив) [1, 2, 3, 4, 5].

Работа слота

Важно: При попытке записи в VALUE операции, которая не соответствует описанным в данной статье правилам, произойдет ошибка. Системная контекстная переменная error примет значение Failed to process the data!

Для того, чтобы записать значение в Контекстная переменная используя слот Memory необходимо указать в поле KEY название переменной, а в поле VALUE нужное значение.

Важно: Все переменные записываются только булева, текстового, числового типа или типа “Дата”. Число записанное в одинарных кавычках (’45’) является строкой и не может участвовать в арифметических операциях

Last updated