Nein brucht keine zusätzliche if-Entscheidung. War mein Fehler. Die zweite Zuweisung an xWhere ist nicht korrekt
Wie es jetzt ist:
Code:
......
end
else
if xStr <> '' then
begin
if xWhere <> '' then
xWhere := xWhere +' AND Titel LIKE "%'+ xWord + '%"'
else
xWhere := ' Titel LIKE "%'+ xWord + '%"';
xStr := '';
end;
end;
if xWhere <> '' then
begin
....
Wie es aussehen sollte:
Code:
......
end
else
if xStr <> '' then
begin
if xWhere <> '' then
xWhere := xWhere +' AND Titel LIKE "%'+ xStr + '%"'
else
xWhere := ' Titel LIKE "%'+ xStr + '%"';
xStr := '';
end;
end;
if xWhere <> '' then
begin
....
An Stelle von xWord muss natürlich xStr stehen. xWord ist ja in Falle, dass nur ein Wort eingegeben wurde leer!
Übrigens, ich empfehle, dass Du bei der Einrückung darauf achtest, den Code immer um 2 Stellen einzurücken. Ist bei grösseren Programmen sehr hilfreich.
Beispiel:
Code:
procedure ......
var
xVars....
begin
if
begin
end
else if ..
begin
while ...
begin
end;
end;
end;
So kannst Du mit dem Cursor immer vom begin zu end fahren und weisst sofort, was zusammen gehört.
Gruss
Xaver