Универсальный обмен данными

Красная и зелёная стрелки
Рисунок 1. Пиктограмма функции

Общее описание функции

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

Сценарии использования

При Универсальном обмене данными возможна передача значений как между внутренними переменными бизнес-процесса, так и между объектами и отдельными атрибутами объектов шлюзов при обязательном соответствии типов переменных. Например, значение свойства карточки Docsvision может быть присвоено строковому полю любой другой переменной.

Если в обмене данными участвует сложная переменная (карточка Docsvision, почтовое сообщение и др.), функция универсального обмена данными позволяет передавать переменной-приёмнику не полное значение (например, карточки), а какого-либо её элемента — секции, строки и т. д. Следует обращать особое внимание на типы переменных обмена. При несоответствии типов переменной-приёмника и переменной-источника бизнес-процесс будет завершен по ошибке (за исключением некоторых общепринятых допустимых случаев, например, присвоения переменной дробного типа целочисленного значения).

Функция Универсальный обмен данными может выполнять неограниченное количество операций по присвоению значений любым переменным. Чтобы избежать путаницы в дальнейшем при тестировании и работе с бизнес-процессом рекомендуется дать подробное описание каждой из них.

Настройка параметров

Окно "Универсальный обмен данными". Вкладка "Параметры"
Рисунок 2. Окно "Универсальный обмен данными". Вкладка "Параметры"

На вкладке Параметры описаны все выполняемые функцией шаги обмена данными. Имеющиеся на вкладке кнопки используются согласно обычному принципу:

  • Добавить, Изменить и Удалить позволяют соответственно определить новый шаг обмена, а также изменить или удалить существующий.

  • Кнопка Копировать предоставляет возможность продублировать шаг обмена в списке, например, в целях его последующего редактирования.

  • Кнопки Вверх и Вниз — изменять порядок следования шагов обмена.

При нажатии кнопок Добавить или Изменить открывается диалоговое окно Настройки шага обмена, позволяющее соответственно добавить новый шаг обмена данными или изменить уже существующий. Кнопки Вверх и Вниз в этом окне позволяют быстрого переходить к предыдущему и следующему шагам обмена соответственно. Кнопки активизируются, если такие шаги уже настроены.

Окно "Настройки шага обмена"
Рисунок 3. Окно "Настройки шага обмена"

При настройке шагов обмена можно указать переменную-источник и переменную-приёмник. Указание настройки для двух переменных аналогичны. В каждом из полей выбор значения или переменной осуществляется из списка, раскрывающегося при нажатии кнопки Три точки. Пока не указаны все необходимые настройки шага обмена (типы источника и приёмника, а также переменная-приёмник и переменная-источник или её значение, кнопка ОK остается недоступной для выбора.

Тип объекта, указываемый в полях Тип, выбирается из дерева всех доступных типов. До указания типа последующие поля недоступны для заполнения.

Дерево типов объектов
Рисунок 4. Дерево типов объектов

После того как тип указан, в выпадающем списке поля Переменная окажутся доступными для выбора все объявленные переменные бизнес-процесса указанного типа. Кроме того, значение можно ввести вручную (для простых типов) или выбрать существующий объект (соответствующего типа).

В качестве источника могут быть указаны:
  • Переменная любого типа.

  • Объект шлюза.

  • Простое свойство (поле) объекта шлюза.

  • Пользовательское свойство (поле) объекта шлюза.

  • Индексированное свойство (поле) объекта шлюза.

  • Коллекционное свойство (поле) объекта шлюза.

  • Пустое значение.

  • Введенное с клавиатуры значение простого типа.

В качестве приёмника могут быть указаны:
  • Переменные.

  • Свойства (поля) объекта, у которых отсутствует флаг Только чтение.

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

Поле Свойство не является обязательным и становится доступным для выбора, если только в предыдущем поле был указан объект или составной тип переменной (обладающий свойствами). Заполнение данного поля обеспечивает передачу значения не всей составной переменной, а только одного её свойства. Кроме того, если указанное свойство является коллекционным, помимо передачи его значения другой переменной возможно провести над ним действия, определенные для коллекций:

  • Получить число элементов.

  • Получить элемент.

  • Получить все.

  • Добавить новый элемент.

  • Добавить элемент.

  • Удалить элемент.

  • Очистить коллекцию.

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

Из перечисленных операций возвращаемое значение имеют:
  • Получение числа элементов в коллекции.

  • Получение элемента коллекции.

  • Добавление нового элемента коллекции.

  • Добавление существующего элемента коллекции.

После указания всех параметров рекомендуется ввести в поле Описание подробное описание и назначение операции, выполняемой на данном шаге обмена: это облегчит корректировку шагов при последующем редактировании бизнес-процесса и исправлении ошибок.

Завершив все описанные действия, нажмите кнопку ОК.