Связанные процессы
Процесс может ссылаться на другой процесс следующими способами:
-
Ссылается (processLink) - простая ссылка одного процесса на другой;
-
Порождён (processMade) - указание, что ссылаемый процесс создан из данного процесса;
-
Зависит (processDepend) - процесс не может быть закрыт пока не закрыты все процессы на которые он ссылается данным способом.
Параметры в конфигурации типа процесса:
-
processShowProcessLinks=1 - отображение в карточке процесса вкладки со связями процесса с другими процессами;
-
processCreateLinkModeSelect=1 - привязка к процессу произвольных открытых процессов (цифра 3 на снимке далее)
Рассмотрим отображаемые на снимке экрана области В таблице 1 отображаются процессы, которые ссылаются на текущий процесс. В таблице 2 - те процессы, на которые ссылается текущий процесс.
Кнопки удаления связей должны быть включены специальной опцией в конфигурации действия "Удаление привязки". |
Выпадающий список 3 - позволяет выбрать метод отношейний для привязки к текущему другого процесса, открытого в буфере.
Выпадающий список 4 - позволяет создать процесс и привязать к данному процессу. Содержимое списка определяется записями в конфигурации типа процесса вида:
processCreateLink.<n>.title=<title>
processCreateLink.<n>.processTypeId=<typeId>
processCreateLink.<n>.linkType=<linkType>
# необязательные параметры
#processCreateLink.<n>.checkExpression=<expression>
#processCreateLink.<n>.copyParams=<copyRules>
# копирование привязок
#processCreateLink.<n>.copyLinks=<copyLinks>
Где:
-
<n> - порядковый номер записи;
-
<title> - наименование для списка;
-
<linkType> - тип связи: "processLink" - ссылается, "processMade" - порождён, "processDepend" - зависит;
-
<typeId> - код типа создаваемого процесса;
-
<expression> - JEXL выражение, позволяющее показывать пункт списка в зависимости от условий;
-
<copyRules> - через запятую коды копирующихся с текущего на создаваемый параметров, либо пары <from>:
-
<to> - кодов однотипных параметров с какого на какой необходимо копировать;
-
<copyLinks> - копирование привязок на процесс, 1 - копировать все привязки, возможно ограничение по маске типов объектов, например: contract%, customer%.
-
processParam - объект класса ru.bgcrm.dao.expression.ParamValueFunction- параметры процесса.
Пример конфигурации. Создаётся ссылаемый процесс с кодом типа 9244, запись отображается в списке только если значение параметра с кодом 227 равно 1.
processShowProcessLinks=1
processCreateLink.1.title=Авария
processCreateLink.1.processTypeId=9244
# processLink - ссылается, processMade - порождён
processCreateLink.1.linkType=processLink
processCreateLink.1.checkExpression=processParam.getParamValue(227) == 1
processCreateLink.1.copyParams=48,46,150,151
processCreateLink.1.copyLinks=1
Карточка привязанного процесса может быть открыта прямо на вкладке привязок кликом по строке таблицы. При этом открывается только левая часть карточки процесса с основными свойствами.
Краткое описание, выводящееся в таблице привязанных процессов, вид левого блока карточки процесса возможно настроить в конфигурации.