cancel
Showing results for 
Search instead for 
Did you mean: 

Sender / Receiver on DEBMAS customer IDOCs mapped from XI

Former Member
0 Kudos

Hello XI experts,

I'm hoping you can help me resolve a question.

In our system, customers are maintained in an AFS ERP system. They are then distributed to MDM, via XI, using DEBMDM messages.

We have a second (Retail) ERP system that also needs the customer data. An XI colleague has created a mapping, so that the DEBMDM IDOC from AFS is mapped to DEBMAS and ADRMAS IDOCs, which are sent to AFS.

Functionally this works fine: the customer data from AFS goes to both MDM and retail as expected.

The question is on the IDOCs arriving in Retail. They have the same logical system for the Sender and Receiver, which is the Retail logical system. So it looks like the IDOCs have been created in Retail and then processed, rather than being created in XI. However in XI, in transaction IDX5, we can see IDOC numbers. I'm a developer with no XI experience, so I may be misunderstanding how XI works.

- Does XI actually create an IDOC locally and then send it out?

- Or would XI be calling some kind of RFC in my Retail system to build the IDOC there?

- If the IDOC is built locally, can anyone suggest why I am getting the sending partner to be the same as the receiver?

Even if the sending and receiving systems are set in the XI mapping, the values still get overwritten with the Retail logical system.

Many thanks, Roger

Accepted Solutions (1)

Accepted Solutions (1)

Former Member
0 Kudos

Hi Roger,

you are getting the same sender and rcvr in IDoc control record because,

in XI you have used the same business system name as sender and recvr.

As the normally control record data is populated automatically in IDocs, although we can over write or hard code them as well.

Resolution: a) Use 2 different system names for sender and recver.

OR

b) Go to Integration Directory, there you will find "Header Mapping" in the bottom of the page with some check boxes.

Change either the sender service or receiver service.

to do so, click on the check box, press F4 and a new window will open.

click on extended button and in "constant" column provide the system name that you want to hardcode.

save n activate.. jobe done..

If you have any other issues. please let me know..

n dont forget to award sdn points..:)

Regards

Pushkar

Answers (5)

Answers (5)

roger_sainsbury
Advisor
Advisor
0 Kudos

Well done Pushkar, you've cracked the problem!

On our Receiver Agreements under Header Mapping, we have a Sender Service defined. The services we had used in there were causing the Sender Partner on the IDOCs to be filled with the Retail Logical System. By selecting services that were created for the XI system itself, then we get the logical system of the XI system instead - as required. The services are linked to the Logical Systems somewhere in the SLD I believe.

So that's now fixed - thanks again everyone for the help.

roger_sainsbury
Advisor
Advisor
0 Kudos

Thanks Pushkar, we're going to investigate...

roger_sainsbury
Advisor
Advisor
0 Kudos

Hi guys,

thanks for trying to help us out with this. I passed your comments on to my XI colleague, but unfortunately we're still stuck. I've therefore raised a customer message to try and get a resolution, but if anyone has any further suggestions in the meantime, then feel free to let us know.

cheers, Roger

roger_sainsbury
Advisor
Advisor
0 Kudos

Thanks guys, I'll follow up your suggestions when I'm back in the office on Thursday.

Former Member
0 Kudos

Hi Roger ,

When sender system sends idoc to XI and XI has to send it receiver system then XI converts that idoc to the format which is required by the receiving system using Adapter .In your case your receiver systems needs in idoc format hence after transpforamtionXI IDOC adapter posts the idoc to receiver .

Thanks ,

Suvarna

roger_sainsbury
Advisor
Advisor
0 Kudos

Thanks Suvarna.

I've been looking at SAP help for XI. I can see that we are definitely using the IDOC adaptor (as opposed to the RFC adaptor), because we have outbound messages in IDX5 with IDOC numbers against them. So the IDOCs clearly originate in XI.

What I still don't understand is the Sender and Receiver systems on the Control Record of the created IDOCs. According to SAP help, these should be the same as on the DEBMDM IDOC by default, or they could be changed by a mapping.

<a href="http://help.sap.com/saphelp_nw2004s/helpdata/en/ab/bdb13b00ae793be10000000a11402f/frameset.htm">SAP Help: XI, Fields in the IDOC Control Record</a>

However in our case we continue to get Sender system = Receiver system; even if we have a mapping in place it seems to get ignored. Can anyone suggest what might be causing this?

thanks, Roger

Former Member
0 Kudos

Hi ,

In your receiver idoc communication channel click on the check box . Apply control record values froma payload . With this your mapping for control record will become active .

Thanks ,

Suvarna

bhavesh_kantilal
Active Contributor
0 Kudos

Roger,

In the Receiver IDoc Adapter , 3 options are available.

Apply Cntrol Record Values From payload.



When you select this option, the values of these fields are filledfrom the idoc payload,

+MESCOD

· MESCFT

· TEST

· EXPRSS

· STD

· STDVRS

· STDMES

· SNDSAD

· SNDLAD

· RCVSAD

· RCVLAD

· REFINT

· REFGRP

· REFMES

· STATUS

· DIRECT

· OUTMOD

· CREDAT

· CRETIM+


Take Sender From Payload



Selecting this fills the values for Sender System with values of SNDPRN and SNDPRT.

Take receiver from payload

Receiver Partner Names values are filled from the payload with values of RCVPRN and RCVPRT.

These are the only values from which you can pass the value from payload, rest of the fields are filled by default.

More,

http://help.sap.com/saphelp_nw2004s/helpdata/en/13/95244269625633e10000000a155106/content.htm

Regards

Bhavesh