Saturday, 11 August 2012

Register a program on SAP Gateway

RFC connection test in SM59 might give error similar to this

———————————————————————————————————

Logon Connection Error

Error Details Error when opening an RFC connection

Error Details ERROR: program not registered

Error Details LOCATION: SAP-Gateway on host / sapgw

Error Details DETAIL: TP not registered

Error Details COMPONENT: SAP-Gateway

Error Details COUNTER: 16793

Error Details MODULE: gwr3cpic.c

Error Details LINE: 1694

Error Details RETURN CODE: 679

Error Details SUBRC: 0

Error Details RELEASE: 700

Error Details TIME: Mon APR 17 13:08:02 2009

Error Details VERSION: 2

———————————————————————————————————

The program in the above error should be registered in the gateway for this connection test to complete successfully. The server program rfcexec is responsible for its registration on the gateway.

To register the program login into the OS level as sudo su - adm and execute the following command.

rfcexec –g -a -x 

rfcexec is the server program name, the can be obtained from SM59, it is case sensitive and should match with the entry in SM59. Theand can be obtained from the transaction SMGW. When this command is executed it goes to a hanging loop.

The connection will fail once this command is terminated or the user executing this command logs off

To avoid this, instead of using the above mentioned command an entry should be made in the file saprfc.ini

To do this, execute the following command

sudo su - adm

rfcexec –D

is the RFC destination name in SM59

So now we are done with registering the server program, but how do we check it is registered, once a server program is registered it is displayed in the Logged on clients in SMGW.

In transaction SMGW choose GOTO-> Logged on clients. There should be an entry for the server program in the screen that is displayed with system type Registered_TP (which indicates that the program is registered)

There can be many reasons due to which we might get this error saying server program is not registered, once such instance which I faced was where in the TREX server, a new RFC destination was defined, the TREX server creates a new program id each time this RFC destination is defined. This program id was not changed in TCP/IP connection is SM59 which was the reason why the destination was failing

No comments:

Post a Comment