Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Object-Pascal / Delphi-Language (https://www.delphipraxis.net/32-object-pascal-delphi-language/)
-   -   Delphi Datum -und Zeit-Angabe in 2 DateTimePicker (https://www.delphipraxis.net/119713-datum-und-zeit-angabe-2-datetimepicker.html)

Thomm 30. Aug 2008 10:50


Datum -und Zeit-Angabe in 2 DateTimePicker
 
Ich möchte Datum und Zeit-Angabe (STRING) aus einer Datenbank in 2 DateTimePicker
(einen für die Uhr-Zeit,einen für das Datum) eintragen.
Problem ist das beide Angaben für Zeit und Datum in derselben Datenbankzelle stehen,
und durch 4 Leerzeichen getrennt sind

"12:09:56....24.08.2008" ---> DateTimePicker1 + DateTimePicker2 (Uhrzeit) (Datum)

Weiß nicht ,wie das geht.

grenzgaenger 30. Aug 2008 11:17

Re: Datum -und Zeit-Angabe in 2 DateTimePicker
 
Achtung Crosspost im DF

DeddyH 30. Aug 2008 11:41

Re: Datum -und Zeit-Angabe in 2 DateTimePicker
 
Wieso speicherst Du DateTime-Werte als String ab?

Thomm 30. Aug 2008 12:05

Re: Datum -und Zeit-Angabe in 2 DateTimePicker
 
Zitat:

Zitat von DeddyH
Wieso speicherst Du DateTime-Werte als String ab?

Weil ich nicht gewußt habe, wie man die sonst in eine Datenbank-Zelle schreibt

DeddyH 30. Aug 2008 12:07

Re: Datum -und Zeit-Angabe in 2 DateTimePicker
 
Kennt die DB keinen Datentyp DateTime oder Timestamp?

grenzgaenger 30. Aug 2008 12:08

Re: Datum -und Zeit-Angabe in 2 DateTimePicker
 
dann ist das also deine eigene DB :-)

dann nimm die felder doch auseinander... :-)

damit ersparst du dir in der zukunft viele kopfschmerzen...

grenzgaenger 30. Aug 2008 12:09

Re: Datum -und Zeit-Angabe in 2 DateTimePicker
 
Zitat:

Zitat von DeddyH
Kennt die DB keinen Datentyp DateTime oder Timestamp?

muss ja nicht... ein, zwei integer reichen doch :-)

aber so, zusammen, mit trennzeichen, welche von rechner zu rechner unterschiedlich sein können... ist doch etwas unglücklich ...

BullsEye 30. Aug 2008 12:09

Re: Datum -und Zeit-Angabe in 2 DateTimePicker
 
Delphi-Quellcode:
DateTimePicker1.Time := trunc(DateTimePicker1.Date) + frac(DateTimePicker2.Time);

DeddyH 30. Aug 2008 12:10

Re: Datum -und Zeit-Angabe in 2 DateTimePicker
 
Wenn, dann gleich double oder nicht?

grenzgaenger 30. Aug 2008 12:12

Re: Datum -und Zeit-Angabe in 2 DateTimePicker
 
Zitat:

Zitat von DeddyH
Wenn, dann gleich double oder nicht?

kommt auf die anforderungen drauf an :-) und was er auswerten möcht...

das wäre dann eben statt zwei felder, ein feld... mit unterschiedlichen vor und nachteilen...

was er aber nicht machen sollte, ist diese eingaben als text zu speichern... das ist eine todsünde, genauso wie bei zahlen :-)

Thomm 30. Aug 2008 12:14

Re: Datum -und Zeit-Angabe in 2 DateTimePicker
 
Zitat:

Zitat von DeddyH
Kennt die DB keinen Datentyp DateTime oder Timestamp?

Doch
Aber wie schreibt man

DateTimePicker1.Time + DateTimePicker2.Date

zusammen in eine Zelle

ClientDataSet1Zeitangabe

Wußte nicht wie das geht daher hab ich es umständlich gemacht

Delphi-Quellcode:
ClientDataSet1Zeitangabe.AsString:= (TimetoStr(datetimepicker1.Time))+'  '+(Datetostr( datetimepicker2.date));

DeddyH 30. Aug 2008 12:16

Re: Datum -und Zeit-Angabe in 2 DateTimePicker
 
Delphi-Quellcode:
ClientDataSet1Zeitangabe.AsDateTime := frac(datetimepicker1.Time) +trunc(datetimepicker2.date);

Thomm 30. Aug 2008 12:18

Re: Datum -und Zeit-Angabe in 2 DateTimePicker
 
Zitat:

Zitat von DeddyH
Delphi-Quellcode:
ClientDataSet1Zeitangabe.AsDateTime := frac(datetimepicker1.Time) +trunc(datetimepicker2.date);

Das probier ich mal aus

Hast du die Leerstelle beachtet ?

Vielen Dank nochmal

Ich sag euch später ,obs funktioniert

DeddyH 30. Aug 2008 12:19

Re: Datum -und Zeit-Angabe in 2 DateTimePicker
 
Ich bin jetzt davon ausgegangen, dass Du den Feldtyp in DateTime geändert hast, dann gibt es keine Leerstellen.

grenzgaenger 30. Aug 2008 12:20

Re: Datum -und Zeit-Angabe in 2 DateTimePicker
 
oder du nimmst gleich einen datetime picker ... in dem der user die beiden werte eintragen kann :-)

BullsEye 30. Aug 2008 12:24

Re: Datum -und Zeit-Angabe in 2 DateTimePicker
 
Liste der Anhänge anzeigen (Anzahl: 1)
Es geht auch 'einfacher'

Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
begin
Label1.Caption := DateToStr(DateTimePicker1.Date) + '...' + TimeToStr(DateTimePicker2.Time);
end;

Demo Prog im Anhang

DeddyH 30. Aug 2008 12:25

Re: Datum -und Zeit-Angabe in 2 DateTimePicker
 
Es geht ja darum, einen Zeitwert in 2 DateTimePickern darzustellen.

Thomm 30. Aug 2008 12:30

Re: Datum -und Zeit-Angabe in 2 DateTimePicker
 
Zitat:

Zitat von grenzgaenger
oder du nimmst gleich einen datetime picker ... in dem der user die beiden werte eintragen kann :-)

Ich hab doch einen DateTimePicker in der Eingabemaske,

von dort wird das in eine Datenbank eingetragen

grenzgaenger 30. Aug 2008 12:31

Re: Datum -und Zeit-Angabe in 2 DateTimePicker
 
und dann nimmst du die datums- und zeitkomponente explizit auseinander um sie getrennt in der DB zu speichern?

und jetzt willst sie wieder zusammenfügen... :gruebel: :gruebel:

DeddyH 30. Aug 2008 12:32

Re: Datum -und Zeit-Angabe in 2 DateTimePicker
 
Also, mein TDateTimePicker kann nur Date oder Time. Welchen verwendest Du denn?

grenzgaenger 30. Aug 2008 12:34

Re: Datum -und Zeit-Angabe in 2 DateTimePicker
 
Zitat:

Zitat von BullsEye
Delphi-Quellcode:
DateTimePicker1.Time := trunc(DateTimePicker1.Date) + frac(DateTimePicker2.Time);

das trunc/frac kann er sich in diesem fall auch sparen... braucht man nur, wenn man gemischte picker mit jeweils datums- und zeitanteil hast ... :-)

DeddyH 30. Aug 2008 12:35

Re: Datum -und Zeit-Angabe in 2 DateTimePicker
 
Mit dieser Aussage wäre ich sehr, sehr vorsichtig.

Thomm 30. Aug 2008 12:45

Re: Datum -und Zeit-Angabe in 2 DateTimePicker
 
Ich habs probiert

Es funktioniert, nur steht jetzt das Datum zuerst danach die Uhrzeit

auch wenn man den Code herumdreht :shock:

grenzgaenger 30. Aug 2008 12:45

Re: Datum -und Zeit-Angabe in 2 DateTimePicker
 
Zitat:

Zitat von DeddyH
Also, mein TDateTimePicker kann nur Date oder Time. Welchen verwendest Du denn?

mhhh, asche über mein haupt... hatte eine andere compo im kopf ...

Thomm 30. Aug 2008 12:51

Re: Datum -und Zeit-Angabe in 2 DateTimePicker
 
Seltsam, bei diesem Code müßte er doch zuerst die Zeit anzeigen,oder ?

Delphi-Quellcode:
ClientDataSet1Zeitangabe.AsDateTime := frac(datetimepicker1.Time) +trunc(datetimepicker2.date);

grenzgaenger 30. Aug 2008 12:52

Re: Datum -und Zeit-Angabe in 2 DateTimePicker
 
das ist ihm egal... der vorkommateil ist das datum, der nachkomma teil die zeit...

Thomm 30. Aug 2008 12:57

Re: Datum -und Zeit-Angabe in 2 DateTimePicker
 
Kann man das nicht umdrehen ???

......zuerst die Zeit.....dann das Datum

oder geht das nicht ?

DeddyH 30. Aug 2008 13:02

Re: Datum -und Zeit-Angabe in 2 DateTimePicker
 
Da kommt eine Fließkommazahl bei raus. Wie Du das ausgibst, ist doch Deine Musik.


Alle Zeitangaben in WEZ +1. Es ist jetzt 22:24 Uhr.

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