Need help to create a process

Hello,

I want to create a BMPN diagram wtih parallel tasks.

1- email is received.
2a- if email received informations type 1, do action 1.
2b- if email received informations type 2, do action 2.
2c- if email received informations type 3, do action 3.

One email can contain several pieces of informations :

  • for example : type 1 + type 2 + type 3 => do action 1 + action 2 + action 3.
  • an another example : type 1 + type 1 + type 2 => do action 1 + action 1 + action 2.

How can I do this diagram ? I don’t see how to do these actions in parallel.

My acual diagram (problem is to excute in parallel actions after task “Analyse informations”) :
diagram1
diagram1.bpmn (38.9 KB)

Hi @cmarmonier,

I think a combination of inclusive gateway and multi instance tasks may help you further.

The inclusive gateway allows taking more than 1 outgoing sequence flow: Inclusive gateway | Camunda Platform 8 Docs

The multi instance marker allows handling more than a single element in a task: Multi-instance | Camunda Platform 8 Docs.

With these elements, you can apply your pattern:

an another example : type 1 + type 1 + type 2 => do action 1 + action 1 + action 2.

Hope this helps, Ingo

1 Like

I thank you but when I use inclusive gateway, Camunda Token simulator displays error “Not supported”.

Hi @cmarmonier,

I think the token simulation is not correct here. There is an open issue in the bpmn-js-token-simulation: Inclusive Gateways support · Issue #88 · bpmn-io/bpmn-js-token-simulation · GitHub

The inclusive gateway was added with Camunda 8.1 in October last year.

Maybe the token-simulation-plugin for the desktop modeler requires an update here? (@nikku, @Martin, you made the last comments on the github issue)

The Zeebe engine is able to use the inclusive gateway.

Hope this helps, Ingo

@Ingo_Richtsmeier @cmarmonier.

Zeebe supports inclusive gateway for forks, which is a simple thing. It does not support it for join, as this is not computable (C7 does not implement it right, for example).

Token simulation won’t support it unless we have a proper working solution in both ways. The purpose of token simulation is not to be en par with Zebee, but to be a BPMN 2.0 spec compliant token simulator and learning tool. Where actual behavior cannot be reasonably implemented we rather not implement anything at all.

Hope that makes sense.

1 Like

Ok, I will replace this inclusive gateway by exculsive gateway during token Simulator tests.
But during the instance running, inclusive gateway will work ?

It will fork.

image

It won’t join:

image

1 Like

Ok I thank you.

To simplify my diagram, I try to use events :
diagram-test
diagram-test.bpmn (18.2 KB)

When I run token simulator (the start is “Customer informations received” event), the test stops at the first EndEvent. How can I do to link EndEnvent to StartEvent ?

Without using messageFlow :

  • A EndEvent item can be connected to several StartEnvent items ?
  • A StartEnvent item can be connected to several EndEvent items ?
  • A IntermediateEnvent item can be connected to several EndEvent items ?

Emitting messages without message flows is a new feature request (currently not implemented in token-simulation):

Your diagram looks interesting, too. What do you expect to happen? The message end event will never restart the process as this diagram may suggest.

Different ways to model it include:

  • Message Event Sub-Process
  • Explicit modeling of external process
1 Like

The first step is to read email and to define the next process to execute (it is the “Analyse informations” task).

This example is light but if there are many email type, If I use messageFlow, diagram is heavy.

The same diagram with messageFlow :
diagram-test-bis