ABAP-Systemfelder 

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 im ABAP Dictionary in der Struktur SYST gespeichert. In ABAP-Programmen werden die Systemfelder über SY-Feldname angesprochen. In der Dynproablauflogik kann auch SYST-Feldname verwendet werden.

Alphabetische Übersicht

Thematische Übersicht

                                                                                                   

Alphabetische Übersicht:

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.

A B C D E F G H I J K L M N O P Q R S T U V W X Y Z

Name

Typ

Länge

Verwendung

Kurzbeschreibung

ABCDE

CHAR

26

Konstanten

Alphabet (A,B,C,...)

APPLI

RAW

2

Obsolet

BATCH

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

CALLD

CHAR

1

ABAP-Programm

Aufrufmodus des ABAP-Programms

CALLR

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

DATAR

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

ENTRY

CHAR

72

Intern

FDAYW

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

GROUP

CHAR

1

Intern

HOST

CHAR

8

R/3-System

Name des Applikationsservers

INDEX

INT4

10

Schleifen

Aktueller Schleifendurchlauf

INPUT

CHAR

1

Intern

LANGU

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

MACDB

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

NEWPA

CHAR

1

Intern

NRPAG

CHAR

1

Intern

ONCOM

CHAR

1

Intern

OPSYS

CHAR

10

R/3-System

Betriebssystem des Applikationsservers

PAART

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

REPI2

CHAR

40

Intern

REPID

CHAR

40

ABAP-Programm

Aktuelles Rahmenprogramm

RSTRT

CHAR

1

Intern

RTITL

CHAR

70

Druckparameter

Titel des druckenden Programms

SAPRL

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

TABID

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

Interne Tabellen

Initialer Hauptspeicherbedarf

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

UCOMM

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

VLINE

CHAR

1

Konstanten

Vertikaler Strich

WAERS

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

XCODE

CHAR

70

Intern

XFORM

CHAR

30

Intern

XPROG

CHAR

40

Intern

ZONLO

CHAR

6

Datum und Zeit

Zeitzone des Benutzers

Zeichenerklärung:

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.

 

                                                                                                   

Thematische Übersicht

Es folgt eine thematische Zusammenstellung der Systemfelder mit Hinweisen zum Gebrauch.

Systeminformationen

ABAP-Programmierung

Bildschirmbilder

Interne Systemfelder

Obsolete Systemfelder

 

                                                                                                   

Systeminformationen

Informationen über das aktuelle R/3-System

SY-DBSYS

Zentrales Datenbanksystem, z.B. INFORMIX, ORACLE …

SY-HOST

Applikationsserver, z.B. HS0333, PAWDF087 …

SY-OPSYS

Betriebssystem des Applikationsservers, z.B. HP-UX, SINIX

SY-SAPRL

Release-Stand des R/3-Systems, z.B. 30D, 46A, …

SY-SYSID

Name des R/3-Systems, z.B. B20, I47, ...

Informationen über die Benutzersitzung

SY-LANGU

Einstelliger Sprachenschlüssel, z.B. D, E, F. Entweder Anmeldesprache des Benutzers, oder durch die Anweisung SET LOCALE LANGUAGE gesetzt.

SY-MANDT

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.

SY-MODNO

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.

SY-UNAME

Anmeldenamen des Benutzers, z.B. KELLERH, BC400-01, …

Datums- und Zeitinformationen

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.

SY-DATLO

Lokales Datum des Benutzers, z.B. 19981129, 19990628, …

SY-DATUM

Aktuelles (Applikationsserver-)Datum, z.B. 19981130, 19990627, …

SY-DAYST

Während Sommerzeit X ansonsten leer.

SY-FDAYW

Fabrikkalender-Wochentag, sonntags 0 … samstags 6.

SY-TIMLO

Lokale Uhrzeit des Benutzers, 154353, 225312, …

SY-TZONE

Zeitdifferenz zur Greenwich Mean Time (UTC) in Sekunden, z.B. 3600, 10800, …

SY-UZEIT

Aktuelle (Applikationsserver-) Uhrzeit, z.B. 164353, 215312, …

SY-ZONLO

Zeitzone des Benutzers , z.B. CET, UTC, …

Informationen über das aktuelle ABAP-Programm

SY-CALLD

Falls das Programm über CALL TRANSACTION, CALL DIALOG oder SUBMIT … [AND RETURN] aufgerufen wurde, ist SY-CALLD auf X gesetzt. Falls das Programm über LEAVE TO TRANSACTION, oder über einen Transaktionscode aus einem Dynpro gestartet wurde ist SY-CALLD leer. Während der Verarbeitung von Batch-Input Mappen ist SY-CALLD ebenfalls leer.

SY-CPROG

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.

SY-DBNAM

Bei ausführbaren Programmen, die verknüpfte logische Datenbank.

SY-DYNGR

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.

SY-DYNNR

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.

SY-LDBPG

Bei ausführbaren Programmen, das Datenbankprogramm der verknüpften logischen Datenbank.

SY-REPID

Name des aktuellen ABAP-Programms. Bei extern aufgerufenen Prozeduren Name des Rahmenprogramms der Prozedur. Falls SY-REPID als Aktualparameter an eine externe Prozedur übergeben wird, wird der Formalparameter aber nicht auf den Namen des Aufrufers, sondern auf den Namen des Rahmenprogramms der Prozedur gesetzt. SY-REPID muß also vor dem Aufruf an eine Hilfsvariable übergeben oder es muß SY-CPROG verwendet werden.

SY-TCODE

Name des aktuellen Transaktionscodes.

BATCH-Verarbeitung

SY-BATCH

SY-BATCH ist in einem im Hintergrund ablaufenden ABAP-Programm, auf X gesetzt, ansonsten leer.

Batch-Input

SY-BINPT

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.

 

                                                                                                   

ABAP-Programmierung

Konstanten

SY-ABCDE

Enthält das Alphabet. Kann verwendet werden, um unabhängig von der Codepage über Offsetangabe gezielt auf einzelne Buchstaben zuzugreifen.

SY-ULINE

Enthält einen horizontalen Strich der Länge 255. Kann bei der Listenerstellung verwendet werden.

SY-VLINE

Enthält einen vertikalen Strich (|). Kann bei der Listenerstellung verwendet werden.

Schleifen

SY-INDEX

SY-INDEX enthält in DO- und WHILE-Schleifen die Anzahl der bisherigen Schleifendurchläufe inklusive dem aktuellen Durchlauf.

Zeichenketten

SY-FDPOS

Fundstelle bei Operationen mit zeichenartigen Feldern.

Interne Tabellen

SY-TABIX

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.

SY-TFILL

Bei den Anweisungen DESCRIBE TABLE, LOOP AT und READ TABLE wird SY-TFILL mit der Zeilenanzahl der angesprochenen internen Tabelle versorgt.

SY-TLENG

Bei den Anweisungen DESCRIBE TABLE, LOOP AT und READ TABLE wird SY-TLENG mit der Zeilengröße der angesprochenen internen Tabelle versorgt.

SY-TOCCU

Bei den Anweisungen DESCRIBE TABLE, LOOP AT und READ TABLE wird SY-TOCCU mit dem Wert für den initialen Hauptspeicherbedarf der angesprochenen internen Tabelle versorgt.

Datenbankzugriffe

SY-DBCNT

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

SY-SUBRC

Rückgabewert, der von folgenden ABAP-Anweisungen gesetzt wird. Im allgemeinen bedeutet der Inhalt 0, daß die Anweisung problemlos ausgeführt wurde.

 

                                                                                                   

Bildschirmbilder

Dynpros

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.

SY-CUCOL

Horizontale Cursorposition. Zählung beginnt bei Spalte 2.

SY-CUROW

Vertikale Cursorposition. Zählung beginnt bei Zeile 1.

SY-DATAR

Sitzt zu PAI auf X, wenn mindestens ein Dynproeingabefeld durch Benutzer oder andere Datenübergabe geändert wurden, ansonsten leer.

SY-LOOPC

Anzahl der aktuell in einer Bildschirmtabelle (Table Control) angezeigten Zeilen.

SY-PFKEY

GUI-Status des aktuellen Dynpros. Im Programm zu PBO setzbar durch SET PF-STATUS.

SY-SCOLS

Anzahl der Spalten des aktuellen Bildschirmbilds.

SY-SROWS

Anzahl der Zeilen des aktuellen Bildschirmbilds.

SY-STEPL

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.

SY-TITLE

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.

SY-UCOMM

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:

Selektionsbilder

SY-SLSET

Variante, die zum Füllen des Selektionsbilds verwendet wurde.

Listenerstellung

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.

SY-COLNO

Aktuelle Spalte bei der Listenerstellung. Die Zählung beginnt bei 1. SY-COLNO wird durch folgende Ausgabeanweisungen gesetzt:

SY-LINCT

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.

SY-LINNO

Aktuelle Zeile bei der Listenerstellung. Die Zählung beginnt bei 1 und beinhaltet den Seitenkopf. SY-LINNO wird durch folgende Ausgabeanweisungen gesetzt:

SY-LINSZ

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.

SY-PAGNO

Aktuelle Seite bei Listenerstellung.

SY-TVAR0 ... SY-TVAR9

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.

SY-WTITL

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.

Listenverarbeitung

Bei jedem interaktiven Listenereignis und bei READ LINE werden folgende Systemfelder automatisch versorgt.

SY-CPAGE

Seitennummer der obersten angezeigten Seite der Liste, auf der das Ereignis ausgelöst wurde. Zählung beginnt bei 1

SY-LILLI

Zeile, auf der das Ereignis ausgelöst wurde. Zählung beginnt bei 1 und beinhaltet den Seitenkopf.

SY-LISEL

Inhalt der Zeile, auf der das Ereignis ausgelöst wurde (beschränkt auf die ersten 255 Zeichen).

SY-LISTI

Index der Liste, auf der das Ereignis ausgelöst wurde.

SY-LSIND

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.

SY-LSTAT

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.

SY-STACO

Nummer der ersten angezeigten Spalte der Liste, auf der das Ereignis ausgelöst wurde. Zählung beginnt bei 1.

SY-STARO

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.

Listen drucken

Beim Drucken von Listen benötigen Spool- und Laufzeitsystem gewisse interne Informationen, die in folgenden Systemfeldern vorhanden sind und bei der Druckaktivierung gesetzt werden.

SY-CALLR

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.

SY-PRDSN

Enthält während dem Drucken den Namen der Spool-Datei.

SY-SPONO

Enthält während dem Drucken den Namen der Spool-Nummer.

SY-MAROW, SY-MACOL

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.

Druckparameter

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.

Nachrichten

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

SY-MSGID enthält die Nachrichtenklasse

SY-MSGNO

SY-MSGNO enthält die Nachrichtennummer

SY-MSGTY

SY-MSGTY enthält den Nachrichtentyp

SY-MSGV1,…,SY-MSGV4

SY-MSGV1 bis SY-MSGV4 enthalten die Feldinhalte, die für die Platzhalter der Nachricht verwendet werden.

Spezielle Aktionen, die Nachrichtenfelder versorgen

 

                                                                                                   

Interne Systemfelder

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.

SY-CFWAE

Undokumentiert.

SY-CHWAE

Undokumentiert.

SY-DEBUG

Undokumentiert.

SY-DSNAM

Name der Datei für Spool-Ausgabe.

SY-ENTRY

Undokumentiert.

SY-FFILE

Flatfile (USING/GENERATING DATASET).

SY-FLENG

Länge eines Felds.

SY-FODEC

Anzahl der Dezimalstellen eines Felds.

SY-FOLEN

Ausgabelänge eines Felds.

SY-FTYPE

Datentyp eines Felds.

SY-GROUP

Bündelung.

SY-INPUT

Undokumentiert.

SY-LPASS

Undokumentiert.

SY-NEWPA

Undokumentiert.

SY-NRPAG

Undokumentiert.

SY-ONCOM

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.

SY-PAUTH

Undokumentiert.

SY-PLAYO

Undokumentiert.

SY-PLAYP

Undokumentiert.

SY-PNWPA

Undokumentiert.

SY-PRI40

Undokumentiert.

SY-PRINI

Undokumentiert.

SY-PRLOG

Undokumentiert.

SY-REPI2

Undokumentiert.

SY-RSTRT

Undokumentiert.

SY-SFOFF

Undokumentiert.

SY-SUBCS

Aufrufstatus eines ausführbaren Programms.

SY-SUBTY

Aufrufart eines ausführbaren Programms.

SY-TABID

Undokumentiert.

SY-TLOPC

Undokumentiert.

SY-TSTIS

Undokumentiert.

SY-XCODE

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.

SY-XFORM

SYSTEM-EXIT-Unterprogramm.

SY-XPROG

SYSTEM-EXIT-Programm.

 

                                                                                                   

Obsolete Systemfelder

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.

SY-APPLI

Im R/2 Kürzel, welche der SAP-Anwendungen installiert sind. Im R/3 nicht versorgt.

SY-BATZD

Im R/2 Kennzeichen für tägliche Hintergrundeinplanung. Im R/3 nicht versorgt.

SY-BATZM

Im R/2 Kennzeichen für monatliche Hintergrundeinplanung. Im R/3 nicht versorgt.

SY-BATZO

Im R/2 Kennzeichen für einmalige Hintergrundeinplanung. Im R/3 nicht versorgt.

SY-BATZS

Im R/2 Kennzeichen für sofortige Hintergrundeinplanung. Im R/3 nicht versorgt.

SY-BATZW

Im R/2 Kennzeichen für wöchentliche Hintergrundeinplanung. Im R/3 nicht versorgt.

SY-BREP4

Im R/2 bei Hintergrundverarbeitung Wurzelname des Anforderungsreports. Im R/3 nicht versorgt.

SY-BSPLD

Im R/2 bei Hintergrundverarbeitung Kennzeichen für Ausgabe in Spool. Im R/3 nicht versorgt.

SY-CCURS

Im R/2 Kursangabe/Ergebnisfeld aus CURRENCY CONVERSION. Im R/3 nicht versorgt.

SY-CCURT

Im R/2 Tabellenkurs aus CURRENCY CONVERSION. Im R/3 nicht versorgt.

SY-CDATE

Im R/2 Kursdatum aus CURRENCY CONVERSION. Im R/3 nicht versorgt.

SY-CTABL

Im R/2 Kurstabelle aus CURRENCY CONVERSION. Im R/3 nicht versorgt.

SY-CTYPE

Im R/2 Kursart aus CURRENCY CONVERSION. Im R/3 nicht versorgt.

SY-DCSYS

Dialogsystem des R/2-Systems. Im R/3 nicht versorgt.

SY-FMKEY

Früher aktuelles Funktionscode-Menü. Im R/3 nicht versorgt.

SY-LOCDB

Lokale Datenbank, nicht implementiert.

SY-LOCOP

Lokale Datenbankoperation, nicht implementiert.

SY-MACDB

Früher Name der Datei für Match-Code Zugriff. Im R/3 nicht versorgt.

SY-MARKY

Aktueller Zeilenbuchstabe für die Anweisung MARK. Das Sprachelement MARK wird allerdings nur noch kurze Zeit unterstützt.

SY-TMAXL

Früher maximale Anzahl von Einträgen in einer internen Tabelle. Im R/3 nicht versorgt.

SY-TFDSN

Früher Name der externen Ablagedatei für Extrakte. Im R/3 nicht versorgt.

SY-PAGCT

Im R/2 maximale Anzahl von Seiten pro Liste. Im R/3 nicht versorgt.

SY-PREFX

ABAP-Präfix für Hintergrund-Jobs. Im R/3 nicht versorgt.

SY-SFNAM

Undokumentiert.

SY-SPONR

Im R/2 konnten Spool-Dateien mit der TRANSFER-Anweisung bearbeitet werden, die auch SY-SPONR setzte. Im R/3 nicht versorgt.

SY-TNAME

Früher Name einer internen Tabelle nach einem Zugriff. Im R/3 nicht versorgt.

SY-TTABC

Früher Index der letzten gelesenen Zeile einer internen Tabelle. Im R/3 nicht versorgt.

SY-TTABI

Früher Offset von internen Tabellen im Rollbereich. Im R/3 nicht versorgt.

SY-TPAGI

Früher Kennzeichen, ob eine interne Tabelle in den Paging Bereich ausgelagert ist. Im R/3 nicht versorgt.

SY-WAERS

Früher Buchungskreis-Währung nach Lesen von Buchungs-Segment. Im R/3 nicht versorgt.

SY-WILLI

Im R/2 Nummer der ausgewählten Listenzeile bei Verzweigungsliste im Fenster. Bitte SY-LILLI verwenden.

SY-WINCO

Im R/2 Cursorposition bei Verzweigungsliste im Fenster. Bitte SY-CUCOL verwenden.

SY-WINDI

Im R/2 Index der Liste bei Verzweigungsliste im Fenster. Bitte SY-LSIND verwenden.

SY-WINRO

Im R/2 Cursorposition bei Verzweigungsliste im Fenster. Bitte SY-CUROW verwenden.

SY-WINSL

Im R/2 Inhalt der ausgewählten Zeile bei Verzweigungsliste im Fenster. Bitte SY-LISEL verwenden.

SY-WINX1

Im R/2 Fensterkoordinate bei Verzweigungsliste im Fenster. Keine Entsprechung im R/3.

SY-WINX2

Im R/2 Fensterkoordinate bei Verzweigungsliste im Fenster. Keine Entsprechung im R/3.

SY-WINY1

Im R/2 Fensterkoordinate bei Verzweigungsliste im Fenster. Keine Entsprechung im R/3.

SY-WINY2

Im R/2 Fensterkoordinate bei Verzweigungsliste im Fenster. Keine Entsprechung im R/3.