Enh receiver determination

Experts,
is it possible to restrict empty messages from being processing in PI, i.e the target system should not receive these messages at all?
I am using a enhanced interface determination.
my requireement is if there is no target message generated PI has to stop this message.
I checked in SOAP receiver channel, i dint see any useful help there.
I dont think I can achieve this using Enhanced Receiver determination.... or can I?
I also checked in Receiver determination condition too.. I dont think we can do it over there as well..
any one faced this with Reciever SOAP please let me know.
Thanks,
Venkat.

if your target system is file you have the option
Select the Handling of Empty Messages:
u25CB       Write Empty File
An empty file (length 0 bytes) is put in the target directory.
u25CB       Ignore
No file is put in the target directory.
more @ http://help.sap.com/saphelp_nw04/helpdata/en/bc/bb79d6061007419a081e58cbeaaf28/content.htm

Similar Messages

  • Receiver determination step in the BPM and multiline container

    i have made a file2file scenario where:
    there is a BPM,
    the BPM has a send step which contains a receive step,
    a transformation that mapps the incomin message to two messages(Split-messgae case),
    and then a FORK step which sends the two messges to through 2 SEND steps to the intended receiver services.
    It didnt work......and i followed a blog->  /people/sudharshan.aravamudan/blog/2005/12/01/illustration-of-multi-mapping-and-message-split-using-bpm-in-sap-exchange-infrastructure   ............... which suggested to have a
    "receiver-determination" step in the BPM before the SEND step.... it says that this
    "receiver-determination" step will put the message in a MULTILINE container..
    i m confused bout this step ........ can anybody explain.....
    please help

    HI,
    In receiver determination step selctthe multi line container element.in container editor create the one element with type as receiver and select the check box.
    A Receiver Determination step returns set of receivers configured for the output abs interfaces in the directory and puts it into receiver which is a multiline container receiver element
    Regards
    Chilla

  • Regarding receiver determination problem in IDOC-XI-XML file scenario

    Dear All ,
    In IDOC-XI-xml file scenario , I have configured SLD , IR . But in ID , after file adapter , reciever agreement configuration when I am doing receiver determination configuration I am not able to insert mapping program in configuration overview of receiver determination as I am not getting "New Specific" option in mapping .
    Can anybody suggest what could be the reason behind this .
    Thanks in Advance
    Prabhat

    Hi PRabhat,
    In RCVR determination, you need to select the party & service (as appropriate) save the obeject
    then refresh the configuration overview of recr det.
    then you can see the partner/service
    then you can open it & add the necessary objects.
    Regards
    Vishnu

  • How to get a dynamic receiver determination based on a table an SAP PI ABAP Stack

    Hello folks,
    currently I get stuck dealing with a problem about the receiver determination. Let me first describe the Problem: We are using to different SAP ERP- backend system in our test enviroment. But only of this systems is marked as current "actuall" test system. Every once in a while we need to switch between these two systems and mark the other one as the actual test system.
    This is the point were it get's a little bit time consuming for me: We have about 50 interfaces were I need to change the receiver from test system A to test system B or vice versa. So I thought about creating a more dynamic way to determine the actual test system:
    Therefore I have created a table on the ABAP stack of our PI (7.31 double stack) with just one field that holds the current test system. Now I would like to create a dynamic receiver determination where I call the RFC-function RFC_READ_TABLE. But how can I acess a table from the grapchical mapping of the pi which is stored on the PI?
    Is there mybe another fundamental way to retrieve the actuall test system within the mapping?

    You can go for enhanced receiver determination, where in you can determine the receiver system using a graphical mapping.
    Now in that graphical mapping, use the standard function " RFC Look up" and make a call to bapi and get the actual receiver system.
    http://www.sdn.sap.com/irj/scn/go/portal/prtroot/docs/library/uuid/40b64ca6-b1e3-2b10-4c9b-c48234ccea35?QuickLink=index&…
    Step by Step guide to Explain Enhanced Receiver Determination - Application Server Infrastructure - SCN Wiki

  • No receiver found in Receiver Determination

    Hello Experts,
    Sub: Calling integration process (which in software component1) from sender service interface_Out (which is in another software component2) in Receiver Determination Fails.
           There are two software components, S/W C1,  S/W C2,
            In  S/W C1,->
            Integration process (IP1)created in S/W C1, with name space NS1,
            Service interface1(abstract) SI1 with message type MT
            In S/W C2,->
            Sender service interface2 SI2(outbound) with message type MT with namespace: NS2
    (MT message type, in both service interface holding the same,
    used SI1 In receive step in IP1.
    Interface Determination from BS2,SI2,NS2<->   IP1,SI1(No mapping).)
    In Receiver Determination,
    Business system BS2;
    Sender Service Interface: SI2;
    Name space: NS2, 
    In Receivers  :  IP1
    Problem is :  do not find this receiver.
    I have to call this process, like this.  Please help on this.
    Use case is:
    single Soap request is coming, many application are using the same using common Receiver determination( which in S/W C2), 
    Now i have to use the same receiver determination to send this message in IP1 which is in SW C1;  
    -> any alternative solutions for this                      
    Thanks,
    Deviprasad.

    hi,
    when you use Integration Process the configuration in the ID must be
    Receiver Determination 1:
    Sender System: XXX
    Enterprice Services (outbound)
    Namespaces
    Target System: Integration Processes
    No Mapping requiered in Interface Determination
    Line:
    Receiver Determination 2::
    Sender System: Integration Process
    Enterprice Services (Abstract)
    Namespace
    Target System: YYYY
    No Mapping requiered in Interface Determination
    Sender Agreement=1
    Receiver Agreement=2
    Interface Determination=2
    Communication Channels=2
    Take in mind that in the Interface determination you have to define as receiver structure the Service Interface (Enterprice Service in PI7.1) type Abstract. if you cant select it delete all filter in the popup qhen you have to select the Inteface in the reciver structure.
    Check the Integration PRocess if you define the SI_XXX_abs in the reciver step.
    check all changes in the ESR were activated
    Check this out and let me know
    Edited by: Rodrigo Alejandro Pertierra on Sep 3, 2010 2:42 PM

  • Multi Mapping using condition & Dynamic Receiver determination – Used XSLT Mapping

    Dear Experts,
         I am struggling to identify an error on the Technical Routing. Firstly according to my scenario, I receive an XML file with multiple PO's and I have to split the file to 2 different target messages. and also according to the source payload I have to send the file to 2 different receivers. first receiver is ABAP Proxy to the back end system and the 2nd one is to a file location. I have used XSLT to split the message into 2 target message type and I have used a XSLT mapping for receiver determination. Does any one have any idea of what I am doing wrong.
    Note: some time I will only be able to fill in on target message.
    I have attached my XSLT message split mapping with this post, please let me know if you have further question.
    Your help is more appreciated.
    Advance Thanks,
    Pradeep
    <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:sap="http://www.sap.com/sapxsl" version="1.0">
      <xsl:variable name="vFlag"/>
      <xsl:variable name="vPONUM" select="POTRACKING/Lines[1]/PONumber"/>
      <xsl:template match="/">
        <ns0:Messages xmlns:ns0="http://sap.com/xi/XI/SplitAndMerge">
          <ns0:Message1>
            <ns1:MT_Tracking xmlns:ns1="http://www.findel-education.co.uk/axapta">
              <xsl:for-each select="POTRACKING/Lines">
                <sap:call-external class="ZCL_VNAP_OBJECTS" method="CHECK_PO_EXIST">
                  <sap:callvalue param="IP_EBELN" select="string(PONumber)"/>
                  <sap:callvariable name="vFlag" param="EP_BOLEAN" type="string"/>
                </sap:call-external>
                <xsl:if test="$vFlag = 0">
                  <Lines>
                    <DDate>
                      <xsl:value-of select="DespatchDate"/>
                    </DDate>
                    <PONumber>
                      <xsl:value-of select="PONumber"/>
                    </PONumber>
                    <POLine>
                      <xsl:value-of select="POLine"/>
                    </POLine>
                    <QTY>
                      <xsl:value-of select="Quantity"/>
                    </QTY>
                    <VendorMaterial>
                      <xsl:value-of select="VendorMaterialNumber"/>
                    </VendorMaterial>
                    <AccountRef>
                      <xsl:value-of select="AccountReference"/>
                    </AccountRef>
                    <ConsignNumber>
                      <xsl:value-of select="ConsignmentNumber"/>
                    </ConsignNumber>
                    <CarrierURL>
                      <xsl:value-of select="CarrierURL"/>
                    </CarrierURL>
                    <ConsignURL>
                      <xsl:value-of select="ConsignmentURL"/>
                    </ConsignURL>
                  </Lines>
                </xsl:if>
              </xsl:for-each>
            </ns1:MT_Tracking>
          </ns0:Message1>
          <ns0:Message2>
            <ns2:MT_Tracking xmlns:ns2="http://www.findel-education.co.uk/ecc/ax/po/ftp">
              <xsl:for-each select="POTRACKING/Lines">
                <sap:call-external class="ZCL_VNAP_OBJECTS" method="CHECK_PO_EXIST">
                  <sap:callvalue param="IP_EBELN" select="string(PONumber)"/>
                  <sap:callvariable name="vFlag" param="EP_BOLEAN" type="string"/>
                </sap:call-external>
                <xsl:if test="$vFlag = 1">
                  <Lines>
                    <DDate>
                      <xsl:value-of select="DespatchDate"/>
                    </DDate>
                    <PONumber>
                      <xsl:value-of select="PONumber"/>
                    </PONumber>
                    <POLine>
                      <xsl:value-of select="POLine"/>
                    </POLine>
                    <QTY>
                      <xsl:value-of select="Quantity"/>
                    </QTY>
                    <VendorMaterial>
                      <xsl:value-of select="VendorMaterialNumber"/>
                    </VendorMaterial>
                    <AccountRef>
                      <xsl:value-of select="AccountReference"/>
                    </AccountRef>
                    <ConsignNumber>
                      <xsl:value-of select="ConsignmentNumber"/>
                    </ConsignNumber>
                    <CarrierURL>
                      <xsl:value-of select="CarrierURL"/>
                    </CarrierURL>
                    <ConsignURL>
                      <xsl:value-of select="ConsignmentURL"/>
                    </ConsignURL>
                  </Lines>
                </xsl:if>
              </xsl:for-each>
            </ns2:MT_Tracking>
          </ns0:Message2>
        </ns0:Messages>
      </xsl:template>
    </xsl:stylesheet>

    Hi Hareesh,
    Please find my determination in the XSLT below, I am using enhanced receiver determination.
    <xsl:transform xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:sap="http://www.sap.com/sapxsl" xmlns:p1="http://sap.com/xi/XI/System" xmlns:ns="urn:sap-com:document:sap:idoc:messages" version="1.0">
      <xsl:variable name="vFlag"/>
      <xsl:variable name="vAX" select="0"/>
      <xsl:variable name="vSAP" select="0"/>
      <xsl:variable name="vBoth" select="0"/>
      <!--  <xsl:variable name="vPONUM" select="POTRACKING/Lines[1]/PONumber"/>-->
      <xsl:template match="/">
        <xsl:for-each select="POTRACKING/Lines">
          <sap:call-external class="ZCL_VNAP_OBJECTS" method="CHECK_PO_EXIST">
            <sap:callvalue param="IP_EBELN" select="string(PONumber)"/>
            <sap:callvariable name="vFlag" param="EP_BOLEAN" type="string"/>
          </sap:call-external>
          <xsl:choose>
            <xsl:when test="$vFlag = 0">
              <!--          <p1:Receivers>
                <Receiver>
                  <Service>
                    <xsl:text>BS_AXAPTA_TST</xsl:text>
                  </Service>
                </Receiver>
              </p1:Receivers>-->
              <xsl:variable name="vAX" select="$vAX + 1"/>
            </xsl:when>
            <xsl:when test="$vFlag = 1">
              <!--          <p1:Receivers>
                <Receiver>
                  <Service>
                    <xsl:text>BS_ECQCLNT300</xsl:text>
                  </Service>
                </Receiver>
              </p1:Receivers>-->
              <xsl:variable name="vSAP" select="$vSAP + 1"/>
            </xsl:when>
          </xsl:choose>
        </xsl:for-each>
        <xsl:if test="$vSAP &gt; 0">
          <xsl:if test="$vAX &gt; 0">
            <xsl:variable name="vBoth" select="$vBoth + 1"/>
            <xsl:variable name="vSAP" select="0"/>
            <xsl:variable name="vAX" select="0"/>
          </xsl:if>
        </xsl:if>
        <xsl:if test="$vBoth &gt; 0">
          <p1:Receivers>
            <Receiver>
              <Service>
                <xsl:text>BS_AXAPTA_TST</xsl:text>
              </Service>
            </Receiver>
            <Receiver>
              <Service>
                <xsl:text>BS_ECQCLNT300</xsl:text>
              </Service>
            </Receiver>
          </p1:Receivers>
        </xsl:if>
        <xsl:if test="$vAX &gt; 0">
          <p1:Receivers>
            <Receiver>
              <Service>
                <xsl:text>BS_AXAPTA_TST</xsl:text>
              </Service>
            </Receiver>
          </p1:Receivers>
        </xsl:if>
        <xsl:if test="$vSAP &gt; 0">
          <p1:Receivers>
            <Receiver>
              <Service>
                <xsl:text>BS_ECQCLNT300</xsl:text>
              </Service>
            </Receiver>
          </p1:Receivers>
        </xsl:if>
      </xsl:template>
    </xsl:transform>

  • File name based routing in Receiver determination

    Hi experts,
    I have a requirement to do receiver determination based on file names which are dynamic.To put it clearely, i will be having two files in my source File location and i need to route it based on the file name to two target systems.
    The file name are like Month(changes everymonth)_TargetSys1 and month_targetSys2.
    I dont need any conversions ,so i am not using any IR objects.
    To pick files i kept *.txt in sender channel, and in receiver determination  condition i was trying to use context object called 'Filename'.But it doesnt work asthe file name changes every month.
    Is there any option to take substring from the input file name (say targetSys2 from month_targetSys2.) and put it as a condition for receiver determination.
    There is not DT or structure of the incoming file , as there are no modification to be done with the content.
    Regards,
    Anika

    you need to have the structure in case you want to route it via the xpath.
    Else another option is to code the enhanced receiver determination and using a java mapping with dynamic configuration read the filename and then dynamically create the receiver determination.
    http://help.sap.com/saphelp_nw04/helpdata/en/43/a5f2066340332de10000000a11466f/content.htm

  • How many Receiver determination in File to SOAP scenario

    Hi,
    I am trying a File -SOAP-File scenario, where file will be send to PI asynchronous. BPM is configured to receive the file and
    call the web services and get the response (Synchronous call) .After that BPM send the file asynchronous to File via FTP .
    It is basically asynchronous/ Synchronous bridge scenario.
    To do this I have  have configured the BPM  & created 3 Communication channel . 1 sender (File) & 2 receivers ( SOAP & File)
    But i got confused in Receiver determination. How many Receiver determinations do we require in this step?  2 or 3. If 3 how they will look like. I believe Interface determination is same as Receiver determination. I am suing Business System to send & recv the file.
    Points will be rewarded for suitable answer.
    Thanks

    hi,
    You require 3 receiver determinations.
    one from File to BPM(XI)..
    another from BPM to SOAP and other from SOAP to FILE.
    This is exactly the same scenario.
    RFC Scenario using BPM --Starter Kit
    Thanks,
    Vijaya

  • Receiver determination in BPM ..what is used for?

    Hi everyone.
    I've never used 'receiver determination' step in a BPM. I want to know what is used for.
    Regards,
    Inigo.

    you can ref: this link to find example where a receiver determination step is used in BPM- http://help.sap.com/saphelp_nw04/helpdata/en/43/6211b11c895f6ce10000000a1553f6/content.htm
    More abt RD step in BPM - http://help.sap.com/saphelp_nw04/helpdata/en/14/d5283fd0ca8443e10000000a114084/content.htm

  • 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.

  • Multiline Check in Receiver Determination

    Hi All,
    Can anyone explain me the exact functionality of the multiline checkbox in receiver determination.
    Lets say I have the following input message
    <node1>
           <value>21</value>
    </node1>
    <node1>
           <value>22</value>
    </node1>
    <node1>
           <value>23</value>
    </node1>
    I want the receiver to be determined only if the value is 23, does multiline has anything to do with this.
    Regards,
    Varun.

    Hi,
    In conditional receiver determination when you check multiline that signifies that you are expecting
    1. the values of the field to be multiple and selecting multiline you consider the bunch of the values to be in one array of string.
    2.And when you put the condition to check for a specific value it checks in the whole array whether ant element of the array matches with the condition.Like the condition(23) IN the array or not.
    So your query is similar.You can do with this.
    cheers,
    Abhishek.

  • BPM step Receiver Determination

    Hello Friends,
    the operator "Receiver Determination" - how can be used in BPM? Is there any weblog or example for that?
    Best Regards,
    F.K.

    check this link
    Receiver Determination in BPM
    Use of Receiver determination step in BPM

  • Multiline in receiver determination

    Dear all,
    my payload is like this:
    <item>
          <WERK>PLANT_A</WERK>
          <RCODE>99</RCODE>
        </item>
        <item>
          <WERK>PLANT_A</WERK>
          <RCODE>0</RCODE>
        </item>
        <item>
          <WERK>PLANT_A</WERK>
          <RCODE>0</RCODE>
        </item>
    Only if WERK is like PLANT_A  AND RCODE is 99 then he should send
    the message else he should ignore it automatically.
    So in this message are three recipes in one message to the same plant,
    but only one got an error.
    I also marked multiline in XPath editor, but he does not send a message, but
    stop the complete message.
    My conditions
    /rfc:PROCESS_MESS_GET_RETURN_CODE/MSHD/item/WERK = PLANT_A   AND
    /rfc:PROCESS_MESS_GET_RETURN_CODE/MSHD/item/RCODE <> 0
    I also tried:
    /rfc:PROCESS_MESS_GET_RETURN_CODE/MSHD/item[WERK='PLANT_A']/RCODE='0'
    with operatro EX, but it also doesn't work.
    Is it possible with a normal receiver determination or do I have to use the extended version?
    Thanks
    Regards
    Chris

    Thanks for your replies.
    I finally made it like this:
    /rfc:PROCESS_MESS_GET_RETURN_CODE/MSHD/item[RCODE>0]  EX
    AND
    /rfc:PROCESS_MESS_GET_RETURN_CODE/MSHD/item/WERK =  "PLANT_ID"
    This seems to work even with multiline payloads
    Regards
    Chris

  • 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

  • Receiver determination in BPM

    Hi Folks,
        I wanted to send a message to 2 receivers from 1 sender using BPM. People on SDN advice that I have to use 3 receiver determinations for it. I just can't understand why to use 2 receiver determinations where as I have only 2 receivers. Why shall I use a receiver determination for the sender ? Can anybody explain this logic ?
    Regards,
      Santosh

    HI Chandra,
    There will be only one reciever determination.
    In reciever determination what can be done is one sender and recievers will be two as
    well as ineterface determination and reciever agreement will be 2.
    Can you explain how is this possible?....In the first receiver determination the connection will be done for Sender --> BPM.....
    In second BPM---> Receiver1
    In third BPM--->Receiver2
    Regards,
    Abhishek.

Maybe you are looking for

  • Problem with repaired neo fis2r

    I am experiencing performance problems with my neo tha t I am not sure where to begin trouble shooting. I had an video card falure(delaminated pin on agp ) which resulted in damage to the agp slot I rma 'd my neo and it returned marked repaired with

  • IPhone 5 won't detect that I have unplugged earphones

    It will happen on the odd occasion that when I unplug my earphones mid song/podcast, the media will pause, and on resume there will be no sound coming out of the speakers. Obviously the volume is up, but it still says (headphones) when I adjust the v

  • Refresh the Report

    Hi I have to build an ALV report .. The Problem I am facing is that I need to Create a Report in which the Information for the Client Gets Updated Frequently . Eg:- The way it is done at AIRPORT when the Information for flights Keeps on Getting Refre

  • Font display issues after 10.5 install

    Seeing fractions and garble. It shows in places like Mail and Safari. Visiting slashdot.org gives me garbled text for any of the headlines. Running a G5 Power PC with lots of ram. Help me. Use the force.

  • I have a new Mac Book Pro. If I buy Lightroom 5 now, may I upgrade to Lightroom 6 for free ?

    I have a new Mac Book Pro. If I buy Lightroom 5 now, may I upgrade to Lightroom 6 for free ?