Универсальная функция

fx со стрелочками
Рисунок 1. Пиктограмма функции

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

Универсальная функция предоставляет доступ к некоторым дополнительным возможностям шлюзов.

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

Набор возможных действий над каждым из типов переменных различен, подробнее см. "Типы переменных и операции".

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

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

На вкладке Параметры описывается требуемое действие с переменной.

Тип

В раскрывающемся окне этого поля выбирается шлюз и указывается тип переменной, относящийся к этому шлюзу. Следует отметить, что Универсальная функция определена не для всех типов переменных, подробнее см. таблицу "Типы переменных и операции".

Если какой-либо сценарий был сохранен как .Net-сборка (пользовательская функция), он отображается в диалоге выбора типа объекта в Универсальной функции, в дереве на одном уровне с добавленными в процесс шлюзами.

Выбор типа объекта Универсальной функции
Рисунок 3. Выбор типа объекта Универсальной функции

При раскрытии этого элемента дерева отображается список классов сборки, имеющих публичные статические (отмеченные в коде как public static) методы. Эти методы в качестве параметров и возвращаемого значения должны содержать только параметры типов, реализованных шлюзами модуля (включая шлюз к базовым типам).

Значение

Указывается значение выбранного типа — явно или при помощи переменной. Некоторые операции становятся доступны только в том случае, если значение переменной не указано, подробнее см. "Типы переменных и операции".

Функция

Требуемая функция выбирается из раскрывающегося списка.

Параметры функции

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

Важная информация

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