ich bin in sachen abap noch ein ABSOLUTER anfänger. ich hab mir bisher ein buch genommen und ein wenig quergelesen und ein hello world erstellt und mithilfe des buches eine datenbank abfrage getätigt.
ich habe folgende situatiion:
ich hab eine klasse erstellt welche daten aus der db lesen soll und einfach darstellen soll.
table spfli.
Start-of-selection
data: spfli_tab type table of spfli.
select * from spfli into table spfli_tab where carrid = 'aa'.
das ist alles.
jetzt würde ich das gerne darstellen was in der internen tabelle steht. also ne ganz einfache ausgabe auf dem bildschitm.
ich hab das mit read table versucht verstehe aber die syntax nicht. vieelicht findet sich ja jemand der mir helfen kann.
eine Möglichkeit statt des Arrayfetch wäre die Selectschleife, bei der du statt in eine Tabelle in eine Struktur liest.
Also
select * from spfli into wa_spfli where carrid = 'aa'.
WRITE: /, wa_spfli-CARRID.
ENDSELECT.
ist aber keine tolle Lösung!
Dann lieber die Lösung, die du hattest - mit ergänzung:
* Deklaration der Workarea
DATA: wa_spfli like line of spfli_tab.
* Schleife über die interne Tabelle
LOOP AT spfli_tab into wa_spfli.
WRITE: /, wa_spfli-CARRID.
endloop.
Ein Read ist hier nicht unbedingt erforderlich - das macht die Schleife schon. Du bekommst dann auch nur 1 Datensatz!
READ TABLE spfli_tab into wa_spfli WITH KEY CONNID = 'AA'.
super und danke für die schnelle antwort. es frustriert mich ein wenig mit abap zu programmieren. ich hab schon einige sprachen gemacht, aber diese scheint mir trotz sehr guter doku. umfangreich zu sein.
es hat funktioniert, dennoch hab ich noch 2 frage zur syntax:
* Deklaration der Workarea
DATA: wa_spfli like line of spfli_tab.
bedeutet das das ich eine variabel vom typ spfli_tab anlege? aber warum mach ich das den? muss ich das immer so machen?
* Schleife über die interne Tabelle
LOOP AT spfli_tab into wa_spfli.
WRITE: /, wa_spfli-CARRID.
endloop.
hier wird zeile für zeile ausgelsen und in wa_spfli gespeichert um dann auszuwerten?