cancel
Showing results for 
Search instead for 
Did you mean: 

Sending file to receiver based on condition

Former Member
0 Kudos

Dear All ,

I have a scenario where i am sending Same customer master to 5 rceivers.

This  is a proxy to file scenario.Payload is as below . one payload contains more then 1 line item (Customer Data node)

One receiver wants that only records in which value of field KNA1_WINOMKAR is equal to 1 0r 2 should be sent only. No other customer data should be sent .

i have used condition in receiver determintaion for this but this condition is working only if payload contains one record. for More then one payload this condition is not working. condition   ((/p1:CustomerMaster/CustomerData[(KNA1_WINOMKAR="1" or KNA1_WINOMKAR="2")]) EX )

My requirement is say if 10 records are there in payload and only 8 records contains this condtition and 2 not . So only 8 records should be sent to reciver .

while my current codition is sending all 10 records.

Please suggest how to achieve this????

<?xml version="1.0" encoding="UTF-8"?>

<ns0:CustomerMaster xmlns:prx="urn:sap.com:proxy:E10:/1SAI/TASF7DF59DE84CAA912F937:702" xmlns:ns0="http://pidilite.com/IF000/Generic/C_CANONIC">

   <CustomerData>

      <KNA1_KUNNR>0001000090</KNA1_KUNNR>

      <KNA1_NAME1>Customer1 KNA1_NAME1>

      <KNVV_VKORG>1000</KNVV_VKORG>

      <TVKOT_VTEXT>Cust Sales Org.</TVKOT_VTEXT>

      <KNVV_VTWEG>10</KNVV_VTWEG>

      <TVTWT_VTEXT>Direct Sales</TVTWT_VTEXT>

      <KNVV_SPART>10</KNVV_SPART>

      <TSPAT_VTEXT>FV</TSPAT_VTEXT>

      <KNA1_WINOMKAR>3</KNA1_WINOMKAR>

         </CustomerData>

       <CustomerData> 

      <KNA1_KUNNR>0001000090</KNA1_KUNNR>

      <KNA1_NAME1>Customer1 KNA1_NAME1>

      <KNVV_VKORG>1000</KNVV_VKORG>

      <TVKOT_VTEXT>Cust Sales Org.</TVKOT_VTEXT>

      <KNVV_VTWEG>10</KNVV_VTWEG>

      <TVTWT_VTEXT>Direct Sales</TVTWT_VTEXT>

      <KNVV_SPART>10</KNVV_SPART>

      <TSPAT_VTEXT>FV</TSPAT_VTEXT>

      <KNA1_WINOMKAR>2</KNA1_WINOMKAR>

         </CustomerData>

      </ns0:CustomerMaster>

Regards

Sandeep Sharma

Accepted Solutions (1)

Accepted Solutions (1)

gagandeep_batra
Active Contributor
0 Kudos

Hi Mr. Sharma,

As Praveen said you have to define this condition  in Mapping to create the message node for that you can go with Multi-mapping technique.

check the blog:

http://scn.sap.com/people/jin.shin/blog/2006/02/07/multi-mapping-without-bpm--yes-it-s-possible

using this what you can you need to create multiple message according to ur customer requirement.

Regards

Gagan

Former Member
0 Kudos

I created 3 mappings and put conditions on each root node this solved my issue

Answers (1)

Answers (1)

former_member182412
Active Contributor
0 Kudos

Hi Sharma,

You must use the condition in the mapping if the customer is "A" and KNA1_WINOMKAR = 1 or 2 then create the CustomerData root  node then customer will receive only 8 records.

Regards,

Praveen.