My first blog 🙂
In my recent project, I encountered a scenario where I had to retry when the RFC Lookup returns a message i.e. BAPI_RETURN with some message number(Error Message). The RFC Lookup didn’t throw any exceptions but returned a proper message with BAPI_RETURN and message type E. So I couldn’t use the default behavior of RFC Lookup to throw exception.
I mapped the BAPI_RETURN message type with standard “FixValues” Conversion function and didn’t maintain any conversion values and selected “Behavior if lookup fails” Throw Exception. Thus, whenever the RFC Lookup returns an error message it raises an exception and retries every 5 minutes interval for 3 times(default). This default behavior can be configured to have “n” number of re-tries before moving it to error queue.
This helped me a lot. So thought of sharing it with the community. May be you might have better way of doing it. If so please comment/share your ideas.