bc430_de_abap dictionary.pdf

Upload: mail1893

Post on 17-Oct-2015

553 views

Category:

Documents


9 download

TRANSCRIPT

  • 5/27/2018 BC430_DE_ABAP Dictionary.pdf

    1/291

    BC430ABAP Dictionary

    mySAP Technology

    Stand

    Schulungszentrum

    Referenten

    Schulungs-

    Homepage

    ReferentenhandbuchVersion der Schulung: 2004/Q4Dauer der Schulung: 3 Tag(e)Materialnummer: 50069505Verantwortlicher: Werner Hillebrand (D039039)

    An SAP Compass course - use it to learn, reference it for work

  • 5/27/2018 BC430_DE_ABAP Dictionary.pdf

    2/291

    Copyright

    Copyright 2004 SAP AG. Alle Rechte vorbehalten.

    Weitergabe und Vervielfltigung dieser Publikation oder von Teilen daraus sind, zu welchem Zweckund in welcher Form auch immer, ohne die ausdrckliche schriftliche Genehmigung durch SAP AGnicht gestattet. In dieser Publikation enthaltene Informationen knnen ohne vorherige Ankndigunggendert werden.

    Die von SAP AG oder deren Vertriebsfirmen angebotenen Software-Produkte knnenSoftware-Komponenten auch anderer Software-Huser enthalten.

    Markenzeichen

    Microsoft, WINDOWS, NT, EXCEL, Word, PowerPoint und SQL Server sindeingetragene Marken der Microsoft Corporation.

    IBM, DB2, OS/2, DB2/6000, Parallel Sysplex, MVS/ESA, RS/6000, AIX,

    S/390, AS/400, OS/390 und OS/400 sind eingetragene Marken der IBM Corporation.

    ORACLE ist eine eingetragene Marke der ORACLE Corporation.

    INFORMIX-OnLine for SAP und Informix Dynamic ServerTM sind eingetragene Markender Informix Software Incorporated.

    UNIX, X/Open, OSF/1 und Motif sind eingetragene Marken der Open Group.

    Citrix, das Citrix-Logo, ICA, Program Neighborhood, MetaFrame, WinFrame,VideoFrame, MultiWin und andere hier erwhnte Namen von Citrix-Produkten sindMarken von Citrix Systems, Inc.

    HTML, DHTML, XML, XHTML sind Marken oder eingetragene Marken des W3C, WorldWide Web Consortium, Massachusetts Institute of Technology.

    JAVA ist eine eingetragene Marke der Sun Microsystems, Inc.

    JAVASCRIPT ist eine eingetragene Marke der Sun Microsystems, Inc., verwendet unter derLizenz der von Netscape entwickelten und implementierten Technologie.

    SAP, SAP Logo, R/2, RIVA, R/3, ABAP, SAP ArchiveLink, SAP Business Workflow,WebFlow, SAP EarlyWatch, BAPI, SAPPHIRE, Management Cockpit, mySAP.com Logound mySAP.com sind Marken oder eingetragene Marken der SAP AG in Deutschland undvielen anderen Lndern weltweit. Alle anderen Produkte sind Marken oder eingetrageneMarken der jeweiligen Firmen.

    Verzichtserklrung

    Bei der Zusammenstellung der Texte, Verweise und Abbildungen wurde mit grter Sorgfaltvorgegangen; trotzdem ist ein vollstndiger Fehlerausschluss nicht mglich. Die nachfolgendeDokumentation erfolgt daher ohne Gewhr fr Richtigkeit und Vollstndigkeit der gemachten

    Angaben, fr deren Verifizierung allein der Anwender die Verantwortung trgt.

    SAP bernimmt fr aus der Verwendung dieser Dokumentation entstehende Schden, gleich auswelchem Rechtsgrund, eine Haftung nur im Falle vorstzlichen oder grob fahrlssigen Handelns;im brigen ist die Haftung von SAP ausgeschlossen. SAP bernimmt keine Verantwortung fr dieInhalte von Seiten Dritter, auf welche wir durch Links verweisen.

  • 5/27/2018 BC430_DE_ABAP Dictionary.pdf

    3/291

    ber dieses HandbuchDieses Handbuch ergnzt die Prsentation des Schulungsreferenten und dient als

    Nachschlagewerk. Es ist nicht zum Selbststudium geeignet.

    Typografische Konventionen

    Die folgenden typografischen Konventionen werden in diesem Handbuchverwendet:

    Format Beschreibung

    Beispieltext Wrter oder Zeichen, die vom Bildschirmbild zitiertwerden. Dazu gehren Feldbezeichner, Bildtitel,Drucktastenbezeichner sowie Mennamen, Menpfadeund Meneintrge. Querverweise auf andereDokumentationen

    Beispieltext Hervorgehobene Wrter oder Ausdrcke im Flietext,Titel von Grafiken und Tabellen

    BEISPIELTEXT Namen von Systemobjekten. Dazu gehrenReportnamen, Programmnamen, Transaktionscodes,

    Tabellennamen und einzelne Schlsselbegriffe einerProgrammiersprache, die von Flietext umrahmt sind,z.B. SELECT und INCLUDE.

    Beispieltext Ausgabe auf dem Bildschirmbild. Dazu gehrenDatei- und Verzeichnisnamen und ihre Pfade,Meldungen, Namen von Variablen und Parametern,Quelltext und Namen von Installations-, Upgrade- und

    Nicht-SAP-Software.

    Beispieltext Exakte Benutzereingabe. Dazu gehren Wrter oder

    Zeichen, die Sie genau so in das System eingeben, wie esin der Dokumentation angegeben ist.

    Variable Benutzereingabe. Die Wrter und Zeichen inspitzen Klammern mssen Sie durch entsprechendeEingaben ersetzen, bevor Sie sie in das System eingeben.

    Symbole im Text

    Die folgenden Ikonen werden in diesem Handbuch verwendet:

    2004/Q4 2004 SAP AG. Alle Rechte vorbehalten. iii

  • 5/27/2018 BC430_DE_ABAP Dictionary.pdf

    4/291

    ber dieses Handbuch BC430

    Symbol Bedeutung

    Fr mehr Information, Hinweise oder Hintergrnde

    Bemerkung oder weitere Erklrung zumvorangegangenem Punkt

    Ausnahme oder Gefahr

    Vorgehensweise

    Gibt an, dass der Abschnitt in der Prsentation desReferenten angezeigt wird.

    iv 2004 SAP AG. Alle Rechte vorbehalten. 2004/Q4

  • 5/27/2018 BC430_DE_ABAP Dictionary.pdf

    5/291

    Inhaltsverzeichnis

    berblick ber die Schulung..........................................vii

    Ziele der Schulung.....................................................viiLernziele der Schulung............................................... viii

    Kapitel 1: Einfhrung ins Dictionary .................................. 1

    berblick der Funktionen des ABAP Dicitonary .. .. .. .. .. .. .. .. .. .. 2

    Kapitel 2: Datenobjekte im ABAP Dictionary...................... 13

    Grundlegende Datentypen... ... .. ... ... .. ... .. ... ... .. .. ... .. ... ... .15Tabellen im ABAP Dictionary.. ... .. ... .. ... .. ... .. ... ... .. ... ... .. ..50Besondere SAP-Tabellen .... .. ... ... .. ... .. ... ... .. .. ... ... .. ... .. ..77

    Kapitel 3: Performance beim Tabellenzugriff. .. .. .. .. .. .. .. .. .. .. .85

    Performance beim Tabellenzugriff .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .86

    Kapitel 4: Eingabeprfungen... ... .. .. ... .. .. ... .. .. .. ... .. .. ... .. .. . 115

    Konsistenz durch Eingabeprfungen.. .. .. .. .. .. .. .. .. .. .. .. .. .. .. 116

    Kapitel 5: Abhngigkeiten bei Objekten .. .. .. .. .. .. .. .. .. .. .. .. .. . 151Abhngigkeiten bei Objekten. .. . . . .. . . . .. . .. . . . .. . . . .. . . .. . . . .. . .. .152

    Kapitel 6: nderungen an Tabellen................................. 167

    nderungen an Tabellen .. . .. .. . . . . .. . . . .. . .. . . . .. . . . .. . . .. . . . .. . . ..168

    Kapitel 7: Views und Pflegedialoge................................. 201

    Views ..................................................................202Pflegedialoge......................................................... 222

    Kapitel 8: Suchhilfen ... .... ... ... .... ... .... ... ... .... .... ... .... ... ... 243

    Suchhilfen........ ....... ........ ........ ....... ........ ........ ....... 244

    2004/Q4 2004 SAP AG. Alle Rechte vorbehalten. v

  • 5/27/2018 BC430_DE_ABAP Dictionary.pdf

    6/291

    Inhaltsverzeichnis BC430

    vi 2004 SAP AG. Alle Rechte vorbehalten. 2004/Q4

  • 5/27/2018 BC430_DE_ABAP Dictionary.pdf

    7/291

    berblick ber dieSchulung

    Die Schulung vermittelt Ihnen die Rolle des ABAP Dictionarys im SAP-Systemsowie dessen Funktionsumfang

    Zielgruppe

    Diese Schulung richtet sich an die folgenden Zielgruppen:

    ABAP-Entwickler und Administratoren, die globale Datenobjekte,Datenbanktabellen, Views usw. im Dictionary anlegen.

    Datenbankdesigner, die ein Datenmodell entwerfen und in die Datenbankbertragen wollen.

    Voraussetzungen fr die Teilnahme

    Erforderliche Vorkenntnisse

    BC400 oder entsprechende Grundkenntnisse im Programmieren mit ABAP

    SAPTEC oder entsprechende Kenntnisse im Umgang mit der SAPGUI

    Empfohlene Vorkenntnisse

    Prinzipielles Verstndnis ber den Aufbau einer Relationalen Datenbank

    Details zur Dauer der Schulung

    Kapitel 1:Einfhrung ins Dictionary

    berblick der Funktionen des ABAP Dicitonary 60 Minuten

    Kapitel 2: Datenobjekte im ABAP DictionaryGrundlegende Datentypen 120 Minuten

    bung 1: Grundlegende Datentypen 30 Minutenbung 2: Einfache und geschachtelte Strukturen 45 Minutenbung 3: Tabellentypen (interne Tabellen / ITABs) 30 Minutenbung 4: Tiefe Strukturen 20 Minuten

    Tabellen im ABAP Dictionary 60 Minutenbung 5: Tabellen im ABAP Dictionary 15 Minuten

    Besondere SAP-Tabellen 30 Minuten

    Kapitel 3: Performance beim TabellenzugriffPerformance beim Tabellenzugriff 120 Minuten

    2004/Q4 2004 SAP AG. Alle Rechte vorbehalten. vii

  • 5/27/2018 BC430_DE_ABAP Dictionary.pdf

    8/291

    berblick ber die Schulung BC430

    bung 6: Performanceaspekte beim Tabellenzugriff 15 Minuten

    Kapitel 4: EingabeprfungenKonsistenz durch Eingabeprfungen 120 Minuten

    bung 7: Konsistenz durch Eingabeprfungen 30 Minuten

    Kapitel 5: Abhngigkeiten bei ObjektenAbhngigkeiten bei Objekten 60 Minuten

    bung 8: Abhngigkeiten bei ABAP DictionaryObjekten 30 Minuten

    Kapitel 6: nderungen an Tabellennderungen an Tabellen 100 Minuten

    bung 9: nderungen an Datenbanktabellen 30 Minutenbung 10: Datenbankutility (SE14)

    Problembehandlung (optional) 45 MinutenKapitel 7: Views und Pflegedialoge

    Views 120 Minutenbung 11: Views 30 Minuten

    Pflegedialoge 100 Minutenbung 12: Pflegedialoge 60 Minuten

    Kapitel 8: SuchhilfenSuchhilfen 120 Minuten

    bung 13: Suchhilfen 60 Minuten

    Ziele der SchulungDiese Schulung ermglicht es Ihnen,

    die Funktion des ABAP Dictionary im R/3 System zu beschreiben

    die Definition von Datenbankobjekten vorzunehmen zu beschreiben und zunutzen

    benutzerdefinierte Datentypen anzulegen und zu verwalten

    die Services im ABAP Dictionary zu verwenden

    die Einbindung des Dictionary in die Entwicklungsumgebung und dieLaufzeitumgebung

    die Modelierungssprache UML zur Datenmodellierung zu verwenden.

    Lernziele der Schulung

    Am Ende dieser Schulung knnen Sie

    Das ABAP Dictionary mit seinen Services verwenden und beschreiben

    viii 2004 SAP AG. Alle Rechte vorbehalten. 2004/Q4

  • 5/27/2018 BC430_DE_ABAP Dictionary.pdf

    9/291

    BC430 berblick ber die Schulung

    Informationen ber die SAP-Softwarekomponenten

    Die Informationen in dieser Schulung beziehen sich auf folgende SAPSoftwarekomponenten und Releasestnde:

    Bitte lies diese Hinweiseunbedingt selbst, wenn Du diese Schulung bereits ineiner Vorgngerversion gehalten hast. Lies unbedingt auch falls vorhanden die Liste der bereits bekannten Fehler zu dieser Schulung. Diese ist falls existent

    absichtlich separat von diesem Druckstck imSAPNethinterlegt worden, umsie mit geringem technischem Aufwand so aktuell wie mglich halten zu knnen.

    Empfohlene Kurse zur Vorbereitung:

    SAPTEC

    SAP01

    BC400

    BC4xx

    ADM325

    Den Kurs BC400 soltest Du selbst bereits mehrfachgehaltenhaben.Auerdem solltest Du ber grundlegende Kenntnisse verschiedenerDatenbanksysteme verfgen. Des weiteren solltest Du Dich in den ThemenDatenmodellierung (z.B. ERD ) und den entsprechenden SAP-Tools (SD11 /SB01) vertraut gemacht haben, da hierzu hufig Fragen im Kurs auftauchen.

    1. Inhalte dieser Schulung aneignen, inkl. smtlicher Artikel derOnline-Dokumentationzu den entsprechenden Themenbereichen; allebungen mindestens einmal selbstndig lsen (ohne Hilfe der Musterlsung,inkl. aller Details und optionalen Anteilen)

    2. alle Fragen zu Material und bungen klren

    3. eigene Methodik der Prsentation entwerfen, dabei smtlicheDemonstrationen mindestens einmal selbstndig durchfhren

    4. alle Fragen zur Methodik klren

    5. Schulung nochmals bei einem erfahrenen Referenten besuchen, dabei evtl.die bungsbetreuung bernehmen

    Schulungssystem:Du bentigst die Technologiekomponente (System)SAP Web Application Server6.20oder hher. Dieses wird Dir von Deiner zustndigen Schulungsverwaltungzusammen mit dem Schulungsmandanten und weiteren Angaben genanntwerden. Bitte verwende fr Deine Schulung dann nur dieses Systemund diesen Mandanten!

    2004/Q4 2004 SAP AG. Alle Rechte vorbehalten. ix

  • 5/27/2018 BC430_DE_ABAP Dictionary.pdf

    10/291

    berblick ber die Schulung BC430

    Triff die Vorbereitungen bzgl. der folgenden zwei Punktegemdem General instructor guide for all BC4XX courses. Diesen

    findest Du in demselben Bereich desSAPNet, in dem Du auch diesesHandbuch gefunden hast. Lieszuerst das allgemeine Handbuch.Verwende anschlieend die AktivittsgruppeSAP_TRAINING, um dienotwendigen Systemvorbereitungen wie im folgenden beschrieben zu treffen.

    Daten fr bungen und Demonstrationen:In der Regel wird der notwendige Datenbestand bereits fr DeinenSchulungsmandanten generiert worden sein. Sollte dies ausnahmsweiseeinmal nicht der Fall sein (Schulung vor Ort beim Kunden o. .), musstDu das Datengenerierungsprogramm ausfhren. Du wirst darin nachTyp und Quantitt der Daten gefragt. Whle die Standardeinstellung

    und setze das Kennzeichen frauch stornierte Buchungen.

    Benutzerkennungen und Initialpassworte fr die Teilnehmer:Die Benutzerkennungen mssen stets vor Kursbeginn von Dir erzeugt werden. AlsKopiervorlage verwende bitte die (gesperrte) BenutzerkennungBC430_USER.

    nderungsauftrag fr die Teilnehmerbungen:Innerhalb des Programms fr das Erzeugen der Benutzerkennun-gen findest Du auch eine Mglichkeit,einen gemeinsamennderungsauftraganzulegen, der fr jeden soeben erzeugten Benutzer eine Aufgabe enthlt. Die

    zu erzeugenden Daten- und Programmobjekte sollen jedoch alle als LokalesObjekterzeugt werden.

    Achtung:LegekeinePakete undkeinegemeinsamen nderungsauftrgean!

    Auerdem mut Du vor Schulungsbeginn den ReportBC430_FILLausfhren,um spezielle Daten fr diesenn Kurs zu generieren.

    Prsentation:Vergewissere Dich, dass die Offline-Prsentation frdiese Schulung, Version 44, aufgerufen werden kann.

    Beispielobjekte:Alle Repository-Objekte fr diese Schulung gehren zum Paket BC430. Eineeinheitliche Namenskonvention fr diese Objekte existiert jedoch nicht.

    x 2004 SAP AG. Alle Rechte vorbehalten. 2004/Q4

  • 5/27/2018 BC430_DE_ABAP Dictionary.pdf

    11/291

    BC430 berblick ber die Schulung

    Achtung:Modifiziereauf keinen Falldiese Standardobjekte. Erzeuge

    immer Kopien, wenn Du fr Demonstrationszwecke etwas ndern willst.Andernfalls besteht die Gefahr, dass andere Objekte fehlerhaft werdenoder ein weiterer Kurs in diesem System nicht mehr durchgefhrt werdenkann.

    Dasselbe gilt fr Deine Kursteilnehmer! Bei Verwendung der korrektenKopiervorlage fr deren Benutzerkennungen sollten diesen jedoch auchdie entsprechenden Berechtigung fehlen.

    Achtung: Lies jetzt zuerst die Anleitung zur zustzlichenSystemvorbereitung innerhalb der Lektion Entwicklung vonInternet-Anwendungen.

    Generelle Hinweise fr den gesamten Kurs:Die Zeitangaben sind als Empfehlung zu verstehen. Sie enthaltenausreichenden zeitlichen Puffer fr weitergehende Fragen. Du solltest jedoch

    bedenken, dass die Teilnehmer evtl. um so mehr fragen werden, je mehr sie lernen!Auch kann es sein, dass die Lerngruppe recht inhomogen sein kann. Es muss auf

    jeden Fall gewhrleistet sein, dass der gesamte Inhalt prsentiert werden kann. Wirempfehlen, nicht gleich bei den ersten Kapiteln die Zeitangeaben zu berschreiten.

    Das vorliegende Material soll zum selbstndigen Nacharbeiten der Schulung durchden Teilnehmer geeignet sein. Deshalb enthlt es zahlreiche Erluterungen undZusatzinformationen. Es ist nun Deine Aufgabe, daraus die wichtigsten Aussagenherauszustellen. Entscheidend bei diesem Prozess sollte sein, welche Abbildungenin der Offline-Prsentation erscheinen und welche Aspekte dort jeweils abgebildetwerden.

    hnliches gilt fr die Objekte des Pakets BC430. Dieses enthlt wesentlichmehr, als u. U. fr eine erfolgreiche Prsentation notwendig ist. Vieles ist

    parallel auch als Quelltextausriss in Prsentation und/oder Teilnehmermaterialenthalten. Es liegt wieder an Dir, zu entscheiden, ob Du eine solche Abbildungim Detail diskutierst, das Demonstrationsobjekt direkt verwendest oder einentsprechendes whrend der Prsentation selbst erzeugst und verwendest.Wir empfehlen auf jeden Fall stets die direkte Demonstration am System.

    Weitere Hinweise fr Referenten:ber diese generellen Hinweise hinaus finden sichweitere detailliertere Hinweise sowohl in jedem Kapitel als auch nochmals in

    jeder Lektion. Zustzlich finden sich weitere einzelne Hinweise immer dort imMaterial, wo wir dies zur Gewhrleistung einer erfolgreichen Prsentation frnotwendig erachtet haben.

    2004/Q4 2004 SAP AG. Alle Rechte vorbehalten. xi

  • 5/27/2018 BC430_DE_ABAP Dictionary.pdf

    12/291

    berblick ber die Schulung BC430

    Einfhrungsphase zu Beginn des Kurses:

    Vorstellung des Referenten

    Organisatorische Rahmenbedingungen

    berblick ber den Kursinhalt

    Vorstellung der Teilnehmer (optional, Zeitbedarf!)

    berblick ber das Kursmaterial

    Verweis auf vertiefendes Informationsmaterial

    Demos:

    Hintergrund:

    Fluggesellschaften transportieren neben den Passagieren auch Fracht in ihren

    Flugzeugen. Ein Passagier oder ein anderer Kunde kann Fracht per Flugzeugverschicken. Die Demo zeigt die Erweiterung des Flugmodells durch dieAufnahme einer Funktion zur Verwaltung von Frachtbefrderungsauftrgen.

    Daten fr die Demo-Tabellen:

    Verwenden Sie Report BC430_DEMO_FILL, um die Vorlagen (SCARGO,DANGER_NO, DANGER_NOT, BC430TABA, BC430TABB) mit Daten fr diein der Demo beschriebenen Tabellen zu fllen. Nhere Angaben finden Sie inder Dokumentation zu diesem Report.

    Der Referent kann Objekte anlegen, die dieselbe Struktur haben wie dieseVorlagen, und kann mit dem Report BC430_DATA_COPY Daten aus den

    Vorlagen in seine Tabellen kopieren (dies funktioniert nur, wenn die Zieltabelleein Feld gleichen Typs fr jedes Feld der Vorlage enthlt).

    Vorbereitungen vor Kursbeginn:

    Whrend der Demo mssen Sie einige vordefinierte Objekte ndern. Diesevordefinierten Objekte finden Sie in der SAP-Entwicklungsklasse BC430. WennSie diese Objekte im Schulungssystem ndern (das in der Regel als Kundensystemkonfiguriert ist), zeigt das System ein Reparaturfenster an. Dies bedeutet, dass dasSAP-Objekt mit Hilfe eines nderungsauftrags repariert werden muss.

    Wenn Sie es vermeiden wollen, die Reparaturen und das Reparaturfenster erklrenzu mssen, dann reparieren Sie die betroffenen Objekte vor Kursbeginn (ndern

    Sie z.B. den Kurztext, sichern Sie ihn und aktivieren Sie das Objekt).Die betroffenen Objekte sind:

    Datenelement SCARGO_DESC (Lnge reduziert in Demo 10)

    Datenelement S_WEIGHTUNIT (an Suchhilfe angebunden in Demo 16)

    Tabelle DANGER_NO (an Suchhilfe angebunden in Demo 17)

    xii 2004 SAP AG. Alle Rechte vorbehalten. 2004/Q4

  • 5/27/2018 BC430_DE_ABAP Dictionary.pdf

    13/291

    Kapitel 11 Einfhrung ins Dictionary

    siehe einleitenden Referentenhinweis innerhalb der Lektion

    berblick ber das Kapitel

    Den Kapitelberblick entnehmen Sie bitte dem berblick der einzelnen Lektionenzu diesem Kapitel.

    Lernziele des Kapitels

    Am Ende dieses Kapitels knnen Sie

    die Funktion des ABAP Dictionary im R/3-System nennen

    die Mglichkeiten zur Definition von Datenobjekten und Datentypenbeschreiben

    die vom ABAP Dictionary angebotenen Services beschreiben

    Die Einbindung des ABAP Dictionary in die Entwicklungsumgebung unddie Laufzeitumgebung erlutern

    Inhalt des Kapitels

    Lektion: berblick der Funktionen des ABAP Dicitonary .. .. .. .. .. .. .. .. .. .. .2

    2004/Q4 2004 SAP AG. Alle Rechte vorbehalten. 1

  • 5/27/2018 BC430_DE_ABAP Dictionary.pdf

    14/291

    Kapitel 1: Einfhrung ins Dictionary BC430

    Lektion:

    2

    berblick der Funktionen des ABAP Dicitonary

    Dauer der Lektion: 60 Minuten

    berblick ber die Lektion

    In dieser Lektion erhalten Sie einen berblick ber den Funktionsumfang desABAP Dictionarys

    Lernziele der Lektion

    Am Ende dieser Lektion knnen Sie

    die Funktion des ABAP Dictionary im R/3-System nennen

    die Mglichkeiten zur Definition von Datenobjekten und Datentypenbeschreiben

    die vom ABAP Dictionary angebotenen Services beschreiben

    Die Einbindung des ABAP Dictionary in die Entwicklungsumgebung unddie Laufzeitumgebung erlutern

    Geben Sie einen ersten Einblick in die technischen Mglichkeiten desABAP-Dictionary ohne jedoch zu tief in die einzelnen Punkte einzusteigen.

    Unternehmensszenario

    Sie sollen einem Kollegen die wesentlichen Mglichkeiten des ABAP-Dictionaryerlutern

    2 2004 SAP AG. Alle Rechte vorbehalten. 2004/Q4

  • 5/27/2018 BC430_DE_ABAP Dictionary.pdf

    15/291

    BC430 Lektion: berblick der Funktionen des ABAP Dicitonary

    berblick der Funktionen

    Abbildung 1: Funktion des ABAP Dictionary

    Erlutere kurz die drei auf der Folie vorgestellten Funktionen. Diese Punktewerden auf den nachfolgenden Folien ausfhrlicher erklrt.

    Das ABAP Dictionary ermglicht die zentrale Verwaltung aller im R/3 Systemverwendeten Typdefinitionen.

    Im ABAP Dictionary knnen benutzerdefinierte Typen (Datenelemente,Strukturen und Tabellentypen) zur Verwendung in ABAP Programmen oder inSchnittstellen von Funktionsbausteinen, Objektmethoden usw. angelegt werden.Auch Datenbankobjekte wie Tabellen, Idizes und Views knnen im ABAPDictionary definiert und mit dieser Definition auf der Datenbank angelegt werden.

    Weiterhin stellt das ABAP Dictionary eine Reihe von Services zur Verfgung, die

    die Programmentwicklung untersttzen. Hier werden beispielsweise das Setzenund Freigeben von Sperren, die Definition einer Eingabehilfe (F4-Hilfe) und dasAnbinden einer Feldhilfe (F1-Hilfe) an ein Dynprofeld untersttzt.

    2004/Q4 2004 SAP AG. Alle Rechte vorbehalten. 3

  • 5/27/2018 BC430_DE_ABAP Dictionary.pdf

    16/291

    Kapitel 1: Einfhrung ins Dictionary BC430

    Abbildung 2: Datenbankobjekte im ABAP Dictionary

    Erklre die Objekttypen DB-Tabelle und DB-View. Erlutere, dass eine Tabelleoder View im ABAP Dictionary unabhngig von der Datenbank definiert wird.Das Objekt kann dann in der Datenbank automatisch angelegt werden. In diesemSchritt wird die Definition des Objekts im ABAP Dictionary auf die Definitiondes verwendeten Datenbanksystems bertragen.

    Im ABAP Dictionary knnen Tabellen und Datenbank-Views definiert werden.

    Diese Objekte werden dann mit dieser Definition auf der unterliegendenDatenbank angelegt. nderungen an der Definition einer Tabelle oder einesDatenbank-Views werden automatisch auf der Datenbank nachgezogen.

    Um die Zugriffe auf Daten in einer Tabelle zu beschleunigen, knnen Indizes imABAP Dictionary definiert werden. Diese Indizes werden dann ebenfalls aufder Datenbank angelegt.

    4 2004 SAP AG. Alle Rechte vorbehalten. 2004/Q4

  • 5/27/2018 BC430_DE_ABAP Dictionary.pdf

    17/291

    BC430 Lektion: berblick der Funktionen des ABAP Dicitonary

    Abbildung 3: Typdefinitionen im ABAP Dictionary

    Erklre, dass man im ABAP Dictionary global ansprechbare Typen anlegen kann.Diese knnen in Programmen oder Funktionsbausteinen verwendet werden.Erlutere die unterschiedlichen Typkategorien anhand der Beispiele auf derFolie (Datenelement, Struktur, Tabellentyp). Erklre wie diese grundlegendenTypen kombiniert werden knnen. Dadurch wird es mglich, komplexe Typenzu definieren.

    Es gibt drei unterschiedliche Kategorien im ABAP Dictionary: Datenelemente:Beschreiben durch Angabe von Datentyp, Lnge und

    gegebenenfalls Dezimalstellen einen elementaren Typ.

    Strukturen: Bestehen aus Komponenten, die einen beliebigen Typ habenknnen.

    Tabellentypen:Beschreiben den Aufbau einer internen Tabelle.

    Aus diesen Grundtypen knnen beliebig komplexe benutzerdefinierte Typenaufgebaut werden.

    Beispiel:Die Daten eines Mitarbeiters sind in einer Struktur MITARBEITER mitden Komponenten NAME, ADRESSE und TELEFON zusammengefat. DieKomponente NAME ist wieder eine Struktur mit den Komponenten VORNAMEund NACHNAME. Diese beiden Komponenten sind elementar, d.h. durch einDatenelement typisiert. Ebenso ist die Komponente ADRESSE durch ein Strukturtypisiert, deren Komponenten wiederum Strukturen sind. Die KomponenteTELEFON wird ber einen Tabellentyp definiert (da ein Mitarbeiter mehr als eineTelefonnummer haben kann).

    Typen werden beispielsweise in ABAP Programmen oder zur Typisierung derSchnittstellenparameter von Funktionsbausteinen verwendet.

    2004/Q4 2004 SAP AG. Alle Rechte vorbehalten. 5

  • 5/27/2018 BC430_DE_ABAP Dictionary.pdf

    18/291

    Kapitel 1: Einfhrung ins Dictionary BC430

    Abbildung 4: Services des ABAP Dictionary

    Erwhnen Sie kurz die F1- und F4-Hilfe. Sie sollten den Teilnehmern bereitsbekannt sein. Verweisen Sie auf die anderen auf der Folie genannten

    Das ABAP Dictionary untersttzt die Programmentwicklung durch eine Reihe

    von Services:

    ber Suchhilfen knnen Eingabehilfen (F4-Hilfen) fr Dynprofelderdefiniert werden.

    Dynprofeldern kann durch Erfassen einer Dokumentation zum Datenelementauf einfache Weise eine Feldhilfe (F1-Hilfe) zugeordnet werden.

    ber Fremdschlssel kann fr Dynprofelder auf einfache Art eineEingabeprfung definiert werden, die die Konsistenz eingegebener Wertesicherstellt.

    Das ABAP Dictionary liefert eine Untersttzung fr das Setzen undFreigeben von Sperren. Hierzu mssen Sperrobjekte im ABAP Dictionary

    angelegt werden. Aus diesen werden automatisch Funktionsbausteinezum Setzen und Freigeben von Sperren generiert, die dann in dieAnwendungsprogramme eingebunden werden knnen.

    Fr Datenbankobjekte (Tabellen, Views) kann ber Einstellungen zurPufferung die Performance beim Zugriff auf deren Daten erhht werden.

    ber die Protokollierung kann eine automatische Aufzeichnung vonnderungen an Tabelleneintrgen eingeschaltet werden.

    6 2004 SAP AG. Alle Rechte vorbehalten. 2004/Q4

  • 5/27/2018 BC430_DE_ABAP Dictionary.pdf

    19/291

    BC430 Lektion: berblick der Funktionen des ABAP Dicitonary

    Abbildung 5: Einbindung in Entwicklungs- und Laufzeitumgebung

    Erlutern Sie die Beziehung zwischen dem ABAP Dictionary und anderenWerkzeugen der Entwicklungs- und Laufzeitumgebung. Erklren Sie dieseBeziehung anhand von Screen Painter und ABAP Interpreter.

    Screen Painter: Der Screen Painter wird beim Anlegen der Oberflche verwendet.Felder aus Strukturen oder Tabellen, die im Dictionary definiert sind, knnen mitdem Befehl Get from Dictionary direkt auf dem Bild positioniert werden. Dadurchwerden die Typdefinition, Eingabeprfungen oder Feldhilfen automatisch in dasDynpro bernommen.

    ABAP Interpreter: Die Typdefinitionen aller im Programm verwendeten globalenTypen aus dem ABAP Dictionary werden beim Generieren eines Reports aus demDictionary geholt. Sie mssen ganz klar machen, dass das ABAP Dictionary dieHauptquelle fr Datendefinitionen im R/3-System ist. Alle anderen Komponenten

    holen die bentigten Datendefinitionen aktiv aus dem ABAP Dictionary.

    Das ABAP Dictionary ist aktiv in die Entwicklungsumgebung und dieLaufzeitumgebung integriert. Jede nderung wirkt sich sofort auf die betroffenenABAP Programme und Dynpros aus.

    2004/Q4 2004 SAP AG. Alle Rechte vorbehalten. 7

  • 5/27/2018 BC430_DE_ABAP Dictionary.pdf

    20/291

    Kapitel 1: Einfhrung ins Dictionary BC430

    Beispiele:

    ABAP Interpreter und Dynpro-Interpreter greifen beim Generieren einesProgramms oder Dynpros auf die im ABAP Dictionary abgelegtenDefinitionen der Typen zu, die in diesem Programm bzw. Dynpro verwendetwerden.

    Die ABAP Werkzeuge bzw. der Screen Painter nutzen die im ABAPDictionary abgelegten Informationen, um eine Untersttzung bei derProgrammentwicklung zu geben. Ein Beispiel hierfr ist die Funktion Holenaus Dictionaryim Screenpainter, mit der Felder einer im ABAP Dictionarydefinierten Tabelle oder Struktur auf einem Dynpro platziert werden knnen.

    Die Datenbank-Schnittstelle nutzt die im ABAP Dictionary abgelegtenInformationen zu Tabellen bzw. Datenbank-Views fr den Zugriff auf die

    Daten dieser Objekte.

    8 2004 SAP AG. Alle Rechte vorbehalten. 2004/Q4

  • 5/27/2018 BC430_DE_ABAP Dictionary.pdf

    21/291

    BC430 Lektion: berblick der Funktionen des ABAP Dicitonary

    Moderierte Diskussion

    Hier besteht Gelegenheit, noch offene Fragen zu diskutieren.

    Fragen zur Diskussion

    Verwenden Sie die folgenden Fragen, um die Teilnehmer an der Diskussion zubeteiligen.Sie drfen gerne eigene zustzliche Fragen verwenden.

    siehe Auflistung der Lernziele

    2004/Q4 2004 SAP AG. Alle Rechte vorbehalten. 9

  • 5/27/2018 BC430_DE_ABAP Dictionary.pdf

    22/291

    Kapitel 1: Einfhrung ins Dictionary BC430

    Zusammenfassung der Lektion

    Nun knnen Sie die Funktion des ABAP Dictionary im R/3-System nennen

    die Mglichkeiten zur Definition von Datenobjekten und Datentypenbeschreiben

    die vom ABAP Dictionary angebotenen Services beschreiben

    Die Einbindung des ABAP Dictionary in die Entwicklungsumgebung unddie Laufzeitumgebung erlutern

    10 2004 SAP AG. Alle Rechte vorbehalten. 2004/Q4

  • 5/27/2018 BC430_DE_ABAP Dictionary.pdf

    23/291

    BC430 Zusammenfassung des Kapitels

    Zusammenfassung des Kapitels

    Nun knnen Sie

    die Funktion des ABAP Dictionary im R/3-System nennen

    die Mglichkeiten zur Definition von Datenobjekten und Datentypenbeschreiben

    die vom ABAP Dictionary angebotenen Services beschreiben

    Die Einbindung des ABAP Dictionary in die Entwicklungsumgebung unddie Laufzeitumgebung erlutern

    2004/Q4 2004 SAP AG. Alle Rechte vorbehalten. 11

  • 5/27/2018 BC430_DE_ABAP Dictionary.pdf

    24/291

    Zusammenfassung des Kapitels BC430

    12 2004 SAP AG. Alle Rechte vorbehalten. 2004/Q4

  • 5/27/2018 BC430_DE_ABAP Dictionary.pdf

    25/291

    Kapitel 29 Datenobjekte im ABAP Dictionary

    siehe einleitenden Referentenhinweis innerhalb der Lektion

    berblick ber das Kapitel

    In diesem Kapitel werden Sie verschiedene Mglichkeiten kennen lernen,Datenobjekte im Dictionary abzubilden

    Lernziele des Kapitels

    Am Ende dieses Kapitels knnen Sie Domnen anlegen und in Datenelementen verwenden

    Datenelemente definieren und als Definitionsgrundlage fr Datenobjektein ABAP-Programmen verwenden

    Strukturen definieren und als Definitionsgrundlage fr Datenobjekte inABAP-Programmen verwenden

    Interne Tabellen definieren und als Definitionsgrundlage fr Datenobjektein ABAP-Programmen verwenden

    Komplexe (geschachtelte / tiefe) Strukturen definieren und alsDefinitionsgrundlage fr Datenobjekte in ABAP-Programmen verwenden

    Globale Konstanten mit Hilfe eines Typpools definieren und inABAP-Programmen verwenden

    Tabellen anlegen

    Das zweistufige Domnenkonzept verwenden

    Die technischen Einstellungen einer Tabelle definieren

    Include-Strukturen anlegen und verwenden

    Tabellentypen beschreiben, die es auer den Transparenten Tabellen imSAP-System noch gibt

    Pool- und Clustertabellen voneinander unterscheiden

    2004/Q4 2004 SAP AG. Alle Rechte vorbehalten. 13

  • 5/27/2018 BC430_DE_ABAP Dictionary.pdf

    26/291

    Kapitel 2: Datenobjekte im ABAP Dictionary BC430

    Vor- und Nachteile von Pool- und Clustertabellen beschreiben.

    Inhalt des KapitelsLektion: Grundlegende Datentypen .. ... .. ... ... .. ... .. ... .. ... .. ... ... .. ... ..15

    bung 1: Grundlegende Datentypen .....................................29bung 2: Einfache und geschachtelte Strukturen.. .. .. .. .. .. .. .. .. .. .. .35bung 3: Tabellentypen (interne Tabellen / ITABs).....................41bung 4: Tiefe Strukturen. .... .... ... .... ... .... .... .... ... .... .... .... ....45

    Lektion: Tabellen im ABAP Dictionary.........................................50bung 5: Tabellen im ABAP Dictionary... .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. ..65

    Lektion: Besondere SAP-Tabellen.... ... .. ... ... .. ... .. .. ... ... .. ... .. ... ... ..77

    14 2004 SAP AG. Alle Rechte vorbehalten. 2004/Q4

  • 5/27/2018 BC430_DE_ABAP Dictionary.pdf

    27/291

    BC430 Lektion: Grundlegende Datentypen

    Lektion:

    11

    Grundlegende Datentypen

    Dauer der Lektion: 120 Minuten

    berblick ber die Lektion

    In dieser Lektion lernen Sie die grundlegenden Datentypen und deren gegenseitigeVerwendung kennen.

    Lernziele der Lektion

    Am Ende dieser Lektion knnen Sie

    Domnen anlegen und in Datenelementen verwenden

    Datenelemente definieren und als Definitionsgrundlage fr Datenobjektein ABAP-Programmen verwenden

    Strukturen definieren und als Definitionsgrundlage fr Datenobjekte inABAP-Programmen verwenden

    Interne Tabellen definieren und als Definitionsgrundlage fr Datenobjektein ABAP-Programmen verwenden

    Komplexe (geschachtelte / tiefe) Strukturen definieren und alsDefinitionsgrundlage fr Datenobjekte in ABAP-Programmen verwenden

    Globale Konstanten mit Hilfe eines Typpools definieren und inABAP-Programmen verwenden

    Erlutere die verschiedenen Mglichkeiten Datenobjekte zu definieren.Insbesondere bei den komplexen Datentypen (tiefe Struktur und interne Tabelle),solltest Du deren Anwendung in ABAP-Programmen demonstrieren.

    Unternehmensszenario

    Sie sollten einfache und komplexe Datentypen im Dictionary definieren und ineinem ABAP-Programm verwenden knnen.

    2004/Q4 2004 SAP AG. Alle Rechte vorbehalten. 15

  • 5/27/2018 BC430_DE_ABAP Dictionary.pdf

    28/291

    Kapitel 2: Datenobjekte im ABAP Dictionary BC430

    Datentypen

    Abbildung 6: Einstiegsbild des Data Dictionary(SE11)

    Im ABAP Dictionary knnen programmbergreifende (global bekannte)Datentypen definiert werden. Auf diese Datentypen kann in jedemABAP-Programm des SAP-Systems mit dem TYPE-Zusatz entsprechenderABAP-Anweisungen Bezug genommen werden.

    Auf dem Einstiegsbild werden die entsprechenden Definitionen ber das FeldDatentypdefiniert. Unter Datentyp sind die drei Grundtypen Datenelement,Struktur und Tabellentyp ( interne Tabellen ITAB ) zu finden.

    Die Typgruppe stellt an sich ein Relikt aus lterer Zeit (vor Release 4.5A ) dar, alses noch nicht nicht mglich war eigene globale, komplexe Datentypenfr dieDeklaration von Datenobjekten in ABAP anzulegen. Die Typgruppe wird dafrimmer noch verwendet. Beim neu Anlegen von globalen komplexen Datentypen

    sollten Sie in Zukunft die Mglichkeiten der Dictionary-Strukturen verwenden.Auerdem wurde und wird die Typgruppe fr das Anlegen von globalenKonstanten verwendet. Das Verwenden von globalen Konstanten wird auch vonABAP-Objekts in Form von konstanten Attributen einer Klasse untersttzt. WennSie jedoch nicht objektorientiert programmieren wollen, bleibt nur die Typgruppefr das Definieren einer globalen Konstante.

    16 2004 SAP AG. Alle Rechte vorbehalten. 2004/Q4

  • 5/27/2018 BC430_DE_ABAP Dictionary.pdf

    29/291

    BC430 Lektion: Grundlegende Datentypen

    Abbildung 7: Datentypen im ABAP-Dictionary

    Fr die Definition von Datenobjekten in ABAP-Programmen knnen, mitAusnahme der Domne die obigen Typdefinitionen verwendet werden. Die Pfeilezeigen die gegenseitige Verwendbarkeit an.

    Datenelemente verwenden idealerweise Domnen um ihre technischenEigenschaften zu definieren. Auf Domnen kann ein ABAP-Programm jedochnicht zur Typiesierung von Datenobjekten zugreifen.

    Datenelemente beziehen Ihren Datentyp in der Regel aus Domnen. DieserDatentyp kann aber auch aus einem eingebauten Typ abgeleitet werden.

    Eine Struktur besteht aus Komponenten die elementare Felder, Tabellen undwiederum Strukturen sein knnen.

    Der Zeilentyp eines Tabellentyps (ITAB) kann ein strukturierter Typ oder einelementarer Typ sein.

    2004/Q4 2004 SAP AG. Alle Rechte vorbehalten. 17

  • 5/27/2018 BC430_DE_ABAP Dictionary.pdf

    30/291

    Kapitel 2: Datenobjekte im ABAP Dictionary BC430

    Abbildung 8: Domne

    Die Domnen dienen zur zentralen Verwaltung der technischen Eigenschaftenvon Datenobjekten. Die Domnen knnen nicht direkt zur Verwendung inProgrammen, Tabellen usw. verwendet werden. Der Datentyp Datenelement

    (siehe unten) dient hier als Brcke der Technischen Eigenschaften in dieverschiedenen Datentypen / Datenobjekte.

    Unter Technischen Informationen sind folgende Punkte zu verstehen:

    Format:

    In den Angaben zum Format finden sich derDatentypund dieAnzahlder Stellen, die in ein abhngiges Datenobjekt eingegeben werdenknnen. Fr den Fall, da das Format numerischen Charakter hat, kannauch noch eine Gre fr dieNachkommastellenbestimmt werden.

    Der Datentyp basiert auf 24 eingebauten Typen. Die am hufigstenverwendeten Datentypen werden im Folgenden erlutert :

    CHAR

    Zeichenfolge

    Felder vom Typ CHAR drfen in Tabellen nur die maximaleLnge 255 haben. Sollen lngere Zeichenfolgen in Tabellen

    benutzt werden, ist der Datentyp LCHR zu whlen. In Strukturenbestehen keine Begrenzungen bzgl. der Lnge solcher Felder.

    DATS

    Datum

    18 2004 SAP AG. Alle Rechte vorbehalten. 2004/Q4

  • 5/27/2018 BC430_DE_ABAP Dictionary.pdf

    31/291

    BC430 Lektion: Grundlegende Datentypen

    Die Lnge ist bei diesem Datentyp auf 8 Stellen festgelegt. DieAusgabemaske kann ber das Benutzerprofil festgelegt werden.

    DEC

    Rechen- oder Betragsfeld mit Komma, Vorzeichen undTausenderpunkten.

    Ein DEC Feld darf maximal 31 Stellen lang sein.

    NUMC

    Zeichenfolge, die nur Ziffern enthalten darf. Die Lnge einesFeldes dieses Typs ist auf maximal 255 Stellen begrenzt.

    Ausgabeeigenschaften:

    Hier wird die maximale Feldlnge inklusive Aufbereitungszeichen

    (z.B. Kommata oder Punkte) fr die Eingabe und Ausgabe von Wertenangegeben.

    Dieser Wert wird normalerweise automatisch berechnet, sobald unterFormat eineAnzahl der Stellenvergeben wurde kann aber nachtrglichberschrieben werden. Das Ausgabeformat wirkt sich auf die Ausgabeauf Dynpros und Selektionsbildern aus. Beim Einbau eines Feldesauf ein Dynpro werden die Angaben aus diesem Bereich verwendet,knnen jedoch im Screen Painter modifiziert werden.

    Des weiteren besteht die Mglichkeit, eine Konvertierungsroutinefr diese Domne zu definieren. Sie dient dazu, beim Umwandelndes Inhalts eines Dynpro-Feldes vom Anzeigeformat in das

    SAP-interne Format und umgekehrt, sowie bei der Ausgabe mittelsder ABAP-Anweisung WRITE , das Anzeigeformat zu ndern (z.B.fhrende Nullen vor eine Zahl stellen). Ebenso knnen mit dieserKonvertierungs-Routine evtl. ungeeignete Standardkonvertierungbersteuert werden.

    Fr bestimmte Datentypen (DEC, FLTP, QUAN und CURR) wirddie CheckboxVorzeicheneingabebereit. Wird diese aktiviert, wirdauf einem Dynpro das erste Zeichen des Feldes fr das Vorzeichenreserviert. Die Ausgabelnge sollte entsprechend um 1 erhht werden.

    Fr zeichenartige Datentypen kann auerdem bestimmt werden, obauchKleinbuchstabenerlaubt sind. Ist dieses Flag nicht gesetzt,

    knnen zwar im entsprechenden Eingabefeld Kleinbuchstaben erfasstwerden, die jedoch in Grobuchstaben umgewandelt werden, sobalddie Eingabe vom Anwender besttigt wird (z.B. ENTER-Taste).

    Darber hinaus knnen gltige Wertebereiche definiert werden, diezur Eingabeprfung verwendet werden. Diese Thema wird jedoch ananderer Stelle im Kurs noch nher erlutert.

    2004/Q4 2004 SAP AG. Alle Rechte vorbehalten. 19

  • 5/27/2018 BC430_DE_ABAP Dictionary.pdf

    32/291

    Kapitel 2: Datenobjekte im ABAP Dictionary BC430

    Abbildung 9: Datenelement

    Die Datenelemente sind zum einen die Brcke zwischen Domnen und denDatenobjekten, beherbergen darber hinaus aber auch noch semantische/fachlicheInformationen ber daraus erzeugte Datenobjekte.

    In den Datenelementen knnen und sollten auch die Feldbezeichner fr dasDatenfeld gepflegt sein. Diese Feldbezeichner (kurz, mittel oder lang) knnenspter auf Dynpros oder Selektionsbildern zur Erluterung des Feldinhaltesangezeigt werden.

    Auf Selektionsbildern (z.B. ABAP-Befehl PARAMETERS) kann nur dielange Version des Feldbezeichners aus dem Dictionary gezogen werden ( ImABAP-Editor Menpfad: Springen -> Textelemente -> Selectionstext =>Checkbox Dictionary Referenz).

    Wird der Feldwert in einer Liste ausgegeben, wird der Eintrag aus demFeldbezeichner fr berschrift verwendet. Fr die jeweiligen Feldbezeichner

    ist auch eineLngemitzugeben. Diese Lnge gibt die maximale Lnge fr denFeldbezeichner an. Fr den Fall, da Sie fr ein global agierendes Unternehmenarbeiten, knnen Sie die Feldbezeichner in andere Sprachen bersetzen (Menpfad: Springen -> bersetzung oder die Transaktion SE63). Denken Sie beider Lngenangabe daran, da in einer anderen Sprache der gleiche Begriff imFeldbezeichner evtl. mehr Buchstaben bentigt.

    An ein Datenelement kann eine Suchhilfe (F4-Hilfe / Wertehilfe) angehngtwerden. Das Thema Suchhilfen wird in einem folgenden Kapitel des Kursesausfhrlicher behandelt. Suchhilfen knnen an verschiedenen Ebeneneingebunden werden.

    20 2004 SAP AG. Alle Rechte vorbehalten. 2004/Q4

  • 5/27/2018 BC430_DE_ABAP Dictionary.pdf

    33/291

    BC430 Lektion: Grundlegende Datentypen

    In verschiedenen Anwendungen kommt es vor, da ein bestimmter Wert aufmehreren Dynpros einzugeben ist. Um dem Anwender die mehrfach gleiche

    Eingabe des gleichen Wertes zu ersparen, ist es mglich dem Datenelementeinen SET/GET-Parameter zuzuweisen. In diesen Parameter wird der Wertbertragen, wenn das Dynpro verlassen wird. Sollte auf einem folgenden Dynproein Eingabefeld existieren, da auf dem gleichen Datenelement basiert, wirddieser Wert aus dem Parameter ausgelesen und in das Dynprofeld eingetragen.Die SET/GET-Parameter halten den Wert pro Sitzung. Nachdem sich derAnwender abgemeldet hat, gehen diese Werte verloren. Zur Verwendung einesSET/GET-Parameters mu dieser in der Tabelle TPARA eingetragen sein!

    SET/GET-Parameter haben nichts mit der Historie (lokale Daten) der SAPGUI zutun.

    Sie knnen dem Datenelement auerdem einen englischsprachigen Defaultnamenzuordnen. Dies wirkt sich jedoch nur aus, wenn Sie das Datenelement alsKomponente in BAPI-Strukturen verwenden. Diese sollten den Defaultnamenverwenden, damit Komponentennamen einheitlich vergeben werden.

    Die Checkboxnderungsbelegsteht im Zusammenhang mit nderungsobjekten.In nderungsobjekten werden Betriebswirtschaftliche Objekte fr eine

    Protokollierung definiert, die sehr viel genauer gesteuert werden kann als dieProtokollierung in den technischen Einstellungen einer Tabelle (siehe unten). Dienderungsobjekte sind jedoch nicht Inhalt dieses Kurse, sondern werden im KursBC414 - Datenbanknderungen programmieren, erlutert.

    Als Erluterung kannst Du hier noch eine kurze Demo mit der VA02 und der VA03machen: VA02 aufrufen in einem bestehenden Beleg z.B. die Auftragsmengeverndern. VA03 aufrufen und den gleichen Beleg anzeigen lassen. ber denMenpunkt UMFELD -> NDERUNGEN die nderungen anzeigen lassen. Eswerden alle nderungen angezeigt die im Zusammenhang mit Deiner nderungstehen.

    ber den ReiterDatentyp, werden die technischen Eigenschaften fr dasDatenelement gepflegt. Hier sollten vor allem Domnen zum Einsatz kommen, daSie fr die technische Typisierung prdestiniert sind. Es ist jedoch auch mglichdas Datenelement ber die gleichen eingebauten Typen zu definieren, die fr dieDefinition der Domnen verwendet wird. Als Spezialfall ist es auch mglich einDatenelement als Referenztyp anzulegen. Der referenzierte Typ ist dabei nichtauf den Typ DATENELEMENT beschrnkt. Es kann ein beliebiges anderesReferenztyp oder gar eine generische Referenz auf ANY, OBJECT oder DATA

    2004/Q4 2004 SAP AG. Alle Rechte vorbehalten. 21

  • 5/27/2018 BC430_DE_ABAP Dictionary.pdf

    34/291

    Kapitel 2: Datenobjekte im ABAP Dictionary BC430

    sein. Eine Referenz des Typs ANY kann sowohl auf Objekte als auch auf Datenzeigen. Die Definition als Referenz entspricht der Typdeklaration in einem

    ABAP-Programm TYPES tr_dt TYPE REF TO data.

    Codebeispel fr Referenzvariable (im Debugger die verschiedenenZuweisungen und Inhalte der Felder/Referenzen verfolgen): REPORTSAPBC430D_REFERENZ_TYPE

    Abbildung 10: Strukturen

    Eine Struktur besteht aus Komponenten in Form von Datenelementen, eingebautenTypen, Strukturdefinitionen von internen Tabellen, DB-Tabellen Views oderanderen bestehenden Strukturdefinitionen.

    Die einfachste Form einer Struktur ist die Aneinanderreihung von Komponentendurch das Verwenden von Datenelementen. Hierbei entsteht immer einesog. flache Struktur. Ein Datenobjekt auf Basis dieser Struktur ist immer

    eindimensional (im Gegensatz zu einem tabellenartigen zweidimensionalenDatenobjekt).

    Auch wenn ber das Includieren einer View oder DB-Tabelle Felder eineseigendlich zweidimensionalen Objekts in die Struktur aufgenommen werden,

    bleibt das daraus erzeugbare Datenobjekt flach (eindimensional).

    22 2004 SAP AG. Alle Rechte vorbehalten. 2004/Q4

  • 5/27/2018 BC430_DE_ABAP Dictionary.pdf

    35/291

    BC430 Lektion: Grundlegende Datentypen

    Abbildung 11: Einfache Strukturen in ABAP verwenden

    Eine Struktur besteht aus Komponenten in Form von Datenelementen, eingebautenTypen, Strukturdefinitionen von internen Tabellen, DB-Tabellen Views oderanderen bestehenden Strukturdefinitionen.

    Die einfachste Form einer Struktur ist die Aneinanderreihung von Feldern durch

    das Verwenden von Datenelementen. Hierbei entsteht immer eine sog. flacheStruktur. Ein Datenobjekt auf Basis dieser Struktur ist immer eindimensional (imGegensatz zu einem tabellenartigen zweidimensionalen Datenobjekt). Auch wennber eine Include-Struktur ( View / DB-Tabelle )

    2004/Q4 2004 SAP AG. Alle Rechte vorbehalten. 23

  • 5/27/2018 BC430_DE_ABAP Dictionary.pdf

    36/291

    Kapitel 2: Datenobjekte im ABAP Dictionary BC430

    Abbildung 12: Geschachtelte Struktur

    Es ist mglich ein anderes strukturiertes Objekt mit in die Struktur aufzunehmenund einer Komponente zuzuweisen. Diese eine Komponente referiert auf dasstrukturierte Objekt und dieses neue Datenobjekt wird nun als geschachtelteStruktur bezeichnet.

    Derartige Strukturen sind beliebig ineinander schachtelbar.

    24 2004 SAP AG. Alle Rechte vorbehalten. 2004/Q4

  • 5/27/2018 BC430_DE_ABAP Dictionary.pdf

    37/291

    BC430 Lektion: Grundlegende Datentypen

    Abbildung 13: Interne Tabellen

    Sobald man eine interne Tabelle als Strukturkomponente einfgt, wird darauseine sogenannte tiefe Struktur.

    Interne Tabellen oder ITABs, knnen ber eine bestehende Zeilenstrukturdefiniert werden. Dabei knnen Datenbanktabellen, Strukturdefinitionen, Views,Datenelemente, direkte Typdefinitionen oder bestehende Tabellendefinitionen

    als Zeilenstruktur verwendet werden.Durch das deklarieren einer Internen Tabelle in einem ABAP-Programm entstehtein zweidimensionales Array im Hauptsspeicher.

    2004/Q4 2004 SAP AG. Alle Rechte vorbehalten. 25

  • 5/27/2018 BC430_DE_ABAP Dictionary.pdf

    38/291

    Kapitel 2: Datenobjekte im ABAP Dictionary BC430

    Abbildung 14: Tiefe Struktur

    Eine tiefe Struktur enthlt mindestens eine Tabelle. Die Komponente einer solchenTabelle trgt einen eigenen Namen, ber den sie wie eine normale interne Tabelleangesprochen werden kann (LOOP AT ..., INSERT ... INTO TABLE, ...).

    Eine interne Tabelle kann als Zeilentyp wiederum eine tiefe Strukturhaben. Dadurch kann man mehrdimensionale Datentypen erzeugen, da dasineinanderschachteln von interner Tabelle und Struktur mehrfach mglich ist.

    Achtung:Im Gegensatz dazu knnen Datenbanktabellen nur flacheStrukturen aufnehmen.

    26 2004 SAP AG. Alle Rechte vorbehalten. 2004/Q4

  • 5/27/2018 BC430_DE_ABAP Dictionary.pdf

    39/291

    BC430 Lektion: Grundlegende Datentypen

    Abbildung 15: Typgruppe

    Falls Sie globale Konstanten definieren mchten, mssen Sie eine Typgruppeverwenden. Der Name der Typgruppe darf maximal fnf Zeichen enthalten. In der

    Typgruppe knnen Sie mit der CONSTANTS-Anweisung Konstanten definieren.Als Typen stehen Ihnen die eingebauten ABAP-Typen oder die globalen Typendes Dictionarys zur Verfgung.

    Um die Typen einer Typgruppe in einem Programm nutzen zu knnen, machen Siedie Typgruppe mit TYPE-POOLS-Anweisung bekannt. Ab dieser Zeile knnenSie alle Konstanten der Typgruppe verwenden.

    Die Definition einer Typgruppe ist ein Stck ABAP-Code, das entweder ber dasDictionary (SE11) oder ber den ABAP-Editor (SE38) gepflegt wird.

    Realisierung:

    Die erste Anweisung fr die Typgruppezmytpist immer: TYPE-POOL zmytp.

    Danach folgt die Definition von Datentypen mit der Anweisung TYPES,wie unter Programmlokale Datentypen beschrieben. Weiterhin knnen

    programmbergreifende Konstanten mit der Anweisung CONSTANTS deklariertwerden. Alle Namen dieser Datentypen und Konstanten mssen mit dem Namender Typgruppe und einem Unterstrich beginnen:

    zmytp_

    In einem ABAP-Programm mssen Typgruppen vor ihrer Verwendung mitfolgender Anweisung bekanntgemacht werden:

    2004/Q4 2004 SAP AG. Alle Rechte vorbehalten. 27

  • 5/27/2018 BC430_DE_ABAP Dictionary.pdf

    40/291

    Kapitel 2: Datenobjekte im ABAP Dictionary BC430

    TYPE-POOLS zmytp.

    Bei Verwendung dieser Anweisung knnen alle Datentypen und Konstanten, diein der Typgruppezmytpdefiniert sind, im Programm verwendet werden. Esknnen mehrere Typgruppen in einem Programm verwendet werden.

    28 2004 SAP AG. Alle Rechte vorbehalten. 2004/Q4

  • 5/27/2018 BC430_DE_ABAP Dictionary.pdf

    41/291

    BC430 Lektion: Grundlegende Datentypen

    25 bung 1: Grundlegende Datentypen

    Dauer der bung: 30 Minuten

    Lernziele der bung

    Am Ende dieser bung knnen Sie

    Grundlegende Datentypen im Dictionary anlegen und in ABAP-Programmenverwenden

    Unternehmensszenario

    Sie sollten fr Ihr Entwicklungsprojekt einige globale Datentypen anlegen, auf

    welche auch die anderen Projektbeteiligten zugreifen knnen.

    Systemdaten

    System: wird vom Referenten zugeteiltMandant: wird vom Referenten zugeteiltBenutzer-ID: wird vom Referenten zugeteiltKennwort: wird vom Referenten zugeteiltSystemeinstellungen:

    Aufgabe 1:

    Legen Sie zwei Domnen an, um Sie spter in Datenelementen verwenden zuknnen.

    1. Rufen Sie die Transaktion SE11 auf.

    2. Legen Sie eineDomnemit dem NamenZDO_NUMBER10##ImEinstiegsbild des ABAP-Dictionaries an.

    3. Die Domne soll fr Datenelemente angelegt werden, die fr 10stelligeDezimalzahlen aufnehmen sollen. Von den 10 Stellen sollen 2 Stellen fr

    Nachkomma reserviert werden. Die Datenelemente sollen ausserdem frkaufmnnische Berechungen verwendet werden knnen.

    4. Sichern (alslokales Objekt) und aktivieren Sie die Domne.

    5. Legen Sie eine Domne mit dem NamenZDO_CHARACTER30##imEinstiegsbild des ABAP-Dictionaries an. Die Domne soll 30 Textzeichenaufnehmen knnen und in den Eingabefeldern soll die Eingabe vonKleinbuchstaben erlaubt sein..

    6. Sichern (alslokales Objekt) und aktivieren Sie die Domne.

    Fortsetzung auf der nchsten Seite

    2004/Q4 2004 SAP AG. Alle Rechte vorbehalten. 29

  • 5/27/2018 BC430_DE_ABAP Dictionary.pdf

    42/291

    Kapitel 2: Datenobjekte im ABAP Dictionary BC430

    Aufgabe 2:

    Legen Sie meherere Datenelemente an und verwenden Sie die bereits definiertenDomnen fr die technischen Eigenschaften.

    1. Rufen Sie die Transaktion SE11 auf.

    2. Legen Sie ein Datenelement (ZLASTNAME##) fr den Nachnamen einerPerson an und verwenden Sie eine passende Domne. Das Datenelement soll30 Buchstaben in Gro- und Kleinschrift aufnehmen knnen.

    3. Legen Sie ein Datenelement (ZFIRSTNAME##) fr den Vornamen einerPerson an und verwenden Sie eine passende Domne. Das Datenelement soll30 Buchstaben in Gro- und Kleinschrift aufnehmen knnen.

    4. Legen Sie ein Datenelement (ZASSETS##) fr Aktivas an und verwenden

    Sie eine passende Domne. Das Datenelement soll fr kaufmnnischeBerechnungen verwendet werden.

    5. Legen Sie ein Datenelement (ZLIABILITIES##) fr Passivas an undverwenden Sie eine passende Domne. Das Datenelement soll frkaufmnnische Berechnungen verwendet werden.

    Aufgabe 3:

    Programm anlegen

    1. Legen Sie das ausfhrbare ProgrammZBC430_##_DATA_ELEMENTSohne TOP-Include an.

    2. Legen Sie im Programm mit dem ABAP-BefehlPARAMETERSdiefolgenden Eingabefelder an.

    Parameter Datentyp

    pa_fname ZFIRSTNAME##

    pa_lname ZLASTNAME##

    pa_activ ZASSETS##

    pa_liabs ZLIABILITIES##

    Berechnen Sie das Ergebnis von Aktiva minus Passiva und geben Sie alleParameter sowie das Rechenergebniss auf einer Liste aus.

    3. Fhren Sie das Programm aus und geben Sie verschiedene Werte imSelektionsbild ein, die Sie sich auf einer Liste ausgeben lassen.

    30 2004 SAP AG. Alle Rechte vorbehalten. 2004/Q4

  • 5/27/2018 BC430_DE_ABAP Dictionary.pdf

    43/291

    BC430 Lektion: Grundlegende Datentypen

    Lsung 1: Grundlegende Datentypen

    Aufgabe 1:Legen Sie zwei Domnen an, um Sie spter in Datenelementen verwenden zuknnen.

    1. Rufen Sie die Transaktion SE11 auf.

    a) Gehen Sie ins Kommandofeld tragen Siese11, wenn Sie sich im SAPEASY ACCESS-Men befinden, ein und besttigen Sie die Eingaben

    Befinden Sie sich in einer anderen Transaktion, mssen Sie insKommandofeld/n se11eintragen und die Eingabe besttigen.

    2. Legen Sie eineDomnemit dem NamenZDO_NUMBER10##ImEinstiegsbild des ABAP-Dictionaries an.

    a) Whlen Sie auf den Radiobuttons den PunktDomneaus.b) Tragen Sie den Namen der Domne in das Eingabefeld ein.c) Drcken Sie die Schaltflche frAnlegen

    3. Die Domne soll fr Datenelemente angelegt werden, die fr 10stelligeDezimalzahlen aufnehmen sollen. Von den 10 Stellen sollen 2 Stellen fr

    Nachkomma reserviert werden. Die Datenelemente sollen ausserdem frkaufmnnische Berechungen verwendet werden knnen.

    a) Tragen Sie im FeldKurzbeschreibungeinen sinnvollen beschreibenden

    Text fr die Domne einb) Tragen Sie im FeldDatentypden WertDECein oder whlen Sie diesenEintrag aus der Wertehilfe (F4) aus.

    c) Im FeldZahl der Stellentragen Sie den Wert8eind) Im FeldDezimalstellentragen Sie den Wert2eine) Setzten Sie den Haken an der CheckboxVorzeichen

    4. Sichern (alslokales Objekt) und aktivieren Sie die Domne.

    a) Bettigen Sie dazu die SchaltflcheSichernin der oberen Leiste derSchaltflchen.

    5. Legen Sie eine Domne mit dem NamenZDO_CHARACTER30##im

    Einstiegsbild des ABAP-Dictionaries an. Die Domne soll 30 Textzeichenaufnehmen knnen und in den Eingabefeldern soll die Eingabe vonKleinbuchstaben erlaubt sein..

    a) Gehen Sie wie in den vorangegangenen Schritten vor und definierenSie die entsprechenden Eigenschaften unter dem ReiterDefinition

    Fortsetzung auf der nchsten Seite

    2004/Q4 2004 SAP AG. Alle Rechte vorbehalten. 31

  • 5/27/2018 BC430_DE_ABAP Dictionary.pdf

    44/291

    Kapitel 2: Datenobjekte im ABAP Dictionary BC430

    6. Sichern (alslokales Objekt) und aktivieren Sie die Domne.

    a) Bettigen Sie dazu die SchaltflcheSichernin der oberen Leiste derSchaltflchen.

    Aufgabe 2:

    Legen Sie meherere Datenelemente an und verwenden Sie die bereits definiertenDomnen fr die technischen Eigenschaften.

    1. Rufen Sie die Transaktion SE11 auf.

    a) Gehen Sie ins Kommandofeld tragen Siese11ein, wenn Sie sich imSAP EASY ACCESS-Men befinden, ein und besttigen Sie dieEingaben

    Befinden Sie sich in einer anderen Transaktion befinden, mssen Sieins Kommandofeld/n se11eintragen und die Eingabe besttigen.

    2. Legen Sie ein Datenelement (ZLASTNAME##) fr den Nachnamen einerPerson an und verwenden Sie eine passende Domne. Das Datenelement soll30 Buchstaben in Gro- und Kleinschrift aufnehmen knnen.

    a) Whlen Sie auf den Radiobuttons den PunktDatentypaus.b) Tragen Sie den Namen des Datentyps in das Eingabefeld ein.c) Drcken Sie die Schaltflche frAnlegen.d) Im erscheinenden Popup whlen Sie den Radiobutton frDatenelement

    aus und besttigen Sie die Eingabe.

    e) Tragen Sie im FeldKurzbeschreibungeinen sinnvollen beschreibendenText fr das Datenelement ein.f) Unter dem ReiterDatentypgeben Sie unter elementarer Typ die

    passende Domne an, die sie im verhergehenden Teil der bungangelegt haben

    g) Unter dem ReiterFeldbezeichnermssen Sie noch geeigneteBezeichnungen fr Ihr Datenelement erfassen. Diese Bezeichnungenerscheinen z.b. auf Dynpros und Selektionsbildern (Lange Version)zur Erluterung der Felder.

    3. Legen Sie ein Datenelement (ZFIRSTNAME##) fr den Vornamen einerPerson an und verwenden Sie eine passende Domne. Das Datenelement soll

    30 Buchstaben in Gro- und Kleinschrift aufnehmen knnen.a) Verfahren Sie analog zum vorherigen bung.

    4. Legen Sie ein Datenelement (ZASSETS##) fr Aktivas an und verwendenSie eine passende Domne. Das Datenelement soll fr kaufmnnischeBerechnungen verwendet werden.

    a) Verfahren Sie analog zum vorherigen bung.

    Fortsetzung auf der nchsten Seite

    32 2004 SAP AG. Alle Rechte vorbehalten. 2004/Q4

  • 5/27/2018 BC430_DE_ABAP Dictionary.pdf

    45/291

    BC430 Lektion: Grundlegende Datentypen

    5. Legen Sie ein Datenelement (ZLIABILITIES##) fr Passivas an undverwenden Sie eine passende Domne. Das Datenelement soll fr

    kaufmnnische Berechnungen verwendet werden.a) Verfahren Sie analog zum vorherigen bung.

    Aufgabe 3:

    Programm anlegen

    1. Legen Sie das ausfhrbare ProgrammZBC430_##_DATA_ELEMENTSohne TOP-Include an.

    a) Verwenden Sie zum Anlegen die Transaktion SE80 oder dieTransaktion SE38.

    2. Legen Sie im Programm mit dem ABAP-Befehl PARAMETERSdiefolgenden Eingabefelder an.

    Parameter Datentyp

    pa_fname ZFIRSTNAME##

    pa_lname ZLASTNAME##

    pa_activ ZASSETS##

    pa_liabs ZLIABILITIES##

    Berechnen Sie das Ergebnis von Aktiva minus Passiva und geben Sie alleParameter sowie das Rechenergebniss auf einer Liste aus.

    a) Siehe Quelltextauszug in der Musterlsung.

    Fortsetzung auf der nchsten Seite

    2004/Q4 2004 SAP AG. Alle Rechte vorbehalten. 33

  • 5/27/2018 BC430_DE_ABAP Dictionary.pdf

    46/291

    Kapitel 2: Datenobjekte im ABAP Dictionary BC430

    3. Fhren Sie das Programm aus und geben Sie verschiedene Werte imSelektionsbild ein, die Sie sich auf einer Liste ausgeben lassen.

    a) Beachten Sie, da entsprechend den Definitionen in den Domnenbei den Namen die Eingabe von Gro- und Kleinbuchstaben mglichsein mu. Bei den beiden numerischen Feldern muss die Eingabe der

    Nachkommastellen und eines negativen Vorzeichens mglich sein.

    Ergebnis

    Quelltextauszug:SAPBC430S_DATA_ELEMENTS

    REPORT sapbc400s_data_elements .

    *Replace ## by Your Group- Screennumber and uncomment the ABAP-coding

    DATA: result TYPE zassets##.

    PARAMETERS: pa_fname TYPE zfirstname##,

    pa_lname TYPE zlastname##,

    pa_activ TYPE zassets##,

    pa_liabs TYPE zliabilities##.

    START-OF-SELECTION.

    NEW-LINE.

    WRITE: Client:, pa_fname, pa_lname.

    result = pa_activ - pa_liabs.

    NEW-LINE.

    WRITE: Finance:, pa_activ, pa_liabs, result.

    34 2004 SAP AG. Alle Rechte vorbehalten. 2004/Q4

  • 5/27/2018 BC430_DE_ABAP Dictionary.pdf

    47/291

    BC430 Lektion: Grundlegende Datentypen

    31 bung 2: Einfache und geschachtelte

    StrukturenDauer der bung: 45 Minuten

    Lernziele der bung

    Am Ende dieser bung knnen Sie

    einfache und geschachtelte Strukturen im Dictionary anlegen und inABAP-Programmen verwenden

    Unternehmensszenario

    Um komplexe Datenstrukturen abbilden zu knnen sollen Sie fr Ihr Projekt einekomplexe Struktur im Dictionary aufbauen.

    Aufgabe 1:

    Legen Sie einfache Strukturen an, um Sie spter in ABAP-Programmenverwenden zu knnen.

    1. Legen Sie im Dictionary eine StrukturZNAME##an und nehmen Siedie zwei folgenden Komponenten in die Struktur auf. Verwenden Sie zurTypisierung die Datenelemente, die Sie in vorangegangenen bungenerzeugt haben

    Komponente Komponententyp Bedeutung

    FIRSTNAME eigener Vorname

    LASTNAME eigener Nachname

    2. Legen Sie eine StrukturZADRESS##an und tragen Sie die vier folgendenKomponenten ein:

    Komponente Komponententyp Bedeutung

    STREET S_STREET Strae

    NR S_NO Hausnummer

    ZIP POSTCODE Postleitzahl

    CITY S_CITY Wohnort

    Fortsetzung auf der nchsten Seite

    2004/Q4 2004 SAP AG. Alle Rechte vorbehalten. 35

  • 5/27/2018 BC430_DE_ABAP Dictionary.pdf

    48/291

    Kapitel 2: Datenobjekte im ABAP Dictionary BC430

    Aufgabe 2:

    Legen Sie eine geschachtelte Struktur an, um Sie spter in ABAP-Programmenverwenden zu knnen.

    1. Legen Sie im Dictionary eine StrukturZPERSON##an.

    2. Nehmen Sie in die Struktur ZPERSON## die StrukturZADRESS##alsInclude-Struktur auf. Nehmen Sie auerdem die StrukturZNAME##als geschachtelte Struktur unter dem Komponentennamen NAME in dieStruktur ZPERSON## auf.

    3. Legen Sie ein ABAP-ProgrammZBC430_##_STRUCT_NESTEDan. Erzeugen Sie in diesem Programm ein strukturiertes Datenobjekt(wa_person) vom TypZPERSON##. Fllen Sie die Komponenten dieses

    Datenojekts mit beliebigen Personendaten und geben Sie diese Daten aufeiner Liste aus.

    36 2004 SAP AG. Alle Rechte vorbehalten. 2004/Q4

  • 5/27/2018 BC430_DE_ABAP Dictionary.pdf

    49/291

    BC430 Lektion: Grundlegende Datentypen

    Lsung 2: Einfache und geschachtelte

    StrukturenAufgabe 1:

    Legen Sie einfache Strukturen an, um Sie spter in ABAP-Programmenverwenden zu knnen.

    1. Legen Sie im Dictionary eine StrukturZNAME##an und nehmen Siedie zwei folgenden Komponenten in die Struktur auf. Verwenden Sie zurTypisierung die Datenelemente, die Sie in vorangegangenen bungenerzeugt haben

    Komponente Komponententyp Bedeutung

    FIRSTNAME eigener Vorname

    LASTNAME eigener Nachname

    a) Starten Sie die SE11 und tragen Sie im EingabefeldDatentypdenNamen der Struktur ein.

    b) Drcken Sie auf die SchaltflcheAnlegenund whlen Sie im folgendenDialogStrukturaus.

    c) Vergeben Sie ein Kurzbeschreibung und tragen Sie die angegebenen

    Komponenten ein. Aktivieren Sie die Struktur, damit Sie globalbekannt ist.

    2. Legen Sie eine StrukturZADRESS##an und tragen Sie die vier folgendenKomponenten ein:

    Komponente Komponententyp Bedeutung

    STREET S_STREET Strae

    NR S_NO Hausnummer

    ZIP POSTCODE PostleitzahlCITY S_CITY Wohnort

    a) Gehen Sie analog zum vorangegangenen bungsteil vor.

    Fortsetzung auf der nchsten Seite

    2004/Q4 2004 SAP AG. Alle Rechte vorbehalten. 37

  • 5/27/2018 BC430_DE_ABAP Dictionary.pdf

    50/291

    Kapitel 2: Datenobjekte im ABAP Dictionary BC430

    Aufgabe 2:

    Legen Sie eine geschachtelte Struktur an, um Sie spter in ABAP-Programmenverwenden zu knnen.

    1. Legen Sie im Dictionary eine StrukturZPERSON##an.

    a) Gehen Sie analog zum vorangegangenen bungsteil vor.

    2. Nehmen Sie in die Struktur ZPERSON## die StrukturZADRESS##alsInclude-Struktur auf. Nehmen Sie auerdem die StrukturZNAME##als geschachtelte Struktur unter dem Komponentennamen NAME in dieStruktur ZPERSON## auf.

    a) Includieren Sie die Adresse entweder ber das MenBearbeiten->Include->Einfgenoder schreiben Sie in der Spalte

    Komponentedas Schlsselwort.INCLUDE.

    Achtung:Der Punkt vor dem Schlsselwort ist wichtig.

    Fr die zweite Struktur, die Sie als tiefe Struktur aufnehmen wollen,geben Sie eine beliebige Komponentenbezeichnung (z.B. Name) ein.

    Komponente Komponententyp Bedeutung

    .include ZADRESS## Adressenstruktur

    NAME ZNAME## referiert auf dieNamens-Struktur

    Fortsetzung auf der nchsten Seite

    38 2004 SAP AG. Alle Rechte vorbehalten. 2004/Q4

  • 5/27/2018 BC430_DE_ABAP Dictionary.pdf

    51/291

    BC430 Lektion: Grundlegende Datentypen

    3. Legen Sie ein ABAP-ProgrammZBC430_##_STRUCT_NESTEDan. Erzeugen Sie in diesem Programm ein strukturiertes Datenobjekt

    (wa_person) vom TypZPERSON##. Fllen Sie die Komponenten diesesDatenojekts mit beliebigen Personendaten und geben Sie diese Daten aufeiner Liste aus.

    a) Siehe Quelltextauszug in der Musterlsung.

    Ergebnis

    Quelltextauszug: SAPBC430S_STRUCT_NESTED

    REPORT sapbc430s_struct_nested.

    *Replace ## by Your group- or screennumber and

    *uncomment the ABAP-coding

    DATA wa_person TYPE zperson##.

    START-OF-SELECTION.

    wa_person-name- firstname = Harry.

    wa_person-name- lastname = Potter.

    wa_person-stree t = Privet Drive.

    wa_person-nr = 3.

    wa_person-zip = GB-10889.

    wa_person-city = London.

    WRITE: / wa_person-name- firstname ,

    wa_person-name- lastname ,

    wa_person-stree t ,

    wa_person-nr ,

    wa_person-zip ,

    wa_person-city .

    2004/Q4 2004 SAP AG. Alle Rechte vorbehalten. 39

  • 5/27/2018 BC430_DE_ABAP Dictionary.pdf

    52/291

    Kapitel 2: Datenobjekte im ABAP Dictionary BC430

    40 2004 SAP AG. Alle Rechte vorbehalten. 2004/Q4

  • 5/27/2018 BC430_DE_ABAP Dictionary.pdf

    53/291

    BC430 Lektion: Grundlegende Datentypen

    37 bung 3: Tabellentypen (interne Tabellen

    / ITABs)Dauer der bung: 30 Minuten

    Lernziele der bung

    Am Ende dieser bung knnen Sie

    Tabellentypen anlegen und in ABAP-Programmen verwenden

    Unternehmensszenario

    Zur lokalen Datenhaltung sollen Sie einen Tabelletyp definieren, der die Datensortiert vorhlt.

    Aufgabe:

    Legen Sie einfache interne Tabelle auf Basis einer vorhandenen Struktur an, umSie spter in ABAP-Programmen verwenden zu knnen.

    1. Legen Sie im Dictionary einen TabellentypZIT_SFLIGHT##an. DerTabellentyp soll auf dem Zeilentyp der DatenbanktabelleSFLIGHTbasierenund nach dem Flugdatum (FLDATE) sortiert sein

    2. Legen Sie ein ABAP-ProgrammZBC430_##_ITAB_SORTEDan.

    Erzeugen Sie in diesem Programm fr eine Arbeitsbereich ein strukturiertesDatenobjekt (wa_sflight) vom TypSFLIGHTund eine interne Tabelle aufBasis des soeben definierten Tabellentyps. Selektieren Sie aus der TabelleSFLIGHT die Daten einer Fluggesellschaft (z.B.JL) in den Arbeitsbereichund geben diesen unsortiert in einer Liste aus.

    3. Erweitern Sie das Programm folgendermaen. Fgen Sie eine Linie(ABAP-BefehlULINE) in die Liste ein. Laden Sie die gleichen Datenerneut ber denSELECT-Befehl mit Array-Fetch in die interne Tabelle vomTypZIT_SFLIGHT##und geben Sie den Inhalt der Tabelle mit Hilfe desLOOP-Befehls auf der selben Liste aus. Vergleichen Sie die Reihenfolge, derDaten in den beiden Listenabschnitten.

    2004/Q4 2004 SAP AG. Alle Rechte vorbehalten. 41

  • 5/27/2018 BC430_DE_ABAP Dictionary.pdf

    54/291

    Kapitel 2: Datenobjekte im ABAP Dictionary BC430

    Lsung 3: Tabellentypen (interne Tabellen

    / ITABs)Aufgabe:

    Legen Sie einfache interne Tabelle auf Basis einer vorhandenen Struktur an, umSie spter in ABAP-Programmen verwenden zu knnen.

    1. Legen Sie im Dictionary einen TabellentypZIT_SFLIGHT##an. DerTabellentyp soll auf dem Zeilentyp der DatenbanktabelleSFLIGHTbasierenund nach dem Flugdatum (FLDATE) sortiert sein

    a) Gehen Sie ins Kommandofeld und tragen Siese11, wenn Sie sichim SAP EASY ACCESS-Men befinden, ein und besttigen Sie die

    Eingaben

    Befinden Sie sich in einer anderen Transaktion, mssen Sie insKommandofeld/n se11eintragen und die Eingabe besttigen.

    b) Whlen Sie auf den Radiobuttons den PunktDatentypc) Tragen Sie den Namen der Tabelle in das Eingabefeld ein.d) Drcken Sie die Schaltflche frAnlegen.e) Whlen Sie im folgenden DialogTabellentypaus.f) Vergeben Sie eine Kurzbeschreibung und tragen Sie im Feld Zeilentyp

    den Namen der Datenbanktabelle ein.g) Wechseln Sie auf den TabreiterInitialisierung und Zugriffund whlen

    Sie als ZugriffsartSortierte Tabelleaus.h) Wechseln Sie auf den TabreiterSchlsselund whlen Sie alsSchlsselartnonuniqueaus.

    i) Whlen Sie nun noch die entsprechende Schlsselkomponente berdieSchlsseldefinition Schlsselkomponentenund die Schaltflche

    Komponenten auswhlen.j) Aktivieren Sie die Tabelle, damit Sie global bekannt ist.

    2. Legen Sie ein ABAP-ProgrammZBC430_##_ITAB_SORTEDan.Erzeugen Sie in diesem Programm fr eine Arbeitsbereich ein strukturiertesDatenobjekt (wa_sflight) vom TypSFLIGHTund eine interne Tabelle aufBasis des soeben definierten Tabellentyps. Selektieren Sie aus der Tabelle

    SFLIGHT die Daten einer Fluggesellschaft (z.B.JL) in den Arbeitsbereichund geben diesen unsortiert in einer Liste aus.

    a) Siehe Quelltextauszug in der Musterlsung.

    3. Erweitern Sie das Programm folgendermaen. Fgen Sie eine Linie(ABAP-BefehlULINE) in die Liste ein. Laden Sie die gleichen Datenerneut ber denSELECT-Befehl mit Array-Fetch in die interne Tabelle vom

    Fortsetzung auf der nchsten Seite

    42 2004 SAP AG. Alle Rechte vorbehalten. 2004/Q4

  • 5/27/2018 BC430_DE_ABAP Dictionary.pdf

    55/291

    BC430 Lektion: Grundlegende Datentypen

    TypZIT_SFLIGHT##und geben Sie den Inhalt der Tabelle mit Hilfe desLOOP-Befehls auf der selben Liste aus. Vergleichen Sie die Reihenfolge, der

    Daten in den beiden Listenabschnitten.a) Siehe Quelltextauszug in der Musterlsung.

    Ergebnis

    Quelltextauszug:SAPBC430S_ITAB_SORTED

    REPORT SAPBC430S_ITAB_SORTED.

    **Replace ## by Your group- or screennumber and

    **uncomment the ABAP-coding

    DATA it_flight TYPE zit_sflight##.

    DATA wa_sflight TYPE sflight.

    WRITE / Printout in tableorder of Database:.

    SELECT * FROM sflight

    INTO wa_sflight

    WHERE carrid = JL.

    WRITE: / wa_sflight-carr id,

    wa_sflight-con nid,

    wa_sflight-fld ate,

    wa_sflight-pri ce,

    wa_sflight-cur rency,

    wa_sflight-pla netype.

    ENDSELECT.

    ULINE.

    SELECT * FROM sflight

    INTO TABLE it_flight

    WHERE carrid = JL.WRITE / Printout in tableorder of sorted ITAB:.

    LOOP AT it_flight INTO wa_sflight.

    WRITE: / wa_sflight-car rid,

    wa_sflight-con nid,

    wa_sflight-fld ate,

    wa_sflight-pri ce,

    wa_sflight-cur rency,

    Fortsetzung auf der nchsten Seite

    2004/Q4 2004 SAP AG. Alle Rechte vorbehalten. 43

  • 5/27/2018 BC430_DE_ABAP Dictionary.pdf

    56/291

    Kapitel 2: Datenobjekte im ABAP Dictionary BC430

    wa_sflight-plan etype.

    ENDLOOP.

    44 2004 SAP AG. Alle Rechte vorbehalten. 2004/Q4

  • 5/27/2018 BC430_DE_ABAP Dictionary.pdf

    57/291

    BC430 Lektion: Grundlegende Datentypen

    41 bung 4: Tiefe Strukturen

    Dauer der bung: 20 Minuten

    Lernziele der bung

    Am Ende dieser bung knnen Sie

    tiefe Strukturen anlegen und in ABAP-Programmen verwenden

    Unternehmensszenario

    Sie sollen fr Ihr Projektteam die Struktur der Personendaten insoweit erweitern,dass Sie eine beliebig lange Telefonliste fr jeden Mitarbeiter aufnehmen kann.

    Aufgabe:

    Legen Sie eine interne Tabelle auf Basis eines Datenobjektes an, um Sie in eineStruktur aufzunehmen. Verwenden Sie diese in einem ABAP-Programm.

    1. Legen Sie im Dictionary einen Tabellentyp einer Standard-TabelleZIT_PHONE_NUMBER##an. Der Tabellentyp soll auf dem Zeilentypder bestehenden StrukturSTR_PHONEbasieren.

    2. Erweitern Sie im Dictionary Ihre bestehende StrukturZPERSON##. Dieneue Komponente soll den NamenPHONEerhalten und auf der internenTabelleZIT_PHONE_NUMBER##basieren.

    3. Legen Sie ein ABAP-ProgrammZBC430_##_STRUCT_DEEPan. Kopie-ren Sie dazu Ihre Lsung des Programmes ZBC430_##_STRUCT_NESTEDoder die Mustervorlage SAPBC430S_STRUCT_NESTED. Erweitern Siedieses Programm um einen Arbeitsbereich fr ein strukturiertes Datenobjekt(wa_phone) vom TypSTR_PHONE.

    4. Erweitern Sie das Programm folgendermaen:

    Fgen Sie drei Telefonnummern in das strukturierte Datenobjekt wa_personein und geben Sie diese Daten mit Hilfe des LOOP-Befehls auf der selbenListe aus.

    2004/Q4 2004 SAP AG. Alle Rechte vorbehalten. 45

  • 5/27/2018 BC430_DE_ABAP Dictionary.pdf

    58/291

    Kapitel 2: Datenobjekte im ABAP Dictionary BC430

    Lsung 4: Tiefe Strukturen

    Aufgabe:Legen Sie eine interne Tabelle auf Basis eines Datenobjektes an, um Sie in eineStruktur aufzunehmen. Verwenden Sie diese in einem ABAP-Programm.

    1. Legen Sie im Dictionary einen Tabellentyp einer Standard-TabelleZIT_PHONE_NUMBER##an. Der Tabellentyp soll auf dem Zeilentypder bestehenden StrukturSTR_PHONEbasieren.

    a) Gehen Sie ins Kommandofeld und tragen Siese11, wenn Sie sichim SAP EASY ACCESS-Men befinden, ein und besttigen Sie dieEingaben

    Befinden Sie sich in einer anderen Transaktion, mssen Sie insKommandofeld/n se11eintragen und die Eingabe besttigen.

    b) Whlen Sie auf den Radiobuttons den PunktDatentypc) Tragen Sie den Namen der Tabelle in das Eingabefeld ein.d) Drcken Sie die Schaltflche frAnlegen.e) Whlen Sie im folgenden DialogTabellentypaus.f) Vergeben Sie eine Kurzbeschreibung und tragen Sie im Feld Zeilentyp

    den Namen der Struktur ein.g) Wechseln Sie auf den TabreiterInitialisierung und Zugriffund whlen

    Sie als ZugriffsartStandard Tabelleaus.h) Wechseln Sie auf den TabreiterSchlsselund whlen Sie als

    Schlsselartnonuniqueaus.i) Whlen Sie nun noch alsSchlsseldefinitiondenStandardschlssel

    2. Erweitern Sie im Dictionary Ihre bestehende StrukturZPERSON##. Dieneue Komponente soll den NamenPHONEerhalten und auf der internenTabelleZIT_PHONE_NUMBER##basieren.

    a) tragen Sie eine neue Komponente mit dem Namen Phone in IhreStruktur ein und geben Sie als Komponententyp den neu geschaffenenTabellentyp an.

    Komponente Komponententyp Bedeutung

    .include ZADRESS## Adressenstruktur

    NAME ZNAME## referiert auf dieNamens-Struktur

    PHONE ZIT_PHONE_NUM-BER##

    referiert auf dieTelefontabelle

    Fortsetzung auf der nchsten Seite

    46 2004 SAP AG. Alle Rechte vorbehalten. 2004/Q4

  • 5/27/2018 BC430_DE_ABAP Dictionary.pdf

    59/291

    BC430 Lektion: Grundlegende Datentypen

    3. Legen Sie ein ABAP-ProgrammZBC430_##_STRUCT_DEEPan. Kopie-ren Sie dazu Ihre Lsung des Programmes ZBC430_##_STRUCT_NESTED

    oder die Mustervorlage SAPBC430S_STRUCT_NESTED. Erweitern Siedieses Programm um einen Arbeitsbereich fr ein strukturiertes Datenobjekt(wa_phone) vom TypSTR_PHONE.

    a) Siehe Quelltextauszug in der Musterlsung.

    4. Erweitern Sie das Programm folgendermaen:

    Fgen Sie drei Telefonnummern in das strukturierte Datenobjekt wa_personein und geben Sie diese Daten mit Hilfe des LOOP-Befehls auf der selbenListe aus.

    a) Siehe Quelltextauszug in der Musterlsung.

    Ergebnis

    Quelltextauszug:SAPBC430S_STRUCT_DEEP

    REPORT sapbc430s_struct_deep.

    DATA wa_person TYPE zperson##.

    DATA wa_phone TYPE str_phone.

    START-OF-SELECTION.

    *Fill deep structure with data

    wa_person-name-firstname = Harry.

    wa_person-name-lastname = Potter.

    wa_person-street = Privet Drive.

    wa_person-nr = 3.

    wa_person-zip = GB-10889.

    wa_person-city = London.

    wa_phone-p_type = P.

    wa_phone-p_numb er = +31-10-9938990 .

    INSERT wa_phone INTO TABLE wa_person-phone.

    wa_phone-p_type = F.

    wa_phone-p_numb er = +31-10-9938991 .

    INSERT wa_phone INTO TABLE wa_person-phone.

    wa_phone-p_type = M.

    wa_phone-p_numb er = +31-79-12211433 .

    INSERT wa_phone INTO TABLE wa_person-phone.

    Fortsetzung auf der nchsten Seite

    2004/Q4 2004 SAP AG. Alle Rechte vorbehalten. 47

  • 5/27/2018 BC430_DE_ABAP Dictionary.pdf

    60/291

    Kapitel 2: Datenobjekte im ABAP Dictionary BC430

    *Write on List

    WRITE: / wa_person-name-firstname ,

    wa_person-name-lastname ,

    wa_person-street ,

    wa_person-nr ,

    wa_person-zip ,

    wa_person-city .

    WRITE: / Phone-Numbers: .

    LOOP AT wa_person-phone INTO wa_phone.

    WRITE: AT 20 wa_phone-p_type,

    wa_phone-p_numbe r.

    NEW-LINE.

    ENDLOOP.

    48 2004 SAP AG. Alle Rechte vorbehalten. 2004/Q4

  • 5/27/2018 BC430_DE_ABAP Dictionary.pdf

    61/291

    BC430 Lektion: Grundlegende Datentypen

    Zusammenfassung der Lektion

    Nun knnen Sie Domnen anlegen und in Datenelementen verwenden

    Datenelemente definieren und als Definitionsgrundlage fr Datenobjektein ABAP-Programmen verwenden

    Strukturen definieren und als Definitionsgrundlage fr Datenobjekte inABAP-Programmen verwenden

    Interne Tabellen definieren und als Definitionsgrundlage fr Datenobjektein ABAP-Programmen verwenden

    Komplexe (geschachtelte / tiefe) Strukturen definieren und alsDefinitionsgrundlage fr Datenobjekte in ABAP-Programmen verwenden

    Globale Konstanten mit Hilfe eines Typpools definieren und inABAP-Programmen verwenden

    2004/Q4 2004 SAP AG. Alle Rechte vorbehalten. 49

  • 5/27/2018 BC430_DE_ABAP Dictionary.pdf

    62/291

    Kapitel 2: Datenobjekte im ABAP Dictionary BC430

    Lektion:

    46

    Tabellen im ABAP Dictionary

    Dauer der Lektion: 60 Minuten

    berblick ber die Lektion

    Lernziele der Lektion

    Am Ende dieser Lektion knnen Sie

    Tabellen anlegen

    Das zweistufige Domnenkonzept verwenden

    Die technischen Einstellungen einer Tabelle definieren Include-Strukturen anlegen und verwenden

    In dieser Lektion wird das zweitstufige Domnenkonzept, das schon im BC400angesprochen wurde wiederholt. Auerdem werden die GrundlegendenAbhngigkeiten des ABAP Dictionaries zwischen Domne, Datenelement undTabelle erlutert. Weiterfhrend wird deren Abbildung auf der darunterliegendenDatenbank dargestellt (Datenbanken kennen im wesentlichen nur die Tabellen.Datenelemente sind fr Datenbanken unbekannt. Der Begriff der Domne existiertzwar auf mehreren Datenbanksystemen, wird aber im ABAP Dictionary andersverwendet).

    Die Technischen Einstellungen und deren Auswirkungen im RDBMS werdenebenfalls diskutiert. Die Teilnehmer sollen einen Einblick in die Definition vonTabellen, Strukturen, Datenelemente und Domnen erhalten.

    Unternehmensszenario

    Sie sollen fr Ihr Unternehmen Informationseinheiten sog. Entitten in derDatenbank abbilden.

    50 2004 SAP AG. Alle Rechte vorbehalten. 2004/Q4

  • 5/27/2018 BC430_DE_ABAP Dictionary.pdf

    63/291

    BC430 Lektion: Tabellen im ABAP Dictionary

    Tabellen

    Abbildung 16: Tabelle - Feld

    Der Primrschlssel ist eine Kombination von Spalten (Spalte = Feld), dieeindeutig eine Reihe (entspricht einem Eintrag) identifiziert.

    Die Struktur der Objekte der Anwendungsentwicklung werden in Tabellen auf derunterliegenden relationalen Datenbank abgebildet.

    Die Attribute dieser Objekte entsprechen Feldern der Tabelle.

    Eine Tabelle besteht aus Spalten (Felder) und Zeilen (Eintrgen). Sie hateinen Namen und verschiedene allgemeine Eigenschaften wie z.B. dieAuslieferungsklasse oder die Pflegeerlaubnis.

    Ein Feld hat einen eindeutigen Namen und Eigenschaften, z.B. kann esSchlsselfeld sein.

    Eine Tabelle hat ein oder mehrere Schlsselfelder, den sog. Primrschlssel.

    Die Werte dieser Schlsselfelder identifizieren einen Eintrag der Tabelle eindeutig.

    Fr Felder, die Whrungsangaben (Datentyp CURR) bzw. Mengenangaben(Datentyp QUAN) enthalten, mu eine Referenztabelle angegeben werden.Diese mu ein Feld (Referenzfeld) mit dem Whrungsschlsselformat (DatentypCUKY) bzw. dem Format fr Mengeneinheiten (Datentyp UNIT) enthalten.Die Zuordnung des Feldes zum Referenzfeld wird erst zur Laufzeit durch einProgramm hergestellt.

    2004/Q4 2004 SAP AG. Alle Rechte vorbehalten. 51

  • 5/27/2018 BC430_DE_ABAP Dictionary.pdf

    64/291

    Kapitel 2: Datenobjekte im ABAP Dictionary BC430

    Abbildung 17: Grundobjekte des ABAP Dictionary

    Die Grundobjekte zur Datendefinition im ABAP Dictionary sind Tabelle,Datenelement und Domne. Die Domne dient zur technischen (z.B.Feldtyp, Feldlnge) und das Datenelement zur semantischen Definition (z.B.Kurzbeschreibung) eines Tabellenfeldes.

    EineDomnebeschreibt den Wertebereich eines Feldes durch Datentypund Feldlnge. Der Wertebereich kann durch die Angabe von Festwerteneingeschrnkt werden.

    EinDatenelementbeschreibt die Bedeutung einer Domne in einem bestimmtenbetriebswirtschaftlichen Zusammenhang. Das Datenelement enthlt hauptschlichdie Feldhilfe (F1-Doku) und die Feldbezeichner im Dynpro.

    Ein Feld ist kein unabhngiges Objekt; es hngt von der Tabelle ab. Ein Feld kannnur innerhalb einer Tabelle gepflegt werden.

    Zu einem Feld knnen Datentyp und Anzahl der Stellen direkt eingeben werden.In diesem Fall wird kein Datenelement bentigt. Stattdessen werden durch dieAngabe einesdirekten TypsDatentyp und Anzahl der Stellen festgelegt.

    Die Datentypeigenschaften eines Datenelements knnen auch durch die Angabe

    einesEingebauten Typs, wobei Datentyp und Anzahl der Stellen direkteingegeben werden, festgelegt werden.

    52 2004 SAP AG. Alle Rechte vorbehalten. 2004/Q4

  • 5/27/2018 BC430_DE_ABAP Dictionary.pdf

    65/291

    BC430 Lektion: Tabellen im ABAP Dictionary

    Abbildung 18: Zweistufiges Domnenkonzept: Beispiel

    Der Referent erlutert zunchst das Objekt Tabelle und den BegriffTabellenschlssel. Dann erklrt er die Felddefinition (Datenelement, Domne).

    Nur die Domne kann allein, d.h. ohne Verwendung anderer Objekte definiertwerden. Der Referent zeigt eine Demo zur Verdeutlichung .

    Wichtige Punkte:

    Aufruf einer Transaktion

    Aufruf der F1- und F4-Hilfe mit technischer Feldinformation

    Vorfhrung der Formatprfung mit Hilfes eines falschen Eintrags undVerwendung der F4-Hilfe

    Aufruf der in der Transaktion verwendeten Tabellendefinition

    Erluterung von Tabellen, Datenelement- und Domnendefinition anhandder Mustertransaktion (z.B. Kurzbezeichnung des Datenelements ist eineKomponente der F1-Hilfe des Bildschirmfelds)

    Whrend der Demo fragt der Referent die Teilnehmer: Ist es sinnvoll,dieselbe Domne zur Definition unterschiedlicher Datenelemente zuverwenden? Der Referent diskutiert die Antworten mit den Teilnehmern.

    In der Tabelle SPFLI ist der Flugplan hinterlegt. Die Tabellenfelder AIRPFROM

    (Startflughafen) und AIRPTO (Zielflughafen) haben die gleiche DomneS_AIRPID. Beide Felder verwenden die gleiche Domne, weil beide FelderFlughfen enthalten und damit die gleichen technischen Eigenschaften besitzen.Sie haben jedoch unterschiedliche semantische Bedeutung und verwendenunterschiedliche Datenelemente, um dies zu dokumentieren. Das FeldAIRPFROM verwendet das Datenelement S_FROMAIRP und das Feld AIRPTOverwendet das Datenelement S_TOAIRP.

    2004/Q4 2004 SAP AG. Alle Rechte vorbehalten. 53

  • 5/27/2018 BC430_DE_ABAP Dictionary.pdf

    66/291

    Kapitel 2: Datenobjekte im ABAP Dictionary BC430

    Abbildung 19: Transparente Tabellen und Strukturen

    berblick ber die Beziehungen zwischen den Tabellen im ABAP Dictionary undden entsprechenden Tabellen im Datenbanksystem

    Transparente Tabellen und Strukturen

    WebAs : Datenbank (1:1)

    Daten knnen permanent in transparenten Tabellen abgelegt werden.Wie Tabellenwerden Strukturen definiert und aktiviert. Allerdings werden Datenbanktabellennicht aus Strukturen erzeugt.

    Verwendung von Strukturen:

    Typdefinition in Programmen

    Include-Strukturen

    Der Referent erlutert die Beziehungen zu den Datenbankobjekten und zeigt eineDemo. Folgende Punkte sind wichtig:

    Aufruf des Datenbank-Utility (Menoption: Hilfsmittel)

    Aufruf der Datenbankobjektprfung im DB Utility

    Erluterung der Tabellenfelder des DB-Objekts

    Ziehen Sie einen Vergleich zur Struktur.

    54 2004 SAP AG. Alle Rechte vorbehalten. 2004/Q4

  • 5/27/2018 BC430_DE_ABAP Dictionary.pdf

    67/291

    BC430 Lektion: Tabellen im ABAP Dictionary

    Demo 1: Tabelle anlegen

    Grundgedanke:

    In dieser Demo legen Sie Tabelle ZCARGO zur Eingabe aller Frachtauftrge an.

    Tabellenstruktur ZCARGO (Vorlage: SCARGO)

    Feldname Schlssel Datenelement Typ,Lnge Bedeutung

    CLIENT X S_MANDT Mandant

    CARRID X S_CARR_ID Fluggesell-schaft

    CONNID X S_CONN_ID Verbindung

    FLDATE X S_DATE Flugdatum

    CARGO_ID XZCARGO_ID

    CHAR,10

    Frachtnummer

    CARGO_DESC X SCARGO_DESC Frachtbe-schreibung

    CUST_NO SCUSTO-MER_NUM

    Kundennum-mer

    CUST_NAME S_CUSTNAME Kundenname

    CARGO-TYPE ZCARGO_TYPE

    CHAR,1

    Frachtart

    VALUE SCARGO_VA-LUE

    Frachtwert

    CURRENCY CURCY Whrung

    Bemerkung:

    Die fett gedruckten Datenelemente mssen mit einer geeigneten Domne angelegtwerden. Erlutern Sie ausfhrlich das Bezugsfeld und den Bezugswert fr das

    Feld VALUE. Das Datenelement ZCARGO_ID muss dokumentiert werden.Nachdem Sie die Tabelle angelegt haben, pflegen Sie einige Datenstze mit SE16.Zeigen Sie die F1-Hilfe fr Feld VALUE an.

    Tipp:

    Einer der von Ihnen gepflegten Datenstze sollte den in der Demo zuFremdschlsseln definierten Prfungen widersprechen. So knnen Sie zugleichzeigen, dass das Anlegen eines Fremdschlssels nicht automatisch zu einerBereinigung fehlerhafter Datenstze fhrt.

    2004/Q4 2004 SAP AG. Alle Rechte vorbehalten. 55

  • 5/27/2018 BC430_DE_ABAP Dictionary.pdf

    68/291

    Kapitel 2: Datenobjekte im ABAP Dictionary BC430

    Eine transparente Tabelle wird beim Aktivieren im ABAP Dictionaryautomatisch auf der Datenbank angelegt. Dabei wird die datenbankunabhngige

    Beschreibung der Tabelle im ABAP Dictionary in die Sprache des verwendetenDatenbank-Systems bersetzt.

    Die Datenbanktabelle hat den gleichen Namen wie die Tabelle im ABAPDictionary. Auch die Felder haben auf der Datenbank und im ABAP Dictionarydie gleichen Namen. Die Datentypen im ABAP Dictionary werden in diekorrespondierenden Datentypen des Datenbanksystems berfhrt.

    Die Feldreihenfolge im ABAP Dictionary kann von der Feldreihenfolge auf derDatenbank abweichen. Dies erlaubt das Einfgen neuer Felder, ohne da dieTabelle umgesetzt werden mu. Wenn Sie ein neues Feld hinzufgen, passen Siedie Reihenfolge der Felder an, indem Sie den Datenbankkatalog ndern (ALTERTABLE). Das neue Feld wird zur Datenbanktabelle hinzugefgt.

    Auf eine transparente Tabelle kann von ABAP Programmen auf zwei Artenzugegriffen werden. Zum einen kann mittels OPEN SQL (oder EXEC SQL) aufdie in der Tabelle enthaltenen Daten zugegriffen werden. Zum anderen definiertdie Tabelle einen strukturierten Typ, auf den bei der Definition von Variablen(oder komplexeren Typen) zugegriffen werden kann.

    Es ist auch mglich, im ABAP Dictionary einen strukturierten Typ anzulegen,der keine Entsprechung auf der Datenbank besitzt. Solche Typen werden alsStrukturen bezeichnet. Strukturen knnen ebenfalls zur Typisierung vonVariablen benutzt werden.

    Abbildung 20: Include-Strukturen

    56 2004 SAP AG. Alle Rechte vorbehalten. 2004/Q4

  • 5/27/2018 BC430_DE_ABAP Dictionary.pdf

    69/291

    BC430 Lektion: Tabellen im ABAP Dictionary

    Der Referent erlutert das Anlegen von Unterstrukturen im ABAP Dictionary.

    Legen Sie Unterstrukturen als Strukturen mit SE11 an und binden Sie sie dannnach Bedarf in Tabellen ein.

    Zustzlich sollte der Referent deutlich machen, dass das Einfgen vonUnterstrukturen in SAP-Tabellen als