Application Development and Automation Discussions
Join the discussions or start your own on all things application development, including tools and APIs, programming models, and keeping your skills sharp.
cancel
Showing results for 
Search instead for 
Did you mean: 
Read only

function modules

Former Member
0 Likes
817

hi gurus,

1. what is the difference between normal function modules and remote enabled function modules?

2. by seeing the call function "function name" how we know whether it is normal function module or remote enabled function module

3. what is the extra field we have to add for remote enabled function module

1 ACCEPTED SOLUTION
Read only

Former Member
0 Likes
779

in RFC you vcan communicate between SAP and non SAP system but in normal fn module you cant.

in function mod call for rfc DESTINATION key word will be there.

call fn 'RFC' destination '<destination name> '

RFC is like normal fn module only with same features only you have to tick the remote enabled attribute of fn module in se37 for the fn module.

regards

shiba dutta

7 REPLIES 7
Read only

former_member404244
Active Contributor
0 Likes
779

Hi,

Difference between Normal function module and Rfc enabled function mdoule is u can find the radio button for RFC enabled will be checked in case of RFC function mdoule,but the radio button normal is checked for normal function module.

In the program the difffernece is in calling the FM.

For normal FM it is CALL FUNCTION '<FUNCTION MDOULE NAME>'

For RFC FM it is CALL FUNCTION '<FUNCTION MDOULE NAME>' Destination <Destination name>

Regards,

nagaraj

Read only

Former Member
0 Likes
780

in RFC you vcan communicate between SAP and non SAP system but in normal fn module you cant.

in function mod call for rfc DESTINATION key word will be there.

call fn 'RFC' destination '<destination name> '

RFC is like normal fn module only with same features only you have to tick the remote enabled attribute of fn module in se37 for the fn module.

regards

shiba dutta

Read only

Former Member
0 Likes
779

Ravi,

1. Remote function Module will be available to other systems ,but Normal

Function module will be with in the system.

2.By calling we can not know, we have to got to attributes and has to check.

3.In SE 37 >F6-->Attributes you have check the radio button Remote-enabled

module

.Pls. reard if useful

Read only

Former Member
0 Likes
779

Hi ravi,

An RFC (remote function call) is similar to a regular function module, but typically called from outside of SAP. A session is established from the calling application to SAP, a user ID is logged on, and then a call is issued, triggering the processing inside the call. When it is done, it usually returns information such as a return code and application data. The calling application waits for the processing to complete, receives the data and can continue processing, taking the result into account. It can even issue multiple RFCs during one session. The main difference between RFCs and regular function modules is the definition of the interface (e.g. CHANGING parameters are not allowed) and the interaction with the user (RFCs should not popup windows, because there is no user available to react to it). RFCs leave no data behind for restarting the task. They either fail or complete according to the transaction concept, but since you are on a function level, a transaction may encompass more than one call. Therefore, you may need to issue a separate COMMIT call after you are done or you risk losing your work. RFCs are also bi-directional, i.e. they can be called by a client program or they can invoke a server program can be the client. In interfaces, you are more likely to use an RFC from a client program.

regards,

keerthi

Read only

Former Member
0 Likes
779

hi ravi,

1. suppose, i have two servers RID & RIV,

i have created a FM in RIV system,

unless,you REMOTE ENABLED the FM,

you can't use it in the RIV system.

2. it can't be known by the name,

check out it's attributes

3. first create a RFC destination in SM59,

then use it for FM

call function 'FM_NAME' DESTINATION 'REMOTE'...

bye,

kc

Read only

Former Member
0 Likes
779

Hi Ravi,

RFC (Remote Function Call) as the name suggests , is a Function module which is used to link two different systems ,i.e. Non SAP to SAP. It is like the normal FM only, it has with same features, the only change being the Remote enabled ticked in theattribute tab.in the SE37 Transaction code.

Coming to your Questions Individually.

1.

Difference between Normal function module and RFC enabled function module is that in the attributes tab, you can find the RFC radio button checked in case of RFC Function Module, and for normal function module , the Normal Function Module radio button is checked

2. & 3.

Programatically while calling the FM's the coding differs only in a small manner.

For Normal FM :

CALL FUNCTION '<FUNCTION MDOULE NAME>'

For RFC FM :

CALL FUNCTION '<FUNCTION MDOULE NAME>'

Destination <Destination name>

.

.

.

.

Hope this will be helpful.

Reward all the useful answers.

Regards

Read only

Former Member
0 Likes
779

1. The normal FM are called within the R3 system. but the RFC enabled ones can be called from the outside systems also.

2. Its not necessary to have the DESTINATION in your CALL FUNCTION stmnt. So, the very first point would be to look at the FM's attributes.

3. There is nothing special u need to do only u have to just select the RFC attribute in the ATTRIBUTE maintenance.