Skip to Content
0

Xpath condation

May 04, 2017 at 06:28 PM

145

avatar image

Hello Expert

I am creating a interface FILE ---> IDOC(ORDERSP)...

Requirement : In file Structure there is filed : ID . Based on Id value we will create the IDoc two different vendor .

Ex : Suppose If Field Id = 10 than we will create IDOC for 1010 vendor and if Id = 20 than we will create idoc for 1020 vendor . .

Please help me how we i can use the xpath condition for this requirement .

Regards

P.Singh

10 |10000 characters needed characters left characters exceeded
* Please Login or Register to Answer, Follow or Comment.

7 Answers

Mark Dihiansan May 05, 2017 at 03:55 AM
1

Hi,

Create the two business systems (vendor1 and vendor2) first. Then in the xpath condition editor, navigate to the xpath field, use = sign and then on the right part of the equation input 10 then click OK. Then input vendor1 as the receiver.

Do the same for vendor2 except the value should be 20.

Regards,

Mark

Share
10 |10000 characters needed characters left characters exceeded
Mark Dihiansan May 08, 2017 at 02:28 AM
1

Hi Pankaj,

Well in that case, just input the same interface in interface determination and provide the conditions. It will be split depending on the contents of the idoc.

Regards,

Mark

Share
10 |10000 characters needed characters left characters exceeded
pankaj yadav May 05, 2017 at 09:19 PM
0

Hi Marik

Thanks for update .

We can not crate two different business system .I have one business system like ECQ300 , and this system has so many vendor .So as per my requirement we will crate two idoc tow different vendor .

Share
10 |10000 characters needed characters left characters exceeded
pankaj yadav May 08, 2017 at 06:56 PM
0

HI Mark Dihiansan

No , this solution is not working , because business component is one so we have able only one communication channel . I am filling the control record via communication channel . So We need to two communication channel.

Regards
P .Singh

Show 1 Share
10 |10000 characters needed characters left characters exceeded

Hi Pankaj,

Not sure why you said this is not working. If you input two interfaces in the same interface determination, it will split into two (depending on the conditions), no need to create another communication channel since you will use the same receiver agreement.

Regards,

Mark

0
Evgeniy Kolmakov May 08, 2017 at 07:48 PM
0

Hi Pankaj!

Then you should enable using control record in your adapter and set required values of control record in your message mapping.

Regards, Evgeniy.

Share
10 |10000 characters needed characters left characters exceeded
pankaj yadav May 08, 2017 at 08:31 PM
0

HI Evgeniy

Can we pass more than one control record in message mapping ?

Regards

P.Singh

Show 1 Share
10 |10000 characters needed characters left characters exceeded

Hi Pankaj!

Each of your IDocs in target message has its own EDI_DC40 segment (IDoc control record), so you can use conditional logic in your message mapping to set required values for each of your IDocs.

Regards, Evgeniy.

0
avatar image
Former Member May 09, 2017 at 09:18 AM
0

What do you mean by more than one control record. For one IDOC, there will be only one EDI_DC40.

Use if else in the mapping to set required data in the MM. I believe you need to send idoc in only one vendor at a time like eithe 200 or 300.

Thanks,

Apu

Share
10 |10000 characters needed characters left characters exceeded