logo

[ELMA3] Примеры сценариев для условий на переходах шлюзов

Пример 1

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

Создадим контекстную переменную "Тип оценки" типа Выпадающий список, со значениями "Жилая" и "Не жилая".

Затем создадим задачу с этой контекстной переменной "Тип оценки".

На одном из переходов исключающего ИЛИ-шлюза задаем сценарий во вкладке Условие перехода.

Сценарием для шлюза выступает метод C# с вкладки Сценарии процесса. Этот метод должен возвращать булевое значение (true и false).

В сценарии используется служебная переменная для перехода из шлюза gatewayVar, а также созданная нами контекстная переменная "Тип оценки". Проверяется ее соответствие значению "Жилая".

1
2
3
4
5
6
7
8
9
10
11
public bool Perehod1(Context context, object GatewayVar)
{
      if (context.TipOcenki.ToString()=="Жилая")
      {
          return true;
      }
      else
      {
          return false;
      }   
}

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

Пример 2

Рассмотрим другой пример, где в условии перехода исключающего ИЛИ-шлюза анализируется значение контекстной переменной "Сумма заказа". Если ее значение превышает 1000000, в процессе появляется дополнительная задача проверки юристом.

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

1
2
3
4
5
6
7
8
9
10
11
public bool perehod2(Context context, object GatewayVar)
{
    if (context.SummaZakaza > 1000000)
        {
           return true;               
        }
    else
        {
          return false;
        }
}

В случае, если это условие выполняется, юристу приходит задача "Проверка договора", если не выполняется, процесс идет по другой ветке.

Прикрепленные файлы