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

Is this possible to run a program on one server(e.g. development server) on

Former Member
0 Likes
1,101

Is this possible to run a program on one server(e.g. development server) on another server via remote log on, or any other such technique

1 ACCEPTED SOLUTION
Read only

Former Member
0 Likes
937

Hi,

You can do it by using RFC Function Modules.

Regards,

Renjith Michael.

Is this possible to run a program on one server(e.g. development server) on another server via remote log on, or any other such technique

5 REPLIES 5
Read only

Former Member
0 Likes
938

Hi,

You can do it by using RFC Function Modules.

Regards,

Renjith Michael.

Read only

Former Member
0 Likes
937

Hi Surbhi,

RfC are remote function calls through which u can remotely access other system.

RFC

Purpose

Communication between applications of different systems in the SAP environment includes connections between SAP systems as well as between SAP systems and non-SAP systems. Remote Function Call (RFC) is the standard SAP interface for communication between SAP systems. The RFC calls a function to be executed in a remote system.

Synchronous RFC

The first version of RFC is synchronous RFC (sRFC). This type of RFC executes the function call based on synchronous communication, which means that the systems involved must both be available at the time the call is made.

Transactional RFC (tRFC)

Transactional RFC (tRFC, also originally known as asynchronous RFC) is an asynchronous communication method that executes the called function module in the RFC server only once. The remote system need not be available at the time when the RFC client program is executing a tRFC. The tRFC component stores the called RFC function, together with the corresponding data, in the SAP database under a unique transaction ID (TID).

If a call is sent, and the receiving system is down, the call remains in the local queue until a later time. The calling dialog program can proceed without waiting to see whether or not the remote call was successful. If the receiving system does not become active within a certain amount of time, the call is scheduled to run in batch.

tRFC is always used if a function is executed as a Logical Unit of Work (LUW). Within a LUW, all calls are

· executed in the order in which they are called

· executed in the same program context in the target system

· run as a single transaction: they are either committed or rolled back as a unit.

Implementation of tRFC is recommended if you want to guarantee that the transactional order of the calls is preserved.

Disadvantages of tRFC

· tRFC processes all LUWs independent of one another. Due to the amount of activated tRFC processes, this procedure can reduce performance significantly in both the send and the target systems.

· In addition, the sequence of LUWs defined in the application cannot be kept. Therefore, there is no guarantee that the transactions are executed in the sequence dictated by the application. The only guarantee is that all LUWs are transferred sooner or later.

Queued RFC (qRFC)

To guarantee that multiple LUWs are processed in the order specified by the application, tRFC can be serialized using queues (inbound and outbound queues). This type of RFC is called queued RFC (qRFC).

qRFC is therefore an extension of tRFC. It transfers an LUW (transaction) only if it has no predecessors (in reference to the sequence defined in different application programs) in the participating queues.

Implementation of qRFC is recommended if you want to guarantee that several transactions are processed in a predefined order.

RFC: Data Transfer

All RFC types are transferred by means of CPI-C or TCP/IP. They constitute a form of gateway communication.

HOPE I ANSWERED TO UR POINT

reward if helpful

thanks and regards

suma

Read only

Lakshmant1
Active Contributor
0 Likes
937

Hi Surbhi,

You have to use FM RFC_ABAP_INSTALL_AND_RUN .

REPORT ZTEST.

PARAMETERS P_PROG LIKE PROGTAB-LINE.

DATA: IT_PROG LIKE PROGTAB OCCURS 0 WITH HEADER LINE,

IT_WRITES LIKE LISTZEILE OCCURS 0 WITH HEADER LINE,

P_ERRMSG LIKE SY-MSGV1.

START-OF-SELECTION.

READ REPORT P_PROG INTO IT_PROG.

*CALL P_PROG IN THE REMOTE SYSTEM

CALL FUNCTION 'RFC_ABAP_INSTALL_AND_RUN' DESTINATION 'DEV100'

IMPORTING

ERRORMESSAGE = P_ERRMSG

TABLES

PROGRAM = IT_PROG

WRITES = IT_WRITES.

Thanks

Lakshman

Read only

0 Likes
937

Hi lakshman

i want to know if the program i want to run is in the server i am currently logged in and i want to run this code on another system.

(My program tells the database performance data. what if i want to know the performance of other databases whilst in current server)

Read only

Former Member
0 Likes
937

Hi Surbi,

Create FM in Traget system and click on checkbox RFC Enabled..

you can call this FM from another system. (provided connection is setup or you can create your own connection using SM59).

Regards,

Mohaiyuddin