cancel
Showing results for 
Search instead for 
Did you mean: 

Mapping between One OB Interface and Two IB Interfaces(IDOC & Proxy)

Pranil1
Participant
0 Kudos

Hello Everyone,

Let me 1st just brief you all about my requirement.

It is Third Party to SAP async scenario.

I am having one outbound interface and two inbound interfaces (i.e. IDOC & Proxy).

Proxy has only one field i.e. Unique ID.

I need to generate an unique ID in PI which will be assigned to control segment field of IDOC and also to the Unique ID field of proxy.

Outbound Interface is 0..unbounded. For each record in it we need to genrate the IDOC and park it in ECC.

at the same time we need to invoke the inbound proxy and send it the PI Unique ID generated to it.

(PI Unique ID will be a concatenation of the StreamTransformationConstants.TIME_SENT and the source field.)

Inbound proxy is also 0..unbounded.

So please advice me. should I go with multi mapping (one MM & one OM) or should I go for separate mappings (2 MM & 2 OM) for IDOC & Proxy?

Regards,

Pranil.

Accepted Solutions (0)

Answers (2)

Answers (2)

prateek
Active Contributor
0 Kudos

If PI is not 7.3, you have to use ccBPM to achieve multimapping. Therefore it is better to go for separate mappings.

Regards,

Prateek Raj Srivastava

Pranil1
Participant
0 Kudos

Thanks Bhaskar & Prateek.

I am using PI 7.1. But I am generating PI unique ID using StreamTransformationConstants.TIME_SENT variable. will it vary if I go for two different mappings or it will remain the same?

I need to map the same generated PI unique ID to both IDOC & Proxy.

Regards,

Pranil.

baskar_gopalakrishnan2
Active Contributor
0 Kudos

>I need to map the same generated PI unique ID to both IDOC & Proxy.

Mapping objects individual is not persistent. If you use two different mappings, you might have to cache somewhere to do the second mapping. you might store it in the database table or backend systems and you can use jdbc lookup or RFC lookup during mapping to find the generated or used message ID for the first can be reused for the second mapping object. Hope that helps. This way you can do seperate mappings.

prateek
Active Contributor
0 Kudos

>>will it vary if I go for two different mappings or it will remain the same?

It may or may not vary. The two mappings will get executed at almost same time, therefore even saving it to some table won't work. You can't make sure that the table is populated before the lookup call is made. You have to design it in a different manner like getting data in source field. Which adapter are you using at source?

Or at last, use BPM.

Regards,

Prateek Raj Srivastava

baskar_gopalakrishnan2
Active Contributor
0 Kudos

What PI version do you use? If your version is 7.1 and below, I would go for seperate mapping. Since idoc is in abap stack, you might not able to achieve multimapping without BPM. This is my two cents. If your version is 7.3, you can go for multimapping.