System Fields in Release 6.10
1 Content of the system field sy-calld
2 Replacement of the system field sy-repid
ABAP_MODIFICATION_1 Content of the system field sy-calld
The field sy-calld should contain space if the program
is the first and only program in a call
sequence . sy-calld should contain "X" if the program is
a called program in a call sequence. Previously, sy-calld was
always set to "X" for SUBMIT without RETURN , even
though this meant that the internal
session or the position in the call sequence of the caller is
replaced by the called program. If the calling program was the first
program in the call sequence, this produced errors in the application
logic. From now on, sy-calld is not influenced by SUBMIT
without RETURN , and retains the value of the calling program
whose internal session is being replaced.
ABAP_MODIFICATION_2 Replacement of the system field sy-repid
The system field sy-repid is no longer a component of the
structure SY in the ABAP program or the structured type SYST
in ABAP Dictionary. Instead, from Release 6.10, every program
contains the predefined constants sy-repid and syst-repid ,
which both contain the name of the current program. There are also two
predefined types sy-repid and syst-repid . The obsolete
type references LIKE syst-repid and
TYPE sy-repid are, therefore, still
possible.
In addition to considerable performance improvements in the external
procedure call, this new feature also has the advantage that
sy-repid can now also be passed as a parameter to external
procedures . The formal parameter is set to
the name of the caller and not to the name of the
master program , which means that an
auxiliary variable is no longer required.
This incompatible change can cause problems if ABAP programs refer to
the previous structure syst , for example:
DATA my_syst type syst.
... my_syst-repid ...
ASSIGN COMPONENT 'REPID' OF STRUCTURE sy TO ...
Documentation extract taken from SAP system, � Copyright SAP AG. All rights reserved