cancel
Showing results for 
Search instead for 
Did you mean: 

Receiver determination issue

Former Member
0 Kudos

Hi all,

We are developing an interface which is supposed to receive an idoc and map it into a file and then send it to two legacy systems. We have added the two bussines systems in the receiver determination and we have created one comunication channels for each one.

When the idoc arrives the two files are created, but some data of the idocs is lost: for each segment data in the idoc one row in the file should be created. But when we send an idoc with several data segments only one row is created in each file. Although by monitoring (tx SXMB_MONI) we can check that all the idoc's payload has arrived completly to XI.

Thank you.

Regards.

Celia

Accepted Solutions (1)

Accepted Solutions (1)

Former Member
0 Kudos

Thank you all for so many answers. I'll try to explain it more.

What we want to do is get information from one idoc and send it to several systems by file adapters (now we have implemented it only for two systems in developing time, but there will be about 150 systems). The information for all systems, the content of the files I mean, is the same for all systems, so we'd like to create only one data type, message type, message interface, message mapping and interface mapping. And then one communication channel, one receiver agreement and one interface determination for each system, but all of then using the same message interface and interface mapping. When we do that is the problem.

Now we've tried to create different data types, message types, message interfaces and message mappings for each system and it works fine. But it would be very hard to support it, because we'd have to develop so many objects and very often the number of systems will grow.

Former Member
0 Kudos

mmmm.... I agree that is quite strange.... because this really shouldn't effect your output...

You should be able to use the same mappings etc in multiple scenarios...

so as i understand you should have one sender agreement with one sender comm channel.

Then you should have your receiver determination = 1 which specifies n receivers and then in the interface determination you specify exactly the same inbound interface and interface mapping for each receiver.

Finally you should have n receiver agreements with relevant comm channels...

is this the setup you have? If so then this should work... so we will help you find the problem....

As you correctly stated maintaining this is a nightmare plus once you go to production instead of simply adding a business system you would have to develop everything again in the Design... which is not good...

Please let us know

Message was edited by:

Alex Ong

Former Member
0 Kudos

Hi,

Why dont you try to develop the scenario with the dynamic configuration in communication channel see the below link. Also the receiver can be taken from table with DB lookup use these options .

/people/venkataramanan.parameswaran/blog/2006/03/17/illustration-of-enhanced-receiver-determination--sp16

I have already done this type of task.

Regards

Chilla

Former Member
0 Kudos

Hi Alex,

<i>is this the setup you have? If so then this should work... so we will help you find the problem....</i>

Yes, we have exactly this setup. It seems that the nightmare has already began....

Answers (6)

Answers (6)

Former Member
0 Kudos

It´s really surprising but when we changed the procesing parameters of the communication channels the problem has gone out!!! We have choosed "Create" for "File construction mode" and "Binary" to "File Type" and now it works correctly.

Former Member
0 Kudos

Celia,

Congratulations... I'm not sure why that has worked now but if you have any extra insight then please let me know

I am interested

Former Member
0 Kudos

HI,

If you want to have multiple rows in a file then the target structure should be under one root node .

root --- 0..unbound

field1

field2

Else if you want multiple files

message --- .00.unbound -- this in message tab in target side change the occur

root -- 0..1

field1

field2

Regards

Chilla

sridharreddy_kondam
Active Contributor
0 Kudos

Hi Celia,

Check the occurences of the source and target one for the segment level..

Is it 0.. unbounded ... if not try changing it at node level

Regards,

sridhar

Former Member
0 Kudos

HI,

as per my understanding.

You have one idoc with multiple segments-- each segment youwant generate a fle.so if you have two segments then you need to have two files and those two files sends to two Business systems. is it correct?

-- in this case

Use Interface mapping in determination.

see the below link

http://help.sap.com/saphelp_nw2004s/helpdata/en/42/ed364cf8593eebe10000000a1553f7/content.htm

http://help.sap.com/saphelp_nw2004s/helpdata/en/42/f3b31d48fb1bc8e10000000a11466f/content.htm

http://help.sap.com/saphelp_nw2004s/helpdata/en/21/6faf35c2d74295a3cb97f6f3ccf43c/content.htm

Also see the below link

Idoc - Multiple - interfaces -

Multiple mappings into one Im -

Regards

Chilla

Former Member
0 Kudos

Celia,

Are you using content conversion?

Also could you check your comm channels on the RWB and let us know if there is any error.... or what the message is in there...

Really it shouldn't be an issue whether you use one receiver or ten receivers... each receiver has its own interface determintation etc...

null

Former Member
0 Kudos

Hi Celia -

If both files arrive at the intended receiver systems, albeit with the wrong content, it's probably a mapping issue rather than a receiver determination issue. Please re-evaluate that your mapping produces the desired target files. You can use the IDOC-XML payload that arrives into XI and use it in a local test of your mapping within the IR (test tab).

Regards,

Jin

Former Member
0 Kudos

Thank you for your answer Jin, but the mapping is ok, because if we delete one of the systems it works fine, writing all the expected data in the unique file.

Former Member
0 Kudos

Hi Celia,

are you using 2 mappings for 2 files or only one mapping is called for both of them..

<i>if we delete one of the systems it works fine, writing all the expected data in the unique file</i> - if 2 mappings are there, just check the mapping of other system as what output is generated in msg mapping test tab by using idoc payload from SXMB_MONI.......see the target struc cardinality also.....it should be 0..unbounded

check both mappings.........if mappings are producing multiple line items in target, then in target file you will get multiple line items.........

also for check, see everything in IR is activated and ID recver detmination is calling the correct interface mapping which in IR is calling correct msg mapping of your scenario.....

Thanks,

Rajeev Gupta

Message was edited by:

RAJEEV GUPTA