Moin,
ich habe folgende Frage:
In einem Programm habe ich zunächst eine Variable lv_kofi, die mit einem von 20 möglichen Werten gefüllt ist.
Dann gibt es eine Methode, die ich mit dieser Variable als Importparameter aufrufe und (je nachdem) eine Variable mit abap_true oder abap_false zurück bekomme.
Soweit so gut.
Nun habe ich eine Datenbanktabelle mit sehr vielen (> 1 Mio.) Einträgen, aus denen ich nur die Zeilen auslesen möchte, in denen die Methode für den Wert eines Feldes abap_true zurückliefert.
Kann ich das direkt in der WHERE-Klausel machen? Also so etwa wie:
Code: Alles auswählen.
SELECT feld1, feld2
FROM db_table
WHERE z_class=>method(lv_kofi) EQ abap_true
INTO TABLE @DATA(lt_customer).
Hat jemand ne Idee, ob und wie das geht?
Falls nicht, wie mach ich das sonst? Es ist aus Performancegründen keine Alternative, erst alle Datensätze zu lesen und dann über einen Loop die Felder zu prüfen. Ich würde tatsächlich gern direkt nur die relevanten selektieren.
Vielen Dank!