how to handle errors in rfc?

Answer Posted / sathish

There are different causes for ABAP errors, depending on the
program. Causes include:

* Incorrect or incomplete entries in the RFC destination
(transaction SM59)

* Network problems

* Authorization problems

* Error in the RFC program

Solution

Check the following:

1. Check all the entries made in transaction SM59. The
destination used must be entered with category T. Enter a
complete path name, if possible, for the program to be
started. Make sure to save the destination.
2. Configuration on operating system level
1. The host name specification in the destination
1. A name is entered into ‘host name’ (radio
button in Release 3.0 is selected ‘explicitely’) or a
non-standard gateway is stored (in gateway options). In the
latter case, the program is started by the standard gateway
program of the system or by the gateway (
gwrd ) specified explicitely via ‘remote
shell’.

Make sure that the entered computer can be
addressed by the computer of gateway process. Enter the
following command on this computer:

/etc/ping <host name> or ping <host name>

To start a program with ‘remote shell’ on
another computer, it is necessary that the user-ID of the
gateway process exists on the target system and that the
HOME directory of this user contains a file. rhosts in the
target system. The name of the calling computer must be
stored in this file. To test this, log in on the computer of
the gateway process under the user-ID of this process and
call the command:

remsh <host name> <program name>

In this case, you have to enter the same
as in transaction SM59 for <host name> and <program name> .

(If an RFC server program is called
without parameters, the call RfcAccept returns an error code
( RFC_HANDLE_NULL ) in any case and the program should
terminate immediately.)
2. No entry is made in ‘host name’ (or in
3.0: Server is selected)

In this case, the program is started from the
SAP application server.

Make sure that the program can be addressed from
the SAP application server.

Make sure that the SAP application server has
the authorization for starting the program.

To do this, log on under the user-ID of the SAP
application server (generally c11adm ). Go into the ‘work’
directory of the application server ( /usr/sap/.../D.../work
), if possible, and start the RFC server program manually
from there.

(If an RFC server program is called without
parameters, the call RfcAccept returns an error code (
RFC_HANDLE_NULL ) in any case and the program should
terminate immediately.)

In Release 3.0, you can also select ‘User’. In
this case, the program is started by ‘Sapgui’, that is,
under the user-ID and the environment of the user.

Make sure that the program can be addressed by
sapgui/saptemu .

Make sure that sapgui has the authorization to
start the program.

To do this, call the RFC server program.
2. Problems in the RFC server program itself

To pick up stderr output of the RFC server program, you can
enter a control program instead of the actual server program
into the destination which in turn starts the actual server
program with the same command line and which in this case
redirects the standard output of the program into a file.

Example

RFC server program is /xxx/xxxx.

However, the C script is called (do not forget the
specification of the shell in the first line):

#!/bin/csh

date >> /tmp/rfclog

/xxx/xxxx $* >>& /tmp/rfclog

echo $status >>& /tmp/rfclog

Display the log file /tmp/rfclog for further error analysis.

You can activate the trace flag in the destination (remember
to save). A file dev_rfc is then written by the RFC server
program in its current directory containing all data
received, operations and errors that occurred.

Is This Answer Correct ?    1 Yes 0 No



Post New Answer       View All Answers


Please Help Members By Posting Answers For Below Questions

What is check table?

756


how to read the standard field value in your custom program.

1201


List the various components of the enterprise structure in systems, applications, and products (sap) in human capital management (him)? : sap abap hr

681


What are the three hierarchical levels of data types and objects?

796


What is the difference between collect and sum?

778






What is the table & field to identify the no of items (bottles) stored in one case?

2175


Mention the various databases integrities?

786


How many types of data classes are there in sap abap? : abap data dictionary

787


What is an evaluation path? : sap abap hr

732


How to transfer data into line items using batch input session method? : abap bdc

772


What is a projection view? : abap data dictionary

777


What takes most time in SAP script programming?

870


What are the events in classical reports?

827


What are the different attributes that can be assigned to a variant?

769


What are the different types of mode (run code) in call transaction method?

804