Repeated Execution Plug-in

Ops Center Automator Service Builder User Guide

Version
11.0.x
Audience
anonymous
Part Number
MK-99AUT002-18

The Repeated Execution plug-in runs a specific flow repeatedly.

You can run a service with a value specified in the Input Properties (inputProperties) for each iteration of the flow. This is useful, for example, when you want to run the same processing on different servers. Note that the execution methods for a flow include concurrent execution that runs flows in parallel, and sequential execution that runs the next flow when the current flow finishes. In addition, the Repeated Execution Plug-in can have a nested structure, and it is possible to define the nest of Repeated Execution Plug-in up to 3 levels. When used in the combination with the Flow Plug-in, up to 25 levels can be defined together with the Flow Plug-in.

Cautionary notes

  • If the parallel option is specified in the foreachMode property, the value of the properties (service properties, plug-in output properties, variables) referenced or updated in the context of a repeated task are only valid for the same repeated task (the nth flow). Additionally, the value of the property (service property, plug-in output property, variable) cannot be shared with concurrently processed, repeated tasks (except for the nth flow) or shared with the repeated tasks of a lower level.

The following figure shows how the plug-ins in each level reference an output property updated by plug-in Z.


Plug-ins at each level reference an output property updated by plug-in Z.

Restrictions on the number of flows

The maximum number of flows that can be specified for a Repeated Execution Plug-in is set through the inputProperties property and cannot exceed 10,000 per service. Note that the total number of flows does not include the number of flows run in the top-level flow or the flows associated with the Flow Plug-in.

If the number of flows under repetition in the service increases, the response might be delayed, and it might even cause the browser to crash. Therefore, the upper limit is set for the number of flows under repetition in the service.

The flow included in the count is only for the Repeated Execution Plug-in, while the flow for the Flow Plug-in is excluded from the counting target.

Type Counting Target
Flow under Repeated Execution Plug-in Yes
Flow by Flow Plug-in Yes
Other flows No

In the following example, the inputProperties properties of the Repeated Execution Plug-in is set to repeat plug-in N twice, plug-in M twice, and plug-in Z a total of ten times. Thus, the total number of flows is calculated as follows: N+N*M+Z (2+2*2+10) = 16.



The input values and loop index for the Repeated Execution plug-in a nested configuration that derives the input values and loop index values using the following reserved properties:

  • reserved.loop.inputN
  • reserved.loop.indexN
Note: If the Repeated Execution Plug-in is nested, you might encounter browser problems during debugging, in which case, you should reduce the value set for the property " inputProperties " for each Repeated Execution Plug-in, and then repeat the debugging.
Note: Set the property "inputProperties" for each Repeated Execution Plug-in so that the total number of flows does not exceed 10000. The flows for the Flow Plug-in are not included in the number of flows calculation.

Return Codes

The Repeated Execution Plug-in generates the following return codes:

Return Code Description
0 Ended normally.
1 Some of the repeated processing failed.
2 All of the repeated processing failed.
3 The total number of flows under the Repeated Execution Plug-in in the service exceeds the upper limit.
65 The connection with the Ops Center Automator server failed. For example, the Ops Center Automator server might have stopped while the plug-in was being run.
66 The following user is mapped to the Ops Center Automator user:
  • A user who does not belong to the Administrators group.
  • A user other than the built-in Administrator who belongs to the Administrators group, in an environment with UAC enabled.
68 No information about the target job execution ID exists.
69 An environment variable of the task-processing engine cannot be acquired.
80 Task execution has stopped.
81 The plug-in was called in a status that is not valid.
82 The request message from the task-processing engine cannot be correctly parsed.
83 The environment of the Ops Center Automator server is corrupted.
84 Information about the specified plug-in cannot be obtained.
86 The specified property value is not valid.
127 Another error has occurred.

Property list

Following are the properties for the Repeated Execution Plug-in:

Property key Property name Description I/O type
inputProperties R Input Properties

Specifies an input property value for each repetition of the flow, using no more than 1,024 characters. You can specify a different property for each repetition. Use a comma to separate properties. Commas can only be used as delimiting characters. The maximum number of repetitions is 99. You cannot specify 100 or more comma separated values.

Input
outputProperties Output Properties Outputs the value of the output property for the number of repetitions. The total output is 1,024 characters or less. At each repetition, one property value is output separated by a comma in the order specified in the inputProperties property. Use a comma as the delimiting character. Output
outputResult Results The execution result of each flow is output, separated by commas.

true

Output when the flow is run successfully.

false

Output when execution of the flow fails.

Output
foreachMode R Mode Specify the execution method for the repeated flow.
parallel
Repeated flows are run in parallel.

A maximum of 99 flows can be run in parallel. If the maximum is exceeded, the excess flows are run when the number of executing flows falls below the maximum. You can change the number of concurrently executable flows between 1 and 99 using the foreach.max_value key in the properties file (config_user.properties). Even if an error occurs, all the unexecuted flows will be run.

serial
Repeated flows are run sequentially. If an error occurs, unexecuted repeated flows are not run.

The default value is parallel.

Input
R: Required