How to design process?


Hello All,

I have process as shown below.


  1. Here I have two task i.e., Draft and Review.(fig1)
  2. In draft i have outcomes as “save & submit”.
  3. When i click on save the draft task should display in read only mode so for this i have created the new task as Draft view using display value pallet element(fig 2), in the draft view i have again outcome like edit, submit.
  4. when i click on edit again it moves to draft task. The thing is here i have created the new task for draft view. As this is simple process i can create but for complex project it requires me to create one extra task.
  5. And for the review also i have review view task.


Can anyone provide me the solution to avoid creating the task as draft view and review view.

Thanks & Regards

Amruta Wandakar



Seems to me that you are really talking about how to render a task (in a form) to a user with various options e.g. ‘edit’ ‘save’ ‘save & complete’

If so the Task REST API is very feature rich and should support what you need (I think). The new FORM support may even go further.


I think you might be making this too complicated for what you need. A general model for a review pattern looks like this:
If you offer your user a “save” button for the draft task, that is fine. But “save” in the context of a task doesn’t necessarily mean “complete” as well. So you could have a save button, that stores the work done so far, but the task is not completed. It remains open for continuation and later when you choose “submit”, the info is also saved but the task is also completed. Only then does it progress to the review task.

The same applies to the review task wrt the logic behind the buttons.

Camunda’s tasklist application actually follows the same way of dealing with save and complete actions if you use the embedded forms.



Thanks to @tiesebarrell and @conorhayes

I’m looking kind of solution like, if any task has save button it should just save the data and show me in view mode(means readonly), here i want to have some buttons like edit(which goes back to the saved task), submit(which goes to the next task).

As i have my workflow like draft and review. In the draft task if i say save the data should be saved and draft task should show in readonly mode. If the user pressed edit, the draft task should open in edit mode and again user can save or submit to review. The same applies for review also.

If you have any idea on this please suggest me.

Amruta Wandakar


If you really want to block editing of the task after saving until the user actively clicks “edit” to resume editing, you could implement that by creating a task local variable (Task.setVariableLocal()) when saving that just holds a boolean value indicating the lock. Then when you press edit, you flip the variable until the next save. Based on the variable, you show the task screen in read-only or edit mode.

To me, it seems rather superfluous still, because the user is the same for the save and the edit action within one task. Since the task is normally claimed before a user starts working on it, other users should not be able to work on the same task anyway, so I don’t see the need for this extra protection.


Just wondering why do you need to define workflow in that detail if you are using External UI outside Camunda. How you define your screen interactions (readonly, popup, editable) etc. is complete freedom of the UI. Do not bring these complexities to the workflow unless you want workflow to change the state or send this to next assigned user.

Show all the readonly magic on UI without calling workflow, call workflow only when you move from draft to review state. Thus workflow is simple as many folks have advised. This is the liberty you have with Camunda separating UI layer from workflow layer. Use it.

Hope it helps. Cheers !

Regards, VK