cancel
Showing results for 
Search instead for 
Did you mean: 

JDBC to RFC Asynchronous Acknowledgements

former_member460664
Participant
0 Kudos

Dear All,

I have many scenarios from SQL server 2008 to SAP. My customer wants to know success or failure of message. So, I will have to set acknowledgements for all required scenarios. How to set Acknowledgements in PI? Any help would be great appreciated.

Thanking you.

Best Regards,

Ashok.

Accepted Solutions (0)

Answers (3)

Answers (3)

ambrish_mishra
Active Contributor
0 Kudos

Hi Ashok,

While there might be technical solutions related to message success or failure, I have a different opinion about this requirement. Every interface is designed and developed to succeed so you should tread this carefully.

Please look at the interesting discussion on the thread below:

http://scn.sap.com/message/14187607

I hope you decide on this prudently

cheers,

Ambrish

former_member460664
Participant
0 Kudos

Dear Ambrish,

I have gone through the discussion sent by you. By using alerts, can I achieve my requirement? If customer is ready to know only failure messages, what should I choose? If SAP sends error message to PI ( synchronous configuration) there is no problem. But I have developed interfaces already as asynchronous scenarios. With existing scenarios, how can I can achieve this?

Best Regards,

Ashok.

ambrish_mishra
Active Contributor
0 Kudos

Hi Ashok,

Good to know that you searched on SCN before posting this query.

Alert mechanism is a standard way of notifying failures. That's what you should opt for.

With existing scenarios (which you have developed as asynchronous), let the design be what it is and just configure for alerts to be sent for notifying failures.

You can look at SCN for details on how to configure alerts. Basis team should help you configure this.

Hope this answers your question.

Ambrish

former_member460664
Participant
0 Kudos

HI Ambrish,

Thanks for your response. For suppose, if SO is created successfully in SAP but delivery is not created in SAP because of some functional issues like Customer is locked, Credit limit problem and many other. Customer wants to know the exact reason why delivery is not happened in SAP. If I configure alerts, can I show this kind of functional issues?

My scenarios are Initiating from Portal (.net system) and PI takes data from back end database ( SQL server 2008) of Portal. Customer wants to see SAP error in the database itself. By using alert configuration, can I pass the error to database with existing asynchronous scenarios.? Please suggest your best solution for this requirement

Best Regards,

Ashok.

ambrish_mishra
Active Contributor
0 Kudos

Hi Ashok,

Creation of SO, sales order confirmation and subsequent delivery and GI/GR are independant interfaces yet sequential and inter-related transactional activities in SCM.

These are configurable automatically or manual activities. Suppose the delivery creation may fail in production due data or APO issues. This IDoc failure can be captured through alerts in ECC and business owner notified since he would be closest to the system and the processes.

Suppose a delivery creation triggers an IDoc, and it fails because of above mentioned issues, alerts generated would highlight the issue. If it is manually through VL0N (if I remember it correctly), the person running the transaction would know of it immediately on screen and take remedial action.

So you are covered... please discuss this process with your functional owner and business owner and do a walkthrough of the process.

Cheers

Ambrish

former_member460664
Participant
0 Kudos

Hi Ambrish,

I have used ZBAPI's at SAP side not IDOC's. If there exists any error while executing PGI/PGR or Z11 or in any movement type like 309,541,551 etc,... by using Alert configuration in PI, can I send alert to the customer with same SAP error message? If so, How to configure this requirement in PI?

Best Regards,

Ashok.

ambrish_mishra
Active Contributor
0 Kudos

Hi Ashok,

Since the errors are occuring in ECC, you cannot handle it in PI.

you can send emails with error details from ABAP code. There is a standard function module in ABAP for this. You can code this in ZBAPI ...

Ambrish

baskar_gopalakrishnan2
Active Contributor
0 Kudos

Already above replies shows SAP Note.  If you care about any failure in this scenario, you might want to consider configuring alerts. This way your client might get some mails related to failure.

You need to know whether you need system or application acknowledgment. Doing application acknowledgement is simple. Please create as below...

If your sender system is expecting message acknowledgement then you can consider jdbc - RFC - jdbc scenario. This way you send the response to sender system for successful scenarios passing some dummy text acknowledgement.. or if there is application acknowledgment you can do it too.

former_member460664
Participant
0 Kudos

Dear Baskar,

In my requirement (asynchronous), JDBC sends data to PI. PI assign the data to BAPI.  After executing BAPI, SO, Delivary and billing should create in SAP. For some cases, SO is creating but delivary was not creating because of some functional issues like credit limit of customer, and other functional issues. But In PI monitoring, there is no error. While checking in SAP for delivary, it is showing as open document means not created. So customer wants to know the reason why it is not creating. If I pass the error to sender JDBC, I have to change all asynchrous scenarios as synchronous. I dont like to change the existing scenarios. Please help me, is there any way to do above requirement?

I have choice to use system acknowledgements or application acknowledgements.

Best Regards,

Ashok.

former_member184720
Active Contributor
0 Kudos

I dont think there is a standard functionality to achieve this..

SAP Note:

  • Q: Does the JDBC Adapter support acknowledgements?
  • A: You need to distinguish system acknowledgements (indicating that a message has been received by the target system) and application acknowledgements (indicating that the message has been successfully processed by the application on the receiver side).

           The receiver of an XI message will only send an acknowledgement back to the sender if the sender has requested one. However, the JDBC Adapter has no functionality that relies on the receipt of an acknowledgement, so it never requests one. 

           On the other hand, if a JDBC Adapter Receiver receives a request to send an acknowledgement, it will do so for a system acknowledgement request. Application acknowledgements are not supported at all as the JDBC Receiver has no way to determine if the data written to the database has been correctly processed by the back-end application, which is what a positive application acknowledgement would imply.

You may have to develop some kind of Proxy to JDBC scenario to recieve the acknowledgements..

former_member460664
Participant
0 Kudos

Dear Hareesh,

Thanks for your response. If system acknowledgements are enough, If so, all my asynchronous scenarios should change as synchronous? or I can go ahead with existing asynchronous method? I have developed all scenarios. After UAT my customer has asked these acknowledgements or error message if there is any failure in SAP transaction. Now I dont want to change my existing scenarios. Please give your valuable inputs to this requirement.

Best Regards,

Ashok.