Disable and enable of Workflow components

Disable and enable of Workflow components

It is possible to disable/suspend individual workflow components of a workflow. When you disable a workflow element, then the processing of the disabled component is (as a general rule) skipped and the following components are processed. 

This image shows how to identify the disabled workflow components:

The workflow above contains first an input type. The input type cannot be disabled, but it is possible to suspend the complete workflow, which completely stops the workflow from running.

The two component inside this workflow shows the difference between an active and a disabled component. The first component is shown in blue with this icon:  and that is the active one. The gray component is disabled and that is also indicated with the icon: .

You can disable a component by clicking on the icon:  and you enable it again if you click this icon: .

The disable function works a bit special for some elements, which are described below:

The complete sub-workflow connected to the component will also not run, if you disable any of these components:
  1. Multicast
  2. Multi-cast and merge.
  3. Repeat component.
  4. Split XML
  5. Split spool fixed key position
  6. Split spool (variable key position)
  7. Split spool (complex key)
  8. Structural Split
  9. Transform or split.
  10. If you disable the initial part of a Choice component or the Choice and Join, then none of the connected sub-workflows will run.
Notes
Please notice, that the affected components of the sub-workflow(s) are not grayed out.
Special note for the Retry-repeat component: If you disable this component, then the sub-workflow connected to this component is executed once - as if the Retry-repeat component was not there.

Partial disable

Partial disable of the components: Choice and Choice and Join is possible. You can do that by disabling one or more of the branches on the right:

If you disable a branch with a condition, then the Choice (or Choice and Join) component will work as if this conditioned branch does not exist. If e.g. the branch above the condition 1=1 above is disabled, then the sub-workflow connected to that branch will not be run, but now InterformNG2 will instead run the Otherwise branch as no When branch with a true condition could be found. Finally in the case above the Join branch of course will be run.
If an Otherwise or Join branch is disabled, then the only the sub-workflows connected to this branch will be disabled.

Watch out for changed payload type

Notes
Please notice, that a side effect of disabling a workflow component can be, that the payload or even the payload type might change if you suspend a component.
Please consider the simple workflow below:

Normally this workflow will create a PDF document in the payload and save it as the file, file.pdf, but if the component, Create PDF document is disabled like below:

- then the original payload (prior to the Create PDF document) is saved to a file named file.pdf, but the payload will now be an XML file.