Automation
Overview
The Automation feature in Informat provides a graphical programming environment that implements program logic through combinations of Automation Steps. A program is a set of operable work steps designed to achieve a specific goal. In Automation, program functionality is implemented through variables, flow control, and automation steps. A typical automation program is as follows:
The usage scenario for automation is that the caller of automation passes parameters to the automation program, which executes specific actions and returns the results to the caller.
Automation Execution Instructions
A single user calling automation is synchronously blocked. Only after the previous automation call completes its execution will the next automation run.
Terminate Automation Execution
If the automation execution takes too long to complete or a logical deadlock occurs, you can terminate the automation execution through the application's Running Status monitoring function.
Input Parameters
Multiple input parameters can be passed when calling automation. Different types of parameters can be customized according to the context, and parameter names support customization.
Parameter Description
The type selected for automation parameters only affects the prompts when referencing them using expressions in automation. The automation does not verify the type of incoming parameters during runtime.
Variables
Variables have a unique identifier and type. In Automation, variables can be input parameters or set through the Set Variable step. All variables can be referenced in automation expressions. Variables have a scope. Variables outside the scope are not visible, and undefined variables cannot be referenced in expressions.
Flow Control
Conditional Judgmentstep controls the flow of the automation program through an expression. The conditional expression needs to return a boolean value.List Loopstep accepts an expression as the loop collection. For each list item in the loop collection, it will sequentially execute the sub-steps of theList Loop.Terminate Executionstep immediately ends the execution of automation and rolls back all transactions after the last blocking step.Jump to Stepjumps to the specified step for execution.Call Automationcalls another automation program and returns the result.Call Scriptcalls a script and returns the result.Set Automation Return Valuestep accepts an expression as the return value of the automation. This step can be called multiple times, and later calls will overwrite the results of previous calls. The return value of automation can be used as the calling result for the caller.
Expressions
Informat uses UEL syntax expressions. For more information about expressions, please refer to the description in the Expressions section.
Automation Steps
In automation, you can use the Automation Steps in the table below to implement program functions. Automation steps are divided into two parts: Settings and Return Values. A typical automation step is as follows:
For each automation step, you can configure parameters through the options in Settings. If the Automation Step has a return value, after the step runs, the variable will be written to the automation runtime context. Subsequent steps can access this variable according to the set return value identifier.
Interactive Execution
Automation programs can insert steps that require user interaction. This type of step is called an Interactive Step. When the automation program executes to an Interactive Step, it saves the execution variables, notifies the user to perform interactive processing, such as filling in form data. After the user submits, the automation program restores the execution variables and continues execution from the Interactive Step.
Interactive execution of automation programs allows developers to write business processes more conveniently. All interface interaction type automation steps during execution are interactive.
Performance Tips
When executing interactive steps, the system temporarily saves all variables. If there are many variables, this will be a very time-consuming process. In this case, it is recommended to set unnecessary variables to null through the Set Variable method before executing interactive steps to improve performance.
Limitations
During automation operation, each step run will increment the Step Run Count. When the Step Run Count exceeds 1000000, the system will terminate the automation execution and throw an exception. The maximum value of Step Run Count can be modified in System Settings.
If there are calls to other automations in the automation, the Step Run Count will also be accumulated.
If you need to execute a large number of loops or other operations in automation, it is recommended to modify this part to run using Code Snippets.
Calling via HTTP
After enabling HTTP calling, the automation program allows calls using HTTP requests. The calling address is as follows:
https://{host}/web${cluster}/automatic/${appId}/${automaticId}?args=${args}${host}is the deployment address of the service${cluster}is the deployed cluster ID, which is0for single-node deployment${appId}is the ID of the application (not the identifier)${automaticId}is the identifier of the automation${args}are the request parameters. The parameters passed to automation are an array in JSON format
When the call is successful, the returned content is the return value of the automation execution, and the return value will be returned according to the format configured by the automation.
Notes
Automation called via HTTP cannot contain steps related to interactive output.
Request Example
Assume that the application "Automation Interface" (i1mwqy35y88hl) on the next.informat.cn service has an automation identifier of httpInvoke and the request parameters are ["a1",2,{"a":1,"b":2}]
Request Parameters
- When passing parameters after the URL address, the JSON args parameters need to be encoded again.
- When passing via post body, only JSON format is required.
- GET Request Method
- POST Request Method

