cancel
Showing results for 
Search instead for 
Did you mean: 

RFC Receiver Error

former_member190536
Participant
0 Kudos

Hi,

I am doing SOAP to RFC scenario in New system,

I am getting the RFC error as follows..


Returning to application. Exception: 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>


I tried to send source message from RWB-test tab also, getting the same error,

There were no  missing of mandatory fields in BAPI. I filled all fields, with the same fields I can able to do test run in SE37 manually.

date format also correct.

In message monitoring ->selected message->payload->MainDocument- then getting Payload content is empty.

If I click "View Message content" then I am getting the payload.

can you please let me know how to solve this?



Accepted Solutions (1)

Accepted Solutions (1)

former_member182412
Active Contributor
0 Kudos

Hi Khaja,

Check the request message which you sending to RFC adapter(Payload after request mapping), the root node must be the name of the function module.

Check below sap note, Question 16.

730870 - FAQ XI 3.0/ PI 7.0/ PI 7.1/ PI 7.11/ PI 7.2/ 7.3 RFC Adapter

Q 16: While sending a message to the RFC Adapter the error "...

functiontemplate from repository was <null>" is shown. What is the

reason?

A: After receiving a message from the Adapter Engine, the RFC Adapter

extracts the payload from the message. Normally this should be an XML

document in the RFC-XML format. In this format the root element of the

XML document represents the name of the function module and is

enclosed in the fixed RFC namespace

'urn:sap-com:document:sap:rfc:functions'. But this only will be

checked at a later point, when the conversion from XML to native RFC

is done. As prerequisite of this conversion the structures and types

of the function module parameters has to be known. This is also called

metadata or function template. To get this function template the name

of the function module is extracted from the root element of the XML

document and is queried against the metadata repository of the

communication channel. If the metadata repository doesn't have a

function module with this name, the exception named above is thrown.

Possible reasons are

o The XML document, which was sent to the RFC Adapter, is not a

RFC-XML document. So the root element name of this document is not

the name of a function module and thus can't be found in the

metadata repository.

o The metadata repository doesn't contain an entry for this function

module name. Normally the metadata repository will be an R/3 system

and it's function module repository can be searched with the

transaction SE37.

Regards,

Praveen.

former_member190536
Participant
0 Kudos

I am getting empty payload in the monitoring. Is there any way to find the error?

former_member186851
Active Contributor
0 Kudos

Check whether Data is sent from RFC in ECC.

former_member182412
Active Contributor
0 Kudos

Hi Khaja,

You need set the parameter as per below blog in order to display the synchronous message in message monitor.

After you set the parameter check the root node of the RFC request message, it should be the same name as RFC name in ECC.

Regards,

Praveen.

former_member190536
Participant
0 Kudos

Thanks All,

I resolved it finally, the interface mapping not worked, the response message not mapped there, and I re-developed all IR objects Now it started working.

Thanks to Praveen Gandepalli  this helped me to check the payload in Message monitoring.

Answers (1)

Answers (1)

iaki_vila
Active Contributor
0 Kudos

Hi Khaja,

May be the PI has a wrong RFC metadata, try to clear the CPA cache and try.

Regards.

former_member186851
Active Contributor
0 Kudos

Hello Khaja,

Any changes in RFC has been done?

If so do a RFC metadata update and stop/start the channel.

former_member190536
Participant
0 Kudos

Hi,

I am using PO 7.4, I re-started RFC channel but no use. No changes, I am using standard BAPI only,

BAPI_BILLINGDOC_CREATEMULTIPLE using this bapi to create invoice.

iaki_vila
Active Contributor
0 Kudos

Hi Khaja,

Go to ECC st22 transaction to check any exception.

There were no  missing of mandatory fields in BAPI. I filled all fields, with the same fields I can able to do test run in SE37 manually.

Even with this test if you are using wrong format in the date or currency fields the exception could be raised.

Pay attention that you are using the right client number that you are using to connect to ECC to test the RFC.

I have checked that not all is optional in that BAPI:

I think you can set an external breakpoint in the first line of the RFC code with the same user that you are using on the RFC receiver channel and check if the RFC can be called.

Regards.

former_member190536
Participant
0 Kudos

I am not getting any error in ST22, And I mapped to all required fields.. Still I am facing this issues.