Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

Otto-von-Guericke-Universität Magdeburg Gamal Kassem 1 Tabellenzeile mit READ lesen READ TABLE itab INDEX idx READ TABLE itab WITH KEY comp1 = f1.... Compn.

Ähnliche Präsentationen


Präsentation zum Thema: "Otto-von-Guericke-Universität Magdeburg Gamal Kassem 1 Tabellenzeile mit READ lesen READ TABLE itab INDEX idx READ TABLE itab WITH KEY comp1 = f1.... Compn."—  Präsentation transkript:

1 Otto-von-Guericke-Universität Magdeburg Gamal Kassem 1 Tabellenzeile mit READ lesen READ TABLE itab INDEX idx READ TABLE itab WITH KEY comp1 = f1.... Compn = fn

2 Otto-von-Guericke-Universität Magdeburg Gamal Kassem 2 Beispiel PARAMETERS: ps_name LIKE zkunden-name LOWER CASE, ps_vname LIKE zkunden-vorname LOWER CASE. DATA: it_kunden LIKE TABLE OF zkunden, wa_kunden LIKE zkunden. START-OF-SELECTION. SELECT * FROM zkunden INTO TABLE it_kunden. READ TABLE it_kunden INTO wa_kunden WITH KEY name = ps_name vorname = ps_vname. IF sy-subrc <> 0. WRITE ' keine Treffer'. ENDIF. WRITE:/ wa_kunden-wohnort.

3 Otto-von-Guericke-Universität Magdeburg Gamal Kassem 3 Tabellenzeilen mit MODIFY ändern MODIFY FROM INDEX. MODIFY TABLE FROM. MODIFY FROM TRANSPORTING... WHERE.

4 Otto-von-Guericke-Universität Magdeburg Gamal Kassem 4 Beispiel DATA: BEGIN OF line,col1 TYPE i, col2 TYPE i, END OF line. DATA itab LIKE TABLE OF line. DO 4 TIMES. line-col1 = sy-index. line-col2 = sy-index * 2. APPEND line TO itab. ENDDO. line-col1 = 2. line-col2 = 100. MODIFY itab FROM line TRANSPORTING col2 WHERE ( col1 = 3 ). LOOP AT itab INTO line. WRITE: / line-col1, line-col2. ENDLOOP.

5 Otto-von-Guericke-Universität Magdeburg Gamal Kassem 5 MOVE-CORRESPONDING Weist Werte zwischen Strukturen komponentenweise zu. Syntax: MOVE-CORRESPONDING TO. Der Inhalt der Komponenten der Struktur wird den namensgleichen Komponenten der Struktur struc2> zugewiesen

6 Otto-von-Guericke-Universität Magdeburg Gamal Kassem 6 INNER JOIN, ALIAS... FROM [AS ] INNER JOIN [AS ] ON | = |

7 Otto-von-Guericke-Universität Magdeburg Gamal Kassem 7 Datensätze in Datenbanktabelle einfügen INSERT INTO VALUES. INSERT FROM. INSERT FROM TABLE [ACCEPTING DUPLICATE KEYS]. Es werden eine Zeile aus dem Arbeitsbereich bzw. mehrere Zeilen aus der internen Tabelle in die Datenbanktabelle eingefügt. Der Zusatz ACCEPTING DUPLICATE KEYS verhindert einen Laufzeitfehler bei doppelten Primärschlüsseln und verwirft doppelte Einträge lediglich

8 Otto-von-Guericke-Universität Magdeburg Gamal Kassem 8 Beispiel PARAMETERS: ps_name LIKE zkunden-name LOWER CASE, ps_vname LIKE zkunden-vorname LOWER CASE, ps_wort LIKE zkunden-wohnort LOWER CASE, ps_kdnr LIKE zkunden-kundennr LOWER CASE. DATA: wa_kunden LIKE zkunden, START-OF-SELECTION. wa_kunden-kundennr = ps_kdnr. wa_kunden-name = ps_name. wa_kunden-vorname = ps_vname. wa_kunden-wohnort = ps_wort. INSERT INTO zkunden000 VALUES wa_kunden. IF sy-subrc NE 0. ROLLBACK WORK. WRITE: / 'Fehler beim INSERT in die Tabelle ZKUNDEN000!'. EXIT. ENDIF. WRITE: / 'Neuer Kunde mit Nr:', wa_kunden-kundennr.

9 Otto-von-Guericke-Universität Magdeburg Gamal Kassem 9 Datensätze in Datenbanktabelle ändern UPDATE SET = [WHERE ]. Der Zusatz WHERE bestimmt die zu ändernden Zeilen. Ohne den Zusatz WHERE werden alle Zeilen geändert. UPDATE FROM. UPDATE FROM TABLE. Es wird die Zeile mit dem Inhalt von überschrieben, die den gleichen Primärschlüssel hat, wie der Arbeitsbereich, bzw. es werden alle Zeilen mit einer Zeile der internen Tabelle überschrieben, die den gleichen Primärschlüssel wie diese Zeilen haben. Der Arbeitsbereich bzw. die Zeilen von müssen mindestens die gleiche Länge und die gleiche Ausrichtung wie die Zeilen der Datenbanktabelle haben.

10 Otto-von-Guericke-Universität Magdeburg Gamal Kassem 10 Beispiel PARAMETERS: ps_name LIKE zkunden-name LOWER CASE, ps_vname LIKE zkunden-vorname LOWER CASE, ps_wort LIKE zkunden-wohnort LOWER CASE. START-OF-SELECTION. UPDATE zkunden000 set wohnort = ps_wort where name = ps_name and vorname = ps_vname. IF sy-subrc NE 0. ROLLBACK WORK. WRITE: / 'Fehler beim UPDATE der Tabelle ZKUNDEN000!'. EXIT. ENDIF. COMMIT WORK. SKIP. WRITE: 'Wohnort des kunde:', ps_name, 'ist geändert worden'.

11 Otto-von-Guericke-Universität Magdeburg Gamal Kassem 11 Datensätze in Datenbanktabelle löschen DELETE FROM WHERE. Alle Zeilen der Datenbanktabelle, die den Bedingungen der WHERE-Klausel genügen, werden gelöscht. Syntax DELETE FROM. DELETE FROM TABLE. Es wird die Zeile gelöscht, die den gleichen Primärschlüssel hat, wie der Arbeitsbereich, bzw. es werden alle Zeilen aus der Datenbanktabelle gelöscht, die den gleichen Primärschlüssel haben, wie eine der Zeilen der internen Tabelle. Der Arbeitsbereich bzw. die Zeilen von müssen mindestens die gleiche Länge und die gleiche Ausrichtung wie der Primärschlüssel der Datenbanktabelle haben.

12 Otto-von-Guericke-Universität Magdeburg Gamal Kassem 12 Übung1 Erstellen Sie ZDEPOTmax_nn, der für jede Wertpapierkennnummer WKN das Depot mit der größten Anzahl dieser Aktien ermittelt und ausgibt (s. Abbildung)

13 Otto-von-Guericke-Universität Magdeburg Gamal Kassem 13 Übung2 Erstellen Sie mit dem Report Zkundenwpapier_nn eine Liste der Depotposten von Kunden, deren Name und Vorname als Selektionsparameter eingelesen werden (s. Abbildung). Auf die Liste sollen folgende Felder erscheinen: Kundenname Kundenvorname Wertpapiernummer Anzahl der Wertpapiere

14 Otto-von-Guericke-Universität Magdeburg Gamal Kassem 14 Übung2

15 Otto-von-Guericke-Universität Magdeburg Gamal Kassem 15 Übung3 Programmieren Sie Reports: zdelete_nn, zinsert_nn Und zupdate_nn zum löschen, einfügen und ändern von Kundendaten. Wenden Sie Selektionsbilder an um diese Aufgabe zu erfüllen. Beim Ändern der Kundendaten sollen nur Wohnort des Kunden geändert werden. Ihre Tabelle Zkundennn soll von den Reports genutzt werden.


Herunterladen ppt "Otto-von-Guericke-Universität Magdeburg Gamal Kassem 1 Tabellenzeile mit READ lesen READ TABLE itab INDEX idx READ TABLE itab WITH KEY comp1 = f1.... Compn."

Ähnliche Präsentationen


Google-Anzeigen