Skip to Content
Author's profile photo Ruchir Batra

Showcase a Feature SAP PCo – Multiple Call Destination System

Showcase a Feature SAP PCo – Multiple Call Destination System

Connectivity Integration


Showcased Example Tested via SAP PCo 15.1 (, SAP MII 15.1 SP6, Kepware v6.1




This document showcases the new capability of Plant Connectivity – Multiple Call Destination System.

The document takes us step by step showing how to use the Plant Connectivity Multiple Call Destination System to connect to Kepware and MII for our showcase.


Author: Ruchir Batra

Created On: 09 March 2018


Table of Content


Introduction to Plant Connectivity Multiple Call Destination System

Setting up an example

Create a Source

Create an Agent Instance

Create a Destination

Create a Notification

Complete Process Flow



Introduction to Plant Connectivity – Multiple Call Destination System 


This feature helps us to configure multiple PCo Destination systems in a configurable sequence within SAP PCo. For this, a new destination system type is added within PCo called Multiple Call Destination system. You can create a sequence in which different destination systems can be called. Additionally, you can add exceptional handling and branching condition in each step.


You can call the following types of destination systems from a multiple call destination system:


  • Data streaming destination system
  • Multiple call destination system
  • OData destination system
  • ODBC destination system
  • OPC UA destination system
  • Query destination system
  • RESTful Web service destination system
  • Web service destination system
  • Universal Web service destination system
  • Simulation destination system


Setting up an example


For our showcase example, we have setup our Source as Kepware which has a Channel called Plant and a device called RotatorArm within it. For the same, we have setup three tags such as DontTurn, TurnLeft, TurnRight which define the device movement. In our example, as soon as DontTurn is turned ON (value is 1, under Notification Type OnTrue), we make the TurnLeft and TurnRight OFF (value to 0). Also, we push the constant value (say last displacement value for our use case ahead) to SAP MII via web service call.

In multiple call destination, we first make TagStore call which passes the value 0 to Kepware Tags TurnLeft and TurnRight. Then, we define a branching condition to check for condition if TurnLeft value is greater than 7. If true, execution goes to step 20 else to step 30. In each case, MII transaction is called and constant is passed to it.


Create a Source

Assuming how to create Source (Kepware – OPC DA Source) is known by everyone, we just highlight it and don’t go into its details.


Create an Agent Instance

Assuming how to create an Agent Instance is known by everyone, we just highlight it and don’t go into its details.

Agent Instance called KepIns (Kepware Instance) is created and subscription Items are added as below.


Create a Destination

For our showcase, we created four destination systems.

First one is Query Destination System called TagStore. We define the Agent Instance to it and write back tag values to Kepware Tags (TurnLeft, TurnRight) via this.


Second and Third Destination Type are Web Service Destination System. Through these, we send constant value back to SAP MII for further processing as per the use case. Intention of using two different destinations is to showcase that based on branching condition call in SAP PCo, different destinations can be called. Hence, two different destination type /different services are created.


Web Service Destination System WSCall and WSCall2 are created. WSDL URL and Basic Authentication is set. Later, Create Request Message is setup and Service is tested.


At last, the Multiple Call Destination System (MCall) is setup. In first step, step 10, TagStore destination is setup. The assignment is done for Tags (TurnLeft, TurnRight). In next steps 20 and 30, we add WSCall and WSCall2 destination system to it (and assign input variables to it).


Destination Call Setup

Variables/Calculation section


We assign the constant value of 2 to output variable outVar1 and constant value of 5 to temporary variable tempVar1. These are then mapped to WSCall and WSCall2 respectively.


Create a Notification

For our showcase, we created a Tag Based Notification- TurnNotif with Trigger Expression as ‘DontTurn’ and output as TurnLeft and TurnRight. In destination, we attach MCall and map the inputs.



Complete Process Flow


Once the complete setup is done, Agent Instance is started. We check the Tags for its status.

Next, we make the DontTurn value to be True (value to be 1) which triggers the notification.

As seen, the TagStore destination workflow is executed with TurnLeft and TurnRight tag values turning false (value to 0). Also, the branching condition logic gets executed and since the TurnLeft value was set to 0 in Notification output, (which is less than 7; branching condition), step 30 gets executed instead of step 20. The WSCall2 gets executed and it passes the value 5 to MII (which is stored in shared memory variable and shown below).

To test the branching conditional logic further, we change the condition in step 10 to be as below,

Upon testing it further (change the DontTurn to be 0 and then 1 again), we see that output is constant 2.


The above steps and process flow shows us how we can make use of new capability SAP PCo – Multiple Call Destination System.

Update: With SAP PCo 15.2, Suspend/Resume function and Jump Target functionality is also added within it.

Assigned Tags

      You must be Logged on to comment or reply to a post.
      Author's profile photo Aravinth Anandhan
      Aravinth Anandhan

      Thanks Ruchir Batra for sharing, this info is very useful

      Author's profile photo Ruchir Batra
      Ruchir Batra
      Blog Post Author

      Welcome Aravinth ..

      Author's profile photo Ravi Pandey
      Ravi Pandey


      Nice blog, Ruchir 🙂

      Author's profile photo Ruchir Batra
      Ruchir Batra
      Blog Post Author

      Thanks Ravi 🙂