Выпуск №1. Вычисляемые выражения в no-code Directum RX

2 1

👋 Всем привет!

Это первая серия блога о платформе Directum RX. В пилотном выпуске поговорим о вычисляемых выражениях. Пожалуй, это одна из самых интересных тем у начинающих ноукодеров.

Я довольно часто слышу, что вычисляемые выражения это сложно и непонятно. На самом деле это одна из самых главных фишек в Directum RX, и это первое, о чем лично я рассказываю при знакомстве с no-code. 

ps, если вам удобнее, то ролик также есть на RuTube и YouTube.

🔍 Что такое вычисляемое выражение

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

Я предлагаю разобрать вычисляемое выражение на бытовом примере.

Один из самых наглядных примеров – это адрес. Например, адрес офиса Directum.

Адреса бывают очень длинными, но это просто необходимо для выяснения точного местоположения. Почему?

Наверное в каждом городе есть улица или площадь Ленина. По такой улице нам придется очень долго ездить по всей России, чтобы найти офис. Поэтому воспользуемся конструкцией "от общего к частному".

Итак, давайте найдем офис компании Directum,

Так как офис в России, стартовой точкой будет Российская Федерация

Далее определяем регион: Удмуртская Республика

Внутри региона определяем город, в нашем случае — Ижевск

Далее, улица и здесь наш выбор – переулок Северный

Финальная точка, а именно, офис – это дом 61.

Также работают и вычисляемые выражения в Directum RX.

Итого: вычисляемое выражение — это путь от общего объекта к нужному вам значению, шаг за шагом, где последний элемент является результатом.

🧩 Живой пример: как Directum RX понимает, какой документ на согласовании

Возьмём реальный кейс — процесс согласования договорных документов. У такого процесса обычно есть несколько вариантов маршрутов. В Directum RX это такие процессы называются "Вариантами процессов". Их может быть много и чтобы система понимала, какой вариант запускать, у каждого варианта есть критерии — условия, при котором именно этот вариант и будет выбран для запуска.

В нашем случае будет всего 1 критерий, который должен ответить на простой вопрос: а какой вид документа сейчас согласовывается? Сейчас соберём этот путь прямо в RX, шаг за шагом.

Перед тем как начать настройку

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

Дальше нам это поможет визуально понять логику построения нашего вычисляемого выражения.

Сегодня мы рассмотрим очень простое, но не самое оптимальное выражение. Почему оно не оптимальное нам расскажут опытные ноукодеры в комментариях :)

Приступим 

1. Первый элемент нашего выражения это Задача — отправная точка, с которой мы начинаем путь. Слева, как раз, мы можем визуально ее видеть. У неё есть вложения — то, что к ней прикреплено, в нашем случае это договор и приложение.

2. Второй элемент выражения «Все вложения». Этот элемент позволяет нам увидеть все вложенные документы в задачу.

3. Дальше «Первый элемент» – он позволяет нам получить карточку первого документа. В нашем случае это будет как раз договор.

4. И финальный элемент выражения это "Вид документа", его мы как раз берем уже их карточки вложенного договора.

Выражение готово, осталось только выбрать виды по которым наш критерий будет работать. Пусть будет договор расходный.

Вроде бы все просто. Но что такое "первый элемент"? Почему нет второго или третьего?

🎛 Функции выражений

Первый элемент в нашем выражении – это функция, которая возвращает нам карточку договора. Эта функция используется не только для документов, но и для других объектов в Directum RX, например, может вернуть карточку сотрудника или организации.

Функций в вычисляемых выражениях довольно много, например в нашем выражении их целых 2, одна – первый элемент, а вторая – все вложения. Да, все вложения – это тоже функция. Если первый элемент возвращает нам только одну карточку конкретного договора, то функция все вложения возвращает нас все вложенные объекты в задачу.

Возникает вопрос: а где все эти функции найти? Как понять какую использовать?

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

Но только ли из функций и объектов состоит выражение?

Что ещё может использоваться в выражении

Например, вычисляемые роли или параметры процесса. Если не знакомы с ними, пишите в комментариях, мы обязательно снимем отдельный выпуск.

Важно понимать, что список элементов выражения не бесконечный — он зависит от того, с чем вы работаете: у задачи один набор, у документа другой, у сотрудника третий. Набор стандартных функций задаёт платформа, но если вам нужна нестандартная логика, разработчик может дописать собственную функцию в среде разработки — тогда она появится в общем списке рядом со стандартными.

Итого: у вычисляемых выражений не так уж и много вариантов пазлов, из которых оно может состоять, это свойства или проще говоря "поля" объекта, функции, например функция первый элемент, с которой мы познакомились, вычисляемые роли и параметры процессов, о которых мы можем поговорить в будущем, если вам будет интересно.

📍 Где всё это применяется и что с этим делать

С простым примером разобрались, а где кроме процессов используются выражения?

Выражения встречается сразу в нескольких местах:

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

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

* * *

Это только первая встреча из серии. Дальше вас ждут новые выпуски на разные темы, которые напрямую связаны с работой платформы.

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

Если вам понравился выпуск, подписывайтесь на тег рабочей схемы, https://club.directum.ru/tag/125041.

А на этом у меня все, пишите ваши вопросы в комментариях, предлагайте новые темы, делитесь обратной связью.

До встречи в будущем!

Виталий Томко

Если у вас нет стенда чтобы попрактиковаться, то вы можете запросить его на сайте https://www.directum.ru/ по кнопке Получить демодоступ. В причине выберите "в образовательных целях".

Авторизуйтесь, чтобы написать комментарий