Rheinwerk < openbook > SAP-Wissen aus erster Hand
SAP-Wissen aus erster Hand.
 
Inhaltsverzeichnis
Vorwort zur vierten Auflage
1 ABAP und die ersten Schritte im SAP-System
2 ABAP Dictionary
3 Programmieren im ABAP Editor
4 Felder und Berechnungen
5 Modifikation von Zeichenketten
6 Debugging von Programmen
7 Modifikation von transparenten Datenbanktabellen
8 Rechnen mit Datum und Zeit, Mengen und Währungen
9 Mit Daten in einer Datenbanktabelle arbeiten
10 Programmablaufsteuerung und logische Ausdrücke
11 Selektionsbildschirme
12 Interne Tabellen
13 Modularisierung von Programmen
14 Weiterführende Themen
A Icons auf einen Blick
B Abkürzungsverzeichnis
C Die Autoren
Stichwortverzeichnis

Download:
- Beispielprogramme, ca. 23 KB

Buch bestellen
Ihre Meinung?

Spacer
<< zurück
Einstieg in ABAP von Karl-Heinz Kühnhauser, Thorsten Franz
Buch: Einstieg in ABAP

Einstieg in ABAP
Pfeil 7 Modifikation von transparenten Datenbanktabellen
Pfeil 7.1 Datenbanktabelle kopieren
Pfeil 7.2 Nicht-Schlüsselfelder ergänzen
Pfeil 7.2.1 Festwerte in Domäne einpflegen
Pfeil 7.2.2 Besonderheiten bei Währungs- und Mengenfeldern
Pfeil 7.2.3 Fremdschlüssel pflegen
Pfeil 7.3 Tabellen erweitern
Pfeil 7.3.1 Append-Strukturen pflegen
Pfeil 7.3.2 Include-Struktur einpflegen
Pfeil 7.4 Schlüsselfelder von Tabellen manipulieren
Pfeil 7.5 Tabellenfelder löschen
Pfeil 7.6 Tabellen löschen

In diesem Kapitel lernen Sie die zahlreichen Funktionen der Tabellenpflegesicht näher kennen: Tabellen erweitern, Nicht-Schlüsselfelder und Schlüsselfelder pflegen, Felder hinzufügen und löschen u.v.m.

 
Zum Seitenanfang

7    Modifikation von transparenten Datenbanktabellen Zur vorigen ÜberschriftZur nächsten Überschrift

Modifikationen an Datenbanktabellen können unterschiedlicher Natur sein. In diesem Kapitel lernen Sie die verschiedenen Möglichkeiten kennen, wie Sie bei einer bestehenden Tabelle beispielsweise nachträglich Felder anhängen oder sie anderweitig verändern können.

Erinnern Sie sich an unsere transparente Datenbanktabelle aus Kapitel 2, »ABAP Dictionary«. Die bisher angelegte Tabelle besteht aus den Feldern für den Systemmandanten: Teilnehmernummer, Teilnehmername und Geburtsdatum des Teilnehmers. Schlüsselfelder sind die beiden Felder MANDANT und TNUMMER (siehe Abbildung 7.1).

Als Vorbereitung für die nächsten Schritte werden Sie die Tabelle modifizieren. Im simpelsten Fall werden zusätzliche Felder zu den bestehenden hinzugefügt. Bei Nicht-Schlüsselfeldern in kundeneigenen Tabellen ist diese Vorgehensweise relativ einfach. Aufwendiger ist die Ergänzung von SAP-Standardtabellen, die Sie nur durch Append-Strukturen (siehe Abschnitt 7.3.1, »Append-Strukturen pflegen«) erweitern dürfen, oder die Manipulation von Schlüsselfeldern.

Teilnehmertabelle mit vier Feldern

Abbildung 7.1    Teilnehmertabelle mit vier Feldern

Bei der Manipulation von Schlüsselfeldern muss die Tabelle in der Datenbank angepasst werden. Dabei hängt es u. a. vom Datenbanksystem ab, ob die Anpassung bedeutet, Tabellenfelder zu löschen und neu anzulegen, den Datenbankkatalog zu ändern oder die Tabelle umzusetzen. Eventuell sind aufwendige Reorganisationsarbeiten notwendig, und es besteht das Risiko des Datenverlustes.

[+]  Tabellenumsetzung

Bei Änderungen von Tabellenstrukturen will man meist die in der Tabelle enthaltenen Daten erhalten. In einigen Fällen bedient sich das SAP-System dazu eines Mechanismus, der Tabellenumsetzung. Dabei existieren die alte Tabelle (noch mit Daten) und die neue Tabelle (noch ohne Daten) für kurze Zeit parallel, und das System überträgt die Daten mittels des ABAP-Befehls MOVE-CORRESPONDING von der alten in die neue Tabelle.

Auch das Löschen von Feldern aus Tabellen ist nicht immer ganz einfach – insbesondere dann nicht, wenn bereits Daten in den zu löschenden Feldern eingetragen sind. Selbstverständlich können Sie Tabellen auch kopieren oder vollständig löschen.

 
Zum Seitenanfang

7.1    Datenbanktabelle kopieren Zur vorigen ÜberschriftZur nächsten Überschrift

Gleichgültig, ob Sie kundeneigene oder SAP-Standardtabellen bearbeiten: In beiden Fällen kann es ratsam sein, kein Risiko einzugehen und die Tabelle zunächst zu kopieren, anstatt Veränderungen am Original vorzunehmen. Beim Kopieren wird lediglich die Tabelle mit ihren Eigenschaften und Feldern – nur die Struktur, d. h. das leere Gerüst ohne Inhalt – reproduziert, die Daten bleiben jedoch an Ort und Stelle. So können Sie vor der Manipulation am Original erst einmal testen, ob das, was Sie sich vorstellen, auch wirklich funktioniert. Selbst wenn das Kopieren eine doppelte Datenhaltung bedeutet und damit redundante Daten erzeugt werden, die eigentlich vermieden werden sollten, gibt es doch immer wieder Anforderungen, die zumindest temporär das Kopieren ganzer Tabellenstrukturen sinnvoll erscheinen lassen.

Den Kopiervorgang starten Sie im Einstiegsbild des ABAP Dictionarys, das Sie über Transaktion SE11 oder SAP MenüWerkzeugeABAP WorkbenchEntwicklungDictionary erreichen. Hier geben Sie die zu kopierende Tabelle an, in unserem Beispiel »ZTEILNEHMER« (siehe Abbildung 7.2). Über den Kopieren-Button (inline image) leiten Sie den Kopiervorgang ein, und Ihnen wird ein Fenster angezeigt, in dem das System die Quelltabelle vorschlägt (siehe Abbildung 7.3).

Datenbanktabelle kopieren

Abbildung 7.2    Datenbanktabelle kopieren

Quelltabelle und Zieltabelle beim Kopiervorgang

Abbildung 7.3    Quelltabelle und Zieltabelle beim Kopiervorgang

Nach der Überprüfung der Quelltabelle geben Sie die Zieltabelle ein und drücken auf die (¢)-Taste. Im Folgebild möchte das System wieder von Ihnen wissen, zu welchem Paket, d. h. zu welcher Gruppe von Anwendungen Ihr Objekt gehören soll (siehe Abbildung 7.4).

Zieltabelle einem Paket zuordnen und speichern

Abbildung 7.4    Zieltabelle einem Paket zuordnen und speichern

[»]  Paketnamen

Statt des Begriffs Paket wird nach wie vor häufig auch der Begriff Entwicklungsklasse verwendet. In der Praxis wissen Sie natürlich, in welchem Arbeitsgebiet Sie tätig sind, beispielsweise in der Finanzbuchhaltung, und Sie wissen auch, wie die Pakete für kundenspezifische Anwendungen in der Finanzbuchhaltung heißen. Im Zweifel fragen Sie hier aber Ihren Systemadministrator nach den gängigen Namenskonventionen.

Da in unserem Lernbeispiel weiterhin alle Objekte als lokale Objekte gespeichert werden sollen, klicken Sie zum Sichern nur auf den Button Lokales Objekt und erhalten in der Statuszeile die Meldung, dass die Tabelle von ZTEILNEHMER nach ZTEILNEHMER02 kopiert wurde. Das System hat damit automatisch das Paket $TMP eingetragen.

Nach diesem Schritt landen Sie wieder im Startbild des ABAP Dictionarys, in dem nun die Zieltabelle zur weiteren Bearbeitung angezeigt wird (siehe Abbildung 7.5). Die kopierte Tabelle ist noch nicht aktiviert und damit noch nicht verwendbar. Sie müssen deshalb über den Button Ändern in das ABAP Dictionary wechseln, um die Tabelle zu pflegen.

Angezeigte Zieltabelle ändern

Abbildung 7.5    Angezeigte Zieltabelle ändern

Am Tabellenstatus neu der Zieltabelle sehen Sie die Bestätigung, dass die Tabelle noch nicht mit Daten gefüllt werden kann (siehe Abbildung 7.6). Sollen die Struktur der Tabelle und ihre Eigenschaften unverändert bleiben, klicken Sie bereits jetzt auf den Aktivieren-Button (inline image). Damit wird für die Tabelle ein Laufzeitobjekt generiert.

Tabellenstatus der Zieltabelle nach dem Kopieren

Abbildung 7.6    Tabellenstatus der Zieltabelle nach dem Kopieren

[»]  Aktivierungsprotokoll

Bei Bedarf können Sie sich auch das Aktivierungsprotokoll anzeigen lassen. Falls das System Warnungen bei der Aktivierung in das Protokoll schreibt, müssen Sie entscheiden, ob diese Warnungen negative Auswirkungen auf Ihre weitere Arbeit mit der Tabelle haben. Im Übrigen können Warnungen auch durch formale Prüfungen im System entstehen, die für den konkreten Fall aber unbedeutend sind und damit ignoriert werden können. Beispielsweise können Sie den Warnhinweis, dass die Erweiterungskategorie für die Tabelle oder Struktur fehlt, ignorieren.

Das Laufzeitobjekt enthält alle Informationen für den optimalen Zugriff von ABAP-Programmen und optimiert die Performance des Systems; erst danach können Sie Datensätze in die Tabelle schreiben. Nach der erfolgreichen Aktivierung erhalten Sie in der Statuszeile die Meldung »Objekt wurde aktiviert«.

Um nachzuprüfen, ob die Tabelle wirklich keine Datensätze beinhaltet, oder auch um schnell zu sehen, wie viele Datensätze in einer Tabelle enthalten sind, lassen Sie sich am besten anzeigen, wie viele Zeilen die Tabelle enthält. Hierzu navigieren Sie über HilfsmittelTabelleninhaltAnzeigen und gelangen in den Bildschirm des Data Browsers (siehe Abbildung 7.7).

Tabelleninhalt anzeigen

Abbildung 7.7    Tabelleninhalt anzeigen

Dort öffnen Sie über den Button Anzahl Einträge ein Fenster für die Anzahl der Tabelleneinträge und sehen, dass die Tabelle leer ist; die Datensätze der Quelltabelle wurden demnach tatsächlich nicht mit kopiert (siehe Abbildung 7.8). Über den Schließen-Button verlassen Sie das Fenster wieder. Vom Data Browser gelangen Sie mit dem Zurück-Button (inline image) wieder zum Pflegebildschirm der Tabelle im ABAP Dictionary.

Anzahl der Datensätze in einer Tabelle prüfen

Abbildung 7.8    Anzahl der Datensätze in einer Tabelle prüfen

Vom Bildschirm Dictionary: Tabelle ändern ausgehend, können Sie jetzt mit einem einfachen Pflegedialog Datensätze in die Zieltabelle eingeben, und zwar über HilfsmittelTabelleninhaltEinträge erfassen. Hiermit verzweigen Sie in den Bildschirm zur Erfassung von Datensätzen, in dem Sie nun einige sinnvolle Testdatensätze eingeben können. Empfehlenswert sind ca. drei bis fünf Datensätze, die sich auch hinsichtlich Nicht-Schlüsselfeld-Inhalten unterscheiden. Da wir uns bei der weiteren Arbeit immer wieder auf diese Datensätze und die Tabelle beziehen werden, sollten die Datensätze auch zur manuellen Kontrolle leicht identifizierbar sein.

[+]  Speichern nicht vergessen

Jeden Datensatz speichern Sie über den Sichern-Button (inline image). Nach dem Erfassen des letzten Datensatzes kehren Sie mit dem Zurück-Button (inline image) in den Bildschirm für die Tabellenpflege zurück.

 


Ihre Meinung?

Wie hat Ihnen das Openbook gefallen? Wir freuen uns immer über Ihre Rückmeldung. Schreiben Sie uns gerne Ihr Feedback als E-Mail an kommunikation@rheinwerk-verlag.de

<< zurück
 Zum Rheinwerk-Shop
Zum Rheinwerk-Shop: Einstieg in ABAP Einstieg in ABAP
Jetzt Buch bestellen

 Buchempfehlungen
Zum Rheinwerk-Shop: SAP – Der technische Einstieg
SAP – Der technische Einstieg


Zum Rheinwerk-Shop: ABAP Objects – Das umfassende Handbuch
ABAP Objects – Das umfassende Handbuch


Zum Rheinwerk-Shop: ABAP-Entwicklung für SAP S/4HANA
ABAP-Entwicklung für SAP S/4HANA


Zum Rheinwerk-Shop: Kundeneigene Erweiterungen mit ABAP
Kundeneigene Erweiterungen mit ABAP


Zum Rheinwerk-Shop: Schrödinger programmiert ABAP
Schrödinger programmiert ABAP


Zum Rheinwerk-Shop: Migration nach SAP S/4HANA
Migration nach SAP S/4HANA


Zum Rheinwerk-Shop: Design Thinking mit SAP
Design Thinking mit SAP


 Lieferung
Versandkostenfrei bestellen in Deutschland, Österreich und in die Schweiz
InfoInfo

 
 


Copyright © Rheinwerk Verlag GmbH 2020
Für Ihren privaten Gebrauch dürfen Sie die Online-Version natürlich ausdrucken. Ansonsten unterliegt das <openbook> denselben Bestimmungen, wie die gebundene Ausgabe: Das Werk einschließlich aller seiner Teile ist urheberrechtlich geschützt.
Alle Rechte vorbehalten einschließlich der Vervielfältigung, Übersetzung, Mikroverfilmung sowie Einspeicherung und Verarbeitung in elektronischen Systemen.

 
[Rheinwerk]

Rheinwerk Verlag GmbH, Rheinwerkallee 4, 53227 Bonn, Tel.: 0228.42150.0, Fax 0228.42150.77, service@rheinwerk-verlag.de

Cookie-Einstellungen ändern