Description:
This step creates dynamic serial or parallel steps based on the schema during runtime.
Inputs
- dynamicType – Select dynamic type
- varGlobalStepData – Variable / Global holding dynamic step data
Returns
- true – true condition
- false – false condition
Usage:

Example:
Let’s build and execute the “clsDynamicStepBuilderDef” example.
- Create a new process definition called “clsDynamicStepBuilderDef” and open the definition in designer mode.
- Drag the “updateGlobals, placeHolders, and clsDynamicStepBuilder" steps to the canvas.
- Connect the dots between the “Start” and other steps, as shown above.
- Click the “updateGlobals” step to configure its “Required” properties. Provide a name for the step. Click the Save button. Note: Click the "AI Predict" button for the Copilot to add new process steps that match your process description.

- Click the “updateGlobals” step to configure its “Optional” properties. Click the button to update multiple globals. A pop-up window is displayed for configuration. Click the Add Row (+) button to insert an empty row. Provide a global reference and the step data as a global value. Select “Yes” for the “Has Expression” if you provide any C# expression as a global value. Click the Save button.

- The global value contains the dynamic step data.
PHN0ZXBEYXRhPgo8ZmlndXJlIGlkPSIxZWRmNDRiYy0yZjg2LTE4M2QtNWQyMC1lYmUxNDZhYzU1YzEiIG5hbWU9IlNhbGVzIGFwcHJvdmFsIiB0eXBlPSJ0YXNrIiB4PSIwIiB5PSItOTIwIiBpc1ZhbGlkPSJ0cnVlIj4KICA8cHJvcGVydGllcz4KICAgIDxwcm9wZXJ0eSBuYW1lPSJpdGVtTmFtZSI+U2FsZXMgYXBwcm92YWw8L3Byb3BlcnR5PgogICAgIDxwcm9wZXJ0eSBuYW1lPSJ0YXNrRGVzYyI+U2FsZXMgYXBwcm92YWw8L3Byb3BlcnR5PgogICAgPHByb3BlcnR5IG5hbWU9ImRheXNUb0NvbXBsZXRlIj41PC9wcm9wZXJ0eT4KICAgIDxwcm9wZXJ0eSBuYW1lPSJleHBpcmVUeXBlIj5taW51dGVzPC9wcm9wZXJ0eT4KICAgIDxwcm9wZXJ0eSBuYW1lPSJpbmNsdWRlV2Vla2VuZHMiPjE8L3Byb3BlcnR5PgogICAgPHByb3BlcnR5IG5hbWU9InJvdXRlVG8iPjQ2ZWNiNGRhLWQ3ZjEtNGM3Mi1iYjM3LTI2MjZmM2Y0M2Y2MzwvcHJvcGVydHk+CiAgPC9wcm9wZXJ0aWVzPgo8L2ZpZ3VyZT4gIAo8ZmlndXJlIGlkPSIxZWRmNDRiYy0yZjg2LTE4M2QtNWQyMC1lYmUxNDZhYzU1YzEiIG5hbWU9IkZpbmFuY2UgYXBwcm92YWwiIHR5cGU9InRhc2siIHg9IjAiIHk9Ii05MjAiIGlzVmFsaWQ9InRydWUiPgogIDxwcm9wZXJ0aWVzPgogICAgPHByb3BlcnR5IG5hbWU9Iml0ZW1OYW1lIj5GaW5hbmNlIGFwcHJvdmFsPC9wcm9wZXJ0eT4KICAgICA8cHJvcGVydHkgbmFtZT0idGFza0Rlc2MiPkZpbmFuY2UgYXBwcm92YWw8L3Byb3BlcnR5PgogICAgPHByb3BlcnR5IG5hbWU9ImRheXNUb0NvbXBsZXRlIj4xMjwvcHJvcGVydHk+CiAgICA8cHJvcGVydHkgbmFtZT0iZXhwaXJlVHlwZSI+bWludXRlczwvcHJvcGVydHk+CiAgICA8cHJvcGVydHkgbmFtZT0iaW5jbHVkZVdlZWtlbmRzIj4xPC9wcm9wZXJ0eT4KICAgIDxwcm9wZXJ0eSBuYW1lPSJyb3V0ZVRvIj40NmVjYjRkYS1kN2YxLTRjNzItYmIzNy0yNjI2ZjNmNDNmNjM8L3Byb3BlcnR5PgogIDwvcHJvcGVydGllcz4KPC9maWd1cmU+IAo8L3N0ZXBEYXRhPg==
- Extract the Step information from any process definition XML (like the one below) and convert it to Base64 to use as Step data (as shown above).
<stepData>
<figure id="1edf44bc-2f86-183d-5d20-ebe146ac55c1" name="Sales approval" type="task" x="0" y="-920" isValid="true">
<properties>
<property name="itemName">Sales approval</property>
<property name="taskDesc">Sales approval</property>
<property name="daysToComplete">5</property>
<property name="expireType">minutes</property>
<property name="includeWeekends">1</property>
<property name="routeTo">46ecb4da-d7f1-4c72-bb37-2626f3f43f63</property>
</properties>
</figure>
<figure id="1edf44bc-2f86-183d-5d20-ebe146ac55c1" name="Finance approval" type="task" x="0" y="-920" isValid="true">
<properties>
<property name="itemName">Finance approval</property>
<property name="taskDesc">Finance approval</property>
<property name="daysToComplete">12</property>
<property name="expireType">minutes</property>
<property name="includeWeekends">1</property>
<property name="routeTo">46ecb4da-d7f1-4c72-bb37-2626f3f43f63</property>
</properties>
</figure>
</stepData>
- Click the “clsDynamicStepBuilder” step to configure its “Required” properties. Provide a name for the step. Select the dynamic type from the list (either parallel or serial). Provide the global reference with the dynamic step data value. Click the Save button. Note: Click the "AI Predict" button for the Copilot to add new process steps that match your process description.

- The “Logging” setting configuration is necessary for documentation and also measures the workflow progress and the percent complete. This is achieved by configuring the step state and percent fields individually, as shown below. Configure the “Logging” using the following properties.

- Save the process definition, create a new instance, and then execute it. Render the process instance. Click the process step to view its properties. The step creates dynamic serial or parallel steps based on the schema during runtime.

Definition Sample:
You may download the sample definition(s) from the link here and later import them (drag-and-drop) to your FlowWright Process Definition (XML file) or Form Definition (HTML file) page.
Note: Please verify and complete the process steps for any missing configurations, such as file path references and database connections, after import. Then, save the definition to confirm the changes.
Click here to download the sample file.