HomeGuidesRecipesAPI
HomeGuidesAPILog In

Run Action Button

🚧

Run Action Button

Contact your sales representative if you are interested in obtaining a license for the Run Action Button Module for your SmartIQ instance.

Run Action Button provides a very simple button interface that can be included on forms and dashboards, that triggers one or more SmartIQ Actions when clicked. This is useful in a range of situations where Actions are needed before a form is submitted, or for dashboards that do not even allow submission.

For example, you might use a Run Action Button to trigger an Email Action to send an email on demand with the click of a button, or to execute an update to a back-end data system such as SQL Server or Dynamics 365. You can even add multiple Actions in a sequence to trigger many events from a single button click.

As with Actions run on form submission, values can be passed in as parameters and also returned as outputs. These output values can then be used by subsequent Actions or referenced by the form itself.

The Run Action Button can be used to trigger any built-in or custom Action, except those that rely on returning their own user interface as those will only render on the Finish page after submission of a form. See below for details on which built-in Actions are supported by the Run Action Button question type.

Usage

The Run Action Button question acts like a container for one or more Actions, much like the Finish page. To add to your project, simply drag the Run Action Button question onto the form or dashboard via the questions palette.

87

Once you've dragged the question onto your form, configure the following properties in the Question Properties pane:

PropertyDescription
Button TextEnter text to display on the button itself to end users.
Class NameLeave blank for default button styling, or add CSS class names. Example styles available include 'btn-info', 'btn-warning' and 'btn-danger'.
Form ValidationTick to enforce form validation before executing actions. This may be important to ensure values entered in the form that might be used as input parameters on Actions are valid.

Default is unchecked. Note: validation will apply to any question or page that appears before the Run Action Button question, so that future unseen questions do not incorrectly appear invalid.
StyleIf required, select a named style from the drop-down list.
403

In order to associate an Action with the Run Action Button, drag any required Actions from the Actions panel and drop them onto the Run Action Button question, in a similar way to adding Actions to the Finish page. Actions will be executed in order, from the first to last in the list associated with the Run Action Button.

Once associated, each Action may expose its own Action Properties that need to be configured. Refer to the desired Action's documentation for further information on specific properties. For example, if you add the Send Email Action, you will need to add properties to specify the email recipient, subject and body.

301

Once you've added any required Actions to the Run Action Button, save your changes in Design and then test in Produce.

Supported Actions

The Run Action Button will work with Actions that operate completely in the background, with no user interface. Most built-in actions operate in this way and are supported, however there are some that will not work.

Any third party or custom Actions must also work without providing a user interface in order to work with the Run Action Button.

The following built-in Actions are supported:

  • Add Message to Management Console
  • Copy Project Results to SQL
  • Form Summary
  • SmartIQ User
  • PDF Stitch
  • Post to Webhook
  • Print
  • Push Notification
  • Save to Disk
  • Save to Oracle Database
  • Save to SQL Server Database
  • Send Email
  • Send to REST Service
  • Set Project Property

There are only two built-in Actions that are not supported by Run Action Button: Display Message, and Redirect. Both of these actions rely on a user interface that can only render on form submission.

References

The best way to reference a Run Action Button output is <Question.Action.Output>

[q1.Save to Disk.Output Folder]

You can also reference the result of a Run Action Button. The result of a Run Action Button is the cumulative result of the nested actions. The return types are:

  • Success
  • Fail
  • NotRun

For more information about action result types, refer to this page.

[q1.result]

You can also reference the result of an individual action result

[q1.Save Copy.result]

Mobile apps

A Run Action Button is supported on the mobile apps, however it can only be used in online mode. If the app is in offline mode, the Run Action Button will be disabled.
Any action that modifies the Wizard object will not work on the mobile apps. As actions are run server side, SmartIQ only passes back the result and the action outputs.

Examples

Identity Verification

It may be necessary to call out to an external verification service, passing in values entered in the form. One such use case might be a 100-point identity verification check, where the user is required to enter information from identity documents such as passport, driver license and others. In many circumstances this type of verification service costs per verification and so just using a data source question to call to a REST service is not suitable, as it may execute more times than anticipated increasing the cost. A manually triggered verification button is also useful to manage user experience when performance can be a factor in receiving a response from the service.

In this case, a Run Action Button can be used to manually trigger verification once the user is satisfied they have correctly entered all their details. The button may trigger a REST Action to call out to the verification system and get back a result, and then also run a Set Project Property Action to update a project property with the result. This property can then be used by project logic to change the user's view, such as to hide the verification button and allow them to continue in the form.

683