Show TOC

Procedure documentationDefining Extended (Dynamic) Receiver Determination Locate this document in the navigation structure

 

You can define that the receiver of a message is determined dynamically at runtime by a mapping program. Instead of creating the receivers in the receiver determination manually, you assign a mapping to the receiver determination and this returns a list of receivers at runtime.

A typical usage case is if you do not yet know the names of the receivers at configuration time. In this case, you can define a mapping program, for example, which reads a list of receivers from a table or from the payload of the message at runtime.

In the standard case (manual entry of receiver), you can of course also formulate conditions that relate to the content of the message. However, you have to specify the names of the receivers to which the message is sent under the formulated condition explicitly in the receiver determination. If you define that the receiver of the message is to be determined dynamically at runtime by a mapping program, you do not need to commit to any specific receiver names at this stage.

During the definition of the interface mapping, you assign the abstract service interface ReceiverDetermination as the target interface. The service interface ReceiverDetermination is in the Enterprise Services Repository in the software component SAP BASIS (namespace http://sap.com/xi/XI/System).

The service interface uses the message type Receivers and the data type Receivers. The data type Receivers describes a list of receivers and has the following structure:

The following instance of the data type Receivers contains two receivers. The first receiver comprises a party (element Party) and communication component (element Service) and is identified by a DUNS number; the second receiver comprises a communication component without a party.

Syntax Syntax

  1. <Receivers>
  2.    <Receiver
  3.       <Party agency="016" scheme="DUNS">123456789</Party>
  4.       <Service>MyService</Service>
  5.    </Receiver>
  6.    <Receiver>
  7.       <Party agency="http://sap.com/xi/XI" scheme="XIParty"></Party>
  8.       <Service>ABC_200</Service>
  9.    </Receiver>
  10. </Receivers>
End of the code.

You can specify party and communication component for each receiver.

Prerequisites

You have executed the following activities in the ES Repository:

  • You have defined an operation mapping and assigned the service interface ReceiverDetermination as the target interface (see above).

  • You have defined the message mapping or mapping program that is to determine the receivers at runtime. You have assigned this message mapping or mapping program to the operation mapping specified above.

Procedure

Perform the following steps in the Integration Directory:

  1. Create a receiver determination and choose the Extended option (radio button).

  2. Enter the outbound interface of the operation mapping from step 1 in the key of the receiver determination as the outbound interface (see prerequisites).

  3. Assign this operation mapping to the receiver determination.