ABAP system fields are always available in ABAP programs. The runtime system fills them according to context. They can then be used in programs to query the system status. System fields are variables but you should always treat them as though they were constants, and only read them. If you change their values, important information for the flow of the program may be lost. In exceptional circumstances, system fields may be overwritten in an ABAP program to control the system – for example, SY-LSIND (for navigating to a detail list).
With one exception the names and data types of the system fields are stored in the ABAP Dictionary in the SYST structure and realized as components of the predefined structure SY in ABAP programs.
The system field SY-REPID is not part of SYST or SY. Instead, every program contains the predefined constants SY-REPID and SYST-REPID, which both contain the name of the corresponding program. Furthermore, there are two predefined types of the same name, SY-REPID and SYST-REPID.
All system fields are addressed using SY field name and their types using SYST field name.
The following table lists the definitions of the structure SYST in the ABAP Dictionary alphabetically. The character in the first column indicates how you can use the corresponding system field in ABAP programs. Name is the name of the component, Type is the Dictionary data type, and Length is the field length defined in the Dictionary. The Use column shows in which environment the system fields are set. The Description indicates the content.
|
Name |
Type |
Length |
Use |
Description |
|
ABCDE |
CHAR |
26 |
Constants |
|
|
APPLI |
RAW |
2 |
|
|
|
BATCH |
CHAR |
1 |
Background processing |
|
|
BATZD |
CHAR |
1 |
|
|
|
BATZM |
CHAR |
1 |
Obsolete |
|
|
BATZO |
CHAR |
1 |
Obsolete |
|
|
BATZS |
CHAR |
1 |
|
|
|
BATZW |
CHAR |
1 |
Obsolete |
|
|
BINPT |
CHAR |
1 |
Batch input |
|
|
BREP4 |
CHAR |
4 |
Obsolete |
|
|
BSPLD |
CHAR |
1 |
Obsolete |
|
|
CALLD |
CHAR |
1 |
ABAP program |
|
|
CALLR |
CHAR |
8 |
ID for print dialog function |
|
|
CCURS |
DEC |
9 |
|
|
|
CCURT |
DEC |
9 |
Obsolete |
|
|
CDATE |
DATS |
8 |
Obsolete |
|
|
CFWAE |
CUKY |
5 |
|
|
|
CHWAE |
CUKY |
5 |
Internal |
|
|
COLNO |
INT4 |
10 |
Current column in the list |
|
|
CPAGE |
INT4 |
10 |
Current page number |
|
|
CPROG |
CHAR |
40 |
ABAP program |
|
|
CTABL |
CHAR |
4 |
Obsolete |
|
|
CTYPE |
CHAR |
1 |
Obsolete |
|
|
CUCOL |
INT4 |
10 |
Screens |
|
|
CUROW |
INT4 |
10 |
Screens |
Vertical cursor position at PAI |
|
DATAR |
CHAR |
1 |
Screens |
|
|
DATLO |
DATS |
8 |
Date and time |
Local date of user |
|
DATUM |
DATS |
8 |
Date and time |
|
|
DAYST |
CHAR |
1 |
Date and time |
|
|
DBCNT |
INT4 |
10 |
Database accesses |
|
|
DBNAM |
CHAR |
20 |
ABAP program |
|
|
DBSYS |
CHAR |
10 |
SAP System |
|
|
DCSYS |
CHAR |
4 |
|
|
|
DEBUG |
CHAR |
1 |
|
|
|
DSNAM |
CHAR |
8 |
|
|
|
DYNGR |
CHAR |
4 |
ABAP program |
|
|
DYNNR |
CHAR |
4 |
ABAP program |
|
|
ENTRY |
CHAR |
72 |
|
|
|
FDAYW |
INT1 |
3 |
Date and time |
|
|
FDPOS |
INT4 |
10 |
Offset in character strings |
|
|
FFILE |
CHAR |
8 |
|
|
|
FLENG |
INT4 |
10 |
Internal |
|
|
FMKEY |
CHAR |
3 |
|
|
|
FODEC |
INT4 |
10 |
Internal |
|
|
FOLEN |
INT4 |
10 |
Internal |
|
|
FTYPE |
CHAR |
1 |
Internal |
|
|
GROUP |
CHAR |
1 |
|
|
|
HOST |
CHAR |
8 |
SAP System |
|
|
INDEX |
INT4 |
10 |
Loops |
|
|
INPUT |
CHAR |
1 |
Internal |
|
|
LANGU |
LANG |
1 |
SAP System |
|
|
LDBPG |
CHAR |
40 |
ABAP program |
|
|
LILLI |
INT4 |
10 |
Selected list row |
|
|
LINCT |
INT4 |
10 |
Page length of list |
|
|
LINNO |
INT4 |
10 |
Creating lists |
|
|
LINSZ |
INT4 |
10 |
Creating lists |
|
|
LISEL |
CHAR |
255 |
List processing |
|
|
LISTI |
INT4 |
10 |
List processing |
|
|
LOCDB |
CHAR |
1 |
|
|
|
LOCOP |
CHAR |
1 |
Obsolete |
|
|
LOOPC |
INT4 |
10 |
Screens |
|
|
LPASS |
CHAR |
4 |
|
|
|
LSIND |
INT4 |
10 |
List processing |
|
|
LSTAT |
CHAR |
16 |
List processing |
|
|
MACDB |
CHAR |
4 |
|
|
|
MACOL |
INT4 |
10 |
Columns from SET MARGIN statement |
|
|
MANDT |
CLNT |
3 |
SAP System |
|
|
MARKY |
CHAR |
1 |
|
|
|
MAROW |
INT4 |
10 |
Printing lists |
|
|
MODNO |
CHAR |
1 |
SAP System |
Index of external modes |
|
MSGID |
CHAR |
20 |
Messages |
|
|
MSGLI |
CHAR |
60 |
Messages |
|
|
MSGNO |
NUMC |
3 |
Messages |
|
|
MSGTY |
CHAR |
1 |
Messages |
|
|
MSGV1 |
CHAR |
50 |
Messages |
|
|
MSGV2 |
CHAR |
50 |
Messages |
Message variable |
|
MSGV3 |
CHAR |
50 |
Messages |
Message variable |
|
MSGV4 |
CHAR |
50 |
Messages |
Message variable |
|
NEWPA |
CHAR |
1 |
|
|
|
NRPAG |
CHAR |
1 |
Internal |
|
|
ONCOM |
CHAR |
1 |
|
|
|
OPSYS |
CHAR |
10 |
SAP System |
|
|
PAART |
CHAR |
16 |
Print parameters |
|
|
PAGCT |
INT4 |
10 |
|
|
|
PAGNO |
INT4 |
10 |
Creating lists |
|
|
PAUTH |
NUMC |
2 |
Internal |
|
|
PDEST |
CHAR |
4 |
Print parameters |
|
|
PEXPI |
NUMC |
1 |
Print parameters |
Retention period |
|
PFKEY |
CHAR |
20 |
Screens |
|
|
PLAYO |
CHAR |
5 |
|
|
|
PLAYP |
CHAR |
1 |
Internal |
|
|
PLIST |
CHAR |
12 |
Print parameters |
|
|
PNWPA |
CHAR |
1 |
|
|
|
PRABT |
CHAR |
12 |
Print parameters |
|
|
PRBIG |
CHAR |
1 |
Print parameters |
Selection cover page |
|
PRCOP |
NUMC |
3 |
Print parameters |
|
|
PRDSN |
CHAR |
6 |
Print parameters |
Name of spool dataset |
|
PREFX |
CHAR |
3 |
|
|
|
PRI40 |
CHAR |
1 |
Internal |
|
|
PRIMM |
CHAR |
1 |
Print parameters |
|
|
PRINI |
NUMC |
1 |
Internal |
|
|
PRLOG |
CHAR |
1 |
Internal |
|
|
PRNEW |
CHAR |
1 |
Print parameters |
New spool request |
|
PRREC |
CHAR |
12 |
Print parameters |
Recipient |
|
PRREL |
CHAR |
1 |
Print parameters |
Delete after print |
|
PRTXT |
CHAR |
68 |
Print parameters |
|
|
REPI2 |
CHAR |
40 |
|
|
|
REPID |
CHAR |
40 |
ABAP program |
|
|
RSTRT |
CHAR |
1 |
Internal |
|
|
RTITL |
CHAR |
70 |
Print parameters |
Title of printing program |
|
SAPRL |
CHAR |
4 |
SAP System |
|
|
SCOLS |
INT4 |
10 |
Screens |
|
|
SFNAM |
CHAR |
30 |
Obsolete |
|
|
SFOFF |
INT4 |
10 |
Internal |
|
|
SLSET |
CHAR |
14 |
Selection screens |
|
|
SPONO |
NUMC |
10 |
Printing lists |
|
|
SPONR |
NUMC |
10 |
Obsolete |
|
|
SROWS |
INT4 |
10 |
Screens |
|
|
STACO |
INT4 |
10 |
List processing |
|
|
STARO |
INT4 |
10 |
List processing |
|
|
STEPL |
INT4 |
10 |
Screens |
|
|
SUBCS |
CHAR |
1 |
Internal |
|
|
SUBRC |
INT4 |
10 |
Return value |
|
|
SUBTY |
RAW |
1 |
|
|
|
SYSID |
CHAR |
8 |
SAP System |
|
|
TABID |
CHAR |
8 |
|
|
|
TABIX |
INT4 |
10 |
Internal tables |
|
|
TCODE |
CHAR |
20 |
ABAP program |
|
|
TFDSN |
CHAR |
8 |
|
|
|
TFILL |
INT4 |
10 |
Internal tables |
|
|
TIMLO |
TIMS |
6 |
Date and time |
|
|
TITLE |
CHAR |
70 |
Screens |
|
|
TLENG |
INT4 |
10 |
Internal tables |
|
|
TLOPC |
INT4 |
10 |
Internal |
|
|
TMAXL |
INT4 |
10 |
|
|
|
TNAME |
CHAR |
30 |
|
|
|
TOCCU |
INT4 |
10 |
|
|
|
TPAGI |
INT4 |
10 |
|
|
|
TSTIS |
INT4 |
10 |
Internal |
|
|
TTABC |
INT4 |
10 |
|
|
|
TTABI |
INT4 |
10 |
|
|
|
TVAR0 |
CHAR |
20 |
Creating lists |
Text variable for headers |
|
TVAR1 |
CHAR |
20 |
Creating lists |
Text variable for headers |
|
TVAR2 |
CHAR |
20 |
Creating lists |
Text variable for headers |
|
TVAR3 |
CHAR |
20 |
Creating lists |
Text variable for headers |
|
TVAR4 |
CHAR |
20 |
Creating lists |
Text variable for headers |
|
TVAR5 |
CHAR |
20 |
Creating lists |
Text variable for headers |
|
TVAR6 |
CHAR |
20 |
Creating lists |
Text variable for headers |
|
TVAR7 |
CHAR |
20 |
Creating lists |
|
|
TVAR8 |
CHAR |
20 |
Creating lists |
Text variable for headers |
|
TVAR9 |
CHAR |
20 |
Creating lists |
Text variable for headers |
|
TZONE |
INT4 |
10 |
Date and time |
|
|
UCOMM |
CHAR |
70 |
Screens |
|
|
ULINE |
CHAR |
255 |
Constants |
|
|
UNAME |
CHAR |
12 |
SAP System |
|
|
UZEIT |
TIMS |
6 |
Date and time |
|
|
VLINE |
CHAR |
1 |
Constants |
|
|
WAERS |
CUKY |
5 |
|
|
|
WILLI |
INT4 |
10 |
|
|
|
WINCO |
INT4 |
10 |
Obsolete |
|
|
WINDI |
INT4 |
10 |
Obsolete |
|
|
WINRO |
INT4 |
10 |
Obsolete |
|
|
WINSL |
CHAR |
79 |
Obsolete |
|
|
WINX1 |
INT4 |
10 |
|
|
|
WINX2 |
INT4 |
10 |
Obsolete |
|
|
WINY1 |
INT4 |
10 |
Obsolete |
|
|
WINY2 |
INT4 |
10 |
Obsolete |
|
|
WTITL |
CHAR |
1 |
Creating lists |
|
|
XCODE |
CHAR |
70 |
|
|
|
XFORM |
CHAR |
30 |
Internal |
|
|
XPROG |
CHAR |
40 |
Internal |
|
|
ZONLO |
CHAR |
6 |
Date and time |
|
The system field is set by the runtime environment. Its content can be evaluated in the ABAP program but not changed. |
|
The system field is set by the runtime environment. Its content can be changed in the ABAP program to influence the runtime environment. |
|
The system field must be set in the ABAP program. It can then be evaluated by the runtime environment or the program. |
|
The system field is only for internal use and must not be used in ABAP programs. |
|
The system field is obsolete and its content is not set. It cannot be used in ABAP programs. |
The following is a thematic summary of the system fields with notes on their use:
· Information on the current SAP System
· Information on the user session
· Information on the current ABAP program
· Loops
· Database accesses
· Screens
· Selection screens
Central database system, for example INFORMIX, ORACLE
Application server, for example HS0333, PAWDF087
Operating system of application server, for example HP-UX, SINIX
Release status of the SAP System, for example 30D, 46A
Name of the SAP System, for example B20, I47
One-digit language key, for example D, E, F. Either logon language of user or set using the SET LOCALE LANGUAGE statement.
Indexes external modes. Zero in first mode. In new modes, opened using the Create Mode function or by calling a transaction using /o, it is raised by 1. If previous modes were deleted, the free numbers are used first. Modes opened using CALL TRANSACTION … STARTING NEW TASK start back at 0.
Logon name of user, for example KELLERH, BC400-01.
The following system fields are always set automatically. If necessary, the GET TIME statement synchronizes the application server time with that of the database server and writes it to the system field SY-UZEIT. SY-DATUM and the system fields for the local time zone, that is SY-TIMLO, SY-DATLO, and SY-ZONLO are also reset.
Local date of user, for example 19981129, 19990628.
Current (application server) date, for example 19981130, 19990627.
During daylight saving time X, otherwise empty.
Factory calendar weekday, Sunday 0 … Saturday 6.
Local time of user, for example 154353, 225312.
Time difference to Greenwich Mean Time (UTC) in seconds, for example 3600, 10800.
Current (application server) time, for example 164353, 215312.
Time zone of user, for example CET, UTC.
SY-CALLD contains SPACE if the program is the first and only program in a call chain. SY_CALLD contains 'X' if the program is a called program in a call chain.
· SY-CALLD is set to ‘X‘ in a program called using CALL TRANSACTION, CALL DIALOG, or SUBMIT … AND RETURN.
· SY-CALLD is set to space in a program called using LEAVE TO TRANSACTION, entering a transaction code on a screen, and processing batch input folders.
· With SUBMIT (without RETURN) SY-CALLD retains the previous value.
With executable programs this is the linked logical database.
With executable programs, the database program of the linked logical database.
Name of current ABAP program. With externally called procedures this is the name of the procedure’s main program.
Name of current transaction code.
SY-BATCH is set to X in an ABAP program running in the background. Otherwise it is empty.
SY-BINPT is set to X during processing of batch input folders and in ABAP programs called with CALL TRANSACTION USING. Otherwise it is empty.
· OPTIONS FROM in the CALL TRANSACTION USINGstatement can set SY-BINPT to empty for the whole program execution, as well as at the end of the BDC data.
· In CATT procedures, SY-BINPT is always empty.
Contains a horizontal line with length 255. Can be used when creating the list.
Contains a vertical line (|). Can be used when creating the list
SY-INDEX contains the number of loop passes in DO and WHILE loops, including the current loop pass.
Found location for operations with character-type fields.
· If the operators CO, CN, CA, NA, CS, NS, CP, NP are used in comparisons, SY-FDPOS is assigned offset values depending on the comparison result.
· SEARCH … FOR … sets SY-FDPOS to the offset of the found search string.
Current line in an internal table. With the following statements SY-TABIX is set for index tables. With hashed tables, SY-TABIX is not filled or it is set to 0.
· APPENDsets SY-TABIX to the index of the last table row, that is the total number of entries in the target table.
· COLLECTsets SY-TABIX to the index of the existing or appended table row. With hashed tables, SY-TABIX is set to 0.
· LOOP ATsets SY-TABIX to the index of the current table row at the beginning of every loop pass. After leaving a loop, SY-TABIX is set to the value it had before entering the loop. With hashed tables, SY-TABIX is set to 0.
· READ TABLE sets SY-TABIX to the index of the table row read. If no row is found with binary search while reading, SY-TABIX contains the index of the next-highest row or the total number of rows +1. If no row is found with linear search while reading, SY-TABIX is undefined.
· SEARCH itab FOR sets SY-TABIX to the index of the table row, in which the search string was found.
With the statements DESCRIBE TABLE, LOOP AT, and READ TABLE, SY-TFILL is filled with the row number of the addressed internal table.
With the statements DESCRIBE TABLE, LOOP AT, and READ TABLE, the system fills SY-TLENG with the row size of the addressed internal table.
SQL statements set the content of SY-DBCNT to the number of database lines processed. With SELECT loops in Open SQL, SY-DBCNT is set after the ENDSELECT statement. In Native SQL, SY-DBCNT is set after the ENDEXEC statement.
· DELETEsets SY-DBCNT to the number of lines deleted.
· FETCHsets SY-DBCNT to the number of lines already read by the current cursor.
· INSERTsets SY-DBCNT to the number of lines inserted.
· MODIFYsets SY-DBCNT to the number of lines processed.
· UPDATE sets SY-DBCNT to the number of lines changed.
Return value set by the following ABAP statements. In general, a content of 0 means that the statement was executed without problems.
· ASSIGNsets SY-SUBRC to 0 if assignment to field symbol is possible, otherwise 4.
· ASSIGN dref->* sets SY-SUBRC to 0 if dereferencing is possible, otherwise 4.
· AUTHORITY-CHECK sets SY-SUBRC to 0 if the user has the necessary authorization, otherwise 4, 8, 12, 16, 24, 28, 32, or 36 depending on the cause.
· CALL DIALOG with USING sets SY-SUBRC to 0, if processing was successful, otherwise <>0.
· CALL FUNCTION sets SY-SUBRC according to the exception handling.
· CALL METHOD sets SY-SUBRC according to the exception handling.
· CALL SELECTION-SCREEN sets SY-SUBRC to 0 if the user chose Enter or Execute and 4 if the user chose Cancel.
· CALL TRANSACTION with USING sets SY-SUBRC to 0 if processing was successful, otherwise <>0.
· CATCH SYSTEM-EXCEPTIONS sets SY-SUBRC if there are runtime errors after the ENDCATCH statement. The value is specified in the program.
· COMMIT WORK sets SY-SUBRC to 0.
· COMMIT WORK AND WAIT sets SY-SUBRC to 0 if update was successful, otherwise <>0.
· COMMUNICATION INIT DESTINATION … RETURNCODE sets SY-SUBRC as specified.
· CONCATENATE sets SY-SUBRC to 0 if the result fits into target variable, otherwise 4.
· CREATE OBJECT sets SY-SUBRC if the exceptions of the instance constructor are handled.
· CREATE OBJECT in OLE2 sets SY-SUBRC to 0 if an external object was created, otherwise 1,2, 3 with different causes.
· DELETEsets SY-SUBRC to 0 if operation was successful, otherwise 4 or <> 0 depending on cause.
· DEMAND … MESSAGES INTO sets SY-SUBRC to 0 if a message table is empty, otherwise <> 0.
· DESCRIBE LIST sets SY-SUBRC to 0 if row or list exists, otherwise 4 or 8.
· EXEC SQL - ENDEXEC sets SY-SUBRC to 0 in almost all cases. Only if no set was read with FETCH is SY-SUBRC 4.
· FETCHsets SY-SUBRC to 0 if at least one row was read, otherwise 4.
· GENERATE SUBROUTINE POOL sets SY-SUBRC to 0 if generation was successful, otherwise 8.
· GET CURSOR sets SY-SUBRC to 0 if the cursor is correctly positioned, otherwise 4.
· GET PARAMETER sets SY-SUBRC to 0 if value found in SAP Memory, otherwise 4.
· IMPORTsets SY-SUBRC to 0 if import of data objects was successful, otherwise 4.
· INSERTsets SY-SUBRC to 0 if operation was successful, otherwise 4.
· LOAD REPORT sets SY-SUBRC to 0 if operation was successful, otherwise 4 or 8 depending on cause.
· LOOPsets SY-SUBRC to 0 if loop over extract was passed at least once, otherwise 4.
· LOOP ATsets SY-SUBRC to 0 if loop over internal table was passed at least once, otherwise 4.
· MODIFYsets SY-SUBRC to 0 if operation was successful, otherwise 4.
· MODIFY LINE sets SY-SUBRC to 0 if list row was changed, otherwise <> 0.
· MODIFYsets SY-SUBRC to 0 if operation was successful, otherwise 4.
· OLE2 automation, bundled commands set SY-SUBRC to 0 if all were successfully executed, otherwise 1, 2, 3, 4 depending on cause.
· OPEN DATASET sets SY-SUBRC to 0 if the file was opened, otherwise 8.
· Open SQL commands set SY-SUBRC to 0 if operation was successful, otherwise <>0.
· OVERLAYsets SY-SUBRC to 0 if at least one character is overlayed, otherwise 4.
· READ DATASET sets SY-SUBRC to 0 if the read operation was successful, otherwise 4 or 8 depending on cause.
· READ LINE sets SY-SUBRC to 0 if list row exists, otherwise <> 0.
· READ TABLE sets SY-SUBRC to 0 if the table row was found, otherwise 2, 4, 8 depending on cause.
· REPLACEsets SY-SUBRC to 0 if search string could be replaced, otherwise <> 0.
· ROLLBACK WORK always sets SY-SUBRC to 0.
· SCROLLsets SY-SUBRC to 0 if scrolling in list successful, otherwise 4 or 8 depending on cause.
· SEARCHsets SY-SUBRC to 0 if search string was found, otherwise 4.
· SELECTsets SY-SUBRC to 0 if at least one row was read, otherwise 4 or even 8 with SELECT SINGLE FOR UPDATE.
· SET COUNTRY sets SY-SUBRC to 0 if country ID was found in table T005X, otherwise 4.
· SET BITsets SY-SUBRC to 0 if bit was set, otherwise <> 0.
· SET TITLEBAR sets SY-SUBRC to 0 if title exists, otherwise 4.
· SHIFT … UP TO sets SY-SUBRC to 0 if position was found in character string, otherwise 4.
· SPLITsets SY-SUBRC to 0 if size of target fields is sufficient, otherwise 4.
· UPDATEsets SY-SUBRC to 0 if operation successful, otherwise 4.
· WRITE … TO sets SY-SUBRC to 0 if assignment successful, otherwise 4.
Horizontal cursor position Counting starts at column 2
Vertical cursor position Counting starts at row 1
Number of rows currently displayed in a screen table (table control).
GUI status of current screen. Can be set at PBO using SET PF-STATUS.
Number of columns in current screen.
Number of rows in current screen.
Function code that triggered the event PAI. Every user action that triggers PAI is assigned a unique function code, with one exception: Choosing ENTER triggers PAI and different function codes can be transferred to SY-UCOMM:
· If there is an entry in the command field of the standard toolbar, this is transferred to SY-UCOMM as the function code.
· If there is no entry in the command field and a function code is assigned to the ENTER key, this function code is transferred to SY-UCOMM.
· If the command field does not contain an entry and no function code is assigned to the ENTERkey, it is empty and the content of SY-UCOMM is not affected.
Variant used to fill the selection screen.
Current column during list creation. Counting starts at 1. SY-COLNO is set by the following output statements:
· WRITE, ULINE, SKIPset SY-COLNO to the next output position.
· BACKsets SY-COLNO to 1.
· POSITION col sets SY-COLNO to col. If collies outside the page, the subsequent output statements are ignored.
· NEW-LINE sets SY-COLNO to 1.
· NEW-PAGE sets SY-COLNO to 1.
Page length of list. SY-LINCT is 0 for a standard list of any length and has a value unequal to 0 for lists with fixed page length.
· LINE-COUNT in the statements REPORT, PROGRAM, FUNCTION POOL sets SY-LINCT for the current program.
· LINE-COUNT in the SUBMIT statement sets SY-LINCT for the called program.
Current row during the list creation. Counting begins at 1 and includes the page header. SY-LINNO is set by the following output statements:
· WRITE, ULINE, SKIPraise SY-LINNO by 1 in the case of a line break.
· BACK sets SY-LINNO to the first row after the page header. BACKin connection with RESERVE sets SY-LINNO to the first row of a block of lines.
· NEW-LINE raises SY-LINNO by 1.
· SKIP TO LINE lin sets SY-LINNO to lin. If lin does not lie between 1 and the page length, the system ignores the statement.
Line width of list Without further influence this is the standard window width: If SY-SCOLS >= 84, SY-LINSZ = SY-SCOLS; if SY-SCOLS < 84, SY-LINSZ = 84.
To change the width of the output list, use the LINE-SIZE option of the REPORTor NEW PAGE statement.
· LINE-SIZE in the statements REPORT, PROGRAM, FUNCTION POOL sets SY-LINSZ for the current program.
· LINE-SIZE in the SUBMIT statement sets SY-LINSZ for the called program.
Current page during the list creation.
· WRITE, ULINE, SKIPraise SY-PAGNO by 1 in the case of a line break.
· NEW-PAGE raises SY-PAGNO by 1, but only if at least one output follows both on the current page and after the NEW-PAGE statement.
· NEW-SECTION of the NEW-PAGE PRINT ON statement sets SY-PAGNO to 1.
In the program, you can assign values to these system fields. During the TOP-OF-PAGE event, the system replaces the placeholders of the program’s list and column headers with the contents of the system fields SY-TVAR0 to SYTVAR9.
Is set to N in the statements REPORT, PROGRAM, and FUNCTION-POOLif the NO STANDARD PAGE HEADING addition is used, otherwise empty. NEW-PAGE does not set SY-WTITL.
At each interactive list event and for READ LINE, the system automatically fills the following system fields:
Line from which the event was triggered Counting begins at 1 and includes the page header.
Contents of the line from which the event was triggered
Index of the list from which the event was triggered
Contains a value that displays where printing was started, for example NEW-PAGE for program-controlled printing or RSDBRUNT for printing from the selection screen.
Contains the name of the spool file during printing.
Contains the name of the spool number during printing.
The SET MARGINstatement fills the system fields SY-MAROW and SY-MACOL, which determine the number of lines on the upper margin and the number of columns on the left margin when printing.
If you execute the MESSAGE statement, the following system fields are set. If you execute the MESSAGE … RAISING statement in function modules and methods, these fields are also set in the calling program, if it handles the exception.
SY-MSGID contains the message ID.
SY-MSGNO contains the message number.
SY-MSGTY contains the message type.
SY-MSGV1 to SY-MSGV4 contain the field contents that are used for the message’s placeholders.
· If you request database locks using the ENQUEUE function module, the field SY-MSGV1 contains the name of the user who holds the lock, in the case of the FOREIGN_LOCK exception.
· IN the case of CALL TRANSACTION or CALL DIALOG with the USING addition, a message displayed during the called screen sequence is returned in the fields SY-MSGID, SY-MSGTY, SY-MSGNO, SY-MSGV1, ... , SY-MSGV4.
· During Remote Function Call (RFC), error messages are transferred from the remote system to the calling system and SY-MSGID, SY-MSGTY, SY-MSGNO,SY-MSGV1, SY-MSGV2, SY-MSGV3, SY-MSGV4 are set. If short dumps or type X messages occur, the system also sets the fields.
Flat file (USING/GENERATING DATASET).
Number of decimal places of a field.
On Commit flag. This system field is set to different values depending on the call status of an ABAP program. Of these, only the value of ‘P’ is guaranteed. If at all, SY-ONCOM must only be queried for ‘P’.
The value 'P' means that the program is already executing a subroutine started using PERFORM … ON COMMIT and therefore a further subroutine call using PERFORM ... ON COMMIT would cause a runtime error.
Call status of an executable program.
Call type of an executable program.
SYSTEM-EXIT program.
In R/2, ID for which SAP applications are installed. No longer filled.
In R/2, ID for daily background scheduling. No longer filled.
In R/2, ID for monthly background scheduling. No longer filled.
In R/2, ID for single background scheduling. No longer filled.
In R/2, ID for immediate background scheduling. No longer filled.
In R/2, ID for weekly background scheduling. No longer filled.
In R/2, root name of request report for background processing. No longer filled.
In R/2, ID for immediate spool output for background processing. No longer filled.
In R/2, rate specification/result field from CURRENCY CONVERSION. No longer filled.
In R/2, table rate from CURRENCY CONVERSION. No longer filled.
In R/2, rate date from CURRENCY CONVERSION. No longer filled.
In R/2, rate table from CURRENCY CONVERSION. No longer filled.
In R/2, rate type from CURRENCY CONVERSION. No longer filled.
Dialog system of R/2 System No longer filled.
Previously, current function code menu. No longer filled.
Local database, not implemented.
Local database operation, not implemented.
Previously, name of file for matchcode access. No longer filled.
Current line character for the MARK statement. However, the language element MARK will only be supported for a short time.
In R/2, maximum number of pages per list. No longer filled.
ABAP prefix for background jobs. No longer filled.
In R/2, you could process spool files using the TRANSFER statement, set by SY-SPONR. No longer filled.
Previously, name of external storage file for extracts. No longer filled.
Previously, maximum number of entries in an internal table. No longer filled.
Previously, name of an internal table after an access. No longer filled.
With the statements DESCRIBE TABLE, LOOP AT, and READ TABLE, SY-TOCCU was filled with the value of the initial main memory requirements for the addressed internal table. No longer filled.
Previously, ID whether an internal table is stored in the paging area. No longer filled.
Previously, index of last read row in an internal table. No longer filled.
Previously, offset of internal tables in roll area. No longer filled.
Previously, company code currency after reading booking segment. No longer filled.
In R/2, number of selected list row for detail list in window. Use SY-LILLI.
In R/2, cursor position for detail list in window. Use SY-CUCOL.
In R/2, index of list for detail list in window. Use SY-LSIND.
In R/2, cursor position for detail list in window. Use SY-CUROW.
In R/2, content of selected row for detail list in window. Use SY-LISEL.
In R/2, window coordinate for detail list in window. No longer used.
In R/2, window coordinate for detail list in window. No longer used.
In R/2, window coordinate for detail list in window. No longer used.
In R/2, window coordinate for detail list in window. No longer used.