Simple External Form Process

Last Updated: 07/20/2016 Introduced in Verision: 2.0

External Form step was designed in Decisions to interact with forms using html methods or service calls. External Form step could be found in the Flow Designer in the ToolBox under Forms[Interaction] category. This method can also pass data into external form and retrieve data from the external form.




In this example we are going to set up a simple External Form Process.

Begin with Creating a New Flow in your Designer Folder.


Name the Flow and click Create to proceed to the Flow Designer.


Next, from the Flow Designer start-up window under Flows, Rules, Forms and Reports > Forms[Interaction] category select External Form step. Click Add to add it to our workspace.



This step requires URL of the form it is going to communicate with. We input our form’s url address into Url > Value field.


Mention that our External Form step does not have any outcomes. We need to create at least one outcome for this step. Locate Service Outcomes box under Service Definition and click Add New link.



In the resulting pop-up window we define our Outcome. For this example we will not provide any parameters. We simply give our outcome name and click Ok to save and close this pop-up window.

This outcome name is important because our form needs to know the outcome path Name.



Now we can connect our step to the step of our flow to complete it.


To test our flow click Debug Flow from the top panel of the Flow Designer.

Note that in Decisions version 3.5 and above, you’ll need to click Test Flow to access the Debugger.

3.5 Test Flow Shot


We can see that our external form opens in a new window.


Mention that our form received flowTracking id stepTracking id and CallBackUrl to talk back to our flow. These parameters were sent to our external form in URL. In our external form we use simple javascript code to get these parameters from the URL like following:

 Next, we provide the outcome path in a specially designed textbox and submit the form. This Outcome Path should match the one that we provided for our Outcome Path from the External Form step in the Flow.


When we submit our form we trigger another function in our external form that builds a New URL and redirects us to this URL to resume our Flow and send all data to it from our form. This function is implemented like following:


After we submitted our form our flow continues…

We can check the outcome Data from our External form in the Data tab in our debugger.


The flow diagram shows that the flow was executed with no errors.


Note: This will not work on in crossdomain environment. For example if Portal Base URL in format [machine name]/decisions/Primary and we try to call Form on localhost.

External Form used in this tutorial can be downloaded from here: ExternalFormTest

Additional Resources