Einzelnen Beitrag anzeigen

-=ZGD=-

Registriert seit: 25. Apr 2006
Ort: Bad Aibling
105 Beiträge
 
Delphi 10.1 Berlin Professional
 
#8

AW: Joblist - Aufgabenplaner

  Alt 19. Sep 2014, 10:26
Apropos doppelter Code.
Zitat:
Delphi-Quellcode:
if aClosedOnes then
begin
  SQLiteQuery1.ParamByName('flag').value := 0;
end
else
begin
  SQLiteQuery1.ParamByName('flag').value := 1;
end;
Das ist ja wie ein
Delphi-Quellcode:
if MyBoolean then
  Result := True
else
  Result := False;
In Delphi ist True als 1 definisert und False ist sowieso immer 0, darum ginge das hier.
SQLiteQuery1.ParamByName('flag').value := Ord(aClosedOnes);

Aber aus selbem Grund, warum ich ständig drarauf hinweise, daß man if MyBool = True then nicht machen sollte, da zwar die Konstante "True" = 1, aber der Zustand "True" <> 0 ist, wäre es so bestimmt sicherer,
SQLiteQuery1.ParamByName('flag').value := IfThen(aClosedOnes, 1, 0);
wenn man nicht sichestellen kann, was in der Variable drin steckt.


bzw.
WHERE flag = :flag; / SQLiteQuery1.ParamByName('flag').AsInteger := IfThen(aClosedOnes, 1, 0);
WHERE (flag <> 0) = :flag; / SQLiteQuery1.ParamByName('flag').AsBoolean := aClosedOnes;
Da hast du schon recht.

Ich persönlich mach das immer so wie von mir beschrieben, da oft bei der Entscheidung neuer/aktualister Datensatz noch einige andere Anweisungen/Callbacks/etc. folgten.
Stefan Michalk
Wer Provokationen, Ironie, Sarkasmus oder Zynismus herauslesen kann soll sie ignorieren um den Inhalt meiner Beiträge ungetrübt erfassen zu können.
  Mit Zitat antworten Zitat