Mit Dynamischen SQL am besten.
Wenn du mit Parameter arbeiten möchtest - welches die sauberere Variante ist sieht es dann so aus:Code:vSQL = 'Select .... From ....'; // ... hier dann dein Statment entsprechend zusammenbasteln vSQL = %Trim (vSql) + 'Where Feld1 = ''' + %Trim (Feld1) + ''''; Exec Sql Prepare Stm1 From :vSql; Exec Sql Declare c1 Cursor For Stm1; Exec Sql Open c1;
Oder:Code:vSQL = 'Select .... From ....'; // ... hier dann dein Statment entsprechend zusammenbasteln vSQL = %Trim (vSql) + 'Where Feld1 = ?'; Exec Sql Prepare Stm1 From :vSql; Exec Sql Declare c1 Cursor For Stm1; Exec Sql Open c1 Using :Parm1, :Parm2;
Code:Select * From Tab1 Where (Sp1 = :Feld1 Or :Feld1 = '') And (Sp2 = :Feld2 Or :Feld2 = '')
![[NEWSboard IBMi Forum]](images/duke/nblogo.gif)



Mit Zitat antworten
Bookmarks