Top 40 Sap Rfc Interview Questions
Q1. State Some Factors That Can Increase The Response Time Of An Rfc Connection Between Two Systems?
The reaction time for the transfer of facts relies upon on the network used. Ideally, the response time must be between 10 and a hundred milliseconds.
High response times may be because of the subsequent three things
The community connection is typically gradual or overloaded.
The recipient device is bodily overloaded.
Too few techniques are configured within the recipient machine to acquire RFCs.
Q2. How Is Abap/four Used As Ole Automation Controller ?
An ABAP/four program can call up an OLE Automation Server (which include Excel) at the laptop. The ABAP/four OLE Automation Controller includes a hard and fast of ABAP/four language elements that an ABAP/4 consumer application can use to power an OLE Automation server on both Windows or Apple Macintosh frontends.
Q3. What Is Parallel Processing In Rfc (prfc)?
Parallel Processing is an extension of aRFC. Generally when we call a feature module, it's going to prevent the cutting-edge software, execute another (known as) software after which returns manipulate to original software and again authentic application starts execution.
With asynchronous function module manipulate will start parallel without stopping the contemporary application from which you referred to as the characteristic module. Parallel processing is usually used while there's a want to procedure big amount of records.
In parallel processing, a task step is started as ordinary in a heritage processing paintings procedure. A software that runs in a activity step may be programmed to use a special variant of asynchronous RFC to have portions of the statistics to be processed run in parallel in different work tactics. You can apprehend the sort of application via its use of the CALL FUNCTION STARTING NEW TASK DESTINATION IN GROUP practise to start the characteristic modules that procedure the information.
While the activity itself runs in a history technique, the parallel processing responsibilities that it starts, run in dialog work approaches. Such conversation paintings tactics can be positioned on any SAP server. Parallel processing has been applied in some SAP applications which have long-going for walks reviews.
Q4. How To Debug A Remote Function Call (rfc)?
METHOD 1:
Suppose you need to debug a function module that is there in SRM/APO machine from R/3.
(FYI: As you all recognise this RFC Destination is maintained via transaction code SM59 )
Keep the external ruin-factor in your calling software earlier than it calls the RFC. Now login into the Destination system wherein you’re faraway enabled characteristic module exist and placed an external damage-point.
Now go to Transaction code SRDEBUG and click on at the Activate Debugging Button: It will provide you with a pop up which verify your id, software server etc.
Click enter that allows you to come up with any other popup. Keep it as it's far.
Now go to your Report software in supply device and Execute it , it'll open debugger , whilst you press F5 key to go within the RFC Function module it will start debugging in APO device.
METHOD @Calling a custom RFC
Three steps desires to be accompanied.
For instance we are calling an RFC enabled FM in ECC system from CRM system.
Add an limitless loop inside the far off custom Function Module (including a “DO. ENDDO.” assertion at the begin of the FM could be sufficient).
Execute your program in the CRM device. The execution stops at the RFC name, due to the infinite loop.
Now login to the ECC gadget and visit transaction SM50 select the manner which is executing the RFC and navigate to the menu: “Program/Session->Program->Debugging” this triggers the debugger session in a separate window.
Q5. What Is The Statement Used For Calling Rfc In Abap/4 Programs?
Any ABAP/4 program can call a far flung characteristic the use of the CALL FUNCTION DESTINATION assertion.
Q6. What Is An Rfc Interface? What Are The Types Of Rfc Interface?
The RFC interface presents the potential to name faraway features. In SAP, RFC Interface device is used for placing-up RFC connections between distinct SAP systems, and also among an SAP and an outside (Non SAP) machine.
RFC includes two interfaces:
a) Calling interface for ABAP Programs: Any ABAP program can call a remote function the use of the CALL FUNCTION...DESTINATION announcement. The DESTINATION parameter tells the SAP System that the known as characteristic runs in a gadget other than the caller's.
Syntax:
CALL FUNCTION <‘RFC_Name’>DESTINATION
EXPORTING
f1 =
IMPORTING
f2 =
TABLES
t1 =
EXCEPTIONS
.
B) Calling Interface For Non-SAP applications: If either the calling program or the referred to as accomplice isn't always an SAP program, the program in query must be programmed in this kind of manner that it is able to play the role of the other partner in RFC communication. RFC-supported and GUI-supported interfaces can be utilized by external applications to call characteristic modules in SAP systems, and execute them in those systems. Likewise, ABAP applications can also use these interfaces to use functions provided through external applications. Connectors can be used to obtain the same, as an instance SAP Java Connector (JCo) or SAP .Net Connector.
Q7. Where System Logs The Remote Call Request In Db Tables?
The gadget logs the far flung call request in the database tables ARFCSSTATE and ARFCSDATA with all of its parameter values. You can display the log record the usage of transaction SM5@When the calling software reaches a COMMIT WORK, the remote name is forwarded to the asked machine for execution.
Q8. Distiningish Between Rfc Client & Rfc Server?
RFC patron is the instance that calls up the Remote Function Call to execute the feature that is furnished by an RFC server. In the following, the features that may be accomplished remotely will be known as RFC features and the capabilities furnished through RFC API will be known as RFC calls.
Q9. What Are The Different Testing Options Available For Rfc Connection?
Different trying out options to be had for RFC connection are:
Connection take a look at.
Authorization test.
Unicode Test.
Remote Logon Test
Q10. What Is Rfc Stub Program?
RFC stub programs include all the parameter-dealing with and communications necessary to name SAP function modules from a non-SAP System.
Q11. Destination Parameter Are Defined In Which Table?
Logical locations are defined inside the RFCDES desk (or the TRFCD table in R/2 Systems) through transaction SM59
Q12. What Do You Mean By Rfc? Explain In Detail?
RFC stands for Remote Function Call. Remote Function Call is an interface for communique between a SAP System and different SAP or 1/3-birthday celebration well matched machine. Remote characteristic calls can be associated with SAP software program and ABAP programming and provide a way for an outside program (written in languages along with PHP, ASP, Java, C, C++) to apply facts again from the server or insert information into server records.
For business packages, from time to time it turns into essential to speak and alternate records (in predefined codecs) with different SAP Systems or non-SAP Systems (Example Visual Basic to SAP, Java to SAP and many others.). To enable this conversation, SAP has supplied us with a mechanism referred to as RFC, which stands for 'Remote Function Call'.
RFC’s can be used for outside integration with SAP, such as PHP/SAP, Flex/SAP, Ruby/SAP, etc.
In SAP, RFC Interface gadget is used for placing-up RFC connections between one-of-a-kind SAP systems, and additionally between an SAP and an outside (Non SAP) system.
Say as an instance, If you've got VB system which has your organisation's Inventory Management & you have FICO / SD / MM / PP in you SAP system. Your VB Inventory mgmt machine desires to send or obtain data/update database in SAP. This can be executed use RFC.
Although an RFC associated with verbal exchange among specific systems, it is able to additionally be created for communication inside a gadget.
RFC’s can be created or maintained via transaction code SE3@RFC calls a feature to be accomplished in a far off system. SM59 transaction code can be used to define and preserve the logical vacation spot of RFC.
Q13. What Is Ole ?
For Windows frontends, SAP presents interfaces based on Microsoft's Object Linking and Embedding generation (OLE Automation).
Q14. What Are The Disadvantages Of Transactional Rfc (trfc)?
Some of the dangers of tRFC are:
tRFC strategies all LUWs impartial of one another. Due to the quantity of activated tRFC processes, this manner can reduce performance substantially in each the send and the goal structures.
In addition, the collection of LUWs defined inside the application cannot be saved. Therefore, there is no guarantee that the transactions are achieved within the collection dictated through the application. The most effective assure is that every one LUWs are transferred eventually.
Q15. How Can You Differentiate Types Of Rfc By Syntax In An Abap Program?
Basically RFC’s may be diagnosed in an ABAP software by the syntax CALL FUNCTION <rfc name=' '> DESTINATION <destination name=' '>.
If the RFC feature call consists of the clause STARTING NEW TASK, it is an asynchronous RFC; the clause IN BACKGROUND TASK suggests a transactional RFC. If the decision only contains the clause DESTINATION, however neither STARTING NEW TASK nor IN BACKGROUND TASK, then the RFC is started as a synchronous RFC.
The following code begins the functional module ZRFC_SALES_DEL_STATUS synchronously, asynchronously, and transactionally.
* Synchronous RFC
CALL FUNCTION ‘ZRFC_SALES_DEL_STATUS’
DESTINATION ‘R10’
EXCEPTIONS
argument_error = 1
send_error = 2
OTHERS = three.
* Asynchronous RFC
CALL FUNCTION ‘ZRFC_SALES_DEL_STATUS’
STARTING NEW TASK task
DESTINATION ‘R10’
EXCEPTIONS
communication_failure = 1
system_failure = 2
RESOURCE_FAILURE = three.
* Transactional RFC
CALL FUNCTION ‘ZRFC_SALES_DEL_STATUS’
IN BACKGROUND TASK
DESTINATION ‘R10’
COMMIT WORK.
Q16. What Is Queued Rfc (qrfc)?
When transactional RFC’s are used, there is no assure of the order wherein the function calls will be processed inside the machine (it is quite feasible that one name may overtake any other). For cases wherein there may be a need to specify a specific processing order, Queued RFC may be used.
QRFC is an extension of tRFC. In qRFC, you region every characteristic name in a logical queue. A characteristic call can not be accomplished until all of its predecessors within the queue had been processed. Queued RFC calls are processed asynchronously.
QRFC are to be favored whilst there may be a want of assure that several transactions are processed in a predefined order or when there may be a want of guarantee that a couple of LUWs (Logical Unit of Work/ Transaction) are processed in the order special via the utility.
QRFC guarantees that the transaction is dedicated primarily based on FIFO Queue. It ensures transaction consistency of LUW and reliability of information transmission. The machine shops the queue specifications in table TRFCQOUT. With each COMMIT WORK, the device determines a counter that is used to keep the series of transaction processing.
SMQ1: To display the outbound queues of a sending system refer SCOT for Fax.
SMQ2: Provides interface to screen inbound queues.
Q17. What Are Restrictions For Transactional Calls?
There are regulations on writing faraway features that are to be known as transactionally:
Transactional calls can not return parameter values. As a end result, the interface for those capabilities must now not specify any EXPORT parameters.
Functions that run transactionally may not perform call-backs: the caller's context does no longer always nonetheless exist when the decision-returned is relayed returned to the original system.
Q18. What Are The Features Of Transactional Rfc (trfc)?
Some of the salient functions of tRFc are:
tRFC ensures that a referred to as feature module is accomplished inside the target gadget precisely once.
All tRFC calls terminated with the declaration COMMIT WORK belong to 1 LUW (Logical Unit of Work). Each LUW robotically receives a transaction ID.
Within an LUW, all function modules are achieved in the target machine within the collection in which they're called in the ship system.
TRFC calls with the addition AS SEPARATE UNIT map a separate LUW every inside the target gadget. Such a sub LUW carries precisely one tRFC call and is processed impartial of the real (advanced) LUW. This sub LUW receives its personal transaction ID.
If within an LUW several locations are used, all tRFC calls that belong to at least one vacation spot additionally shape a sub LUW. However, due to the fact that this bundling happens only internally, there's no separate transaction ID assigned to the sub LUW.
Q19. How Does Processing Of Rfc Interface Take Place In Abap/4?
The RFC interface is correctly invisible to the ABAP/4 programmer. Processing for calling far flung packages is constructed into the CALL FUNCTION announcement. Processing for being called is generated robotically (in the form of an RFC stub) for each function module registered as far off. This stub serves as an interface among the calling application and the characteristic module.
Q20. What Are The Functions Of Rfc Interface?
Some of the features of the RFC interface are:
Calling the verbal exchange exercises wished to speak to the remote gadget.
Converting all parameter statistics to the representation wanted in the far flung device
Handling communications errors, and notifying the caller, if favored (the use of EXCEPTIONS parameter of the CALL FUNCTION).
Q21. What Is Rfc-api?
The RFC-API on OS/2, Windows, Windows NT and all R/three-primarily based UNIX systems makes it viable to apply the RFC capability between an SAP System (R/three from Release 2.1 and R/2 from Release five.0D onwards) and a C program at the above platforms. It is of no significance to the caller whether or not the remote feature is supplied in an SAP System or in a C software.
Q22. What Is Asynchronous Rfc (arfc)?
Asynchronous RFC is based totally on asynchronous conversation which means the receiving machine may also or won't be able to retrieve the feature name request made from the sender device. The feature call can be processed at a later time while the receiving device receives available. Till that time the function name stays in an outbound queue of the sending gadget and the decision is repeated at ordinary intervals until the receiving machine gets to be had to process the request.
The advantage of this communique is that the receiving machine want now not be to be had all of the time to method the request specially in instances in which the receiving machine is temporarily unavailable like due to improve or every other reason.
ARFC is a means of communique between structures in which acknowledgements are not required (it's far similar to put up card delivery).It doesn't require each the systems to be available on the time of execution and the end result isn't always right away required to be sent back to calling machine.
The Source System aid does now not await the goal device as they deliver the message/facts without looking ahead to any acknowledgement. It isn't reliable for verbal exchange in view that statistics may be misplaced if the target device isn't always available.
Asynchronous RFC can be used for
For verbal exchange between systems.
For parallel processing jobs.
Q23. What Is Fast Rfc (frfc)?
Fast RFC is a form of RFC used for device internal communications. Interactions among J2ee engine in SAP & the ABP runtime environment in the equal example are achieved the usage of Fast RFC. This form of RFC is feasible simplest if both the supply & goal are on the equal machine.
Q24. When Is Rfc Connection Closed ?
When the context of the calling ABAP/four application has ended or explicitly by RfcAbort or RfcClose inside the outside application.
Q25. What Is Transactional Rfc?
To make the execution of RFC functions reliable, safe and unbiased from the provision of the RFC server or RFC server system, the transactional RFC (tRFC) turned into introduced for R/3 systems from Release three.0 onwards,statistics can be tranferred among R/three structures. This guarantees that the known as feature module is finished handiest once in the RFC server machine.
Q26. What Is The Disadvantage Of Using Queued Rfc (qrfc)?
If, for example, due to network/communique issues the first LUW in a queue can't be performed, no longer only this queue maintains pending, but also all other LUWs that are interdependent with this queue. The ensuing "jam" should purpose a database hassle. However, as quickly because the verbal exchange problem is solved, all transactions and therefore all queues may be processed mechanically one after the alternative.
Q27. What Is Rfc?
A far flung feature call is a call to a function module walking in a machine exceptional from the caller's. The faraway characteristic can also be referred to as from in the same system (as a far flung name), but commonly caller and callee might be in distinctive systems.
Q28. What Is Synchronous Rfc (srfc)?
Synchronous Communication is carried out whilst there may be a want for instant go back of facts (response) from the receiving system to the sender machine. The receiving system must be energetic on the time this communication is made so that it is able to procedure the characteristic name at that very time. This communique is very beneficial while actual time response is required or whilst effects are required at once from the vacation spot machine.
Synchronous RFC is based totally on synchronous communication which means that each the supply device and destination device (Client & Server) worried should be available on the time function name is made.
SRFC is a method of communique between systems where acknowledgements are required. The assets of the Source System wait at the goal machine and make sure that they deliver the message/data with ACKD. The Data is regular and dependable for communique.
The handiest problem is if the goal machine isn't available, the source machine sources wait till goal device is available which can also cause the Processes of supply gadget to go into Sleep/RFC/CPIC Mode at goal systems and for this reason blocks these sources.
Synchronous RFC can be used for
For conversation among structures.
For conversation among SAP Web Application Server to SAP GUI.
Q29. What Are The Types Of Remote Communications ?
Communications between impartial SAP System
patron-server communications among an external purchaser and an SAP System acting because the server
client-server communications between an SAP System acting because the consumer and an outside server.
Q30. What Is Transactional Rfc (trfc)?
To make the execution of RFC features dependable, safe and impartial from the supply of the RFC server or RFC server device, the transactional RFC (tRFC) are used. This guarantees that the referred to as feature module is achieved only once in the RFC server system.
If an errors occurs in the course of a synchronous far flung function call, the gadget can not inform at what point the mistake took place (maximum crucially, whether the feature module become truly processed in R/3 before the operation failed). Restarting a failed name is therefore a risky issue to do, since there's a risk of duplicating a finished function name.
In Such instances, tRFC’s may be used which guarantees that every feature call issued might be achieved best once, despite the fact that the decision is submitted repeatedly to the R/3 System. The gadget implements this guard by way of assigning a completely unique transaction ID (TID) to every transaction which you publish. When you try to technique the transaction, the system assessments whether that TID has already been processed or now not. If it has, the transaction is omitted.
TRFC is an extension of aRFC. Transactional RFC is an asynchronous conversation approach that executes the referred to as function module inside the RFC server most effective as soon as, even supposing the statistics is despatched a couple of times because of a few network trouble. The faraway machine want now not be to be had at the time whilst the RFC purchaser software is executing a tRFC.
The tRFC factor shops the referred to as RFC characteristic, collectively with the corresponding facts, inside the SAP database under a completely unique transaction ID (TID). TRFC is much like aRFC as it does no longer wait on the goal machine (Similar to a registered submit). If the system is not to be had, it will write the Data into aRFC Tables with a transaction ID (SM58) which is picked by using the scheduler RSARFCSE (which runs for every 60 seconds).
Q31. Explain A Scenario Where There Will Be A Need Of Using Rfc?
RFCs are not most effective used for outside get entry to to SAP systems however additionally for interconnections of SAP structures. For example, if there may be a Central User Administration (CUA) mounted in an SAP gadget panorama, then there might be need of RFC destination to all daughter structures of the CUA machine.
Say we've CRM and R/3 System. In CRM we cannot realize whatever about transport popularity of income orders. In such cases RFC's may be used to retrieve transport status of sales orders from R/three Server. In This manner CRM server can get data or information concerning Delivery repute of Sales Orders.
An essential situation which requires RFC is Application Link Enabling (ALE). Let's anticipate there is a Master Data Management (MDM) system and we want to distribute the master information to all SAP structures which might require access to grasp statistics. For such situations, ALE can be used to distribute the grasp information a few of the exclusive SAP systems using IDocs. ALE in flip uses RFC to establish a connection between MDM and its daughter system in this scenario.
Q32. How Parameter Handling Is Different For Remote Function Calls & Local Function Calls?
In Remote Function Calls, The actual table is transferred, but no longer the desk header. If a desk parameter isn't precise, an empty table is used within the called feature.
Internal ABAP tables may be used as parameters for feature module calls. In a local feature module name, a parameter desk is exceeded on via reference, and no new nearby reproduction has to be created. RFC does not guide the ‘via reference’ mechanism, so the entire table has to be exchanged among the RFC customer and the RFC server. When the RFC server receives the table entries, it creates a local copy of the inner desk.
Q33. How Call-returned Mechanism Used In Rfc Calls?
You can trigger this call-again mechanism by using the usage of the unique vacation spot name "BACK". If this name is laid out in an RFC name at the system appearing because the server, the system uses the equal RFC connection that become mounted when the server obtained the first call. Once an RFC connection is installed, it is maintained until it's miles both explicitly closed or until the calling program terminates.
Q34. What Do You Mean By The Terms Rfc Client & Rfc Server?
RFC consumer is the example that calls up the Remote Function Call (RFC) to execute the function this is furnished with the aid of an RFC server. The process that starts offevolved the RFC is called the sender or purchaser, and the process wherein the RFC is executed is the recipient or server.
Say we've got CRM and R/3 System. If we want to examine Sales Order’s Delivery Status record from R/three System’s database, we will need to create a remotely callable characteristic module in the R/three environment which retrieves Sales Order’s Delivery Status statistics. Now we are able to have to call this feature from the CRM System using a far flung characteristic name (Also listing the vacation spot for the goal R/three System in SM59). In this situation CRM server acts as an RFC Client and R/3 acts as an RFC Server.
Q35. Can We Call Remote Function Calls Locally?
Sometimes there might be a want to name a far flung characteristic call from in the equal system. This characteristic can run either as a far off or a nearby call, depending at the CALL FUNCTION statement on how it's far declared. It’s a regarded reality that parameter dealing with are distinct for Remote Function Call and Local Function Call, so whether the call runs as far flung or local the parameter handling gets affected adversely.
We can name remote functions calls domestically the use of ways.
CALL FUNCTION...DESTINATION = 'NONE'
This is a remote name, despite the fact that DESTINATION = 'NONE' approach that the faraway function will run inside the same device because the caller. As a far off call, the feature module runs in its very own roll region, and parameter values are dealt with as for different far off calls
CALL FUNCTION ‘RFC_SALES_DEL_STATUS’
DESTINATION ‘NONE’
EXPORTING VBELN = SALESNO
TABLES STATUS_T = IT_TAB
EXCEPTIONS NO_RECORD_FOUND = 01.
CALL FUNCTION... [no DESTINATION used]
This is a local name, despite the fact that the feature module is registered as faraway. The module does now not run in a separate roll location, and is essentially like a everyday feature name. Parameter transfer is dealt with as for everyday function modules. In specific, if the decision leaves a few EXPORTING parameters unspecified, it terminates abnormally.
CALL FUNCTION ‘RFC_SALES_DEL_STATUS’
EXPORTING VBELN = SALESNO
TABLES STATUS_T = IT_TAB
EXCEPTIONS NO_RECORD_FOUND = 01.
Q36. What Do You Mean By Trusted Rfc Connections? What Are The Advantages Of It?
While defining RFC destination thru tcode SM59, there is an choice to make the RFC connection as 'Trusted'. Once selected, the calling (depended on) system would not require a password to connect to goal (trusting) gadget.
Following are some of the benefits of using depended on channels:
Cross-device Single Sign-On facility.
Password does no longer need to be despatched across the community.
Timeout mechanism for the log-on information prevents misuse.
Prevents the mishandling of log-on information because of the time-out mechanism.
User-particular log-on details of the calling/relied on system is checked.
The RFC customers should have the specified authorizations within the trusting gadget (authorization item S_RFCACL).Trusted connections are mainly used to connect SAP Solution Manager Systems with other SAP structures.
Q37. How To Call Interfaces For Non-sap Programs ?
To help put into effect RFC associate packages in non-SAP Systems, SAP affords :
- The RFC Generator to create stub applications External Interfaces
Q38. What Exceptions Raise In A Remote Funcation?
System raises COMMUNICATION_FAILURE and SYSTEM_FAILURE internally, there is no reason a good way to improve them on your application.
Q39. What Do You Understand By The Term Destination Used In Rfc?
CALL FUNCTION RemoteFunction DESTINATION Dest
EXPORTING
f1 =...
F2 =...
IMPORTING
f3 =...
TABLES
t1 =...
EXCEPTIONS......
The discipline 'Dest' can be either a literal or a variable. Its fee is a logical destination (as an example,
"CRM110") regarded to the nearby SAP System. Logical destinations are described the usage of transaction SM59 and the corresponding data is stored in trendy database table RFCDES.
The far off feature call concept, for example, allows you to access a characteristic module in an R/three System from an ABAP software in a CRM System. If you need to examine Sales Order’s Delivery Status report out of your R/three System’s database, create a remotely callable function module in the R/three environment which retrieves Sales Order’s Delivery Status document. Call this function from your CRM System using a far off function call and listing the vacation spot for the target R/3 System:
CRM System: Client
CALL FUNCTION ‘RFC_SALES_DEL_STATUS’
DESTINATION ‘R10’
EXPORTING VBELN = SALESNO
TABLES STATUS_T = IT_TAB
EXCEPTIONS NO_RECORD_FOUND = 01.
R/3 System: Server
FUNCTION RFC_SALES_DEL_STATUS.
.... (Read Sales Order’s Delivery Status file)
ENDFUNCTION.
Q40. What Is Rfc Generator ?
The feature library in R/3 provides a facility for generating after which downloading RFC applications to a computer or PC. This facility is the RFC Interface Generator. With this tool, you may create RFC stub programs (that name SAP function modules) and instance packages (that show how to name stub packages).
