cancel
Showing results for 
Search instead for 
Did you mean: 

Enhanced Interface Determination?

Former Member
0 Kudos

Hello!

I have to determine at runtime which interface mapping has to be executed based on the message payload.

In the current implementation we have configured several inbound interfaces in the Interface Determination and use XPath to determine which mapping to execute.

However, now the XPath becomes hard to support as there will be frequent changes of the business data that determines the mapping and overall the logic gets more complicated. Similar to enhanced receiver determination in which you can execute value mapping lookups within a mapping to determine the receiver I'd like to use the same approach to determine which mapping to execute.

According to http://help.sap.com/saphelp_nw04/helpdata/en/42/ed364cf8593eebe10000000a1553f7/frameset.htm

the enhanced Interface Determination functionality is supposed to be used for multi-mappings: "You typically use an enhanced interface determination if the source message has an element with occurrence 0 ... unbounded (for multiple items of a data record) and you want multiple messages (for the individual items) to be generated at runtime."

Has anybody worked with enhanced Interface Determination? Can I also use it to determine in a mapping which interface + interface mapping will be executed at runtime without using multi-mapping?

In my case the interface will always be an ORDERS.ORDERS05 IDoc, I only need to execute a different interface mapping.

If it is not possible to implement my requirements with XI 3.0, will there be any improvements with PI 7.1?

Thanks for your help.

Regards, Tanja

Accepted Solutions (0)

Answers (2)

Answers (2)

Former Member
0 Kudos

Hi Tanja,

Please refer to wiki->SAP Exchange Infrastructure->Step by step guides->Enhanced Receiver Determination.

Ranjeet Singh.

Former Member
0 Kudos

Hello,

Yes we work with enhanced interface determination.

There are two steps

First, maintain Database Table in SAP XI. Which contains several keys like Sender, Receiver, Process and then according to that key combination we perform a JCO call and fetch the values which gives us the correct receiver and interface.

Create a Data Type which will be having Two elements Service And Interface.

Now careate a message type and message interface for this data type. This will be your receiver.

Then use source payload and perform a message mapping between Sender Payload & this Message Mapping.

Use UDF and make a JCO call and fetch table entries for service and interface.

Then in Directory perform extended determination and use this mapping into it. The result will be Service & Interface.

Former Member
0 Kudos

Hello!

In the scenario we are already using enhanced receiver determination and the value mapping API to access the value mapping tables within XI. So there is no need for another database table and a JCo call.

My question is now, can I use enhanced interface determination to determine within a mapping which interface mapping has to be executed (similar to what I have already implemented in enhanced receiver determination to determine the receiver)?

Or can I use the enhanced interface determination only to determine an interface but not the mapping? Then it would be of no use for me as in my scenario the message interface will always be an ORDERS.ORDERS05 IDoc.

Regards, Tanja