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

RFC - Presentation to application Server

Former Member
0 Likes
691

Hi,

when we call a transaction in SAP R/3 e.g. SE38. , a RFC is called from presentation server to application server. i wnat to know what exactly happens behind the screen.how a rfc is called? how the connection is established between presentation server & application server.

please do the needful

Regards

Hemant

4 REPLIES 4
Read only

p291102
Active Contributor
0 Likes
614

Hi,

The following is an example of the Client-Server negotiation

process.

Server: IAC DO TERMINAL-TYPE

Client: IAC WILL TERMINAL-TYPE

Server: IAC SB TERMINAL-TYPE SEND IAC SE

Client: IAC SB TERMINAL-TYPE IS IBM-3287-1 IAC SE

Note: To request a specific LU the TERMINAL-TYPE string would be:

IAC SB TERMINAL-TYPE IS IBM-3287-1 @ LUNAME IAC SE

(The client has specified its terminal type is an IBM-3287-1)

Server: IAC DO END-OF-RECORD

Client: IAC WILL END-OF-RECORD

Server: IAC WILL END-OF-RECORD

Client: IAC DO END-OF-RECORD

(The Server and Client have both agreed to transmit End-Of-Record

(EOR)).

Server: IAC DO TRANSMIT-BINARY

Client: IAC WILL TRANSMIT-BINARY

Server: IAC WILL TRANSMIT-BINARY

Client: IAC DO TRANSMIT-BINARY

(The Server and Client have both agreed to use binary

transmission)

Server: 0x00 (3270 PRINT DATA)

Client: (S/S with DEV END) IAC EOR

Server: 0x00 (3270 PRINT DATA) IAC EOR

NOTE: LU 1 type data is prefaced with a 0x00 character. LU 3

type data is not prefaced with a special character. This

character will precede print data in each chain, and should be

discarded before the print data is processed. An <IAC EOR> must

be received before changing to LU 1 or LU 3 type data.

Client: (S/S with IR) IAC EOR (This indicates a paper jam

at printer.)

Client: (S/S with DE) IAC EOR (This indicates the clearing

of above condition.)

Server: 0x00 (3270 PRINT DATA) (This indicates start of LU 1

data)

Server: (3270 PRINT DATA)

Server: (3270 PRINT DATA)

Server: (3270 PRINT DATA) IAC EOR

Client: (S/S with DE) IAC EOR

Server: 0x00 (LAST 3270 PRINT DATA) IAC EOR

Client: (S/S with DE) IAC EOR

Server: IAC AO

(The Abort Output <AO> signifies the end-of-bracket -- end of

print job)

Thanks,

Shankar

Read only

Former Member
0 Likes
614

RFC means, calling a function module with remote enabled property which is available in another R/3 system.

RFC's can be two types. ( synchronus and asynchronus). In this process, the calling program statements executed very fastly (it is called main thread process). When "call function" statement is appeared, in the program, it searche for the function module in the remote system and executes all the statements in the remote system ( called child thread). Usually, main thread process is faster than child thread process. So, when the control goes to the remote system, the control waits upto completion of all the statementsd in the remote FM, then process the remaining steps in the calling program which is there after the call function statement. ( this process is called synchronus RFC).

In Assynchronus RFC, system continues to execute the remaining steps of the calling program , when the control is in called program alternatively and finally executes it. So Assynchronus RFC is faster than Synchronus RFC.

THe connection will be established using the IP addresses of the both systems using the TCODE: "SALE". It is Basis people job.

Cheers.

Read only

Former Member
0 Likes
614

Another thing, call by reference is not allowed in RFC, Bz the variables are local to the R/3 system and not able to pick the values by another system.

Cheers.

Read only

Former Member
0 Likes
614

query is solved.thanks.

Regards,

Hemant