RFC

1. What are the types of remote communications ? • communications between two independent SAP System • client-server communications between an external client and an SAP System acting as the server • client-server communications between an SAP System acting as the client and an external server. 2. RFC is SAP's platform-independent core technology for all the three types of remote communications. 3. What is OLE ? For Windows frontends, SAP provides interfaces based on Microsoft's Object Linking and Embedding technology (OLE Automation). 4. What is RFC? A remote function call is a call to a function module running in a system different from the caller's. The remote function can also be called from within the same system (as a remote call), but usually caller and callee will be in different systems. 5. How is ABAP/4 used as OLE Automation Controller ? An ABAP/4 program can call up an OLE Automation Server (such as Excel) on the desktop. The ABAP/4 OLE Automation Controller consists of a set of ABAP/4 language elements that an ABAP/4 client program can use to drive an OLE Automation server on either Windows or Apple Macintosh frontends. 6. What is the statement used for calling RFC in ABAP/4 programs? Any ABAP/4 program can call a remote function using the CALL FUNCTION DESTINATION statement. 7. RFC functions must be registered in SAP systems as ___________. Remote. 8. Destination parameter are defined in which table? Logical destinations are defined in the RFCDES table (or the TRFCD table in R/2 Systems) via transaction SM59 9. How to Call interfaces for non-SAP programs ? To help implement RFC partner programs in non-SAP Systems, SAP provides : - The RFC Generator to create stub programs External Interfaces 10. What is RFC generator ?

What is RFC-API? The RFC-API on OS/2. What is RFC stub program? RFC stub programs contain all the parameter-handling and communications necessary to call SAP function modules from a non-SAP System. This stub serves as an interface between the calling program and the function module. the transactional RFC (tRFC) was introduced for R/3 systems from Release 3. With this tool. 12. RFC client is the instance that calls up the Remote Function Call to execute the function that is provided by an RFC server. 13. It is of no significance to the caller whether the remote function is provided in an SAP System or in a C program. All RFC functions available in a remote RFC server system. Windows. This facility is the RFC Interface Generator. the functions that can be executed remotely will be called RFC functions and the functions provided via RFC API will be called RFC calls 15. How does processing of RFC interface take place in ABAP/4? The RFC interface is effectively invisible to the ABAP/4 programmer. which are called by an RFC client. Processing for calling remote programs is built into the CALL FUNCTION statement. Processing for being called is generated automatically (in the form of an RFC stub) for every function module registered as remote. 17. In the following. 14. . 11.0 onwards. Windows NT and all R/3-based UNIX platforms makes it possible to use the RFC functionality between an SAP System (R/3 from Release 2. What is Transactional RFC? To make the execution of RFC functions reliable. are processed transactionally 16.0D onwards) and a C program on the above platforms. safe and independent from the availability of the RFC server or RFC server system. you can create RFC stub programs (that call SAP function modules) and example programs (that show how to call stub programs). When is RFC connection closed ? When the context of the calling ABAP/4 program has ended or explicitly by RfcAbort or RfcClose in the external program.The function library in R/3 provides a facility for generating and then downloading RFC programs to a workstation or PC.1 and R/2 from Release 5. Distiningish between RFC client & RFC server.data can be tranferred between two R/3 systems. This ensures that the called function module is executed only once in the RFC server system.

the interface for these functions should not specify any EXPORT parameters. 21. What are restrictions for Transactional calls? There are two restrictions on writing remote functions that are to be called transactionally: · Transactional calls cannot return parameter values. the remote call is forwarded to the requested system for execution. there is no reason for you to raise them in your program. 20.11: All TCP/IP products that support the socket interface. 19. OS/2: TCP/IP for OS/2 from IBM. If this name is specified in an RFC call on the system acting as the server. Once an RFC connection is established. with parameter data in byte-stream form. Where system logs the remote call request in DB tables? The system logs the remote call request in the database tables ARFCSSTATE and ARFCSDATA with all of its parameter values.1/3. What are technical requirements for RFC programming in ABAP/4? External Systems systems must support TCP/IP. Transactional RFC requests are transferred. . · Functions that run transactionally may not perform call-backs: the caller's context does not necessarily still exist when the call-back is relayed back to the original system. 22. How call-back mechanism used in RFC calls? You can trigger this call-back mechanism by using the special destination name "BACK". As a result. using TCP/IP or X400. Windows NT/95: Microsoft standard UNIX platforms: Manufacturer's standard The RFCSDK for the respective platforms contains the following libraries and includes: saprfc. the system uses the same RFC connection that was established when the server received the first call. it is maintained until it is either explicitly closed or until the calling program terminates 23. What exceptions raise in a remote funcation? System raises COMMUNICATION_FAILURE and SYSTEM_FAILURE internally.18. Windows 3. You can display the log file using transaction SM58. When the calling program reaches a COMMIT WORK.h This include file contains all data types and structures required and the prototypes (declarations) of the RFC calls.

librfc3.h librfc OS/2: Windows 3. librfc2.dll.sapitab.lib for Compile/Link librfc16.lib for Compile/Link librfc.dll.a SAP R/3 Systems For RFC between external systems and R/3. except that the R/3 System has to be Release >= 2.11: Windows NT/95: UNIX-Platforms: This include file contains all the RFC calls required to manipulate internaltables Depending on the platform.1. .dll and librfc32.lib for Compile/Link librfc32.dll and librfc16.1/3.dll.dll and librfc. there are no specific requirements in the R/3 System.dll and librfc5. the following libraries are required: librfc. librfc4.