cancel
Showing results for 
Search instead for 
Did you mean: 

SOAP (Async) PI -> RFC Interfacing

Former Member
0 Kudos

Hi Folks,

I am constructing an interface that is SOAP to RFC Interfacing. 

System details: PI
Server : 7.3 Version, SAP ECC 6.0

As part of the POC I am testing the interface from RWB in integration server (Test messages).

I have taken EXACTLY ONCE in SOAP CC and defined Service Interface as OUT BOUND and Asysnc.

In SXMB_MONI it is showing processed successfully message, but data not reaching the SAP.

Could you please help me out in this any other configuration required in RFC CC like adapter modules etc..

Thanks in Advance for your inputs

Ramesh.Dubba

Accepted Solutions (1)

Accepted Solutions (1)

former_member184681
Active Contributor
0 Kudos

Hi,

As far as I know, SXMB_MONI is for Integration Engine monitoring and only shows if the message has been successfully processed by the Integration Engine. It might so happen that SXMB_MONI shows "success", but the message did not reach the receiver, because the communication channel (which is placed in the Adapter Engine, not Integration Engine) has not been called successfully. So check Communition Channel Monitoring in Runtime WorkBench to see if PI successfully reached the receiver.

Moreover, here is what SAP Help says for receiver RFC connections that write to the database:

If you want to use this communication channel to call BAPIs as remote-enabled function modules that change the data in the database, choose Commit Handling for Single BAPI Calls.

So your problem could also be caused by incorrect receiver CC configuration. Mark "Advanced Mode", "Send Confirm Transaction" and "Commit Handling for Single BAPI Calls" indicators in the receiver CC to get the tRFC transaction confirmed and data committed to the database.

Hope this helps,

Greg

Former Member
0 Kudos

Hi,

I have forgot to post error in receiver CC in adapter engine.

Message processing failed. Cause:
com.sap.engine.interfaces.messaging.api.exception.MessagingException:
com.sap.aii.adapter.rfc.afcommunication.RfcAFWException: error while processing
message to remote system:com.sap.aii.adapter.rfc.core.client.RfcClientException:
functiontemplate from repository was <null>

Error in processing caused by:
com.sap.aii.adapter.rfc.afcommunication.RfcAFWException: error while processing
message to remote system:com.sap.aii.adapter.rfc.core.client.RfcClientException:
functiontemplate from repository was <null>

Best Regards











4/18/12
6:13:26 AM
2d5f3abe-8956-11e1-bfd5-00000012891eMessage processing failed. Cause:
com.sap.engine.interfaces.messaging.api.exception.MessagingException:
com.sap.aii.adapter.rfc.afcommunication.RfcAFWException: error while processing
message to remote system:com.sap.aii.adapter.rfc.core.client.RfcClientException:
functiontemplate from repository was <null>
Error4/18/12
6:13:26 AM
2d5f3abe-8956-11e1-bfd5-00000012891eError in
processing caused by: com.sap.aii.adapter.rfc.afcommunication.RfcAFWException:
error while processing message to remote
system:com.sap.aii.adapter.rfc.core.client.RfcClientException: functiontemplate
from repository was <null>
4/18/12
6:13:26 AM
2d5f3abe-8956-11e1-bfd5-00000012891eMessage processing started
former_member184681
Active Contributor
0 Kudos

Did you import the metadata of the RFC-enabled function module from some ECC system? See Question #16 and its answer in the RFC Adapter FAQ Note: 730870, it describes exactly your problem, giving lots of interesting details.

Hope this helps,

Greg

Former Member
0 Kudos

Hi,

I have reimported the metadata. Now i am getting the different error, saying NO_RECEIVER_CASE_ASYNC" "No receiver could be determined".

I have tested all ID objects by test configuration, there its not showing any error.

Could you pls suggest on this.
former_member184681
Active Contributor
0 Kudos

Hi,

There are two options:

1. The set of configuration you checked is for different sender system / different sender service interface. And for the right combination, you are missing a Receiver Determination (at least).

2. This is a cache issue. You can check it by performing a full cache refresh in sxi_cache.

Hope this helps,

Greg

Former Member
0 Kudos

yes i have tested wrongly. Now i am doing a full cache refresh in sxi_cache, hope it will work.

Former Member
0 Kudos

Hi

How would i know cache got refreshed? Where can i checked it?

Thanks

baskar_gopalakrishnan2
Active Contributor
0 Kudos

Go to integratiton builder .  Click menu Environment -> cache status overview.  Click refresh button and See the status and timestamp . Also go to server and use transaction sxi_cache and navigate to all your ID objects and see there. You might want to rerun the test and see the behavior.

former_member184681
Active Contributor
0 Kudos

I'm not sure if you can check if it is already refreshed, but every time I had to refresh the cache, I tested it immediately and my objects were already up-to-date, so you don't have to worry .

Regards,

Greg

Former Member
0 Kudos

Still the same error in receiver CC

Message processing failed. Cause:
com.sap.engine.interfaces.messaging.api.exception.MessagingException:
com.sap.aii.adapter.rfc.afcommunication.RfcAFWException: error while processing
message to remote system:com.sap.aii.adapter.rfc.core.client.RfcClientException:
functiontemplate from repository was <null>

Former Member
0 Kudos

yeah, got it. thank you

Former Member
0 Kudos

For this scenario, do we have any adapter modules to define in RFC adapter under module tab ( or ) it's not required

baskar_gopalakrishnan2
Active Contributor
0 Kudos

No adapter modules are not required. I believe you imported RFC in ESR Or IR and created target interface.   Plus you might want to check whether that RFC is available in ECC. Use SE37 in ECC.  Plus similar thread shown below

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

former_member184681
Active Contributor
0 Kudos

Cross-check if you are sending your RFC call to the right ECC system, the one where the remote-enabled function module is developed. It looks a little bit like you imported the definition (metadata) from one system, and now you are trying to call the FM in the other, where this FM doesn't exist.

Regards,

Greg

Former Member
0 Kudos

I have developed Sync scenaio its working fine with the same RFC Call

Former Member
0 Kudos

But I have developed Sync Scecnario with the same RFC call it's working fine, but giving problem with Async

Former Member
0 Kudos

I have imported in ESB and i have checked in SE37 its available, even i have done one sync scenario with the same RFC Call its working fine, i am facing issue only Sysnc, I want to mentioned one thing here i am using same interface and mapping objects just created new namesapce as it's having same sender stucture.

former_member184681
Active Contributor
0 Kudos

Hi,

Do you mean you have same sender structure under a different namespace? This might lead to your mapping working incorrectly. Take the sender payload from mapping (for this part that is not working) and test the mapping with it to confirm that your mapping works fine for it. Most probably it will not, because it will not create target structures properly, which is why you get this error while sending an empty message to RFC receiver.

Regards,

Greg

Former Member
0 Kudos

It's resolved, thanks alot

Answers (2)

Answers (2)

iaki_vila
Active Contributor
0 Kudos

Hi Ramesh,

You have an asychronous scenario and the sxmb_moni shows that the message exchange has been succecseful.

You should check in the ECC system:

1. Transaction st22 to check an exception in RFC

2. Take the output data for the inbound interface and debug in transaction se37 if the RFC generate the goal that is needed.

Regards.

baskar_gopalakrishnan2
Active Contributor
0 Kudos

>In SXMB_MONI it is showing processed successfully message, but data not reaching the SAP.

If SXMB_MONI shows successful means the message is left PI and reached SAP. See thoroughly whether any problem in pipeline steps one more time like call adapter step etc. If the message shows successfully that means connectvity between PI and SAP is good too. You need to check only in the SAP System whether you see any error over there. Since it is async message and PI shows successful as per SXMB_MONI, problem might be at the ECC side.