Hello,

Sign up to join our community!

Welcome Back,

Please sign in to your account!

Forgot Password,

Lost your password? Please enter your email address. You will receive a link and will create a new password via email.

You must login to ask a question.

Please briefly explain why you feel this question should be reported.

Please briefly explain why you feel this answer should be reported.

Please briefly explain why you feel this user should be reported.

SAP EWM Help Latest Questions

  • 0
  • 0
DPM125

Types of RFC Function Modules

Synchronous RFC (sRFC)

  • Default type when you call a function module via RFC.

  • The caller program waits until the remote system has completed the function execution and returned the result.

  • Example use: Real-time data retrieval (e.g., fetching stock from another SAP system).

  • FM execution: CALL FUNCTION 'XYZ' DESTINATION 'SAP_R3'.

2. Asynchronous RFC (aRFC)

  • Execution is non-blocking → Caller does not wait for immediate results.

  • You can trigger parallel processing by calling multiple aRFCs at the same time.

  • Example use: Mass data processing, parallelizing jobs.

  • FM execution:

CALL FUNCTION ‘XYZ’ STARTING NEW TASK ‘TASKNAME’
DESTINATION ‘SAP_R3’
PERFORMING callback_form ON END OF TASK.

 

3. Transactional RFC (tRFC)

  • Similar to aRFC, but with transactional reliability.

  • Each call is executed exactly once in the target system (using LUWs – Logical Units of Work).

  • Stored in SM58 until delivered successfully.

  • Example use: Posting documents, ALE/IDoc communication.

  • FM execution:

CALL FUNCTION ‘XYZ’ IN BACKGROUND TASK
DESTINATION ‘SAP_R3’.
COMMIT WORK.

4. Queued RFC (qRFC)

  • Extension of tRFC, but ensures sequence/order of execution using queues.

  • Uses inbound and outbound queues (transactions SMQ1/SMQ2).

  • Example use: When sequence matters (e.g., stock transfer must happen before goods issue).

  • FM execution: Similar to tRFC, but with queue configuration.

 

Summary :

Type Waits for Response? Reliability Order Guaranteed? Use Case
sRFC Yes Once No Real-time queries
aRFC No Once No Parallel processing
tRFC No Exactly Once No Data transfer, ALE/IDoc
qRFC No Exactly Once Yes Sequential processing

So, depending on your scenario:

  • Use sRFC for synchronous real-time calls.

  • Use aRFC for parallel jobs.

  • Use tRFC for reliable background communication.

  • Use qRFC when sequence matters.

Related Questions

Leave an answer

Leave an answer