Ansicht
Dokumentation

ABENDDIC_INCLUDE_STRUCTURE - DDIC INCLUDE STRUCTURE

ABENDDIC_INCLUDE_STRUCTURE - DDIC INCLUDE STRUCTURE

RFUMSV00 - Advance Return for Tax on Sales/Purchases   General Data in Customer Master  
Diese Dokumentation steht unter dem Copyright der SAP AG.
SAP E-Book

- Include-Strukturen

Komponenten einer Struktur können durch das Einbinden der Komponenten anderer DDIC-Strukturen inklusive DDIC-Datenbanktabellen oder DDIC-Views definiert werden. Solche eingebundenen Strukturen heißen Include-Strukturen oder kurz Includes. Technisch gesehen verweist die Struktur, in die eine Include-Struktur eingebunden ist, auf die eingebundene Struktur und wird bei Änderungen an dieser Struktur auch entsprechend angepasst. Eine Include-Struktur kann selbst Include-Strukturen enthalten. Die maximale Schachtelungstiefe von Includes ist auf neun begrenzt.

Beim Einbinden einer Include-Struktur werden sämtliche Komponenten einer vorhandenen Struktur anstelle einer Komponente in die einbindende Struktur übernommen. Es wird keine Unterstruktur erzeugt. D.h., die Komponenten werden so eingefügt, als würden sie an dieser Stelle einzeln aufgeführt und sie werden wie direkt definierte Komponenten behandelt. Normale Komponenten und Include-Strukturen können beliebig kombiniert werden.

Beim Einbinden einer Struktur als Include-Struktur kann dieser ein Name einer Gruppe und ein dreistelliges Suffix zugeordnet werden.

  • Der Name einer Gruppe dient in ABAP-Programmen als zusätzliche Adressierungsmöglichkeit für Datenobjekte, die mit Bezug auf die Struktur deklariert sind. Alle Komponenten der eingebundenen Struktur bilden gemeinsam eine Komponentengruppe und können über den Namen adressiert werden oder es können einzelne Komponenten mit Hilfe des Strukturkomponenten-Selektors (-) hinter dem Namen adressiert werden.
  • Mit einem Suffix wird jede einzelne Komponente durch das Anhängen des Suffix an den Komponentennamen umbenannt, wodurch Namenskonflikte zwischen gleichnamigen Komponenten verhindert werden können. Der ursprüngliche Name einer Komponente einer Include-Struktur, die in einer Struktur mit einem Suffix eingebunden wird, darf nicht länger als 27 Zeichen sein.

Das Zuordnen von Gruppennamen und Suffixes entspricht den Zusätzen AS name $[RENAMING WITH SUFFIX suffix$] der Anweisung INCLUDE TYPE in ABAP-Programmen. Anders als bei der Anweisung INCLUDE TYPE kann eine Include-Struktur im ABAP Dictionary auch ein Suffix ohne gleichzeitige Namensangabe haben.

Die Felder einer eingebundenen Include-Struktur gehören weiterhin zur eingebundenen Struktur. Sie können nur über die Struktur bearbeitet werden und Änderungen an der Struktur wirken sich auf alle einbindenden Strukturen aus. Die Felder einer eingebundenen Include-Struktur können aber auch in direkte Felder der einbindenden Struktur verwandelt werden, die dann nicht mehr mit der ursprünglich eingebundenen Struktur verknüpft sind.

Den Komponenten einer Include-Struktur können im Kontext der einbindenden Struktur Prüftabellen und Suchhilfen zugeordnet werden. Diese ergänzen die Komponenten der eingebundenen Struktur bzw. ersetzen bereits vorhandene Zuordnungen.

Hinweise

  • Das Einbinden von Strukturen ist wegen möglicher Namenskonflikte zwischen Komponenten insbesondere bei nachträglichen Erweiterungen der eingebundenen Strukturen sehr fehleranfällig. Wenn möglich sollte statt dessen mit Unterstrukturen gearbeitet werden. Wenn dies nicht möglich ist (z.B. in DDIC-Datenbanktabellen) sollte Namenskonflikten mit Suffixes vorgebeugt werden.
  • Das Einbinden von Strukturen darf nicht mit der Übernahme von Komponenten verwechselt werden, wie sie das Werkzeug ABAP Dictionary anbietet. Hierbei wird einfach die Definition der Komponenten einer anderen Struktur kopiert und es besteht danach keine Bindung zu dieser mehr. Genauso kann auch ein vorhandenes Include in einzelne Komponentendefinitionen aufgelöst werden.
  • Der Name einer Gruppe ist nur eine zusätzliche Adressierungsmöglichkeit und löst keine Namenskonflikte. Insbesondere wird ein Gruppenname in Anweisungen wie MOVE-CORRESPONDING oder SELECT INTO CORRESPONDING nicht berücksichtigt. Eine mit einem Suffix umbenannte Komponente hat dagegen wirklich diesen Namen und wird entsprechend berücksichtigt.
  • In Spaltenangaben von darf der Name einer Gruppe nicht verwendet werden.

Beispiel

Die Struktur DEMO_WEEK bindet fünfmal die Struktur DEMO_DAY als Include-Struktur mit Gruppennamen und Suffixen. Das Programm DEMO_INCLUDE_STRUCTURE zeigt, wie in ABAP auf deren Komponenten zugegriffen werden kann.






CL_GUI_FRONTEND_SERVICES - Frontend Services   Vendor Master (General Section)  
Diese Dokumentation steht unter dem Copyright der SAP AG.

Length: 6589 Date: 20240523 Time: 171540     sap01-206 ( 114 ms )