clsDynamicStepBuilder Step
Description:
This step creates dynamic serial or parallel steps at runtime based on the schema.
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 named “clsDynamicStepBuilderDef” and open it 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, then 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 appears for configuration. Click the Add Row (+) button to insert an empty row. Enter a global reference and the step data as a global value. Select “Yes” for “Has Expression” if the global value includes a C# expression. 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 (such as the one below) and convert it to Base64 for 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 (parallel or serial). Provide the global reference for the dynamic step’s data value. Click the Save button. Note: Click the "AI Predict" button to have the Copilot add new process steps that match your process description.

- The “Logging” configuration is necessary for documentation and also measures workflow progress and 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 execute it. Render the process instance. Click the process step to view its properties. The step dynamically creates serial or parallel steps based on the schema at runtime.

Definition Sample:
You may download the sample definition(s) from the link provided and later import them (drag-and-drop) into 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 the import. Then, save the definition to confirm the changes.
Click here to download the sample file.