Top Banner

of 13

How to Configure and Test RFC

Jun 04, 2018

Download

Documents

Surya Nanda
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
  • 8/13/2019 How to Configure and Test RFC

    1/13

    Introduction to RFC (Remote Function Call)

    What is RFC?

    For business applications, it is necessary to communicate and exchange

    information (in pre-defined formats) with other systems.Hence, there are well

    defined mechanisms to enable this communication. SA has also pro!ided us

    with such mechanism called RFC, which stands for "Remote Function Call".

    #F$ is a SA protocol to handle communications between systems to simplify

    the related programming. %t is the process of calling a function module which is

    residing in a different machine from the caller program. #F$s can be used to

    call a different program in the same machine as well, but usually it is used when"calling" and "called" function modules& programs are running on separate

    machines.

  • 8/13/2019 How to Configure and Test RFC

    2/13

    %n SA, #F$ %nterface system is used for setting-up #F$ connections between

    different SA systems, and also between an SA and an external (non-SA)

    system.

    Must Know Details About RFC

    SA 'ses $%$ ($ommon rogramming %nterface for $ommunication)

    rotocol totransfer data between Systems. %t is SA Specific protocol. #emoteFunction $all (#F$) is a communications interface based on $%-$, but with

    more functions and easier forapplication programmers to use

    he #F$ library functions support the $ programming language and isual

    *asic (on +indows platforms)

    #F$ connections can always be used across the entire system.his means

    that an #F$ connection you ha!e defined in client can also be used from

    client (without any difference).

    #F$ is the protocol for calling special subroutines (function modules) o!er

    the networ. Function modules are comparable with $ functions or AS$A/procedures. hey ha!e a defined interface through which data, tables and

    return codes can be exchanged. Function modules are managed in the #&0

    System in their own function library, called the Function *uilder.

    he Function *uilder (transaction S102) pro!ides application

    programmers with a useful en!ironment for programming, documenting and

  • 8/13/2019 How to Configure and Test RFC

    3/13

    testing function modules that can be called locally as well as remotely. he

    #&0 System automatically generates the additional code (#F$ stub) needed

    for remote calls.

    3ou maintain the parameters for #F$ connections using transaction

    S145. he #&0 System is also deli!ered with an #F$-S67 (Software6e!elopment 7it) that uses extensi!e $ libraries to allow external programs

    to be connected to the #&0 System.

    he only difference between a remote call of a function module to

    another ser!er and a local call is a special parameter (destination) that

    specifies the target ser!er on which the program is to be executed.

    The RFC Advantaes!

    #F$ helps to reduce the efforts of programmers, by letting them a!oid the re-

    de!elopment of modules and methods at remote systems. %t is capable enough

    to8

    $on!ert the data into the format understandable by the remote (target)

    system.

    $on!ert the data into the format understandable by the remote (target)

    system.

    $all up certain routines which are necessary to start communication with

    remote system.

    Handle errors that might occur in the process of communication.

    T"#es o$ RFC!

  • 8/13/2019 How to Configure and Test RFC

    4/13

    %"nchronous

    re9uires both the systems (client and ser!er) to be a!ailable at the time of

    communication or data transfer. %t is the most common type and is re9uired

    when result is re9uired immediately after the execution of s#F$.

    s#F$ is a means of communication between systems where acnowledgements

    are re9uired. he resources of the Source System wait at the target system and

    ensure that they deli!er the message&data with A$76. he 6ata is consistentand reliable for communication.

    he issue is if the target system is not a!ailable, the source system resources

    wait until target system is a!ailable. his may lead to the rocesses of source

    system to go into SleepF$&$%$ 1ode at target systems and hence blocs

    these resources.

    &sed $or

    For communication between systems

    For communication between SA +eb Application Ser!er to SA :'%

  • 8/13/2019 How to Configure and Test RFC

    5/13

    As"nchronous

    %t is communication between systems where acnowledgements are not

    re9uired (it is similar to post card deli!ery).%t doesn"t re9uire both the systems

    to be a!ailable at the time of execution and the result is not immediatelyre9uired to be sent bac to calling system.

    he Source System resource does not waitfor the target system as they deli!er

    the message&data without waiting for any acnowledgement. %t is not reliable

    for communication sincedata may be lost if the target system is not

    a!ailable. &sed $or '

    For communication between systems

    For parallel processing

    Transactional

    %t is a special form of a#F$. ransactional #F$ ensures transaction-lie handling

    of processing steps that were originally autonomous.

    ransactional #F$ is an asynchronous communication method that executes the

    called function module in the #F$ ser!er only once, e!en if the data is sent

    multiple times due to some networ issue. he remote system need not be

    a!ailable at the time when the #F$ client program is executing a t#F$. he t#F$

    component stores the called #F$ function, together with the corresponding

    data, in the SA database under a uni9ue transaction %6 (%6). t#F$ is similar to

    a#F$ as it does not wait at the target system (Similar to a registered post). %f the

    system is not a!ailable, it will write the 6ata into a#F$ ables with a transaction

    %6 (S14;) which is piced by the scheduler #SA#F$S< (which runs for e!ery =

    seconds). &sed For'

  • 8/13/2019 How to Configure and Test RFC

    6/13

    >ueued #F$ is an extension of t#F$. %t also ensures that indi!idual steps are

    processed in se9uence.

    o guarantee that multiple /'+s (/ogical 'nit of +or& ransaction) are

    processed in the order specified by the application. t#F$ can be seriali?ed using9ueues (inbound and outbound 9ueues). Hence the name 9ueued #F$ (9#F$).

    'sed For-

  • 8/13/2019 How to Configure and Test RFC

    7/13

    %n the S145 screen, you can na!igate through already created #F$s connection

    with the help of option tree, which is a menu based method to organi?e all the

    connections on the basis of categories.

    $lic the "$#

  • 8/13/2019 How to Configure and Test RFC

    8/13

    After you,%A-.,the connection, the system will tae you to "echnical Settings"

    tab, where we pro!ide the following information8

    Taret /ostB Here we pro!ide the complete hostname or % address ofthe target system.

    %"stem 0umber 1 his is the system number of the target SA system.

    $lic Sa!e

    %n the ,2oon and %ecurit", ab,

  • 8/13/2019 How to Configure and Test RFC

    9/13

    constantly changing end-user %6s or passwords. 1ostly, a user of type

    "System" or "$ommunication" is used here.lease note that this is the 'ser %6

    for the target system and not the source system where we are creating this

    connection.

    $lic Sa!e. #F$ connection is ready for use

    0ote8 *y default a connection is defined as a#F$. o define a connection as

    t#F$ or 9#F$ go to 1enu *ar -D 6estination a#F$ options & t#F$ options E

    pro!ide inputs as per re9uirements. o define 9#F$ , use the special options

    tab.

    Trusted RFC connection

    here is an option to mae the #F$ connection as ,Trusted,3 nce selected, the

    calling (trusted) system doesn"t re9uire a password to connect with target

    (trusting) system.

  • 8/13/2019 How to Configure and Test RFC

    10/13

    Following are the ad!antages for using trusted channels8

    $ross-system Single-Sign-n facility

    assword does not need to be sent across the networ

    imeout mechanism for the logon data pre!ents misuse.

    re!ents the mishandling of logon data because of the time-out

    mechanism.

    'ser-specific logon details of the calling& trusted system is checed.

    he #F$ users must ha!e the re9uired authori?ations in the trusting system

    (authori?ation obGect %4RFCAC2).rusted connections are mostly used to

    connect SA Solution 1anager Systems with other SA systems (satellites)

    Testin the RFC Connection

    After the #F$s are created (or sometimes in case of already existing #F$s) we

    need to test, whether the connection is established successfully or not.

  • 8/13/2019 How to Configure and Test RFC

    11/13

    As shown abo!e we go to S145 to choose the #F$ connection to be tested and

    then we expand drop down menu - &tilities'5Test'56. +e ha!e three

    options8

    Connection test '5 his attempts to mae a connection with remote system

    and hence !alidates % address & Hostname and other connection details. %f

    both systems are not able to connect, it throws an error. n success it displays

    the table with response times. his test is Gust to chec if the calling system is

    able to reach the remote system.

    Authori7ation Test '5%t is used to !alidate the 'ser %6 and assword (pro!ided

    under "logon and security" tab for the target system) and also the authori?ations

  • 8/13/2019 How to Configure and Test RFC

    12/13

    that are pro!ided. %f test is successful, then same screen will appear as shown

    abo!e for the connection test.

    &nicode Test '5%t is to chec if the arget system is a 'nicode or not.

    Remote 2oon 15his is also a ind of connection test, in which a new session

    of the target system is opened, and we need to specify a login %6 and assword

    (if not already mentioned under "/ogon and Security" tab). %f the user is of type

    "6ialog" then a dialog session is created. o Gustify the successful connection

    test, output will be the response times for the communication pacets, else

    error message will appear.

  • 8/13/2019 How to Configure and Test RFC

    13/13