AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Projekte Joblist - Aufgabenplaner
Thema durchsuchen
Ansicht
Themen-Optionen

Joblist - Aufgabenplaner

Ein Thema von AlexII · begonnen am 18. Sep 2014 · letzter Beitrag vom 19. Nov 2014
Antwort Antwort
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.399 Beiträge
 
Delphi 12 Athens
 
#1

AW: Joblist - Aufgabenplaner

  Alt 19. Sep 2014, 09:16
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;
Ein Therapeut entspricht 1024 Gigapeut.

Geändert von himitsu (19. Sep 2014 um 09:23 Uhr)
  Mit Zitat antworten Zitat
AlexII

Registriert seit: 28. Apr 2008
1.717 Beiträge
 
FreePascal / Lazarus
 
#2

AW: Joblist - Aufgabenplaner

  Alt 19. Sep 2014, 09:21
Gut, ich komme noch dazu... bin noch am Post #2

Habe das Problem so gelöst, aber die FK werden trotzdem gelöscht. Ich verstehe nicht wieso, ist doch alles richtig gemacht, zumindest beim DB Erstellen.

Delphi-Quellcode:
PRAGMA foreign_keys = ON;

CREATE TABLE [tbmain] (
  [id_tbmain] INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
  [title] TEXT NOT NULL,
  [start] DATETIME NOT NULL,
  [ende] DATETIME,
  [memo] TEXT,
  [flag] INTEGER NOT NULL,
  [fk_category_id] INTEGER,
  [fk_processowner_id] INTEGER,
  [fk_priority_id] INTEGER,
  [fk_status_id] INTEGER NOT NULL,
  [fk_place_id] INTEGER,
  FOREIGN KEY ([fk_category_id]) REFERENCES [tbcategory]([id_tbcategory]) ON DELETE RESTRICT,
  FOREIGN KEY ([fk_processowner_id]) REFERENCES [tbprocessowner]([id_tbprocessowner]) ON DELETE RESTRICT,
  FOREIGN KEY ([fk_priority_id]) REFERENCES [tbpriority]([id_tbpriority]) ON DELETE RESTRICT,
  FOREIGN KEY ([fk_status_id]) REFERENCES [tbstatus]([id_tbstatus]) ON DELETE RESTRICT,
  FOREIGN KEY ([fk_place_id]) REFERENCES [tbplace]([id_tbplace]) ON DELETE RESTRICT)
Bin Hobbyprogrammierer! Meine Fragen beziehen sich meistens auf Lazarus!
  Mit Zitat antworten Zitat
-=ZGD=-

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

AW: Joblist - Aufgabenplaner

  Alt 19. Sep 2014, 09: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
-=ZGD=-

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

AW: Joblist - Aufgabenplaner

  Alt 19. Sep 2014, 09:29
Da fällt mir ein...war True in Delphi nicht -1 - irgendwann mal?
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
AlexII

Registriert seit: 28. Apr 2008
1.717 Beiträge
 
FreePascal / Lazarus
 
#5

AW: Joblist - Aufgabenplaner

  Alt 19. Sep 2014, 14:52
Habe den Fehler aus Post #2 beseitigt... man war das eine Quälerei... Aber es läuft jetzt. Jetzt sind die nächsten Tipps dran.
Bin Hobbyprogrammierer! Meine Fragen beziehen sich meistens auf Lazarus!
  Mit Zitat antworten Zitat
Benutzerbild von freak4fun
freak4fun

Registriert seit: 22. Sep 2004
Ort: Hannover
1.807 Beiträge
 
Delphi 10.2 Tokyo Starter
 
#6

AW: Joblist - Aufgabenplaner

  Alt 19. Sep 2014, 18:28
Habe den Fehler aus Post #2 beseitigt... man war das eine Quälerei... Aber es läuft jetzt. Jetzt sind die nächsten Tipps dran.
Super, weiter so!
Christian
IT: Schließen Sie bitte das Fenster. User: Die Tür auch?
i++; // zaehler i um 1 erhoehen
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 09:12 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz