Hallo zusammen,
Ich habe folgendes Problem. Ich möchte einen SELECT auf die Tabelle MDKP machen, um Materialnummern herauszufinden, die eine Ausnahmemeldung besitzen. Die Tabelle MDKP ist dabei so aufgebaut, dass man pro Materialnummer eine Zeile hat und 8 verschiedene Spalten mit Ausnahmegruppen, die angehakt sein können. Eine Mehrfachbelegung ist auch möglich.
Nun habe ich den SELECT so geschrieben:
Code: Alles auswählen.
SELECT matnr
FROM mdkp
INTO TABLE @mt_data_matnr
FOR ALL ENTRIES IN @lt_data_matnr
WHERE matnr = @lt_data_matnr-matnr
AND plwrk = @mv_werks
AND ( slkz1 = @mv_slkz1
OR slkz2 = @mv_slkz2
OR slkz3 = @mv_slkz3
OR slkz4 = @mv_slkz4
OR slkz5 = @mv_slkz5
OR slkz6 = @mv_slkz6
OR slkz7 = @mv_slkz7
OR slkz8 = @mv_slkz8
).
Welche Ausnahmegruppen ich einschließen möchte, wähle ich über das Selektionsbild aus. Es kann also auch sein, dass ich gar nicht alle Ausnahmegruppen bei meinem SELECT mit einbeziehen möchte. Also liefert mir der SELECT zu viele Ergebnisse, da er auch Ausnahmegruppen mit einbezieht, die den Wert ' ' haben.
Gibt es eine Möglichkeit, wie ich einen SELECT schreiben kann, sodass er mir nur die Ausnahmegruppen als WHERE-Bedingung mit einbezieht, die auch gefüllt sind? Ansonsten müsste ich für jede Ausnahmegruppe einen eigenen SELECT schreiben, der nur ausgeführt wird, wenn das Feld im Selektionsbild angehakt ist und mir so meine Endtabelle zusammenbauen.. würde funktionieren, ist aber unschön..
Vielleicht hat jemand eine Idee :)