Skip to Content
avatar image
Former Member

XI exception in RFC adapter

Hi,

I have CRM (RFC) -> XI -> Third Party (HTTP call) scenario. Its a synchronous call in which the third party send a response back. My question is as below -

Suppose call gets triggered from CRM successfully and it reaches the third party. The third party sends back a success response to XI. In XI the message fails in the mapping (or any other error). Generally I will catch the exception in RFC and i will know that the call failed in XI.

But is there a way to know in CRM that the call has actually failed on the response leg and the request leg was successful? This is important to know because in this case the third party system has actually processed the message and the message should not be retriggered.

The exception I get from RFC is same for both request and response failures in XI but I want to differenciate it in CRM.

I know we can do it using BPM. But i wanted to know is there other way of achieving this? I can define the Fault messages but they really are for the expections raised by third party. Here its not an exception from third party. The exception is from XI response leg of the sync message.

Any help will be appreciated.

Thanks,

Rahul.

Add comment
10|10000 characters needed characters exceeded

  • Get RSS Feed

1 Answer

  • Jan 12, 2011 at 09:04 PM

    >>> But is there a way to know in CRM that the call has actually failed on the response leg and the request leg was successful? This is important to know because in this case the third party system has actually processed the message and the message should not be retriggered.

    You are doing Sync RFC TO HTTP. IMHO, Please try to fix the mapping error during response. Can you elaborate the reason for occuring mapping error? if the error is due to data issue and happens runtime only some occasions, why dont you fix it ? That is an elegant approach. Fault message is not going to solve your problem too.

    I would give one solution... Do alert configuration and include CRM group members email in the configuartion step. This might help for some ways to know the reason for failure.

    Add comment
    10|10000 characters needed characters exceeded

    • Former Member

      Hi,

      Thanks for your response.

      Its not an mapping error. If it was, we would have fixed it as suggested by you 😊

      Its failing with error - HTTPIO_PLG_CANCELED. And this is not a persistent error as far as I could figure out. (After few messages failed with this error, suddenly the interface started to work again). We are trying to get a permanent fix for that.

      But in any case, issues like these might come for various reasons. Hence I want to ensure that the source system (CRM) is notified of the 'real' error (stating that the message has actually reached the third party). We already have alerts for the failure notifications. But what we want to know in CRM is that the call has been processed in 3rd party system and it should not be retriggered from CRM.

      We can build 'manual procedures' around it so that first we check in XI and third party before re-triggering the call but wanted to know if we can get that message back to CRM.

      Is it possible to get such response if we use Proxies instead of RFCs?

      Thanks again.

      Regards,

      Rahul