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 9 Mit Daten in einer Datenbanktabelle arbeiten
Pfeil 9.1 Berechtigungskonzept
Pfeil 9.2 Sperrkonzept
Pfeil 9.3 Open-SQL-Anweisungen
Pfeil 9.3.1 Neuen Datensatz anlegen
Pfeil 9.3.2 Bestehenden Datensatz ändern
Pfeil 9.3.3 Datensatz modifizieren
Pfeil 9.3.4 Datensatz löschen
Pfeil 9.4 Komfortable Alternative: Persistente Klassen
Pfeil 9.5 Codebeispiel zu INSERT
Pfeil 9.6 Codebeispiel zu UPDATE
Pfeil 9.7 Codebeispiel zu MODIFY
Pfeil 9.8 Codebeispiel zu DELETE
 
Zum Seitenanfang

9.6    Codebeispiel zu UPDATE Zur vorigen ÜberschriftZur nächsten Überschrift

Als Nächstes verwenden wir das Kommando UPDATE im Beispielprogramm Z_TEILNEHMERLISTE09_UPDATE in Listing 9.2.

 1  *&---------------------------------------------*
2 *& Report Z_TEILNEHMERLISTE09_UPDATE *
3 *& *
4 *&---------------------------------------------*
5 *& *
6 *& *
7 *&---------------------------------------------*
8
9 REPORT z_teilnehmerliste09_update.
10
11 * Korrekt: Workarea deklarieren
12 DATA: wa_zteilnehmer02 TYPE zteilnehmer02.
13
14 * Veraltet: Tabellenarbeitsbereich deklarieren
15 TABLES zteilnehmer02.
16
17 * Zeichenketten deklarieren
18 DATA: tnr TYPE zteilnehmer02-tnummer.
19
20 * Tabellenzeilen vor der Veränderung der Tabelle
21 SELECT * FROM zteilnehmer02 INTO wa_zteilnehmer02
22 ORDER BY PRIMARY KEY.
23 WRITE: / wa_zteilnehmer02-tnummer,
24 wa_zteilnehmer02-tname,
25 wa_zteilnehmer02-tgeburtsdatum,
26 wa_zteilnehmer02-tgeschlecht,
27 wa_zteilnehmer02-tkurspreis,
28 wa_zteilnehmer02-twaehrung,
29 wa_zteilnehmer02-zzkfztyp,
30 wa_zteilnehmer02-zzkurstitel.
31 ENDSELECT.
32 tnr = wa_zteilnehmer02-tnummer.
33 SKIP.
34
35 * Datensatz ändern aus Workarea
36 tnr = tnr - 2.
37 CLEAR wa_zteilnehmer02.
38 wa_zteilnehmer02-tnummer = tnr.
39 wa_zteilnehmer02-tname = 'Maier'.
40 wa_zteilnehmer02-tgeburtsdatum = '19980808'.
41 wa_zteilnehmer02-tgeschlecht = 'M'.
42 wa_zteilnehmer02-tkurspreis = '888'.
43 wa_zteilnehmer02-twaehrung = 'EUR'.
44 wa_zteilnehmer02-zzkfztyp = 'KOMBI'.
45 wa_zteilnehmer02-zzkurstitel = 'Netzwerktechnik'.
46 UPDATE zteilnehmer02 FROM wa_zteilnehmer02.
47 WRITE: / 'Update aus Workarea
liefert sy-subrc', sy-subrc.
48
49 * Datensatz ändern aus Tabellenarbeitsbereich
50 tnr = tnr - 1.
51 zteilnehmer02-tnummer = tnr.
52 zteilnehmer02-tname = 'Schmidt'.
53 zteilnehmer02-tgeburtsdatum = '19990909'.
54 zteilnehmer02-tgeschlecht = 'M'.
55 zteilnehmer02-tkurspreis = '999'.
56 zteilnehmer02-twaehrung = 'EUR'.
57 zteilnehmer02-zzkfztyp = 'KOMBI'.
58 zteilnehmer02-zzkurstitel = 'Netzwerktechnik'.
59 UPDATE zteilnehmer02.
60 WRITE: / 'Update aus Tabellenarbeitsbereich liefert
sy-subrc', sy-subrc.
61
62 * Tabelleninhalt nach der Veränderung
63 SELECT * FROM zteilnehmer02 INTO wa_zteilnehmer02
64 ORDER BY PRIMARY KEY.
65 WRITE: / wa_zteilnehmer02-tnummer,
66 wa_zteilnehmer02-tname,
67 wa_zteilnehmer02-tgeburtsdatum,
68 wa_zteilnehmer02-tgeschlecht,
69 wa_zteilnehmer02-tkurspreis,
70 wa_zteilnehmer02-twaehrung,
71 wa_zteilnehmer02-zzkfztyp,
72 wa_zteilnehmer02-zzkurstitel.
73 ENDSELECT.

Listing 9.2    Report Z_TEILNEHMERLISTE09_UPDATE

Anmerkungen zum Quellcode

Die Deklaration der Workarea bzw. des Tabellenarbeitsbereichs erfolgt analog zu Listing 9.1. Im Anschluss wird der Inhalt einiger Tabellenzeilen wie im Folgenden beschrieben aktualisiert.

Zeile 21 bis 31

Aus Vergleichsgründen werden alle Sätze der Tabelle vor dem Ändern in der Liste ausgegeben.

Zeile 32

Die zuletzt gelesene, höchste Teilnehmernummer wird in das Feld TNR übertragen; im Beispiel ist es der Wert 8.

Zeile 36

Der Wert für die Teilnehmernummer wird um 2 vermindert, d. h. von 8 auf 6.

Zeile 37

Da im Beispiel die Änderung des sechsten Satzes der Tabelle über den Tabellenarbeitsbereich erfolgen soll, muss die Workarea initialisiert werden.

Zeile 38 bis 45

Die Felder des Satzes werden verändert: Die Teilnehmerin wird ausgetauscht, der Name, das Geburtsdatum, das Geschlecht und der Kurspreis werden neu gesetzt.

Zeile 46 und 47

Das UPDATE des Satzes mit dem entsprechenden Schlüssel auf der Datenbanktabelle erfolgt mit den Werten der Workarea. Sicherheitshalber wird auch hier der Wert des Returncodes in der Liste ausgegeben.

Zeile 50

Die Teilnehmernummer wird für den Wert des Schlüsselfeldes neu festgelegt.

Zeile 51 bis 58

Der Satz wird im Tabellenarbeitsbereich aufgebaut; verändert wird das Geburtsdatum.

Zeile 59 und 60

Die Aktualisierung des Satzes erfolgt mit den Werten des Tabellenarbeitsbereichs. Der Returncode über das Gelingen oder das Misslingen der Änderung wird zur Kontrolle ebenfalls in der Liste ausgegeben.

Zeile 63 bis 73

Zum Vergleich werden alle Sätze der Tabelle noch einmal in die Liste geschrieben. Bei der SELECT-Anweisung verwenden wir wieder die Workarea anstelle des Tabellenarbeitsbereichs.

Ausgabe des Quellcodes

Die Anzahl der Sätze in der Tabelle ist gleich geblieben; zwei Sätze wurden verändert. Beim dritten Satz wurde der alte Inhalt durch Herrn Maier mit den entsprechenden Daten ersetzt, und im zweiten Satz hat sich u. a. das Geburtsdatum geändert (siehe Abbildung 9.2).

Listbild zum UPDATE-Beispiel

Abbildung 9.2    Listbild zum UPDATE-Beispiel

 


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