Skip to content

BPMN Editor: Call Activities - link other processes #538

@iaktern

Description

@iaktern

In BPMN, Call Activities can link to other processes.

  • BPMN Editor: add editing icon (on top in the middle) that opens a modal in which you can select another, existing process and its version (use the existing modal for moving/copying a process). Show only processes that the user has access to.
    • check if the imported process has at least one non-typed starting event
    • checks for cyclic references, if other call activities exists in the referenced process
    • after checks, write the called process and its version into the BPMN like described here: https://docs.proceed-labs.org/developer/bpmn/bpmn-subprocesses#call-activities
      • maybe also write the linking into process db table, if useful
    • After a Call Activity is linked, show a second icon next to the selection icon to open the call activity (like with normal subprocesses)
  • Implement Export and Import:
    • Export: if the option is selected to export references processes, then put the linked processes into the zip file as if it would be two normally exported processes (even is the referenced process is inside another folder). If option is not selected, remove all <import> elements and the attribute calledElement=".." from all <callActivities ...> (do not remove the <callActivities ...> element itself, just the attribute)
    • Import all processes of the zip file as normal processes in the current folder. Check all processes if they have call activities and if those referenced processes are within the imported processes (no reference allowed to processes stored already within the MS). Show Error, if not
  • Process Deployment for Execution: https://docs.proceed-labs.org/developer/bpmn/bpmn-subprocesses#deployment-and-executionof-call-activities
    • check for <import> elements, non-type start events and cycles
    • deploy all imported processes and recursive processes to a sub-endpoint under /imported/{processName}
    • deploy all user tasks of imported processes and recursive processes to a sub-endpoint under /imported/user-tasks/{html-file}
    • deploy all script tasks of imported processes and recursive processes to a sub-endpoint under /imported/script-tasks/{js-file}
      • Update wiki with this new Engine endpoint
  • Test Execution and fix bugs, if necessary

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    Status

    Todos: Fine-Grained

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions