Ansicht
Dokumentation
ABENDDIC_STRUCTURES_ENH_CAT - DDIC STRUCTURES ENH CAT
BAL Application Log Documentation ABAP Short ReferenceDiese Dokumentation steht unter dem Copyright der SAP AG.
- Erweiterungskategorie von Strukturen
Die von SAP ausgelieferten Strukturen und DDIC-Datenbanktabellen des ABAP Dictionarys können durch Customizing-Includes oder Append-Strukturen nachträglich erweitert werden. Solche Änderungen sind problematisch, wenn durch die Erweiterung die Strukturfragmentsicht verändert wird.
Aus diesem Grund werden Strukturen und DDIC-Datenbanktabellen klassifiziert, um Probleme im Zusammenhang mit Strukturerweiterungen zu erkennen und zu bearbeiten. Diese Klassifizierung wird während der Programmprüfung verwendet, um an allen Stellen, an denen mit Strukturen gearbeitet wird und bei denen spätere Strukturerweiterungen Syntaxfehler oder ein geändertes Programmverhalten verursachen können, eine Warnung zu erzeugen. Als Klassifizierung können bei der Definition einer Struktur oder DDIC-Datenbanktabelle im ABAP Dictionary die in folgender Tabelle gezeigten Erweiterungskategorien angegeben werden.
Level | Kategorie | Bedeutung |
1 | Unklassifiziert | Die Struktur hat keine Erweiterungskategorie. |
2 | nicht erweiterbar | Die Struktur darf nicht erweitert werden. |
3 | erweiterbar und zeichenartig | Alle Strukturkomponenten und ihre Erweiterungen müssen zeichenartig flach sein. |
4 | erweiterbar und zeichenartig oder numerisch | Alle Strukturkomponenten und ihre Erweiterungen müssen flach sein. |
5 | beliebig erweiterbar | Alle Strukturkomponenten und ihre Erweiterungen können einen beliebigen Datentyp haben. |
Die Warnungen der Programmprüfung sind – abhängig von den Auswirkungen der zulässigen Strukturerweiterungen – in die drei Stufen aus folgender Tabelle unterteilt.
Level | Art der Prüfung | Bedeutung |
A | Syntaxprüfung | Eine Erweiterung, welche die Erweiterungskategorie der betreffenden Struktur vollständig ausschöpft, führt zu einem Syntaxfehler. |
B | Erweiterte Prüfung | Zulässige Erweiterungen können, müssen aber nicht in jedem Fall zu einem Syntaxfehler führen. |
C | Erweiterte Prüfung | Zulässige Erweiterungen können nicht zu Syntaxfehlern, jedoch zu semantischen Problemen durch geändertes Programmverhalten führen. |
Beispiel
Wenn die Struktur ddic_struc im ABAP Dictionary zwar nur mit flachen Komponenten definiert, aber als Beliebig erweiterbar klassifiziert ist, führt der folgende Programmabschnitt zu einer Warnung der Syntaxprüfung. Wenn die Struktur nach der Auslieferung des Programms erlaubterweise um eine tiefe Komponente erweitert würde, wäre das Programm syntaktisch inkorrekt und nicht mehr ausführbar. Deshalb muss in diesem Fall entweder die Struktur ddic_struc im ABAP Dictionary als Erweiterbar und zeichenartig klassifiziert werden oder es muss im Programm auf die Offset-/Längenangabe verzichtet werden.
DATA: my_struc TYPE ddic_struc,
str TYPE string,
off TYPE i,
len TYPE i.
...
str = my_struc+off(len).
rdisp/max_wprun_time - Maximum work process run time ROGBILLS - Synchronize billing plans
Diese Dokumentation steht unter dem Copyright der SAP AG.
Length: 5095 Date: 20240523 Time: 174612 sap01-206 ( 64 ms )