Связанные процессы

Процесс может ссылаться на другой процесс следующими способами:

  • Ссылается (processLink) - простая ссылка одного процесса на другой;

  • Порождён (processMade) - указание, что ссылаемый процесс создан из данного процесса;

  • Зависит (processDepend) - процесс не может быть закрыт пока не закрыты все процессы на которые он ссылается данным способом.

Параметры в конфигурации типа процесса:

  • processShowProcessLinks=1 - отображение в карточке процесса вкладки со связями процесса с другими процессами;

  • processCreateLinkModeSelect=1 - привязка к процессу произвольных открытых процессов (цифра 3 на снимке далее)

process 22

Рассмотрим отображаемые на снимке экрана области В таблице 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

Карточка привязанного процесса может быть открыта прямо на вкладке привязок кликом по строке таблицы. При этом открывается только левая часть карточки процесса с основными свойствами.

process 23

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