cancel
Showing results for 
Search instead for 
Did you mean: 

RFC to RFC -> RFC_ADAPTER - APPLICATION_ERROR

Former Member
0 Kudos
75

Dear all,

I am making a message RFC -> XI ->RFC and I had an error that I can see into SXMB_MONI:

NODE SOAP HEADER -> ERROR:

<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>

- <!-- Request Message Mapping

-->

- <SAP:Error xmlns:SAP="http://sap.com/xi/XI/Message/30" xmlns:SOAP="http://schemas.xmlsoap.org/soap/envelope/" SOAP:mustUnderstand="1">

<SAP:Category>Application</SAP:Category>

<SAP:Code area="RFC_ADAPTER">APPLICATION_ERROR</SAP:Code>

<SAP:P1 />

<SAP:P2 />

<SAP:P3 />

<SAP:P4 />

<SAP:AdditionalText />

<SAP:ApplicationFaultMessage namespace="urn:sap-com:document:sap:rfc:functions">Z_RET_DADOS.Exception</SAP:ApplicationFaultMessage>

<SAP:Stack />

<SAP:Retry>M</SAP:Retry>

</SAP:Error>

NODE PAYLOADS -> MAINDOCUMENT (APPLICATION/XML)

<?xml version="1.0" encoding="UTF-8" ?>

- <ns0:z_RET_DADOS.Exception xmlns:ns0="urn:sap-com:document:sap:rfc:functions">

<Name>RFC_ERROR_SYSTEM_FAILURE</Name>

<Text>Document posted with success</Text>

- <Message>

<ID>RFC_ERROR_SYSTEM_FAILURE</ID>

<Number>null</Number>

</Message>

</ns0:Z_RET_DADOS.Exception>

This error regards to a message type I into source code of the target RFC Function. If I take off this message type I, the communication works fine, but in my application I will not be able to take off this message type I.

Does anybody know how can I solve this error?

Best Regards,

Fernando

Accepted Solutions (0)

Answers (1)

Answers (1)

MichalKrawczyk
Active Contributor
0 Kudos

hi,

can you wrap your RFC (the one with Exception) into another one

and call this new one from RFC ? so you will never get any exception ?

(if you don't want to see it)

so you will call one RFC inside which you will make another call to the original RFC

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>

udo_martens
Active Contributor
0 Kudos

Hi Michal,

i ve some serios doubts if it is a valueable strategy to close the eyes in case of errors. I would recommend to follow <a href="/people/michal.krawczyk2/blog/2006/01/17/xi-debugging-rfc-calls-from-the-xi-not-possible-who-said-that-">XI: Debugging RFC calls from the XI not possible? Who said that? :-)</a>

Regards,

Udo

MichalKrawczyk
Active Contributor
0 Kudos

Hi Udo,

sure it is! you're using RFCs! (so it's "your" fault that you have no error handling)

PROXIES or IDOCs are a way to go if you want great error control and not RFC...

BTW

my blog which you show is only a remedy/cure and you need

a complete IDEA how to handle your message errors

Regards,

michal

Former Member
0 Kudos

Hi Michal,

I did what you said. I wrapped my RFC function with another one but I could not work with the exception because this is caused by the message type I into souce code.

How can I work with a exception caused by a message type I?

Best Regards,

Fernando

udo_martens
Active Contributor
0 Kudos

Hi Fernando,

you have to solve the error. It makes <b>no</b> sense 2 work at anything else. All other efforts will end at ST22.

How about putting a constant (0) to the Integer field in case of no value (by XI mapping)?

Regards,

Udo

Former Member
0 Kudos

Hi Udo,

I agree with you, but I need to know a way to work with messages type I into source code of the target RFC.

I need to know why a message type I causes an exception SYSTEM_FAILURE into souce RFC.

Do you know why it happens?

Thank a lot.

Regards,

Fernando