Skip to content

Execute Service Call#

This task executes a MES service call. It enables the connect IoT module to interact with MES Services.

Execute Service Call task parameters

Note

The image of the task is an example using the MES DeleteLicense service. If no service is selected the task will have no inputs or outputs, except for Activate, Success and Error.

Details#

Fields Details
Scope Connect IoT
Data Platform
Enterprise Integration
Factory Automation
Workflow Data flow
Control flow
IsProtocol flag

Inputs#

Name Data Type Description
<custom list> <custom> Inputs for the service
Activate any Executes the configured MES service

Outputs#

Name Data Type Description
<custom list> <custom> Outputs of the service
Success Boolean If there was no problem emits a true
Error Error Error that occurred during the processing of this task

Settings#

On the General Tab, the usual settings such as Name, description and color.

And the following retries settings:

Setting Data Type Default Description
Number of Retries integer 30 The maximum number of attempts the IoT process (client) makes to call the MES backend if the connection or execution fails.
Sleep Time between retries (ms) integer 1000 Number of milliseconds to wait between retries. It only applies when the previous call fails
Number of System Retries integer 10 The maximum number of attempts the MES backend makes to call the target service if the execution fails.

Multiplicative Retry Effect

Retry limits are cumulative. In the event of a persistent target service failure, the total number of requests generated will be the product of the Client Retries (N) and the Backend Retries (M). For example, if both are set to 10, a single IoT request could result in up to 100 total attempts (N x M), which may lead to system congestion or high latency.

Execute Service Call task settings

On the Service Tab, you have a listing of all the available MES services.

Screenshot showing settings for executing a service call.

On the Inputs Tab, you have the inputs referring to the selected service (automatically loaded):

Name Data Type Default Description
Name String <Filled by the Service> Name of MES service input.
Friendly Name String <Filled by the Service> Name to be displayed.
Type Long
Decimal
DateTime
Boolean
String
Integer
<Filled by the Service> Type of the MES service input.
Collection Type None
Array
Map
<Filled by the Service>
Default <custom type> Default Value for the MES service input

On the Outputs Tab, you have the outputs referring to the selected service:

Name Data Type Default Description
Name String <Filled by the Service> Name of MES service output.
Friendly Name ``String <Filled by the Service> Name to be displayed.
Type Long
Decimal
DateTime
Boolean
String
Integer
<Filled by the Service> The type of the output
Collection Type None
Array
Map
<Filled by the Service>

Behavior#

The task executes a MES service given a set of input values. It instantiates a MES input object, calls the service, and transforms the MES output objects into individual output variables.

Remarks#

Make sure the MES objects linked with the inputs are fully loaded, otherwise, the Service call may fail. If the objects are not loaded and to avoid making multiple calls to MES to get the objects fully loaded, you can add Pre actions to the service and load them inside MES system and therefor, make the calls much more efficient.