Выходные поля и их использование
Документация
Главная

Выходные поля и их использованиеBETA

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

В каждом блоке выходные данные описываются с помощью массива output_variables.` Он определяет, какие переменные будут доступны после выполнения блока и какого они типа.

Важно
  • Выходные данные должны быть консистентны. Это означает, что тип данных каждой выходной переменной должен оставаться неизменным при каждом выполнении блока.
    • Если переменная объявлена как строка — она всегда должна возвращать строку
    • Если объявлено число — возвращается только числовое значение
    • Типы, указанные в output_variables, задаются один раз и не могут изменяться динамически в зависимости от данных

Описание output_variables

Массив output_variables используется для явного описания структуры выходных данных блока. Каждый элемент массива соответствует одной выходной переменной и содержит ее тип и имя. В зависимости от типа данных, описание может быть простым или расширенным.

Заметка
  • Для примитивных типов (Long, Double, Boolean, String) и массивов примитивов (LongArray, DoubleArray и т.д.) достаточно указать тип и имя переменной.
  • Для объектов (Object) и массивов объектов (ObjectArray) необходимо дополнительно описать структуру вложенных полей с помощью struct.

Простые типы

Простые типы используются для передачи одиночных значений без вложенной структуры.

ТипОписаниеПример
BigDecimalДесятичное число с высокой точностью123456.789123456789
BigIntegerЦелое число произвольной длины123456789123456789123456789
BooleanЛогическое значениеtrue/false
DateTimeДата и время, аналог Instant в Java/Kotlin2024-12-31T23:59:59Z
Double64-битное число с плавающей точкой1.02
LongЦелое 64-битное число1234
StringСтрока'example'

Массивы простых типов

Массивы позволяют возвращать набор однотипных значений. Для некоторых типов допускается наличие null для обозначения отсутствующих данных.

ТипОписаниеПример
BigDecimalArrayМассив десятичных чисел высокой точности[123.456789, 987654.3210001]
BigIntegerArrayМассив больших целых чисел[123456789123456789, 999999999999999999]
BooleanArrayМассив логических значений, может содержать null[true, null, false]
DateTimeArrayМассив объектов даты-времени Instant['2023-01-01T10:00:00Z', '2023-01-02T15:30:00Z']
DoubleArrayМассив чисел с плавающей точкой, может содержать значения null[1.01, null, 1.02]
LongArrayМассив целых 64-битных чисел, может содержать значения null для пропущенных данных[12, null, 34, 56]
StringArrayМассив строк, может содержать null['one', null, 'two']

Специальные/сложные типы

Сложные типы применяются, когда необходимо вернуть структурированные данные или файлы.

ТипОписаниеПример
FileФайл, представленный как поток данныхБинарный поток файла PDF или CSV
ObjectОбъект с вложенными полямиПример представлен ниже
ObjectArrayМассив объектов, где каждый объект может иметь вложенные поля разных типовПример представлен ниже

Общая структура выходных полей

Ниже приведен пример описания output_variables, включающий простые типы, массивы и вложенные структуры объектов.

output_variables: [
  {
    type: "Long";
    name: "var_long";
  },
  {
    type: "LongArray";
    name: "var_long_array";
  },
  {
    type: "Double";
    name: "var_double";
  },
  {
    type: "DoubleArray";
    name: "var_double_array";
  },
  {
    type: "Boolean";
    name: "var_boolean";
  },
  {
    type: "BooleanArray";
    name: "var_boolean_array";
  },
  {
    type: "String";
    name: "var_string";
  },
  {
    type: "StringArray";
    name: "var_string_array";
  },
  {
    type: "Object";
    name: "var_object";
    struct: [
      {
        type: "String";
        name: "field1";
      },
      {
        type: "Long";
        name: "field2";
      },
    ];
  },
  {
    type: "ObjectArray";
    name: "var_objects";
    struct: [
      {
        type: "Object";
        name: "field1";
        struct: [
          {
            name: "field1_1";
            type: "String";
          },
          {
            name: "field1_2";
            type: "Stringer";
          },
        ];
      },
      {
        type: "String";
        name: "field2";
      },
    ];
  },
];

Была ли статья полезна?

Да
Нет
Предыдущая
Поля ввода и их использование
Следующая
Использование объектов интеграции

Дайджест новостей и обновлений —

один раз в месяц

Заполняя форму, я даю согласие на обработку моих персональных данных
430006, Саранск,
Северо-восточное шоссе, д. 3
ОКВЭД 62.01
ИНН 1328​909857
Код вида деятельности
в области ИТ 15.02 и 17.01
Языки программирования