Custom task status in CMMN


I have another query in relation to Case Management and Tasks. The status held against the tasks are clearly to help the flow of the case & its process to completion. Where we’ve got tasks that have subtly different statuses, what would be the recommended approach for managing this?

For example, one task might be to execute an external call, and the results might be OK, Not OK, Needs Manual Approval, etc. Would the recommendation here to mix CMMN with BPMN? e.g. the task is a process task to call out and we handle the status as for of logic captured in the process?

My understanding so far suggests there is no logical processing as part of the CMMN? I’m just wondering if that means that everything gets a bit heavy in that almost all of our tasks will have a OK, Not OK status.

Is the idea of CMMN is that it purely focuses on progress rather than “business status”? So one other example would be task gets executed but a listener elsewhere can update the case to manually activate other tasks or not.


Cmmn has a service task, just like the process engine. Do note that this is a custom addition to the spec from Flowable to make it useful for the reasons you mention. Doing those as processes would be quite a modeling overhead. If you need the status of those calls, you simply store them in case instance variables and you can reference them in other sentries through expressions.