Building a simple flow

This step-by-step first example shows how to create a process with a single, simple form. More complicated flows follow the same pattern, but just have more boxes on them.

Open Camunda Modeler, and create a new BPMN diagram.

Drag a Task box and an End Event onto the process, and call the task "Show form". Join the process up with arrows. You can use the Change type (spanner icon) to change the task type to User task if you like.

Use the Create Pool/Participant option to draw a participant box around the process

Having drawn the flow, we now need to use the properties on the right of the page to configure the process. Start by selecting the participant box, and then in the properties pannel setting the id to "owner". All processes must have a participant with an id of owner.

Settings the participant identifier

Next, select the start event (circle on the left). In the properties panel, set the id to "start". All processes must have a start even with an id of start.

Settings start process properties

Select the show form task, and give it an id that will be used as its action reference in the process. We'll use showForm.

Settings the show form action identifier

Also on the show form task, use the Extensions to add a stepType property. In this case we will use "form", to show a form. We could add more configuration options here, too.

Settings the show form properties

Lastly, select the flow from the start event to the view form task. In the Extensions tab, set a status property of "*". This indicates that a status rule should be generated for all statuses to offer the View form option. (You can code status rules for a task/step on any incoming link, even creating a link of stepType null just for this purpose. This can be useful for capturing complex status rules and redo loops.)

(If you wanted to set a process execution flow rule, as opposed to a user menuing rule, you would use state, rather than status.)

Setting status property on incoming flow

Save the file with a suitable name. It should end up with a .bpmn extension.

Once you've saved your file, you need to upload it into your PMX library. Rather than use the normal file type, you must use the Data File type (library.file.DataFileType). This works like a regular file, except that it reads the file content into the database to make it easier to process. The normal file type won't work.