Skip to Content

This document explains how to integrate multiple interfaces with same Interface configuration by using Operations in Message Interface.

SAP PI7.1 has enabled us to reuse the same Service Interface for “n” different structures. Each service could be independent of the others in terms of Operation Patterns, mode of execution (Asynchronous, Synchronous), and the included messages. However the services are bounded together by the same Category (Abstract, Inbound, Outbound) and Interface Pattern. When ever the interface is executed it dynamically executes the respective interface through the incoming Message structure defined in Operations.

This example scenario is connecting SAP system through a HTTP protocol.

It sends multiple messages; each message should be configured as unique interfaces in PI.

I Repository Objects

Sender Service Interface

  • Create only one Sender Interface.
  • Select as many operations according to how many interfaces we need.
  • Include the Message types/Idoc types in each operations.

/wp-content/uploads/2013/02/file1_182575.jpg

Receiver Service Interface

  • Connected to SAP systems as IDOC’s. Hence no explicit Receiver Interfaces defined.
  • We can create Receiver Service Interfaces according to requirements.

Message Mapping

  • Create Message mappings as necessary.

Operation Mapping

  • Create the Operational Mapping as below specifying the different Operation and Message formats.
  1. XML Stock Level Reporting

/wp-content/uploads/2013/02/file1_182575.jpg

2. OBDLV Confirm

/wp-content/uploads/2013/02/file1_182575.jpg

  1. II. Configuration Objects.

Sender Agreement

  • Create one Sender Agreement with the Interface as below

 

/wp-content/uploads/2013/02/file1_182575.jpg

Receiver Determination

  • Specify all the outbound interfaces and associate respective objects in single Receiver Determination which varies for each operations. As each operation is a single interface it is routed to all respective outbound interfaces and associated objects.

/wp-content/uploads/2013/02/file1_182575.jpg

Interface Determination

  • Associate the respective mapping and outbound interfaces for respective Operations.

File 6.jpg

Testing

  • When we post multiple messages on the same Sender interface – it is associated with its respective message structure and sent to corresponding outbound interfaces.

/wp-content/uploads/2013/02/file1_182575.jpg

Example Input XML

/wp-content/uploads/2013/02/file1_182575.jpg

Example Output XML

/wp-content/uploads/2013/02/file1_182575.jpg

To report this post you need to login first.

11 Comments

You must be Logged on to comment or reply to a post.

  1. Former Member

    Hi,

    Thanks for your intention to share the info, but the images are of mediocre,unable to follow..would be better if you can replace them with better ones..

    Rgds

    Rajesh

    (0) 
      1. Former Member Post author

        Hi Rajesh,

        I have uploaded new images.If in case, you are not able to view the image. I request you to double click the images. Please check and let me know. Thanks.

        Regards,

        Hari Suseelan

        (0) 
    1. Claus Fonager Gosmer

      Hi Rajesh !

      Thanks for the information ๐Ÿ™‚

      BUT one thing I can’t figure out, is how PI at runtime determines the outbound interface.

      In e.g. SOAP the operation is part of the protocol, but this doesn’t apply to all protocols.

      Lets say we have a file sender channel, with multiple operations configured . PI basically picks up an unknown XML document, and has to determine which outbound interface the document belongs to.   How is that done ?  By trying to match against the XSD of the all the possible messagetypes, or ???

      / Claus

      (0) 
  2. Claus Fonager Gosmer

    Hi !

    … sorry for the double-post.  I accidentally replied to Rajesh, instead of the original author.

    Thanks for the information ๐Ÿ™‚

    BUT one thing I can’t figure out, is how PI at runtime determines the outbound interface.

    In e.g. SOAP the operation is part of the protocol, but this doesn’t apply to all protocols.

    Lets say we have a file sender channel, with multiple operations configured . PI basically picks up an unknown XML document, and has to determine which outbound interface the document belongs to.   How is that done ?  By trying to match against the XSD of the all the possible messagetypes, or ???

    / Claus

    (0) 
    1. Former Member Post author

      Hi Claus.

      It dynamically matches the header/root tag of the xml/xsd incoming message and route it to the respective operations.

      Also all the source messages defined in the operations should be unique.

      Regards,

      Hari Suseelan

      (0) 
  3. Former Member

    Hi,

    Thanks for the blog, I am facing the same issue which can resolve by above post. But Operation specific receiver determination is not working in my server version 7.1 only.

    Regards,

    Manigandan

    (0) 

Leave a Reply