ABAP-Systemfelder sind in ABAP-Programmen immer vorhanden. Sie werden von der Laufzeitumgebung kontextabhängig gefüllt und können im Programm verwendet werden, um Systemzustände abzufragen. Systemfelder sind zwar Variablen, aber es sollte nur lesend auf sie zugegriffen werden, da ansonsten wichtige Informationen für die weitere Programmausführung verloren gehen könnten. In seltenen Fällen können Systemfelder auch in ABAP-Programmen überschrieben werden, um das Systemverhalten zu steuern, wie beispielsweise SY-LSIND zur Navigation in Verzweigungslisten.
Die Namen und Datentypen der Systemfelder sind mit einer Ausnahme im ABAP Dictionary in der Struktur SYST gespeichert und in ABAP-Programmen als Komponenten der vordefinierten Struktur SY realisiert.
Das Systemfeld SY-REPID ist nicht Teil der Strukturen SYST bzw. SY. Stattdessen enthält jedes Programm die vordefinierten Konstanten SY-REPID und SYST-REPID, die beide den Namen des jeweiligen Programms enthalten. Weiterhin gibt es zwei gleichnamige vordefinierte Typen SY-REPID und SYST-REPID.
Alle Systemfelder werden über SY-Feldname und ihre Typen über SYST-Feldname angesprochen.
Folgende Tabelle listet die Definition der Struktur SYST im ABAP Dictionary alphabetisch auf. Das Zeichen in der ersten Spalte zeigt an, wie das zugehörige Systemfeld in ABAP-Programmen verwendet werden darf. Name ist der Name der Komponente, Datentyp bezeichnet den Dictionary-Datentyp und Länge ist die im Dictionary definierte Feldlänge. Die Spalte Verwendung zeigt an, in welchem Umfeld die Systemfelder gesetzt werden. Die Kurzbeschreibung deutet den Inhalt an.
Name |
Typ |
Länge |
Verwendung |
Kurzbeschreibung |
|
|
CHAR |
26 |
Konstanten |
Alphabet (A,B,C,...) |
|
|
APPLI |
RAW |
2 |
Obsolet |
|
|
CHAR |
1 |
Batch-Verarbeitung |
Programm läuft im Hintergrund |
|
|
BATZD |
CHAR |
1 |
Obsolet |
|
|
BATZM |
CHAR |
1 |
Obsolet |
|
|
BATZO |
CHAR |
1 |
Obsolet |
|
|
BATZS |
CHAR |
1 |
Obsolet |
|
|
BATZW |
CHAR |
1 |
Obsolet |
|
|
BINPT |
CHAR |
1 |
Batch-Input |
Programm läuft unter Batch Input |
|
BREP4 |
CHAR |
4 |
Obsolet |
|
|
BSPLD |
CHAR |
1 |
Obsolet |
|
|
CHAR |
1 |
ABAP-Programm |
Aufrufmodus des ABAP-Programms |
|
|
CHAR |
8 |
Listen drucken |
Kennung für Druckdialogfunktion |
|
|
CCURS |
DEC |
9 |
Obsolet |
|
|
CCURT |
DEC |
9 |
Obsolet |
|
|
CDATE |
DATS |
8 |
Obsolet |
|
|
CFWAE |
CUKY |
5 |
Intern |
|
|
CHWAE |
CUKY |
5 |
Intern |
|
|
COLNO |
INT4 |
10 |
Listenerstellung |
Aktuelle Spalte auf der Liste |
|
CPAGE |
INT4 |
10 |
Listenverarbeitung |
Aktuelle Seitennummer |
|
CPROG |
CHAR |
40 |
ABAP-Programm |
Aufrufer in externen Prozeduren |
|
CTABL |
CHAR |
4 |
Obsolet |
|
|
CTYPE |
CHAR |
1 |
Obsolet |
|
|
CUCOL |
INT4 |
10 |
Bildschirmbilder |
Horizontale Cursorposition bei PAI |
|
CUROW |
INT4 |
10 |
Bildschirmbilder |
Vertikale Cursorposition bei PAI |
|
CHAR |
1 |
Dynpros |
Zeigt Benutzereingabe an |
|
|
DATLO |
DATS |
8 |
Datum und Zeit |
Lokales Datum des Benutzers |
|
DATUM |
DATS |
8 |
Datum und Zeit |
Aktuelles (Applikationsserver-)Datum |
|
DAYST |
CHAR |
1 |
Datum und Zeit |
Sommerzeitflag |
|
DBCNT |
INT4 |
10 |
Datenbankzugriffe |
Anzahl der bearbeiteten Tabellenzeilen. |
|
DBNAM |
CHAR |
20 |
ABAP-Programm |
Verknüpfte logische Datenbank. |
|
DBSYS |
CHAR |
10 |
R/3-System |
Namen des zentralen Datenbanksystems |
|
DCSYS |
CHAR |
4 |
Obsolet |
|
|
DEBUG |
CHAR |
1 |
Intern |
|
|
DSNAM |
CHAR |
8 |
Intern |
|
|
DYNGR |
CHAR |
4 |
ABAP-Programm |
Bildgruppe des aktuellen Dynpros. |
|
DYNNR |
CHAR |
4 |
ABAP-Programm |
Nummer des aktuellen Dynpros |
|
CHAR |
72 |
Intern |
||
|
INT1 |
3 |
Datum und Zeit |
Fabrikkalender-Wochentag |
|
|
FDPOS |
INT4 |
10 |
Zeichenketten |
Offset in Zeichenkette |
|
FFILE |
CHAR |
8 |
Intern |
|
|
FLENG |
INT4 |
10 |
Intern |
|
|
FMKEY |
CHAR |
3 |
Obsolet |
|
|
FODEC |
INT4 |
10 |
Intern |
|
|
FOLEN |
INT4 |
10 |
Intern |
|
|
FTYPE |
CHAR |
1 |
Intern |
|
|
CHAR |
1 |
Intern |
||
|
CHAR |
8 |
R/3-System |
Name des Applikationsservers |
|
|
INT4 |
10 |
Schleifen |
Aktueller Schleifendurchlauf |
|
|
INPUT |
CHAR |
1 |
Intern |
|
|
LANG |
1 |
R/3-System |
Aktuelle Sprache |
|
|
LDBPG |
CHAR |
40 |
ABAP-Programm |
Programm der logischen Datenbank |
|
LILLI |
INT4 |
10 |
Listenverarbeitung |
Ausgewählte Listenzeile |
|
LINCT |
INT4 |
10 |
Listenerstellung |
Seitenlänge der Liste |
|
LINNO |
INT4 |
10 |
Listenerstellung |
Aktuelle Zeile |
|
LINSZ |
INT4 |
10 |
Listenerstellung |
Zeilenbreite der Liste |
|
LISEL |
CHAR |
255 |
Listenverarbeitung |
Inhalt der ausgewählten Zeile. |
|
LISTI |
INT4 |
10 |
Listenverarbeitung |
Index der ausgewählten Liste |
|
LOCDB |
CHAR |
1 |
Obsolet |
|
|
LOCOP |
CHAR |
1 |
Obsolet |
|
|
LOOPC |
INT4 |
10 |
Dynpros |
Anzahl der in Tabelle sichtbaren Zeilen |
|
LPASS |
CHAR |
4 |
Intern |
|
|
LSIND |
INT4 |
10 |
Listenverarbeitung |
Index der Verzweigungsliste |
|
LSTAT |
CHAR |
16 |
Listenverarbeitung |
Bezeichner für Listenstufen |
|
CHAR |
4 |
Obsolet |
||
|
MACOL |
INT4 |
10 |
Listen drucken |
Spalten aus SET MARGIN-Anweisung |
|
MANDT |
CLNT |
3 |
R/3-System |
Mandantennummer aus Anmeldung |
|
MARKY |
CHAR |
1 |
Obsolet |
|
|
MAROW |
INT4 |
10 |
Listen drucken |
Zeilen aus SET MARGIN-Anweisung |
|
MODNO |
CHAR |
1 |
R/3-System |
Index externer Modi, |
|
MSGID |
CHAR |
20 |
Nachrichten |
Nachrichtenklasse |
|
MSGLI |
CHAR |
60 |
Nachrichten |
Nachrichtenzeile |
|
MSGNO |
NUMC |
3 |
Nachrichten |
Nachrichtennummer |
|
MSGTY |
CHAR |
1 |
Nachrichten |
Nachrichtentyp |
|
MSGV1 |
CHAR |
50 |
Nachrichten |
Nachrichtenvariable |
|
MSGV2 |
CHAR |
50 |
Nachrichten |
Nachrichtenvariable |
|
MSGV3 |
CHAR |
50 |
Nachrichten |
Nachrichtenvariable |
|
MSGV4 |
CHAR |
50 |
Nachrichten |
Nachrichtenvariable |
|
CHAR |
1 |
Intern |
||
|
NRPAG |
CHAR |
1 |
Intern |
|
|
CHAR |
1 |
Intern |
||
|
OPSYS |
CHAR |
10 |
R/3-System |
Betriebssystem des Applikationsservers |
|
CHAR |
16 |
Druckparameter |
Druckaufbereitung |
|
|
PAGCT |
INT4 |
10 |
Obsolet |
|
|
PAGNO |
INT4 |
10 |
Listenerstellung |
Aktuelle Seite |
|
PAUTH |
NUMC |
2 |
Intern |
|
|
PDEST |
CHAR |
4 |
Druckparameter |
Ausgabegerät |
|
PEXPI |
NUMC |
1 |
Druckparameter |
Spool-Verweildauer |
|
PFKEY |
CHAR |
20 |
Bildschirmbilder |
Aktueller GUI-Status |
|
PLAYO |
CHAR |
5 |
Intern |
|
|
PLAYP |
CHAR |
1 |
Intern |
|
|
PLIST |
CHAR |
12 |
Druckparameter |
Name des Spool-Auftrags |
|
PNWPA |
CHAR |
1 |
Intern |
|
|
PRABT |
CHAR |
12 |
Druckparameter |
Abteilung im Deckblatt |
|
PRBIG |
CHAR |
1 |
Druckparameter |
Selektions-Deckblatt |
|
PRCOP |
NUMC |
3 |
Druckparameter |
Anzahl Ausdrucke |
|
PRDSN |
CHAR |
6 |
Druckparameter |
Name des Spool-Datasets |
|
PREFX |
CHAR |
3 |
Obsolet |
|
|
PRI40 |
CHAR |
1 |
Intern |
|
|
PRIMM |
CHAR |
1 |
Druckparameter |
Sofort ausgeben |
|
PRINI |
NUMC |
1 |
Intern |
|
|
PRLOG |
CHAR |
1 |
Intern |
|
|
PRNEW |
CHAR |
1 |
Druckparameter |
Neuer Spool-Auftrag |
|
PRREC |
CHAR |
12 |
Druckparameter |
Empfänger |
|
PRREL |
CHAR |
1 |
Druckparameter |
Löschen nach Ausgabe |
|
PRTXT |
CHAR |
68 |
Druckparameter |
Text für Deckblatt |
|
CHAR |
40 |
Intern |
||
|
REPID |
CHAR |
40 |
ABAP-Programm |
Aktuelles Rahmenprogramm |
|
RSTRT |
CHAR |
1 |
Intern |
|
|
RTITL |
CHAR |
70 |
Druckparameter |
Titel des druckenden Programms |
|
CHAR |
4 |
R/3-System |
Release-Stand des R/3-Systems |
|
|
SCOLS |
INT4 |
10 |
Bildschirmbilder |
Anzahl der Spalten |
|
SFNAM |
CHAR |
30 |
Obsolet |
|
|
SFOFF |
INT4 |
10 |
Intern |
|
|
SLSET |
CHAR |
14 |
Selektionsbilder |
Name der Variante |
|
SPONO |
NUMC |
10 |
Listen drucken |
Spool-Nummer |
|
SPONR |
NUMC |
10 |
Obsolet |
|
|
SROWS |
INT4 |
10 |
Bildschirmbilder |
Anzahl der Zeilen |
|
STACO |
INT4 |
10 |
Listenverarbeitung |
Erste angezeigte Spalte |
|
STARO |
INT4 |
10 |
Listenverarbeitung |
Oberste angezeigte Zeile |
|
STEPL |
INT4 |
10 |
Dynpros |
Index der aktuellen Tabellenzeile |
|
SUBCS |
CHAR |
1 |
Intern |
|
|
SUBRC |
INT4 |
10 |
Rückgabewert |
Rückgabewert nach ABAP-Anweisungen |
|
SUBTY |
RAW |
1 |
Intern |
|
|
SYSID |
CHAR |
8 |
R/3-System |
Name des R/3-Systems |
|
CHAR |
8 |
Intern |
||
|
TABIX |
INT4 |
10 |
Interne Tabellen |
Aktueller Zeilenindex |
|
TCODE |
CHAR |
20 |
ABAP-Programm |
Aktueller Transaktionscode |
|
TFDSN |
CHAR |
8 |
Obsolet |
|
|
TFILL |
INT4 |
10 |
Interne Tabellen |
Aktuelle Anzahl von Zeilen |
|
TIMLO |
TIMS |
6 |
Datum und Zeit |
Lokale Uhrzeit des Benutzers |
|
TITLE |
CHAR |
70 |
Bildschirmbilder |
Text in der Titelzeile |
|
TLENG |
INT4 |
10 |
Interne Tabellen |
Zeilengröße |
|
TLOPC |
INT4 |
10 |
Intern |
|
|
TMAXL |
INT4 |
10 |
Obsolet |
|
|
TNAME |
CHAR |
30 |
Obsolet |
|
|
TOCCU |
INT4 |
10 |
Obsolet |
|
|
TPAGI |
INT4 |
10 |
Obsolet |
|
|
TSTIS |
INT4 |
10 |
Intern |
|
|
TTABC |
INT4 |
10 |
Obsolet |
|
|
TTABI |
INT4 |
10 |
Obsolet |
|
|
TVAR0 |
CHAR |
20 |
Listenerstellung |
Text-Variable für Überschriften |
|
TVAR1 |
CHAR |
20 |
Listenerstellung |
Text-Variable für Überschriften |
|
TVAR2 |
CHAR |
20 |
Listenerstellung |
Text-Variable für Überschriften |
|
TVAR3 |
CHAR |
20 |
Listenerstellung |
Text-Variable für Überschriften |
|
TVAR4 |
CHAR |
20 |
Listenerstellung |
Text-Variable für Überschriften |
|
TVAR5 |
CHAR |
20 |
Listenerstellung |
Text-Variable für Überschriften |
|
TVAR6 |
CHAR |
20 |
Listenerstellung |
Text-Variable für Überschriften |
|
TVAR7 |
CHAR |
20 |
Listenerstellung |
Text-Variable für Überschriften |
|
TVAR8 |
CHAR |
20 |
Listenerstellung |
Text-Variable für Überschriften |
|
TVAR9 |
CHAR |
20 |
Listenerstellung |
Text-Variable für Überschriften |
|
TZONE |
INT4 |
10 |
Datum und Zeit |
Zeitdifferenz zur Greenwichzeit |
|
CHAR |
70 |
Bildschirmbilder |
Funktionscode, der PAI ausgelöst hat |
|
|
ULINE |
CHAR |
255 |
Konstanten |
Horizontaler Strich der Länge 255 |
|
UNAME |
CHAR |
12 |
R/3-System |
Anmeldenamen des Benutzers |
|
UZEIT |
TIMS |
6 |
Datum und Zeit |
Aktuelle (Applikationsserver-) Uhrzeit |
|
CHAR |
1 |
Konstanten |
Vertikaler Strich |
|
|
CUKY |
5 |
Obsolet |
||
|
WILLI |
INT4 |
10 |
Obsolet |
|
|
WINCO |
INT4 |
10 |
Obsolet |
|
|
WINDI |
INT4 |
10 |
Obsolet |
|
|
WINRO |
INT4 |
10 |
Obsolet |
|
|
WINSL |
CHAR |
79 |
Obsolet |
|
|
WINX1 |
INT4 |
10 |
Obsolet |
|
|
WINX2 |
INT4 |
10 |
Obsolet |
|
|
WINY1 |
INT4 |
10 |
Obsolet |
|
|
WINY2 |
INT4 |
10 |
Obsolet |
|
|
WTITL |
CHAR |
1 |
Listenerstellung |
Flag für Standard-Seitenüberschrift |
|
CHAR |
70 |
Intern |
||
|
XFORM |
CHAR |
30 |
Intern |
|
|
XPROG |
CHAR |
40 |
Intern |
|
|
CHAR |
6 |
Datum und Zeit |
Zeitzone des Benutzers |
|
Das Systemfeld wird von der Laufzeitumgebung gesetzt. Sein Inhalt darf im ABAP-Programm ausgewertet aber nicht verändert werden. |
|
Das Systemfeld wird von der Laufzeitumgebung gesetzt. Sein Inhalt darf im ABAP-Programm verändert werden, um die Laufzeitumgebung zu beeinflussen. |
|
Das Systemfeld muß im ABAP-Programm gesetzt werden. Es kann danach von der Laufzeitumgebung oder vom Programm ausgewertet werden. |
|
Das Systemfeld ist nur für die interne Verwendung vorgesehen und darf in ABAP-Programmen nicht verwendet werden. |
|
Das Systemfeld ist obsolet und sein Inhalt wird nicht gesetzt. Es darf in ABAP-Programmen nicht verwendet werden. |
Es folgt eine thematische Zusammenstellung der Systemfelder mit Hinweisen zum Gebrauch.
Systeminformationen
ABAP-Programmierung
Bildschirmbilder
Interne Systemfelder
Obsolete Systemfelder
Informationen über das aktuelle R/3-System
Zentrales Datenbanksystem, z.B. INFORMIX, ORACLE …
Applikationsserver, z.B. HS0333, PAWDF087 …
Betriebssystem des Applikationsservers, z.B. HP-UX, SINIX
Release-Stand des R/3-Systems, z.B. 30D, 46A, …
Name des R/3-Systems, z.B. B20, I47, ...
Informationen über die Benutzersitzung
Einstelliger Sprachenschlüssel, z.B. D, E, F. Entweder Anmeldesprache des Benutzers, oder durch die Anweisung SET LOCALE LANGUAGE gesetzt.
Mandantennummer, mit der sich der Benutzer angemeldet hat, z.B. 000, 400, …
Bei Datenbankzugriffen mit Open SQL wird SY-MANDT als erstes Schlüsselfeld der WHERE-Klausel verwendet.
Indizierung der externen Modi. Sitzt im ersten Modus auf Null. Wird in neuen Modi, die mit der Funktion Erzeugen Modus oder durch Aufruf einer Transaktion mit /o geöffnet werden, um 1 erhöht. Falls vorhergehende Modi gelöscht wurden, werden erst die freien Zahlen wieder belegt. Modi, die mit CALL TRANSACTION … STARTING NEW TASK geöffnet werden, starten wieder bei 0.
Anmeldenamen des Benutzers, z.B. KELLERH, BC400-01, …
Die folgenden Systemfelder sind immer automatisch gesetzt. Die Anweisung GET TIME synchronisiert die Uhrzeit des Applikationsserver falls erforderlich mit der Uhrzeit des Datenbankservers und schreibt diese in das Systemfeld SY-UZEIT. SY-DATUM und die Systemfelder für die lokale Zeitzone, also SY-TIMLO, SY-DATLO und SY-ZONLO werden ebenfalls neu gesetzt.
Lokales Datum des Benutzers, z.B. 19981129, 19990628, …
Aktuelles (Applikationsserver-)Datum, z.B. 19981130, 19990627, …
Während Sommerzeit X ansonsten leer.
Fabrikkalender-Wochentag, sonntags 0 … samstags 6.
Lokale Uhrzeit des Benutzers, 154353, 225312, …
Zeitdifferenz zur Greenwich Mean Time (UTC) in Sekunden, z.B. 3600, 10800, …
Aktuelle (Applikationsserver-) Uhrzeit, z.B. 164353, 215312, …
Zeitzone des Benutzers
, z.B. CET, UTC, …Informationen über das aktuelle ABAP-Programm
SY-CALLD enthält SPACE, wenn das Programm das erste und einzige Programm einer Aufrufkette ist. SY_CALLD enthält 'X', wenn das Programm ein aufgerufenes Programm in einer Aufrufkette (siehe
Übersicht über ABAP-Aufrufe) ist.In extern aufgerufenen Prozeduren der Name des aufrufenden Programms, ansonsten der Name des aktuellen Programms. Wenn eine extern aufgerufene Prozedur eine weitere externe Prozedur aufruft, behält SY-CPROG den Namen des ersten Rahmenprogramms und wird nicht auf den Namen des Rahmenprogramms des weiteren Aufrufers gesetzt.
Bei ausführbaren Programmen, die verknüpfte logische Datenbank.
Bildgruppe des aktuellen Dynpros. Mehrere Dynpros können einer gemeinsamen Bildgruppe zugeordnet sein, die z.B. für eine einheitliche Modifikation aller Bildschirmbilder dieser Gruppe verwendet werden kann.
Nummer des aktuellen Dynpros. Während der Selektionsbildverarbeitung enthält SY-DYNNR die Dynpronummer des aktuellen Selektionsbilds. Während der Listenverarbeitung enthält SY-DYNNR die Nummer des Trägerdynpros. Während der Verarbeitung eines Subscreen-Dynpros enthält SY-DYNNR dessen Dynpronummer. Dies gilt auch bei TabStrips.
Bei ausführbaren Programmen, das Datenbankprogramm der verknüpften logischen Datenbank.
Name des aktuellen ABAP-Programms. Bei extern aufgerufenen Prozeduren Name des Rahmenprogramms der Prozedur.
Falls SY-REPID vor Release 6.10 als Aktualparameter an eine externe Prozedur übergeben wurde, wurde der Formalparameter nicht auf den Namen des Aufrufers, sondern auf den Namen des Rahmenprogramms der Prozedur gesetzt. SY-REPID mußte also vor dem Aufruf an eine Hilfsvariable übergeben oder es mußte SY-CPROG verwendet werden.
Seit Release 6.10 ist SY-REPID eine eigene Konstante, die nicht mehr Teil der Struktur SYST bzw. SY ist, und kann direkt an externe Prozeduren übergeben werden.
Name des aktuellen Transaktionscodes.
SY-BATCH ist in einem im Hintergrund ablaufenden ABAP-Programm, auf X gesetzt, ansonsten leer.
SY-BINPT ist während der Verarbeitung von Batch-Input Mappen und in mit CALL TRANSACTION USING aufgerufenen ABAP-Programmen auf X gesetzt, ansonsten leer.
Enthält das Alphabet. Kann verwendet werden, um unabhängig von der Codepage über Offsetangabe gezielt auf einzelne Buchstaben zuzugreifen.
Enthält einen horizontalen Strich der Länge 255. Kann bei der Listenerstellung verwendet werden.
Enthält einen vertikalen Strich (|). Kann bei der Listenerstellung verwendet werden.
SY-INDEX enthält in DO- und WHILE-Schleifen die Anzahl der bisherigen Schleifendurchläufe inklusive dem aktuellen Durchlauf.
Fundstelle bei Operationen mit zeichenartigen Feldern.
Aktuelle Zeile einer internen Tabelle. SY-TABIX wird bei folgenden Anweisungen für Index-Tabellen gesetzt. Bei Hash-Tabellen wird SY-TABIX nicht versorgt oder auf 0 gesetzt.
Bei den Anweisungen DESCRIBE TABLE, LOOP AT und READ TABLE wird SY-TFILL mit der Zeilenanzahl der angesprochenen internen Tabelle versorgt.
Bei den Anweisungen DESCRIBE TABLE, LOOP AT und READ TABLE wird SY-TLENG mit der Zeilengröße der angesprochenen internen Tabelle versorgt.
SQL-Anweisungen setzen den Inhalt von SY-DBCNT auf die Anzahl der bearbeiteten Tabellenzeilen. Bei SELECT-Schleifen in Open SQL ist SY-DBCNT nach der Anweisung ENDSELECT gesetzt. In Native SQL ist SY-DBCNT nach der Anweisung ENDEXEC gesetzt.
Rückgabewert, der von folgenden ABAP-Anweisungen gesetzt wird. Im allgemeinen bedeutet der Inhalt 0, daß die Anweisung problemlos ausgeführt wurde.
Beim Ereignis PAI jedes Dynpros werden Systemfelder gesetzt. Außer SY-DATAR, SY-LOOPC und SY-STEPL können diese auch bei der interaktiven Listenverarbeitung verwendet werden.
Horizontale Cursorposition. Zählung beginnt bei Spalte 2.
Vertikale Cursorposition. Zählung beginnt bei Zeile 1.
Sitzt zu PAI auf X, wenn mindestens ein Dynproeingabefeld durch Benutzer oder andere Datenübergabe geändert wurden, ansonsten leer.
Anzahl der aktuell in einer Bildschirmtabelle (Table Control) angezeigten Zeilen.
GUI-Status des aktuellen Dynpros. Im Programm zu PBO setzbar durch SET PF-STATUS.
Anzahl der Spalten des aktuellen Bildschirmbilds.
Anzahl der Zeilen des aktuellen Bildschirmbilds.
Index der aktuellen Zeile in einer Bildschirmtabelle (Table Control). Wird bei jedem Schleifendurchlauf gesetzt. Außerhalb einer Schleife, z.B. während dem Ereignis POV für eine Tabellenzeile, ist SY-STEPL nicht passend gesetzt.
Text, der im Titelbalken des Dynpros erscheint. Bei Selektionsbildern und Listen der Programmname, ansonsten SAP R/3. Kann zu PBO durch SET TITLEBAR gesetzt werden.
Funktionscode, der das Ereignis PAI ausgelöst hat. Jeder Benutzeraktion, die PAI auslöst ist ein eindeutiger Funktionscode zugeordnet, mit einer Ausnahme: Die Auswahl von ENTER löst das Ereignis PAI aus, wobei verschiedene Funktionscodes an SY-UCOMM übergeben werden können:
Variante, die zum Füllen des Selektionsbilds verwendet wurde.
Beim Erstellen einer Liste kann mit Hilfe der folgenden Systemfelder in navigiert werden. Sie helfen es zu vermeiden, daß Ausgabeanweisungen eventuell schon vorhandene Ausgaben überschreiben, oder daß versucht wird außerhalb der Liste zu schreiben. Die aktuelle Ausgabeposition findet sich immer in den Systemfeldern SY-COLNO und SY-LINNO und wird bei jeder Ausgabeanweisung neu gesetzt. Die übrigen Systemfelder enthalten weitere Rahmenwerte für die Listenerstellung.
Aktuelle Spalte bei der Listenerstellung. Die Zählung beginnt bei 1. SY-COLNO wird durch folgende Ausgabeanweisungen gesetzt:
Seitenlänge der Liste. SY-LINCT ist null für eine beliebig lange Standardliste und hat einen Wert ungleich Null für Listen mit festgelegter Seitenlänge.
Aktuelle Zeile bei der Listenerstellung. Die Zählung beginnt bei 1 und beinhaltet den Seitenkopf. SY-LINNO wird durch folgende Ausgabeanweisungen gesetzt:
Zeilenbreite der Liste. Ohne Beeinflussung ist das die Standardfensterbreite. Für SY-SCOLS >= 84 ist SY-LINSZ = SY-SCOLS, für SY-SCOLS < 84 ist SY-LINSZ = 84.
Die Breite der Ausgabeliste kann mit der Option LINE-SIZE der Anweisungen REPORT bzw. NEW-PAGE verändert werden.
Aktuelle Seite bei Listenerstellung.
Diesen Systemfeldern dürfen im Programm Werte zugewiesen werden. Der Inhalt von SY-TVAR0 bis SY-TVAR9 ersetzt beim Ereignis TOP-OF-PAGE die Platzhalter in den Listen- und Spaltenüberschriften des Programms.
Wird in den Anweisungen REPORT, PROGRAM und FUNCTION-POOL auf N gesetzt, wenn der Zusatz NO STANDARD PAGE HEADING verwendet wird, ansonsten leer. NEW-PAGE setzt SY-WTITL nicht.
Bei jedem interaktiven Listenereignis und bei READ LINE werden folgende Systemfelder automatisch versorgt.
Seitennummer der obersten angezeigten Seite der Liste, auf der das Ereignis ausgelöst wurde. Zählung beginnt bei 1
Zeile, auf der das Ereignis ausgelöst wurde. Zählung beginnt bei 1 und beinhaltet den Seitenkopf.
Inhalt der Zeile, auf der das Ereignis ausgelöst wurde (beschränkt auf die ersten 255 Zeichen).
Index der Liste, auf der das Ereignis ausgelöst wurde.
Index der Liste, die gerade erstellt wird (Grundliste: 0, Verzweigungslisten > 0). Bei jedem interaktiven Listenereignisses wird SY-LSIND automatisch um eins erhöht. SY-LSIND darf im ABAP-Programm geändert werden, um zwischen Verzweigungslisten zu navigieren. Eine Änderung von SY-LSIND wird immer erst am Ende eines Listenereignisses berücksichtigt. Eine Manipulation von SY-LSIND sollte daher durch den letzten zum Verarbeitungsblocks gehörigen Befehl erfolgen.
Programmgesteuerter Bezeichner für Listenstufen. SY-LSTAT darf während der Listenerstellung im ABAP-Programm mit Werten versorgt werden. Der bei Fertigstellung einer Liste gültige Wert wird mit der Liste abgespeichert. Bei einem interaktiven Listenereignisses wird SY-LSTAT auf den Wert gesetzt, der ihm während der Erstellung der Liste, auf der das Ereignis stattfindet, zugewiesen wurde. SY-LSTAT wird nicht mehr gepflegt und sollte daher nicht mehr verwendet werden.
Nummer der ersten angezeigten Spalte der Liste, auf der das Ereignis ausgelöst wurde. Zählung beginnt bei 1.
Nummer der obersten angezeigten Zeile der obersten angezeigten Seite der Liste, auf der das Ereignis ausgelöst wurde. Zählung beginnt bei 1. Hierbei wird der Seitenkopf nicht mitgezählt.
Beim Drucken von Listen benötigen Spool- und Laufzeitsystem gewisse interne Informationen, die in folgenden Systemfeldern vorhanden sind und bei der Druckaktivierung gesetzt werden.
Enthält einen Wert, der anzeigt wo der Druck gestartet wurde, z.B. NEW-PAGE für programmgesteuertes Drucken oder RSDBRUNT für Drucken vom Selektionsbild.
Enthält während dem Drucken den Namen der Spool-Datei.
Enthält während dem Drucken den Namen der Spool-Nummer.
Die Anweisung SET MARGIN füllt die System-Felder SY-MAROW und SY-MACOL, die beim Ausdrucken die Anzahl der Zeilen am oberen Rand bzw. die Anzahl der Spalten am linken Rand bestimmen.
Die Druckparameter werden von der Laufzeitumgebung in einer Struktur vom Dictionarytyp PRI_PARAMS an das Spool-System übergeben. Bevor diese Struktur verwendet wurde, dienten dazu Systemfelder. Bei der Druckaktivierung wird auch heute noch eine Teilmenge der Struktur PRI_PARAMS in gleichnamige Systemfelder geschrieben. Diese Information ist redundant und sollte nicht verwendet werden.
Bei Ausführung der Anweisung MESSAGE werden untenstehende Systemfelder gesetzt. Bei Ausführung der Anweisung MESSAGE … RAISING in Funktionsbausteinen und Methoden werden diese Felder auch im aufrufenden Programm gesetzt, falls es die Ausnahme behandelt.
SY-MSGID enthält die Nachrichtenklasse
SY-MSGNO enthält die Nachrichtennummer
SY-MSGTY enthält den Nachrichtentyp
SY-MSGV1 bis SY-MSGV4 enthalten die Feldinhalte, die für die Platzhalter der Nachricht verwendet werden.
Spezielle Aktionen, die Nachrichtenfelder versorgen
Interne Systemfelder sind rein für den internen Gebrauch in der ABAP-Laufzeitumgebung und im Kernel bestimmt. Sie dürfen auf keinen Fall in ABAP-Programmen überschrieben werden und sollten auch nicht lesend bearbeitet werden.
Undokumentiert.
Undokumentiert.
Undokumentiert.
Name der Datei für Spool-Ausgabe.
Undokumentiert.
Flatfile (USING/GENERATING DATASET).
Länge eines Felds.
Anzahl der Dezimalstellen eines Felds.
Ausgabelänge eines Felds.
Datentyp eines Felds.
Bündelung.
Undokumentiert.
Undokumentiert.
Undokumentiert.
Undokumentiert.
On Commit Flag. Dieses Systemfeld wird abhängig vom Aufrufstatus eines ABAP-Programms auf verschiedene Werte gesetzt. Von diesen ist nur die Bedeutung des Werts 'P' garantiert. Wenn überhaupt darf SY-ONCOM deshalb nur nach 'P' abgefragt werden.
Der Wert 'P' bedeutet, daß sich das Programm schon während der Ausführung eines über PERFORM ... ON COMMIT gestarteten Unterprogramms befindet und daß daher ein weiterer Unterprogrammaufruf mit PERFORM ... ON COMMIT zum Laufzeitfehler führt.
Undokumentiert.
Undokumentiert.
Undokumentiert.
Undokumentiert.
Undokumentiert.
Undokumentiert.
Undokumentiert.
Undokumentiert.
Undokumentiert.
Undokumentiert.
Aufrufstatus eines ausführbaren Programms.
Aufrufart eines ausführbaren Programms.
Undokumentiert.
Undokumentiert.
Undokumentiert.
Erweiterter Funktionscode. Wird bei Benutzeraktionen auf Listen wie SY-UCOMM versorgt. Bevor die Länge von SY-UCOMM von 4 auf 70 Zeichen erweitert wurde, wurde SY-XCODE intern verwendet um längere Eingaben im Befehlsfeld der Symbolleiste der Liste auszuwerten. In Anwendungsprogrammen bitte SY-UCOMM verwenden.
SYSTEM-EXIT-Unterprogramm.
SYSTEM-EXIT-Programm.
Beim Übergang von R/2 zu R/3 wurden einige Systemfelder übernommen, die nicht mehr versorgt werden. Diese Systemfelder sind obsolet und können nicht mehr verwendet werden.
Im R/2 Kürzel, welche der SAP-Anwendungen installiert sind. Im R/3 nicht versorgt.
Im R/2 Kennzeichen für tägliche Hintergrundeinplanung. Im R/3 nicht versorgt.
Im R/2 Kennzeichen für monatliche Hintergrundeinplanung. Im R/3 nicht versorgt.
Im R/2 Kennzeichen für einmalige Hintergrundeinplanung. Im R/3 nicht versorgt.
Im R/2 Kennzeichen für sofortige Hintergrundeinplanung. Im R/3 nicht versorgt.
Im R/2 Kennzeichen für wöchentliche Hintergrundeinplanung. Im R/3 nicht versorgt.
Im R/2 bei Hintergrundverarbeitung Wurzelname des Anforderungsreports. Im R/3 nicht versorgt.
Im R/2 bei Hintergrundverarbeitung Kennzeichen für Ausgabe in Spool. Im R/3 nicht versorgt.
Im R/2 Kursangabe/Ergebnisfeld aus CURRENCY CONVERSION. Im R/3 nicht versorgt.
Im R/2 Tabellenkurs aus CURRENCY CONVERSION. Im R/3 nicht versorgt.
Im R/2 Kursdatum aus CURRENCY CONVERSION. Im R/3 nicht versorgt.
Im R/2 Kurstabelle aus CURRENCY CONVERSION. Im R/3 nicht versorgt.
Im R/2 Kursart aus CURRENCY CONVERSION. Im R/3 nicht versorgt.
Dialogsystem des R/2-Systems. Im R/3 nicht versorgt.
Früher aktuelles Funktionscode-Menü. Im R/3 nicht versorgt.
Lokale Datenbank, nicht implementiert.
Lokale Datenbankoperation, nicht implementiert.
Früher Name der Datei für Match-Code Zugriff. Im R/3 nicht versorgt.
Aktueller Zeilenbuchstabe für die Anweisung MARK. Das Sprachelement MARK wird allerdings nur noch kurze Zeit unterstützt.
Im R/2 maximale Anzahl von Seiten pro Liste. Im R/3 nicht versorgt.
ABAP-Präfix für Hintergrund-Jobs. Im R/3 nicht versorgt.
Undokumentiert.
Im R/2 konnten Spool-Dateien mit der TRANSFER-Anweisung bearbeitet werden, die auch SY-SPONR setzte. Im R/3 nicht versorgt.
Früher Name der externen Ablagedatei für Extrakte. Im R/3 nicht versorgt.
Früher maximale Anzahl von Einträgen in einer internen Tabelle. Im R/3 nicht versorgt.
Früher Name einer internen Tabelle nach einem Zugriff. Im R/3 nicht versorgt.
Bei den Anweisungen DESCRIBE TABLE, LOOP AT und READ TABLE wurde SY-TOCCU früher mit dem Wert für den initialen Hauptspeicherbedarf der angesprochenen internen Tabelle versorgt. Nicht mehr versorgt.
Früher Kennzeichen, ob eine interne Tabelle in den Paging Bereich ausgelagert ist. Im R/3 nicht versorgt.
Früher Index der letzten gelesenen Zeile einer internen Tabelle. Im R/3 nicht versorgt.
Früher Offset von internen Tabellen im Rollbereich. Im R/3 nicht versorgt.
Früher Buchungskreis-Währung nach Lesen von Buchungs-Segment. Im R/3 nicht versorgt.
Im R/2 Nummer der ausgewählten Listenzeile bei Verzweigungsliste im Fenster. Bitte SY-LILLI verwenden.
Im R/2 Cursorposition bei Verzweigungsliste im Fenster. Bitte SY-CUCOL verwenden.
Im R/2 Index der Liste bei Verzweigungsliste im Fenster. Bitte SY-LSIND verwenden.
Im R/2 Cursorposition bei Verzweigungsliste im Fenster. Bitte SY-CUROW verwenden.
Im R/2 Inhalt der ausgewählten Zeile bei Verzweigungsliste im Fenster. Bitte SY-LISEL verwenden.
Im R/2 Fensterkoordinate bei Verzweigungsliste im Fenster. Keine Entsprechung im R/3.
Im R/2 Fensterkoordinate bei Verzweigungsliste im Fenster. Keine Entsprechung im R/3.
Im R/2 Fensterkoordinate bei Verzweigungsliste im Fenster. Keine Entsprechung im R/3.
Im R/2 Fensterkoordinate bei Verzweigungsliste im Fenster. Keine Entsprechung im R/3.