Validate expressions at design time


Architect helps flow authors troubleshoot expression building at design time. If an error occurs while building an expression, a validation error message appears at the bottom of the Edit Audio Sequence dialog box, or in the expression action’s configuration area.

Find details about error messages

When an expression contains an error, Architect returns a message below the editor. To view details about the error, click the message and notice the following features:

  1. If the error contains a function name (for example, MakeDuration), then the function name appears in blue. Click it to open the Expression Help dialog box on the specified function's focus.
  2. The remainder of the error message appears in red. Click it to focus on the expression editor and scroll the input caret to the error location.

Additionally, flow authors can use the Expression Help to see parameter restrictions, such as min/max, whether a literal is required, if NOT_SET is allowed or not. Access this help by clicking the F() button on the Edit Expression dialog box.

Example: Currency code

In the following example, a flow author uses a literal for the currency code and the parser validates the code at design time.

MakeCurrency(5.25, "USD123")

When Architect validates this value at design time, it returns a message informing the flow author that the literal “USD123” supplied to the currencyCode parameter is not a supported ISO4217 currency code. These parameters are available in the Expression Help.

By including “USD” but removing “123” in the expression above, the author ensures the currency code parameter is a valid ISO 4217 code:

MakeCurrency(5.25, "USD")
 Note: In this example, the validation is performed on literal parameter values. If a flow author enters:
MakeCurrency(Flow.MyDecimal, "USD")

The parser only validates that the value specified for the amount parameter (the first one) is a decimal type value.

Example: Maximum year allowed

In this example, a flow author attempts to create a date time with year of 2500.

MakeDateTime(2500, 1, 1, 0, 0, 0)

Architect validates the error at design time, and returns an error message. As specified in the Expression Help for MakeDateTime, the value of 2500 supplied to the year parameter is greater than the maximum allowed of 2200.