Anfang des InhaltsbereichsDaten beim Lesen aufbereiten Dokument im Navigationsbaum lokalisieren

Eine Methode der Datenaufbereitung besteht darin, die entsprechenden Zusätze der SELECT-Anweisung zu verwenden. Bei dieser Methode der Aufbereitung müssen sämtliche Datenbankzugriffe selbst programmiert werden. Außerdem müßte noch ein Selektionsbild programmiert werden, das es dem Benutzer erlaubt, die Menge der gelesenen Daten einzuschränken. Schließlich ist die gezeigte Methode der geschachtelten SELECT-Schleifen äußerst unperformant. Es empfiehlt sich, die Daten blockweise in interne Tabellen oder Extrakte zu stellen und nachträglich zu bearbeiten.

Beispiel

REPORT demo_data_process_read.

DATA: sum TYPE i, cnt TYPE i,
      wa_spfli TYPE spfli,
      wa_sflight TYPE sflight,
      wa_sbook TYPE sbook.

SELECT * FROM spfli INTO wa_spfli
                    ORDER BY cityfrom cityto connid.

  SKIP.
  WRITE: / wa_spfli-carrid,
           wa_spfli-connid,
           'from', (15) wa_spfli-cityfrom,
           'to',   (15) wa_spfli-cityto.
  ULINE.

  SELECT * FROM sflight INTO wa_sflight
                        WHERE carrid = wa_spfli-carrid
                          AND connid = wa_spfli-connid
                        ORDER BY fldate.

    SKIP.
    WRITE: / 'Date:', wa_sflight-fldate.
    WRITE: 20 'Book-ID', 40 'Smoker', 50 'Class'.
    ULINE.

    sum = 0.
    cnt = 0.
    SELECT * FROM sbook INTO wa_sbook
                        WHERE carrid = wa_sflight-carrid
                          AND connid = wa_sflight-connid
                          AND fldate = wa_sflight-fldate
                        ORDER BY class smoker bookid.

      WRITE: / wa_sbook-bookid UNDER 'Book-ID',
               wa_sbook-smoker UNDER 'Smoker',
               wa_sbook-class  UNDER 'Class'.

      sum = sum + wa_sbook-luggweight.
      cnt = cnt + 1.

    ENDSELECT.

    ULINE.
    WRITE: 'Number of bookings:  ', (3) cnt,
         / 'Total luggage weight:', (3) sum, wa_sbook-wunit.

  ENDSELECT.

 

ENDSELECT.

Dieses Programm erzeugt die Liste in Beispiel für aufbereitete Daten. Es verwendet den Zusatz ORDER BY der SELECT-Anweisung für die Sortierung der Daten.

Ende des Inhaltsbereichs