ich verzweifele hier regelrecht! Ich hoffe, ihr könnt mir bei meinem Problemchen helfen :)
Ich versuche mich an meinen ersten ABAP-Schritte und nutze hierfür die SQ02 (Infoset).
Ich wollte als erstes lediglich einen Join zwischen den Tabellen EVER und FKKVKP machen. Dabei ein Field Catalog anlegen.
Das scheint bisher geklappt zu haben, was mir jedoch seit Stunden Kopfschmerzen bereitet: Ich kann einfach keine Select-Option für den "Vertrag" anlegen, die auch funktioniert. Ich bekomme es einfach nicht hin, dass ich die u.s. "where VERTRAG IN VER-low" hinbekomme. "VER" ist ein custom Select Options aus der SQ02. Damit hat es auch nicht geklappt. Genauso wenig wie mit SP$00003 oder SP$00004... oder SP$00003-low...
Fehlermeldungen lauten: "LOW" ist keine interne Tabelle (bei VER-low) oder "Wenn neue OpenSQL Syntax verwendet wird, muss diese auch durchgängig verwendet werden. Dazu gehört das Escaping der Hostvariablen mittels @." (bei SP$00003)...
Folgendes habe ich in "DATA" eingefügt:
TYPE-POOLS: slis.
TABLES: fkkvkp.
TYPES: BEGIN OF ty_data,
vk1 TYPE FKKVKP-VKONT,
vt1 TYPE EVER-VERTRAG,
END OF ty_data.
DATA: wa_data TYPE ty_data,
i_data TYPE STANDARD TABLE OF ty_data INITIAL SIZE 0,
i_fldcat TYPE slis_t_fieldcat_alv,
wa_fldcat TYPE slis_fieldcat_alv.
----
in "INITIALIZATION"
selection-screen begin of block qsel
with frame title text-s02.
select-options SP$00003 for EVER-VERTRAG memory id VTG.
select-options SP$00004 for wa_data-vt1.
selection-screen end of block qsel.
----
in START-OF-SELECTION:
* Retrieve data from tables SFLIGHT and SCARR
SELECT a~VERTRAG,
b~VKONT
FROM ( EVER as a
inner join FKKVKP as b
on a~VKONTO = b~VKONT )
where VERTRAG IN VER-low
INTO TABLE @i_data.
CLEAR: wa_data.
Ich denke, ich bin aber selbst auf die Lösung gekommen. Nachdem ich in der SQ02 ein Selektionsfeld angelegt habe (namens VE), konnte ich mich nun in der Select-Bedingung darauf beziehen. Mein Problem war nur bisher, ich habe das "@" vergessen:
FROM ( EVER as a
inner join FKKVKP as b
on a~VKONTO = b~VKONT )
where VERTRAG IN @VE