Acknowledgment in BPM

Hi
Scenario is File->PI(BPM)->Aysnc proxy...
I am using a standard content inbound ASYNC proxy which I cannot edit. From the BPM I am calling an abstract interface which in turn calls this inbound ASYNC proxy. I need application errors (if any) back from this proxy or u can say application acknowledgment. But in the BPM how can I get it back, how can I handle the ack message. I cannot put the fault message type inside the BPM container, since the abstract interface cannot have fault type to be added with the message.
I cannot make the inbound interface as SYNC, because it is a standard interface and I want to use it AS IS.
Please shower some points on this.
Regards
Anandan

Hi Anandan,
There are two ways...
1. You will have to build another interface (logical) in the same BPM. You can expose a web service/or choose your mode of receiving the data from the partner. In that, you will have to mainatain a field for identifying the correlation. For e.g. if you are sending an invoice, and you could use the invoice number or the order number as the correlation field. In the BPM, you will have to add another receiver step after the send step and then use this field as the correlation in that. For more about how to work with correlations, you can use the help "http://help.sap.com/saphelp_nw2004s/helpdata/en/6e/57c53f3e0f0228e10000000a114084/frameset.htm". This will show how to use correlation.
2. If it is just a notification kind of thing i.e. if you wanted to know wheter the proxy has been called successfully or not, then you do not need all this effort. All you need to do is as Abhishek has suggested, use a transport acknowledgement. Since you are going to call a proxy (I am assuming it is ABAP proxy), and since it is an integral part of the Integration engine, if the communication fails, the BPM will fail. You can do an exception handling and then do what ever you want in the exception block like writing a file or sending an alert etc...However, you will not be able to get the exact error message implicitly. For this all you need to do is put your send step in a block and handle the exception for that block. For handling exception blocks, you can use the example "http://help.sap.com/saphelp_nw2004s/helpdata/en/ca/7c5c41fe06cf1ee10000000a155106/frameset.htm".
Hope this helps.
Thanks and Regards,
Sarath.

Similar Messages

  • File Adapter Acknowledgement in BPM - NEW Question

    This is in cntinuation of my earlier question:
    File Adapter Acknowledgement in BPM
    Now I understand that the send step should wait to get the acknowledgement from file adapter.
    As I understand This ack may be +ve or -ve.
    <b>So my question is how do we test for + ve acknowledgement in the next step / switch?</b>
    Thanks,
    HImadri

    hi,
    in condition editor of this switch step you need to choose technical objects
    and check it they = true
    for sender apps
    you can also use Main/MessageClass field 
    have a look at the bottom of this page to
    check their values:
    http://help.sap.com/saphelp_nw04/helpdata/en/6e/ff0bf75772457b863ef5d99bc92404/content.htm
    Regards,
    michal
    <a href="/people/michal.krawczyk2/blog/2005/06/28/xipi-faq-frequently-asked-questions"><b>XI / PI FAQ - Frequently Asked Questions</b></a>

  • Logical system name for acknowledgement in BPM

    Hi,
    I have a szenario:
    IDOC --> BPM --> MAIL
    Inside BPM I check the message and depending on an xml-element I stop the process or I send the message by mail.
    When I stop the process the BPM sends back an acknowledgement and in SXMB_MONI I can see an error of the acknowledgement:
    "Sender Test_BPM_IDOC_TO_MAIL kann nicht in ein ALE Logisches System umgeschlüsselt werden" (Sender can not convert in a ALE logical system)
    What can I do?
    Possible Solution 1:
    I can define my BPM "Test_BPM_IDOC_TO_MAIL" as a logical system (including WE20 for ALEAUD).
    Possible Solution 2:
    I can enter an existing logical system name in the "adapter specific attributes".
    BUT it is not use the same logical system name twice (BAD ... or is there a workaround?
    Is Solution 1) a common way?
    Thanx
    Regards
    Wolfgang Hummel

    Hi,
    there are many ways:
    some for aleaud are described in my book:
    <a href="/people/michal.krawczyk2/blog/2006/10/11/xi-new-book-mastering-idoc-business-scenarios-with-sap-xi"><b>Mastering IDoc Business Scenarios with SAP XI</b></a>
    >>>>Is Solution 1) a common way?
    no this is not good a good idea
    BTW
    you can also supress aleaud raport IDX_NOALE
    Regards,
    michal
    <a href="/people/michal.krawczyk2/blog/2005/06/28/xipi-faq-frequently-asked-questions"><b>XI / PI FAQ - Frequently Asked Questions</b></a>

  • How to get detail info of application acknowledgement in BPM send step

    Hello
    in BPM we will send an async message to SAP backend system, we need to know if the message is successfully process or not, if not, we need to get the detail info which is returned in the acknowledgement message.
    As you know in PI monitor, you can open the acknowledgement message and you can see the error texts that are sent by the SAP backend system to PI in the acknowledgement message. However seems like there is no standard way in PI BPM to get the error texts inside the acknowledgement. In the send step you can only specify that application ACK is required, if negative ACK comes in, an exception is raised and you can handle the exception in the exception branch. However there is nowhere to capture the acknowledgement message to get the detail error texts.
    Anyone has good idea to get the error texts from the application acknowledgment message inside BPM/
    Thanks

    we need to know if the message is successfully process or not, if not, we need to get the detail info which is returned in
    the acknowledgement message
    One way to have the above requirement done is make the process synchronous (if RFC/ Proxy). The response message should contain the state of processing of the message inside SAP....now in the BPM make a check on the response message to see if it is a success or failure....you can apply logic like is success terminate the BPM without any alert.....if failure raise an alert/ send a mail.
    Regards,
    Abhishek.

  • Switching Step based on Send Step Acknowledgement in BPM

    Hello Everyone,
    We have an inteface scenario to read a file, send the message to an R/3 system, check the return code and generate an email if the acknowledgement is not OK.  NT file -> SAP XI -(asyn ABAP proxy)-> R/3.
    We want to use the standard inbound interface provided by SAP which is an asynchronous proxy interface. We implemented a BPM with a send step and application acknowledgement. Now based on the application acknowledgement we want to send an email to a support group. Is there a way we can check the acknowledgement status and implement a switch step?
    Sathi.

    Hi Naveen,
    Thanks for your response.
    OK I will try transport acknowledgement. I find these acknowledgements are not available in a container. So how can I implement a switch to perform 2 different processing paths based on success/failure status of the acknowledgement.

  • Send XML as acknowledgment from BPM

    Hi  Experts
    I have scenario where our XI box will receive an XML, so whenever we receive an XML XI should send back another XML as an Acknowledgment. Is there any way I can send an custom XML format as an acknowledgment?
    In BPM Send step I could see an Aknowledgment option but there I didnt find any option where I can specify the XML which I want to send as an Aknowledgment.
    Is it possible to do this in XI?
    Can anyone please let me know If I send a normal Aknowledgment for the request how that format looks like.
    Please Help Us.
    Regards
    Sowmya.

    sorry wrong forum

  • Idoc Acknowledgements and BPM.

    All,
    My current requirement is to post an Idoc from my BPM, and get back the Idoc Acknowledgement. On the basis of the status field in the ALEAUDIT Idoc I need to determine the further course in my BPM.
    <u><b>Option 1:</b></u>
    1. In the Send Step of my BPM , I can request for Application Acknowledgement. I have done this and am able to receive the Acknowledgement and see the same against the Acknowledgement Msg ID in MONI. I am able to see the ALEAUDIT idoc triggered for my Send Step back to my BPM .
    The question in case we are to use this Option is , how do I access this AleAudit Idoc message in my BPM. As I want to have a switch, I need this to be populated in a container element of my BPM. Is this possible? Is this approach a correct one? Any Ideas?
    <u><b>Option 2</b></u>
    I can have a Send Step in my BPM to send the Idoc from XI to R3. this will be a normal Send Step with no Acknowledgements. I can also use a Receive Step in the BPM to receive the ALEAUDIT Idoc back to the BPM.
    This I guess can be done with a Receive determination where R3 is the sender and the AleAudit Idoc is the receive etc.
    Issues with this approach, I need to use a Correlation against the Send and Receive Step to send the Idoc and receive the AleAudit.
    1. What is the Correaltion that can be used?  Is there a standard correaltion. for such cases?I looked into the Idoc and the AleAudit but could' nt find a suitable Correlation Field.
    Do both these solutuons make sense? has anyone got a better approach?
    Any comments are appreciated.
    Regards
    Bhavesh
    PS: Have gone through the How to guide on Idoc Ack's and the blogs on SDN as well. But if still someone feels that there is a blog that is relevant to this issue, please do let me know if I have missed anything.

    Ha, now that was interesting question. Brains were rusty, relooked into that lookup and these are the fields of the IDXRRCVPOR we use,
    Used the RFC - RFC read table
    XI's Idoc Number is in Field IDOCNUMBER
    Original SAP IDoc Number is in Field SNDLAD.
    Code excerpt attached below.
    @ Henrique : Work's been crazy past few months. The blog is on my to do list, hopefully someday soon it should be out. My Apologies guys!
    Channel rfcChannel =     LookupService.getChannel(BusinessService, CommChannel);
    //As the call is being made to RFC, RFCAccessor is obtained.
    rfcAccessor = LookupService.getSystemAccessor(rfcChannel);
    rfcXML =
                        "<?xml version=\"1.0\" encoding=\"UTF-8\"?><ns0:RFC_READ_TABLE xmlns:ns0=\"urn:sap-com:document:sap:rfc:functions\"><DELIMITER/><NO_DATA/><QUERY_TABLE>IDXRCVPOR</QUERY_TABLE><ROWCOUNT/><ROWSKIPS/><DATA><item><WA/></item></DATA><FIELDS><item><FIELDNAME>SNDLAD</FIELDNAME><OFFSET/><LENGTH/><TYPE/><FIELDTEXT/></item></FIELDS><OPTIONS><item><TEXT>IDOCNUMBER EQ &apos;"
                             + SourceDocNum
                             + "&apos;</TEXT></item></OPTIONS></ns0:RFC_READ_TABLE>";
    inputStream = new ByteArrayInputStream(rfcXML.getBytes());
    XmlPayload inPayload = LookupService.getXmlPayload(inputStream);
    Payload outPayload = rfcAccessor.call(inPayload);
    responseStream = outPayload.getContent();
    DocumentBuilderFactory factory =DocumentBuilderFactory.newInstance();
    /* Create DOM structure from input XML */
    DocumentBuilder builder = factory.newDocumentBuilder();
    Document document = builder.parse(responseStream);
    NodeList list = document.getElementsByTagName("WA");
    for (int k = 0; k < list.getLength(); k++) {
        Node node = list.item(k);
       if (node != null) {
         node = node.getFirstChild();
                    if (node != null) {
              if (!node.getNodeValue().equals("")) {
                   OutputDocNum = node.getNodeValue();
    Regards
    Bhavesh

  • How to read Idoc acknowledgement in BPM

    Hi ,
    I am trying to get data from database and send  Idoc to sap . Upon successful idoc processing i want to send success msg to file . To achive this functionality i am using BPM , but i am not able to understand how to read acknoiwlegement in XI ? Do I need to create another datatype for acknowledgement in XI ??
    Please advice
    Suvarna

    Hi,
    Configure the Acknowledgements as shown in the Link i had given earlier.
    Next, in your BPM, with the SEND step activate APPLICATION Acknowledgements. Now, your BPM will wait for the acknowledgements before going to the next step and so on.
    Also, if you do not want to wait for longer than a particular period of time, you can have a deadline monitoring branch and so on.
    Regards,
    Bhavesh

  • File Adapter Acknowledgement in BPM

    Himadri,
    You cannot achieve this unfortunately
    Reason is that file adapter supports only Transport Acknowledgements. What this implies is that the BPM checks only if the message is sent from the BPE to the Adapter Engine Successfully. It does not check to see if the file is written in the target destination.
    Just try this, give an incorrect folder ( or something of this sort ) in the file adpater and try Transport Acknowledgement. Wrap this around an exception block. You will be surprised that the exception block is not called.
    Reason like i told is that the BPE thinks it is successful as the message has been passed to the adapter engine.!
    Regards
    Bhavesh

    Sandro,
    Thanks for that input. Actually tried the same on my XI box and what you have told is absolutely correct.
    Until the transport acknowledgement is not received for the first send step, the next send step will not be called! I seem to have forgotten something somewhere or my observation which I had given earlier was with respect to some othe scenario which am not able to recollect!
    Himadri~~ Apologies for the incorrect answer. Transport Ack's should do the trick for you like correct pointed by Sandro.
    Thanks,
    Regards
    Bhavesh

  • XI acknowledge from BPM

    HI Experts,
    Trying to make acknowledge from XI to R/3 through BPM but get error message “Unable to convert the sender service <BPM_Process> to an ALE logical”. The XI process flow is from SAP with Idoc to XI – BPM and to JDBC. Have check setting in Adapter specific identifier which has logical system.  Could experts have same experience before, please advice?
    Thanks in advance.
    Katjun

    Hey,
    Have you maintained all the ALE setting from R/3 to XI > and the Port on Idoc Adapter IDX1 >?  Once try to specify Adapter Specific identifier to the bpm process .
    <b>Cheers,
    *RAJ*
    *REWARD POINTS IF FOUND USEFULL*</b>

  • Acknowledgement without BPM

    Hi.
    We have a scenario asynchronous ABAP proxy to JDBC.
    We have setup the scenario so that the Abap proxy requests a acknowledgement from the JDBC adapter. This is working fine.
    Is it possible to set an event for the acknowledgement or to wait for the acknowledgement before continuing?
    We do not want to use a BPM for this.
    Thanks

    Hi Rodney,
    from within your proxy, you must evaluate the ack and take different actions based on the status.
    The code would be something like shown in the "Querying an Acknowledgment" section of the following link:
    http://help.sap.com/saphelp_nw70/helpdata/EN/f4/8620c6b58c422c960c53f3ed71b432/frameset.htm
    Also, you may wanna wrap the ack query in a loop (DO ENDDO) while the ack is not returned, since it may take a while.
    Regards,
    Henrique.

  • Handling idoc acknowledgements inside BPM

    Hi,
      I have a scenario like this
    File - >XI BPM -> SAP (idoc)
    after posting idoc into sap ALEAUD idoc will be triggered for sending acknowledgements back to XI
    ALEAUD SAP->XI BPM -> email
                 I have activated application acknowledgement in the send step of BPM and also cofigured ALEAUD idoc in the SAP, it is working fine I could able to see the acknowlegement back from SAP system in SXMB_MONI. But my requirement is to read the acknowledgement messsage back in XI and if there are any errors during idoc posting I should send that error message as an email . I tried configuring reciever determination as follows
      Sender SAP
      sender interface ALEAUD
      reciever XIBPM
      reciever interface ALEAUD
               But this also didn't work, I am not seeing any message transferred between SAP and XI for ALEAUD idoc . I referred SAP how to do docs for handling idoc acknowlegement and also looked into some forum discussion but nothing helped. Is there anyway to read the acknowledgement messsage in the BPM?
                If anyone had come across such kind of scenario please help me.
    Thanks,
    Jayanth

    Hi Gasio,
         I checked SM58 nothing got stuck in that queue. Moreover I am explaining part of my BPM steps actually this is not the exact steps involved in BPM, lots of validation and data extractions are done prior to idoc send step.
         I am getting positive acknowledgement from SAP .  I am seeing the idoc message in the acknowledgement payload. My question is how to read the content of acknowledgement message in BPM.
        I have created correlation between idoc and acknowledgement idoc in the BPM as shown below
    Recieve file
    Transform to idoc
    Send step ( idoc )
    Recieve (ALEAUD idoc)
      But the process is waiting in the recieve step.
    Thanks
    Jayanth

  • IDOC- BPM- File - Acknowledgements

    The Scenario is to send IDocs from SAP through BPM to a file system. I want an acknowledgement to be sent back to SAP system incase of any error while writing the file. To simulate an error, I am giving an unauthorized file path. I have enabled application acknowledgements in the send step of BPM. I receive a negative acknowledgment from the File system to BPM saying unauthorized. But the acknowledgement from BPM to SAP system has the status 'Waiting for an acknowledgement' and the status of IDOC in SAP is still '03'.
    Please note that in case of successful message, the acknowledgement is sent all the way back to SAP and the status of IDOC is set to '41' from '03'.

    Vinoda, Are you sure the file system is sending you an Application acknowledgement ? To receieve an application acknowledgement in your send step, the receiver Business System should be capable of sending an acknowledgement back, i doubt whether a file system is capable of doing it, unless you have designed a clever mechanism of doing this. was just curious...
    Thanks
    Saravana

  • BPM  IDoc-XI-SOAP

    Hi BMP Gurus,
    I have a BMP scenario that look like this:  IDoc(ORDER05)-XI-SOAP.
    Within my BPM, I'm returning a confirmation (ALEAUD) back to R/3 to confirm the SOAP Call.  In my ALEAUD Idoc back, I'm mapping some of the original Idoc info (ORDER05). 
    Now, in addition, I would like to do map some of the Web Service result information back as part of the same ALEAUD Idoc.  How can I do that if my Interface Mapping back is defined for the original ORDER05 Idoc to ALEAUD?
    Is there a way to link different struc messages in BPM before sending the IDoc back to R/3? 
    I was looking at correlations but I think this will work for messages of the same structure only.
    Rgds,
    Yves

    Hi,
    Hope the below link will give you the answer...
    Forum post in Exchange Infrastructure: Idoc Acknowledgements and BPM.
    Idoc Acknowledgements and BPM.
    Reg,
    Srini

  • IDOC Acknowledgment

    Hello All,
    My scenario is SAP(IDOC) -
    >XI-->SAP(RFC synchronous)--> Webservice(synchronous) using BPM and Scenario running successfully.
    But my new approach is Source SAP(IDOC) expects the acknowledgement , If BPM process is  success till step and after expects acknowledgement if it success.
    Normally we used RFC/CWLD/ to send back the  response about IDOC to source SAP system  if the whole BPM process is success. But  at the moment we don't want call the RFC/CWLD instead RFC we need to send the IDOC acknowledgment
    So what is approach i need to follow from here? I am looking forward from you.
    Thank you very much.
    Kindest Regards,
    Sateesh

    Hi Bhavesh/ Indranil
    Thanks for your great response.
    @Bhavesh:  I have little doubts related to your answer
                          1)  SYSTAT IDOC is need to be import from sender SAP side?
                          2) is their any more configurations are required between XI and Sender SAP?
                          3) instead of using SYSTAT IDOC can I use ALEAUDIT01?
    @Indranil:
              My Scenario is SAP(IDOC sending)->XI->RFC Call syn(SAP)-->Webservice(SOAP Sync)
    Idoc is receviing to XI from Sender SAP system and it send to target SAP system using RFC call and getting RFC response back from target SAP and the response RFC is map Webservice call and get the response from Webservice call by status, If the status is 'success'  then I am sending the IDOC number status  back to  sender SAP
    system using RFC/CWLD call.
    But using insted of RFC/CWLD call I need to use the IDOC acknowledment to send back to sender SAP system.
    Please guide me how i will follow here. Thank you.
    Kindest Regards,
    Sateesh

Maybe you are looking for