Delphi-PRAXiS
Seite 1 von 3  1 23      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Datenbanken (https://www.delphipraxis.net/15-datenbanken/)
-   -   Uhrzeitabfrage in einer Spalte im CRDBGrid (https://www.delphipraxis.net/170234-uhrzeitabfrage-einer-spalte-im-crdbgrid.html)

Alterauge 6. Sep 2012 13:51

Datenbank: MySQL • Version: 5.5 • Zugriff über: MyConnection

Uhrzeitabfrage in einer Spalte im CRDBGrid
 
Hallo,
habe ein CRDBGrid mit der Spalte Zuordnung!
Befindet sich in der Spalte (Zuordnung) der Text 'Zeitauftrag',
soll die Spalte Zeitstempel (DBEdit6) überprüft werden.

Ist die Uhrzeit = (DBEdit6) oder später:= then begin

Hier der Quelltext: was mache ich falsch?


Delphi-Quellcode:
procedure TForm1.Timer5Timer(Sender: TObject);
begin
if MyTable1.Locate('Zuordnung','Zeitauftrag',[loCaseInsensitive]) then begin
 if FormatDateTime ('hh:nn:ss', Now) = (DBEdit6.Text + ':00') then begin
  Edit2.Text:='Test Eintrag';
   Edit3.Text:=(FormatDateTime('hh:nn:ss',now));
    MyTable1.Edit;
     DBEdit2.Text := Edit2.Text;
      DBEdit3.Text := Edit3.Text;
     MyTable1.Post;
    MyTAble1.Refresh;
  end;
 end;
end;

FBrust 6. Sep 2012 13:56

AW: Uhrzeitabfrage in einer Spalte im CRDBGrid
 
Hallo,

Du vergleichst zwei Zeichenketten miteinander, nicht zwei Uhrzeiten.

anstelle von DBEdit6.Text ist es vermutlich sinnvoller, direkt das entsprechende Feld in der Tabelle anzusprechen, also z. B.
Delphi-Quellcode:
MyTable1.FieldbyName('DeinDatumsFeld').AsDateTime
direkt mit Now() zu vergleichen.


Gruß
Frank

DeddyH 6. Sep 2012 14:01

AW: Uhrzeitabfrage in einer Spalte im CRDBGrid
 
Und zum Vergleichen am besten die Routinen aus DateUtils benutzen.

Alterauge 6. Sep 2012 14:25

AW: Uhrzeitabfrage in einer Spalte im CRDBGrid
 
Hallo FBrust;
meinst du das so?

Delphi-Quellcode:
 if MyTable1.FieldbyName('Stempel').AsDateTime =(FormatDateTime('hh:nn:ss',now))then begin

mkinzler 6. Sep 2012 14:28

AW: Uhrzeitabfrage in einer Spalte im CRDBGrid
 
Nein.

Delphi-Quellcode:
if MyTable1.FieldbyName('Stempel').Value = Now then ...
Obwohl es mir nicht sinnvoll erscheint sowas auf die Sekunde festzulegen.

DeddyH 6. Sep 2012 14:29

AW: Uhrzeitabfrage in einer Spalte im CRDBGrid
 
Du willst eine TDateTime mit einem String vergleichen?

[edit] Markus, diese Abfrage wird mit hoher Wahrscheinlichkeit false ergeben. [/edit]

mkinzler 6. Sep 2012 14:30

AW: Uhrzeitabfrage in einer Spalte im CRDBGrid
 
Zitat:

Zitat von DeddyH (Beitrag 1181831)
Du willst eine TDateTime mit einem String vergleichen?

Und vorher den DateTime in einen DateTime Casten.

Ein perfektes Beispiel für Lernresistenz.

Der.Kaktus 6. Sep 2012 14:36

AW: Uhrzeitabfrage in einer Spalte im CRDBGrid
 
Zitat:

Zitat von mkinzler (Beitrag 1181832)
Zitat:

Zitat von DeddyH (Beitrag 1181831)
Du willst eine TDateTime mit einem String vergleichen?

Und vorher den DateTime in einen DateTime Casten.

Ein perfektes Beispiel für Lernresistenz.


Sehr suspekt wuerde ich sagen:(

Alterauge 6. Sep 2012 14:39

AW: Uhrzeitabfrage in einer Spalte im CRDBGrid
 
hallo mkinzler,

geht leider nicht?

Delphi-Quellcode:
 if MyTable1.FieldbyName('Stempel').Value = Now then

DeddyH 6. Sep 2012 14:43

AW: Uhrzeitabfrage in einer Spalte im CRDBGrid
 
Wieso wundert mich das nicht?
Zitat:

Zitat von DeddyH (Beitrag 1181831)
[edit] Markus, diese Abfrage wird mit hoher Wahrscheinlichkeit false ergeben. [/edit]



Alle Zeitangaben in WEZ +1. Es ist jetzt 04:22 Uhr.
Seite 1 von 3  1 23      

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz