Receiver Determination conditon issue

Hello All,
I have a scneario where I need to send only Division type A, scenario is IDOC to File
IDOC
Filed1 <J>  
Field1 <A>
Filed1 <C>
</idoc>
When I see in SXMB_MONI I see all the records in the payload in receiver determination (Where the receiver determination condition executed).. And the output file contains Field value J instaed of A.. I mapped IDOC to Row in MM.
AS I understood by using receiver determination condition editor we will eleminate the unnecessary records and foward to MM??
Please give your suggestions.
Thanks
Rajeev

> IDOC
> --
> --
> Filed1 <J>  
> Field1 <A>
> Filed1 <C>
> ..
> ---
> </idoc>
>
> When I see in SXMB_MONI I see all the records in the payload in receiver determination (Where the receiver determination condition executed).. And the output file contains Field value J instaed of A.. I mapped IDOC to Row in MM.
You should filter out the unnecessary records( in your case non-A ones ) via your Message mapping.
>
> AS I understood by using receiver determination condition editor we will eleminate the unnecessary records and foward to MM??
The receiver determination condition helps to decide whether to send the data to receiver based on the incoming data payload field coming in the msg.
Lets say, you have defined a condition in RD as _field1 = A _ , so every msg which contain even a single Field1 as "A" will go to the receiver system.  If there is not even a single "A" for field1, the msg wont go to the receiver system.
Let us know if you still have some doubt about RD condition.
Pooja Pandey
Pooja Pandey

Similar Messages

  • What is the Receiver determination Conditon

    Hi Experts,
    I want to know when we will use receiver determination condition. How it will be where we can mention.

    HI
    Tasks at configuration time.
    The 3 task areas at Configuration time are the Collaboration profile, Logical Routing, and the Collaboration agreement.
    u2022Collaboration Profile u2013 (Objects: Communication Party, Service and Communication Channel)
    u2022Logical Routing u2013 (Objects: Receiver Determination, Interface Determination)
    u2022Collaboration Agreement u2013 (Objects: Sender Agreement, Receiver Agreement)
    In the Collaboration profile we specify which services (Business Service, Business Process or Business System) will participate in a message exchange.  For each we may also specify a communication channel, which represents the technical communication path. (For instance, the adapter type and configuration parameters for the adapter)
    In Logical Routing we determine both who should be receiver of a message and what interface should receive the message.
    In a Collaboration Agreement we define which communication channel to use to process message for particular combination of senders and receivers.
    Receiver Determination:We use a receiver determination to define one or more receivers for a sender and an outbound interface.  The receiver can be a party or a service.  We can also specify that the receiver will be determined at runtime from the message contents.
    A Receiver determination is the final step in establishing a logical routing for a message. It allows the association of an outbound message interface from a sender to 1 or more receivers. A condition can be defined for each receiver that, based on data values in the message itself, will allow/prevent the forwarding of a message to that receiver. Then R.D specifies for the incoming message from a given sender all the potential receivers of that message.
    Simply saying, it defines on or more receivers for a sender and an outbound interface.
    Steps:
    Enter Sender Service.
    Select the Outbound message interface and namespace.
    Enter Description.
    Give the condition and Receiver Service.
    cheers

  • Interface Determination causing issue in Receiver Determination

    Hi
    I am having an issue with interface and receiver determination as follows:
    - Inbound message may be sent to two receivers.
    - Message gets sent to first receiver, fails during interface determination. There are multiple inbound interfaces found based on a set of XPATH conditions. This creates an error 'Inbound interface found more than once for outbound interface '. That is itself is <b>not </b>the issue.
    - Issue is that the message is stopped from going to the other receiver even if there are no issues in the interface determination for that receiver.
    Is there a way to resolve this? Appreciate any help. Thx, Duncan

    Again, thanks for the replies.
    <b>MONI for RD</b>
    - <Trace level="1" type="B" name="CL_XMS_MAIN-CALL_PLSRV_LOCAL">
    - <Trace level="1" type="B" name="CL_RD_PLSRV-ENTER_PLSRV">
      <Trace level="1" type="T">R E C E I V E R - D E T E R M I N A T I O N</Trace>
      <Trace level="1" type="T">Cache Content is up to date</Trace>
      <Trace level="2" type="T">Start without given receiver</Trace>
      <Trace level="2" type="T">Classic Receiver Determination via Rules.</Trace>
      <Trace level="2" type="T">Check conditions for rule line no. 1</Trace>
      <Trace level="3" type="T">...create rule engine</Trace>
      <Trace level="3" type="T">...call rule engine for Condition %CL_SAI_SWF_RULE_ENGINE.MSG_GET(MSG=&_MSG&;NSP=&_NSM&;XPATH="/p2:despatchAdvice")% EX and %CL_SAI_SWF_RULE_ENGINE.MSG_GET(MSG=&_MSG&;NSP=&_NSM&;XPATH="/p2:despatchAdvice/deliveryNote/referenceIdentification")% CE COSTCENTRE or %CL_SAI_SWF_RULE_ENGINE.MSG_GET(MSG=&_MSG&;NSP=&_NSM&;XPATH="/p2:despatchAdvice")% EX and %CL_SAI_SWF_RULE_ENGINE.MSG_GET(MSG=&_MSG&;NSP=&_NSM&;XPATH="/p2:despatchAdvice/deliveryNote/referenceIdentification")% CE INTERPLANT or %CL_SAI_SWF_RULE_ENGINE.MSG_GET(MSG=&_MSG&;NSP=&_NSM&;XPATH="/p2:despatchAdvice")% EX and %CL_SAI_SWF_RULE_ENGINE.MSG_GET(MSG=&_MSG&;NSP=&_NSM&;XPATH="/p2:despatchAdvice/deliveryNote/referenceIdentification")% CE INTERPLANT_ONESTEP or %CL_SAI_SWF_RULE_ENGINE.MSG_GET(MSG=&_MSG&;NSP=&_NSM&;XPATH="/p2:despatchAdvice")% EX and %CL_SAI_SWF_RULE_ENGINE.MSG_GET(MSG=&_MSG&;NSP=&_NSM&;XPATH="/p2:despatchAdvice/deliveryNote/referenceIdentification")% CE INTRAPLANT or %CL_SAI_SWF_RULE_ENGINE.MSG_GET(MSG=&_MSG&;NSP=&_NSM&;XPATH="/p2:despatchAdvice")% EX and %CL_SAI_SWF_RULE_ENGINE.MSG_GET(MSG=&_MSG&;NSP=&_NSM&;XPATH="/p2:despatchAdvice/deliveryNote/referenceIdentification")% CE INTRAPLANT_ONESTEP or %CL_SAI_SWF_RULE_ENGINE.MSG_GET(MSG=&_MSG&;NSP=&_NSM&;XPATH="/p2:receivingAdvice")% EX or %CL_SAI_SWF_RULE_ENGINE.MSG_GET(MSG=&_MSG&;NSP=&_NSM&;XPATH="/p2:inventoryActivityOrInventoryStatus")% EX</Trace>
      <Trace level="2" type="T">......extracting (new) for Extractor: XP /p2:despatchAdvice</Trace>
      <Trace level="2" type="T">......extracting values found: 0</Trace>
      <Trace level="2" type="T">......extracting (new) for Extractor: XP /p2:receivingAdvice</Trace>
      <Trace level="2" type="T">......extracting values found: 1</Trace>
      <Trace level="2" type="T">...valid Receiver with Condition: - GLR430</Trace>
      <Trace level="2" type="T">Check conditions for rule line no. 2</Trace>
      <Trace level="3" type="T">...call rule engine for Condition %CL_SAI_SWF_RULE_ENGINE.MSG_GET(MSG=&_MSG&;NSP=&_NSM&;XPATH="/p2:despatchAdvice")% EX and %CL_SAI_SWF_RULE_ENGINE.MSG_GET(MSG=&_MSG&;NSP=&_NSM&;XPATH="/p2:despatchAdvice/deliveryNote/referenceIdentification")% NE COSTCENTRE and %CL_SAI_SWF_RULE_ENGINE.MSG_GET(MSG=&_MSG&;NSP=&_NSM&;XPATH="/p2:despatchAdvice/deliveryNote/referenceIdentification")% NE INTERPLANT and %CL_SAI_SWF_RULE_ENGINE.MSG_GET(MSG=&_MSG&;NSP=&_NSM&;XPATH="/p2:despatchAdvice/deliveryNote/referenceIdentification")% NE INTERPLANT_ONESTEP and %CL_SAI_SWF_RULE_ENGINE.MSG_GET(MSG=&_MSG&;NSP=&_NSM&;XPATH="/p2:despatchAdvice/deliveryNote/referenceIdentification")% NE INTRAPLANT and %CL_SAI_SWF_RULE_ENGINE.MSG_GET(MSG=&_MSG&;NSP=&_NSM&;XPATH="/p2:despatchAdvice/deliveryNote/referenceIdentification")% NE INTRAPLANT_ONESTEP</Trace>
      <Trace level="2" type="T">...invalid Receiver: P_3PL_XML_ME_ODTH - despatchAdviceToE1EDT20</Trace>
      <Trace level="2" type="T">Check conditions for rule line no. 3</Trace>
      <Trace level="2" type="T">...valid Receiver w/o Condition: P_3PL_XML_ME_ODTH - S_HTTP</Trace>
      <Trace level="2" type="T">No Receiver found behaviour: 0</Trace>
      <Trace level="2" type="T">Number of Receivers:2</Trace>
      </Trace>
      </Trace>
      </Trace>
    Here, you see that both receivers are found.
    <b>MONI for ID</b>
    <Trace level="1" type="B" name="PLSRV_INTERFACE_DETERMINATION" />
    - <!--  ************************************
      -->
      <Trace level="1" type="Timestamp">2007-02-26T20:06:49Z CET Start of pipeline service processing PLSRVID= PLSRV_INTERFACE_DETERMINATION</Trace>
    - <Trace level="1" type="B" name="CL_XMS_MAIN-CALL_PLSRV">
      <Trace level="3" type="T">Calling pipeline service: PLSRV_INTERFACE_DETERMINATION</Trace>
      <Trace level="3" type="T">Reading Pipeline-Service specification...</Trace>
      <Trace level="3" type="T" />
      <Trace level="3" type="T">Pipeline service specification (table SXMSPLSRV)</Trace>
      <Trace level="3" type="T">PLSRVID = PLSRV_INTERFACE_DETERMINATION</Trace>
      <Trace level="3" type="T">PLSRVTYPE =</Trace>
      <Trace level="3" type="T">ADRESSMOD = LOCAL</Trace>
      <Trace level="3" type="T">P_CLASS = CL_ID_PLSRV</Trace>
      <Trace level="3" type="T">P_IFNAME = IF_XMS_PLSRV</Trace>
      <Trace level="3" type="T">P_METHOD = ENTER_PLSRV</Trace>
      <Trace level="3" type="T">FL_LOG =</Trace>
      <Trace level="3" type="T">FL_DUMMY = 0</Trace>
      <Trace level="3" type="T" />
      <Trace level="1" type="B" name="CL_XMS_MAIN-CALL_PLSRV_LOCAL" />
    - <!--  ************************************
      -->
    - <Trace level="1" type="B" name="CL_ID_PLSRV-ENTER_PLSRV">
      <Trace level="1" type="T">I N T E R F A C E - D E T E R M I N A T I O N</Trace>
      <Trace level="1" type="T">Cache Content is up to date</Trace>
      <Trace level="2" type="T">Check conditions for (Inb: Party Srvc If) GLR430 WMMBXY.WMMBID01</Trace>
      <Trace level="3" type="T">...create rule engine</Trace>
      <Trace level="3" type="T">...call rule engine for Condition%CL_SAI_SWF_RULE_ENGINE.MSG_GET(MSG=&_MSG&;NSP=&_NSM&;XPATH="/p1:inventoryActivityOrInventoryStatus/inventoryDocumentType")% CE INVENTORY_STATUS</Trace>
      <Trace level="2" type="T">......extracting (new) for Extractor: XP /p1:inventoryActivityOrInventoryStatus/inventoryDocumentType</Trace>
      <Trace level="2" type="T">......extracting values found: 0</Trace>
      <Trace level="2" type="T">...invalid InbIf: WMMBXY.WMMBID01</Trace>
      <Trace level="2" type="T">Check conditions for (Inb: Party Srvc If) GLR430 WMMBXY.WMMBID01</Trace>
      <Trace level="3" type="T">...call rule engine for Condition%CL_SAI_SWF_RULE_ENGINE.MSG_GET(MSG=&_MSG&;NSP=&_NSM&;XPATH="/p1:inventoryActivityOrInventoryStatus/inventoryDocumentType")% CE INVENTORY_ACTIVITY</Trace>
      <Trace level="2" type="T">......extracting (new) for Extractor: XP /p1:inventoryActivityOrInventoryStatus/inventoryDocumentType</Trace>
      <Trace level="2" type="T">......extracting values found: 0</Trace>
      <Trace level="2" type="T">...invalid InbIf: WMMBXY.WMMBID01</Trace>
      <Trace level="2" type="T">Check conditions for (Inb: Party Srvc If) GLR430 WMMBXY.WMMBID01</Trace>
      <Trace level="3" type="T">...call rule engine for Condition%CL_SAI_SWF_RULE_ENGINE.MSG_GET(MSG=&_MSG&;NSP=&_NSM&;XPATH="/p2:receivingAdvice/receivingAdviceItemContainmentLineItem/purchaseOrder/documentReference/uniqueCreatorIdentification")% EX</Trace>
      <Trace level="2" type="T">......extracting (new) for Extractor: XP /p2:receivingAdvice/receivingAdviceItemContainmentLineItem/purchaseOrder/documentReference/uniqueCreatorIdentification</Trace>
      <Trace level="2" type="T">......extracting values found: 2</Trace>
      <Trace level="2" type="T">...valid InbIf with Condition: WMMBXY.WMMBID01</Trace>
      <Trace level="2" type="T">Check conditions for (Inb: Party Srvc If) GLR430 WMMBXY.WMMBID01</Trace>
      <Trace level="3" type="T">...call rule engine for Condition%CL_SAI_SWF_RULE_ENGINE.MSG_GET(MSG=&_MSG&;NSP=&_NSM&;XPATH="/p2:receivingAdvice/carrier/additionalPartyIdentification/additionalPartyIdentificationValue")% CE SHUTTLE</Trace>
      <Trace level="2" type="T">......extracting (new) for Extractor: XP /p2:receivingAdvice/carrier/additionalPartyIdentification/additionalPartyIdentificationValue</Trace>
      <Trace level="2" type="T">......extracting values found: 1</Trace>
      <Trace level="2" type="T">...valid InbIf with Condition: WMMBXY.WMMBID01</Trace>
      </Trace>
      </Trace>
    - <Trace level="1" type="B" name="CL_XMS_MAIN-WRITE_MESSAGE_LOG_TO_PERSIST">
      <Trace level="3" type="T">Persisting message after plsrv call</Trace>
      <Trace level="3" type="T">Message-Version = 002</Trace>
      <Trace level="3" type="T">Message version 002</Trace>
      <Trace level="3" type="T">Pipeline CENTRAL</Trace>
      </Trace>
      <Trace level="3" type="System_Error">Error exception return from pipeline processing!</Trace>
      <Trace level="1" type="B" name="CL_XMS_MAIN-WRITE_MESSAGE_TO_PERSIST" />
    - <!--  ************************************
      -->
      <Trace level="3" type="T">Persisting message Status = 014</Trace>
      <Trace level="3" type="T">Message version 003</Trace>
      <Trace level="3" type="T">Pipeline CENTRAL</Trace>
      </SAP:Trace>
    Here, you see that the ID runs for the first receiver. It hits an error because two conditions on the ID for the first receiver are satisfied. However, it then stops rather than allow the processing for the other receiver to continue.
    Any ideas? Thx, Duncan

  • IDoc to IDoc - conditional receiver determination issue

    Hello All,
    We are using XI 3.0 and this is my scenario:
    Sender: IDOC from SAP system
    Receivers: There are 2 receivers (one SAP and one non sap system).
    I want conditional receiver determination based on the idoc field RCVPRN.
    Integration Repository: I imported standard SAP IDOC FIDCC2 into IR and it is in "urn:sap-com:document:sap:idoc:messages" namespace of my SWCV. I am not creating data types, message types or message interfaces as I want to use the IDOC type directly as the interface name in Integration directory.
    Integration directory: When I am creating receiver determination, I am getting a warning 'Message interface does not exist in any software components installed on this business system'. When I got to condition editor and want to choose the idoc field RCVPRN using XPATH, it is not showing the idoc structure.
    In SLD, the correct product is installed on my sender ABAP technical system, and correct SWCV (into which i imported the IDOC) is installed on my business system. I refreshed cache and cleared SLD cache in ID. Still i get the same warning 'Message interface does not exist in any software components installed on this business system'.
    How can i solve this issue? Any help is highly appreciated.
    Thanks,
    Chandra

    Hi Chandra,
    Can you check whether you have assigned or linked the SWCV with the Business system in SLD.
    Just go to SLD and open the SWCV and check if it is linked with the BS od the sender system.
    Since the sender is ABAP, you must have created the TS and BS using rz70, then see that that the SWCV is attached to the BS correctly. Under TS add the Product and then the corresponding SWCV.
    Also check one thing: are u selecting the correct Communication component, under which the Interface is present.
    Lastly if these doesnot work: In Integration Directory, Go to Environment-> Clear SLD Data Cache. Then try once again.
    Cheers,
    Souvik
    Edited by: Souvik Chatterjee on May 16, 2011 3:39 PM

  • Receiver determination issue with PI Directory API

    Hi Guys,
    I was trying to use the PI Directory webservice API to automatically build Integration Directory Objects. I found an issue when creating Receiver Determination Object. Here are the details:
    My scenario is one to many, one Interface with several receiver Parties/Business Components. so I created a Receiver Determination with one party as the receiver using regular Integration Builder Tool and  I was trying to add more receiver by Directory API for the remaining receivers to the one which I manually. But I did not a way or option to add more to the receivers list, when I tried that it was simply overwriting the existing one when I used the Change Operation but when I try to use create Operation it complains that the Object already exists..
    Do you have any idea what is the better way use the API to add more receivers to the list.
    Thanks,
    Laxman

    There is no delta changes allowed through Dir API. We had to read the RD and change with additional receivers.
    Thanks,
    Laxman

  • Receiver determination issue

    Hi all,
    I have a typical scenario, where the message mapping is such that a particular child node in the target will get mapped (created) only if certain logic gets satisfied. Otherwise the child does not get created.
    Now, my problem is - I want to send this message to receiver only if this child node exists. (There is no point in sending empty message to receiver)
    The condition in receiver determination can use only source message since message mapping is executed after the receiver determination.
    Can anyone pls help ?
    Thanks,
    - Shankar.

    Hi Shankar,
    I'm not sure if you can do that with normal condition in receiver determination
    I think this can be done with a condition, (that is the logic you use to decide wheter to create the node or not), just it depends on how much complex is the condition.
    If the condition is too complex I think you cannot use just the condition editor to define it.
    But consider that in any case enhanced receiver determination can be used even if you have a fixed received.
    You can view it in a different way, you do not have a fixed receiver, your receiver is "A" if condition is true and your receiver is "null" if condition is not true.
    Is'nt this your requirement?
    So I would say assign the receiver in the mapping if the condition is fulfilled, otherwise do not assign a receiver, this will result in a "no receiver found" and you can stop the message processing.
    Regards,
    Sergio

  • Issue with message in receiver determination

    hello,
    I have sent a IDOC message in PI and has reached in PI and can see it with IDX5.The message fails though with error no reciver found.
    When I am in Receiver determination I do a test in the overview and seem there is no error seen.
    So I am not sure where the error is coming from.
    Thanks for the help.

    Hi,
    1.If you created the Business System in the SLD, check whether it is having the Logical Name and it should be the in ID Business System --> Adapter Specific Identifiers.
    If it matches with that value, then activate and do the full cache refresh by using the url
    http://host:port/CPACache/refresh?mode=full
    2. Make some dummy changes to your existing receiver Determination --> Save --> Activate --> Check if cache updated properly.
    The above error normally occurs in case:
          1) Incorrect receiver name is maintained in RD
          2) Cache is not updated.....this is the most common reason
          3) Condition (if any in Receiver Determination) is not satisfied.
    Please go through below thread,
    No receiver could be determined
    regards,
    ganesh.

  • Receiver RFC adapter issue! Please help!

    Hi Experts,
       I have 4 XI interfaces. All of these are Webservice to RFC scenarios. Moreover all of them are synchronous.
      Request message: Webservice (SOAP Adapter) ---> XI -
    > RFc Adapter ---> ECC Function modules
      Response message: Webservice (SOAP Adapter) <- XI < RFc Adapter <- ECC Function modules
    As you can see above, external system calls XI web service via SOAP Adapter. The input data is then sent from SOAP Adapter to RFC adapter to call RFC function module in the receiving side.  The receiving system is SAP ECC system.
    The receiver ECC system has two instances. For example SP0 ad SP1. 
    In the receiver determination step we have maintained a rule such that if the Plant value in the input message is XYZ then send data to SP0. But if the plant value in ABC then send data to SP1.
    This Conditional rule is working fine.
    However we are getting couple of issues with only one instance of ECC (SP0).
    1. com.sap.engine.interfaces.messaging.api.exception.MessageExpiredException: Message badfa070-b163-11de-a4c1-001cc495e48a(INBOUND) expired
    2. NO_MAPPINGPROGRAM_FOUND. Mapping program is not available in runtime cache: Object ID C2B41FFDFD4635BAB1E41AE53C0D10CE Software Component 5394F420463611DAC1CFFBBC0A01BC16
    3. com.sap.engine.interfaces.messaging.api.exception.MessagingException: No response available
    The above listed errors are generated occasionally. Sometimes no errors are generated even when the same input data is sent again and message is successfully processed.
    I have verified the input data and everything is OK with that.
    Mapping object is available in XI and cache was also refreshed. I additionally reactivated the objects in XI as well.
    So what could be the real root cause of this? Please help!
    Thanks
    Gopal

    1. com.sap.engine.interfaces.messaging.api.exception.MessageExpiredException: Message badfa070-b163-11de-a4c1-
    001cc495e48a(INBOUND) expired
    Check the Timeout parameter of your adapter.....for requests which expire with this error confirm from the SAP end that the message processing is done well within the Timeout period of the adapter.
    Refer this note for more info on the above occuring error and the possible way to avoid it: https://service.sap.com/sap/support/notes/791379
    Update:
    Even problem 3 seems to be occuring due to insufficient Timeout specified for the adapter.....if possible try increasing the Timeout in VA
    Regards,
    Abhishek.
    Edited by: abhishek salvi on Oct 6, 2009 1:42 PM

  • Receiver Determination and Interface Determination Condition conflict in ICO

    Hi,
    I found a strange issue today while configuring two receivers using the Receiver and Interface Determination conditions.
    Sender - Proxy Service
    Receiver1 - ReceiverA
    Receiver2 - ReceiverB
    Receiver Determination Condition : When Field1 = 100, message should flow to ReceiverA and ReceiverB
    Interface Determination Condition (ReceiverA) : When Field1=100 and Field2=50 message should flow to a specific interface in ReceiverA
    There is no Interface Determination condition for ReceiverB, for all messages having Field1=100, it should go to ReceiverB.
    Test Scenarios:
    1) Field1=100, Field2=50 : Message flows successfully to ReceiverA and ReceiverB
    2) Field1=100, Field2=89 : Message fails to process from ECC itself throwing Interface Determination not found error. Ideally this is a positive scenario for ReceiverB and it should send the message to ReceiverB without any errors. But, this did not happen in this case
    I tried the same by configuring the conditions completely in Receiver Determination itself without using the Interface Determination, it worked perfectly fine. But, just wanted to understand that if this is an expected behavior.

    Hi Sherin,
    As there are two receivers Receiver A and Receiver B.You need to create two bussiness components and two communcication channels for two receivers and one Reciver Determination, two Interface Determination,two Receiver Agreement.In Receiver Determination you need to keep the below and condition.
    In the above screenshot the two receiver are Receiver B and Receiver C and Field 1 is Key_Value and Field2 is Emp_ID.
    If the Key_Value=100 and Emp_ID =22 then the message should go to both the receivers B & C by keeping the following AND condition
    If the Key_Value=100 and Emp_ID is not equal to 22 then the message should go only to Receiver B by keeping the following condition
    You need not keep any condition in Interface Determination just create 2 Interface determination for two receivers.
    Hope this helps you.
    Thanks,
    Durga.

  • Dynamic Receiver Determination [W/O using BPM] Sync interface

    I have been exploring options w.r.t. performance sensitive service interface.
    This has following issues :
    1. Gets a org code looking up instance and route the msg. accordingly to an RFC and get response back.
    2. Prominent answer would be Enhanced receiver determination step but that doesnt work in sync case.
    3. Classic Receiver Determination needs the condition to be evaluated in source msg. which is not going to happen.
    4. Use BPM i designed one but performance its not all acceptable it has a round trip of 10Sec.
    are there any ways to overcome this ?

    Hi Bujji,
    can you explain the point 1.
    <i>1. Gets a org code looking up instance and route the msg. accordingly to an RFC and get response back.</i>
    Thanks and Regards,
    Himadri
    null

  • IDoc TO File: Receiver Determination did not find any receivers at all

    Hi,
    We have IDoc to file scenario, where based on attributes present in IDoc we have configured different receivers.
    Everything was working fine and files were getting created based on the receiver determination criteria.
    But there is one change done in custom IDoc to re position the attributes.
    Idoc before changes was having NAME1 and NAME2 above KATR6 and KATR7 and after change it looks like below:
    So there is no change in segment and no change in mapping but the attributes KATR6 and KATR7 are used to determine the receiver.
    Cache refresh is done for both ESR and ID. I have re - entered the receiver determination criteria just to ensure that change should reflect.
    But still when I am triggering outbound IDoc from ECC to PI, the transaction is getting errored out with below error:
    "ErrText": "Processing error = Receiver Determination did not find any receivers at all",
    Can any one providee some idea what could be the reason and what is the right approach to resolve this issue.
    Thanks,
    Vertika

    Hi Krupa,
    I have marked your answer as helpful answer and delete of metadata wasn't required.
    Reload works . But thanks for your suggestion.
    Thanks,
    Vertika

  • Question regarding Receiver Determination and Differente Namespaces

    Dear sirs,
    I have the following scenario:
    I have a mail account read by a sender communication channel IMAP4 in namespace http://a. The message is sent to a receiver communication channel type XI delivering to an ABAP Proxy at the same namespace. Everything works fine here.
    I need to split the route: Reading the same mail account and depending on the message received send it to an ABAP Proxy of namespace http://A or namespace http://B. The receiver determination does not allow to configure destinations of different namespaces.
    Please someone could give me an idea how to solve this issue?
    Thank you in advance.
    Fabio Purcino

    Hi,
    I have already two receiver agreement and two mapping programs but I'm not able to set these programs on interface mapping  because it's on a different namespace.
    I attached a image of my interface determination configuration.
    [http://img683.imageshack.us/img683/7909/imagenamespacepi.jpg]
    Best Regards,
    Fabio Purcino

  • Error evaluation condition in receiver determination

    Hi,
    In XI 3.0 stack 11, for the incoming file, the receivers are determined based on the content of the input data.
    In the receiver determination the conditions were given for each receiver and it was working fine.
    Now, all of a sudden, its giving error as 'error in evaluating the condition in receiver determination' with some program name as CL_SAI_SWF_RULE_ENGINE (CX_RD_PLSRV).
    Could any one help me resolving this issue? Let me know if you need any more details w.r.t the issue.
    Thanks in advance!!
    Regards,
    Sasikumar

    Hi,
    I'm experiencing the same problem.  See message below. Also running SP11.  What might be wrong with the xpath expression?  I have removed all namespaces from the xpath and the input xml message.  Any suggestion is more than welcome!
    Kind regards, Guy Crets
    <?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
    <!--  Receiver Identification
      -->
    <SAP:Error xmlns:SAP="http://sap.com/xi/XI/Message/30" xmlns:SOAP="http://schemas.xmlsoap.org/soap/envelope/" SOAP:mustUnderstand="">
      <SAP:Category>XIServer</SAP:Category>
      <SAP:Code area="RCVR_DETERMINATION">CX_RD_PLSRV</SAP:Code>
      <SAP:P1>Problem evaluating a condition: The exception occurred (program: CL_SWF_RLS_CONDITION==========CP, include CL_SWF_RLS_CONDITION==========CM00Q, line: 160)</SAP:P1>
      <SAP:P2 />
      <SAP:P3 />
      <SAP:P4 />
      <SAP:AdditionalText />
      <SAP:ApplicationFaultMessage namespace="" />
      <SAP:Stack>Error when determining the receiver: Problem evaluating a condition: The exception occurred (program: CL_SWF_RLS_CONDITION==========CP, include CL_SWF_RLS_CONDITION==========CM00Q, line: 160)</SAP:Stack>
      <SAP:Retry>M</SAP:Retry>
      </SAP:Error>

  • PI 7.1 - condition during receiver determination

    Hi,
    I am trying to do the receiver determination condition in the condition editor of integration directory but XPATH or context objects of my interface (corresponding to my software component version) do not appear in the window for maintaining the condition.
    I had no difficulty when following the same process during 7.0 or earlier versions but it seems to be issue in PI 7.1.
    Anyone else also faced a similar situation or is there any extra step I need to ensure before going for receiver determination (standard not enhanced)?
    Your help would be appreciated.
    Cheers.

    My scenario is:
    Source system -> PI (ccBPM) -> Target system
    Now I have number of ccBPMs and there would be one picked up based on the payload from source system interface. For this my configuration objects are as follows:
    Sender agreement with (source comm component and source system outbound interface)
    Receiver determination - at this stage I want to figure out which ccBPM should get executed and hence condition based on payload
    interface determination - goes to receiver step of ccBPM with message type same as outbound interface from source system
    I have another receiver determination, interface determination for target system interfaces from ccBPM and then receiver agreement.
    But in this overall scenario key part is first receiver determination step where ccBPM as receiver is to be determined.
    I checked up all my objects again to find out any missing gap from my understanding. But I am not able to get the interface (source system interface) in the condition editor. I tried maintaining the XPATH manually but it ends in error during execution suggesting that receiver could not be determined.
    Any more suggestions please?

  • Using substring in the XPATH expression for Receiver Determination

    Hello, I need a little help please.  In my receiver determination, I have a condition and I need to do a "not like" check.   Basically, if the first three positions of the source field does not start with a specific code, then I need to execute the condition.   The condition editor does not support a "not like" operand, so I went to the XPATH expression editor.  I tried to used the XPATH substring function to get the first three characters and then do a "not equal" operand, but it doesn't appear to work.  There are not any runtime errors, but the condition is not executing.  Any ideas on this?  Does the XPATH expression support the substring function?

    Hi Jesse,
    Can you please explain what is the meaning of http:// in the statement
    /p1:PRODUCT/MATNRhttp://not(substring(.,string-length(.) - 2) = '123')
    Please explein, I am having same issue. It is not working here.In My case it is
    /p1:ORDERS01/IDOC/E1EDP01/E1EDP19/IDTNR[http://not(starts-with(.,\"D\"))]
    also tried with
    /p1:ORDERS01/IDOC/E1EDP01/E1EDP19/IDTNR[http://not(starts-with(.,'D'))]
    Thanks in advance!

Maybe you are looking for