Forum: Programmieren allgemein
by erich.wanker,
13. Aug 2020
"Dein Problem ist also, dass du dich mehr mit Boolescher Algebra beschäftigen solltest"
OOOHHH jaaa.. puhh ... bin ein bisserl planlos wenn ich mir deine Variationen anschaue :oops: ...
ZB: OR -> Ich dachte immer - wenn ich was in klammern setze und eine der Fragestellungen (die in klammern gesetzt wurden) - trifft zu, dann ist das If -THEN erfüllt und es geht los..
und: ich versteh...
Forum: Programmieren allgemein
by erich.wanker,
13. Aug 2020
Der Fehler war:
Die ersten Zeilen ergaben - das anscheinen etwas im Feld "archiv" steht (obwohl es leer war) - und dadurch nichts (im else begin ..end Block) geschrieben wurde..
****** so funktionierts nicht ******
if (archiv <> '') or (archiv.isnull = false) then
begin
Forum: Programmieren allgemein
by erich.wanker,
13. Aug 2020
Hallo Leute.. vielen Dank :-)
"Was genau ist leer für dich?"
Mein Denkfehler: Ich dachte immer - ein Datenbankfeld, das nur erstellt wurde (und noch nie beschrieben wurde) ist "Null" und nicht ''..
Ich war es immer gewohnt bei "Select * from .. WHERE archiv = '' OR archiv IS NULL.." zu schreiben.. ich denke DA gibt es einen Unterschied?
Ich vermute ich mische da 2 Dinge zusammen .....
Forum: Programmieren allgemein
by erich.wanker,
13. Aug 2020
ich wollte nur ins Feld "archiv" schreiben, wenn noch nix drinnen steht ..
"wenn was drinnen steht - schreibe ich NICHT" .. funktioniert nicht
"wenn nix drinnen steht - schreibe ich " .. funktioniert
Forum: Programmieren allgemein
by erich.wanker,
13. Aug 2020
Hab jetzt endlich meinen Fehler in folgenden Zeilen ausgebessert - mir ist aber nicht ganz klar wieso der ERSTE Versuch NICHT funktioniert:
FAIL if (UniMainModule.d6.FieldByName('archiv').asstring <> '') OR
UniMainModule.d6.FieldByName('archiv').IsNull = false) then begin
Feld_leer:=false;
FUNZT if (UniMainModule.d6.FieldByName('archiv').asstring = '') OR...