Datenelement und Domäne
Dieser Beitrag ist Teil des Kurses ABAP Grundlagen.
Jedes Datenelement basiert auf einer Domäne.
Dabei kann man sich die Domäne als einen technischen Typ vorstellen und das Datenelement als die Texte zu diesem technischen Typ.
In der Domäne werden die technsichen Informationen festgelegt, wie zum Beispiel Datentyp (CHAR, NUMC, DATS etc.), Zahl der Stellen (10), Anzahl der Dezimalstellen, Ausgabelänge, Konvertierungsroutine, Verwendung von Kleinbuchstaben. Auch die Wertebereiche bzw. die Wertetabelle wird in der Domäne gespeichert. Die Domäne kann global (im ganzen SAP System) verwendet werden. Diese Informationen bilden das technische Fundament.
Auf diesem Fundament baut das Datenelement als eine sematische Ebene auf. Diese liefert die jeweilge Bedeutung bzw. die Bezeichnung.
Das Datenelement dient also zur Abbildung der semantischen Information und die Domäne ist für die technische Information zuständig.
Ein Beispiel aus dem Business Intelligence Umfeld.
So basiert das Datenelement /BI0/OICUSTOMER
Kunde auf der Domäne /BI0/OCUSTOMER
Kundennummer.
Aber auch Elemente /BI0/OISOLD_TO
Auftraggeber, /BI0/OIPAYER
Regulierer, /BI0/OISHIP_TO
Warenempfänger und ein Paar andere basieren auf derselben Domäne. Das macht semantisch und technisch Sinn. So kann derselbe Kunde natürlich als Auftraggeber und als Warenempfänger fungieren. Es ist auch sinnvoll, dass die Kundennummer immer aus 10 Zeichen besteht.
Technisch ausgedrückt teilen sich die Referenzmerkmale eine Domäne.
0CUSTOMER | ||
0SOLD_TO | Auftraggeber | |
0PAYER | Regulierer | |
0SHIP_TO | Warenempfänger |
Die Namen auf ABAP Dictionary-Ebene beginnen mit /BI0/
für Standardobjekte beziehungsweise mit /BIC/
für kundeneigene Objekte. Anbei eine Übersicht für Datenelemente und Domänen.
Objekt | SAP-Objekt | Kundenobjekt |
InfoObjekt | {0-9}xxxxxxxx | {A-Z}xxxxxxxx |
IO-Datenelement | /BI0/OIxxxxxxxxx | /BIC/OI{A-Z}xxxxxxxx |
IO-Domäne | /BI0/Oxxxxxxxxx | /BIC/O{A-Z}xxxxxxxx |
Um ein Datenelement anzulegen rufen Sie die Transaktion SE11
(ABAP Dictionary) auf. Wählen Sie Datentyp aus, geben Sie den Namen ein und klicken Sie auf Anlegen.
Wählen Sie im kommenden Pop-Up Datenelement aus.
Geben Sie im Reiter Datentyp die Beschreibung und die Domäne ein.
In SAP gilt das Prinzip der Vorwärtsnavigation. Wenn Sie irgendwo doppelklicken, kommen Sie meistens irgendwohin. Wie Sie nun auf die Domäne doppelklicken, können Sie diese anlegen.
Vorher werden Sie noch gefragt, ob Sie das Datenelement speichern wollen. Das sollten Sie tun.
Danach sagt uns das System, dass diese Domäne noch nicht vorhanden ist und fragt ob wir sie anlegen wollen. Bestätigen Sie bitte mit Ja.
Nun können Sie den Datentyp und Länge definieren. Darüber hinaus können Sie im Reiter Wertebereich gültige Werte festlegen oder auf eine Tabelle verweisen.
Aktivieren Sie anschließend die Domäne. Dabei werden Sie gefragt, ob Sie auch das Datenelement aktivieren wollen. Wählen Sie alle inaktive Objekte aus und bestätigen Sie die Auswahl. Danach sind alle Objekte aktiviert und können verwendet werden.
Diese ABAP Tricks machen Ihr Leben leichter!
- In meinem Newsletter gebe ich eine Menge Tipps und Kniffe rund um ABAP.
- Die Mini-Tutorials unterstützen Sie dabei, Software in ABAP effizienter zu entwickeln.
- Praktische Anleitungen ermöglichen Ihnen schnelle Erfolge bei der Optimierung Ihrer Arbeit.
- Bei der Anmeldung zu meinem Newsletter erhalten Sie das Buch „ABAP Tipps und Tricks“ als Willkommensgeschenk.
Quellen und weiterführende Literatur:
Karl-Heinz Kühnhauser, Thorsten Franz (2011): Discover ABAP, 3. Auflage, Bonn
Falls Ihnen dieser Beitrag weitergeholfen hat, wäre es eine sehr nette Anerkennung meiner Arbeit wenn Sie z.B. Ihre Bücher über Amazon bestellen würden. Wenn Sie ein Produkt kaufen, erhalte ich dafür eine Provision. Für Sie ändert sich am Preis des Produktes gar nichts. Ich möchte mich an dieser Stelle jetzt schon für Ihre Unterstützung bedanken.
Trackbacks & Pingbacks
[…] in der ersten Zeile der Spalte Feld den Namen des Felds ein. In diesem Fall MANDT. In der Spalte Datenelement tragen Sie das Datenelement ein. In unserem Fall ebenfalls […]
Hinterlasse einen Kommentar
An der Diskussion beteiligen?Hinterlasse uns deinen Kommentar!