There are total of 172 system fields maintained by the runtime environment in an internal structure
of type SYST or SY.
SYSTEM FIELDS according to function.
SYSTEM Fields related with R/3 System
R/3 DBMS like ORACLE.
Application server .
Application server Operating system .
R/3 System ID.
SYSTEM Fields about Current Terminal Session
One-character language key with the user’s logon language such as E
Login client e.g. 600
Index of the current external session starting from 0.
Login name of the user.
SYSTEM Fields related with current Date and Time
Date on the application server in YYYYMMDD format e.g. 20060414
Day of the week according to Factory calendar e.g Monday = 1.
User’s local time.
Time on the application server.
SYSTEM Fields related with Current ABAP Program
If the program is started using CALL TRANSACTION / DIALOG, or SUBMIT … [AND RETURN] its value is 'X'.
If the program is started using LEAVE TO TRANSACTION or using a transaction code from a screen or when a batch input session
is in progress its value is ' ' .
The name of the current program and name of the calling program within a procedure.
The name of the logical database linked to an executable program.
Screen group to which the current screen belongs.
Number of the current screen.
In executable programs, the database program of the associated logical database.
Name of the current ABAP program.
The transaction code of the current program..
X if the ABAP program is running in the background, otherwise space
SYSTEM FIELDS for Batch Input
X while a batch input session is running and when an ABAP program is called using CALL TRANSACTION
USING, otherwise space.
SYSTEM FIELDS For ABAP Programming
It is a constant and contains alphabets(AB..Z). What ever the code page its value remains same.
Contains a horizontal line with length 255 used in creating lists.
Contains a vertical line , used in creating lists.
WithIn a loop it contains the number of loop passes including the current pass and is set by ABAP commands DO,WHILE.
It contains the location of a hit in string operations. used with CO,CN, CA, NA, CS, NS, CP, and NP, offset values are
assigned to SY-FDPOS depending on the search result.
Current line of an internal table. It is set only for index tables. The field is either not set or is set to
0 for hashed tables. It iset by ABAP commands APPEND,COLLECT,LOOP AT,READ TABLE,SAERCH itab FOR .
After the statements DESCRIBE TABLE, LOOP AT, and READ TABLE, SY-TFILL contains the number of lines in the relevant internal
It contains the number of table entries processed. In an loop it is not set until after
the ENDSELECT or ENDEXEC statement. It is set by ABAP commands DELETE,FETCH,INSERT,MODIFY and UPDATE.
Return code set by the last ABAP statement. if it is 0 it means the statement was a success.
SYSTEM FIELDS for Screens
A group of system fields is set in the PAI event of each screen. Exceptf SY-DATAR, SY-LOOPC, and SY-STEPL, these can
be used in list processing.
Horizontal cursor position. Counter begins at column 2.
Vertical cursor position. Counter begins at line 1.
This field contains 'X' if at least one input field on the screen was changed by the user , otherwise it is space.It
can be used to determine if user has made any changes and a popup can be called with a prompt e.g. POPUP_TO_CONFIRM_CHANGE.
Number of lines currently displayed in a table control. Can be used to determine the step loop blocks in the screen and
for scrolling functionality.
GUI status of the current screen. This can be set in the PBO event using the SET PF-STATUS statu OF PROGRAM rep statement.
Number of columns on the current screen.
Number of rows on the current screen.
Index of the current line in a table control. This is set in each loop pass. SY-STEPL does not have a meaningful value
outside the loop (for example, during the POV event for a table line).
It contains the text that appears in the title bar of the screen. For selection screens and lists it is the program
name,it can be set using the SET TITLEBAR statement.
It contains the function code that triggered the PAI event.ENTER triggers the PAI but this field
will remain blank if no function code is attached to ENTER key.
Variant used to fill the selection screen.
SYSTEM FIELDS for Creating Lists
It contains the current column during list creation starting at 1. The field is set by the
output statements WRITE,ULINE,SKIP,POSITION,NEW-LINE,NEW-PAGE and BACK (sets it to 1).
It contains length of the page in the list.Its value is 0 if the length of page is infinite.
It contains the current line during list creation begining from 1, and includes the page header. SY-LINNO
is set by the ABAP output statements which are same as SY-COLNO.
It contains the line width in the list. The default value is the default window width. You can change the line width of the list using the LINE-SIZE addition in the REPORT
or NEW-PAGE statement. The default value is 84 .
Current page during list creation.
SY-TVAR0 ... SY-TVAR9
You can assign values to these variables in your programs. Their contents replace the placeholders in the list and column
headers of the program in the TOP-OF-PAGE event.
SYSTEM FIELDS For Messages
With call of MESSAGE statement following system fields are set.
SY-MSGID contains the message class
SY-MSGNO contains the message number
SY-MSGTY contains the message type
These fields hold the place holders in the message.