Collapsed subprocess not executable

Hi there
First of all, thank you for this great piece of software. It already helped me so much in my past and I really appreciate the project and your work.

Nevertheless, I’m having trouble to model a process and can’t quite figure out what the intended way in Camunda is.

Basically, I’m trying to model a process with a collapsed subprocess. I’m aware that the modeler does not support expanding collapsed subprocesses (anymore). In addition, there is no way to connect this collapsed subprocess to another expanded subprocess. Therefore, there is no way to model this process step whatsoever.

The process engine, though, gives me an error that a “subprocess must define a startEvent element”.

One way to get around this is to use a call activity. However, I’d like to know if there is a way to model this case using a subprocess.

So my question is, how do I model a process with a collapsed subprocess in Camunda modeler that is able to be executed in Camunda engine?

See my process diagram below.

-Dominik

processhouse_copy2.bpmn (2.4 KB)

Hi @dobu
Welcome to the fourm!
I’m very interested in this question.

Mainly because I’d like to know why it is that you want to do this, generally collapsed sub-processes don’t have much of a need to be executed by the engine, they’re often just used for diagrams that are not intended for execution.

2 Likes

I was under the impression that there is some way to connect a collapsed subprocess to another expanded (sub)process.

However, you are absolutely right. According to the specification “[a] Sub-Process is a graphical object within a Process, but it also can be ‘opened up’ to show a lower-level Process.”

The bottom line is that there is no need to have an collapsed subprocess in an executable process.

Thank you, Niall
-Dominik

1 Like

Sorry @Niall to dig up this old thread. Not sure if this deserves a new topic…

I’m using Camunda 8.2 (Dockerized) and the Camunda Modeller 5.15.1. The modeller complains about ‘A <Sub Process> must be expanded’. However the model can be deployed, it does instantiate a process and does execute the steps within the collapsed subprocesses as well and ends like expected.

Because of the error I didn’t expect that to work, but as I’m fairly new to all this anything goes :wink:

I like the idea of having one model that’s executable and can be collapsed/expanded for clarity. I know (however not yet the specifics) that there are different levels of diagramming (some of us don’t need to know about the nitty-gritty details), but imho we should have a single point of truth. Presenting one thing and doing another doesn’t make sense.

Having said all that: deploying expanded models makes more sense since Operate can’t collapse/expand. Would be a nice feature though…

Love to hear the expert’s take on this!

The alternative it is to use Call Activities which works far better than an embedded sub process in terms of creating reusable and maintainable processes. Its also supported by Operate so can let you drive down to nested processes quite easily.

Thanks @Niall. How are the falconum peregrinum? :wink:

From a FinOps point of view (and I’m Dutch) : Is my understanding correct that a call activity instantiates another process that counts towards the bill of your process instances?

If you’re referring to the charge that is made on Camunda 8 SaaS, then no. Camunda charges based only on the root process. All processes called by the parent are considered part of the same end to end process instance. even though they would count as different instances on a technical level

1 Like