AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Differenz berechnen

Ein Thema von Uncle Cracker · begonnen am 8. Jul 2003 · letzter Beitrag vom 11. Jul 2003
Antwort Antwort
Seite 1 von 3  1 23      
Benutzerbild von Uncle Cracker
Uncle Cracker

Registriert seit: 30. Mär 2003
Ort: Freital
694 Beiträge
 
#1

Differenz berechnen

  Alt 8. Jul 2003, 11:03
Ich habe da mal 'ne Frage und die lautet:

Ich habe 2 Datumsdaten, die ich vergleichen möchte.

Das heisst, ich lade ein Datum aus einer Datei und das andere hol ich mir mit DateToStr(Now). Nun möchte ich die Tage ausrechnen, die zwischen den beiden Daten liegen.

Also ich habe zum Beispiel das heutige Datum '8.7.2003' und ein altes Datum '1.7.2003'. Nun würde ich gern die Differenz von den Tagen haben, also als Antwort '7 Tage'.

Weis jemand vielleicht wie das geht?


Danke UC
I wish it was legal to marry software because I'm madly in love with Delphi...
  Mit Zitat antworten Zitat
Benutzerbild von sakura
sakura

Registriert seit: 10. Jun 2002
Ort: München
11.412 Beiträge
 
Delphi 11 Alexandria
 
#2

Re: Differenz berechnen

  Alt 8. Jul 2003, 11:23
Okay, lassen wir mal strFileDatum das Datum aus der Datei im String-Format sein, dann geht es wie folgt:
Delphi-Quellcode:
var
  TagCount: Integer;
begin
  TagCount := Trunc(Now) - Trunc(StrToDateTime(strFileDatum));

  ShowMessage('Es sind ' + IntToStr(TagCount) + ' Tage.');
end;
......
Daniel W.
Ich bin nicht zurück, ich tue nur so
  Mit Zitat antworten Zitat
Benutzerbild von Uncle Cracker
Uncle Cracker

Registriert seit: 30. Mär 2003
Ort: Freital
694 Beiträge
 
#3

Re: Differenz berechnen

  Alt 8. Jul 2003, 20:52
Irgenwie krieg ich das nicht so hin.

Bei mir sieht das so aus, nachdem alles geladen wurde:

Delphi-Quellcode:
//Label1
AltesDatum.Caption:='1.7.2003',
//Label2
AktuellesDatum.Caption:='8.7.2003'
Nun würde ich gern im Label3 das Stehen haben: '7 Tage'

Gibt es da vielleicht ein Beispiel oder verstehe ich sakuras Code einfach nicht


Danke UC
I wish it was legal to marry software because I'm madly in love with Delphi...
  Mit Zitat antworten Zitat
Benutzerbild von Sanchez
Sanchez

Registriert seit: 24. Apr 2003
Ort: Neumarkt Stmk
892 Beiträge
 
Delphi XE6 Enterprise
 
#4

Re: Differenz berechnen

  Alt 8. Jul 2003, 20:58
Tach auch,

Sakuras Code beantwortet die Frage schon. Hab mal deine Bezeichnung im Code eingesetzt.

Delphi-Quellcode:
var
  TagCount: Integer;
begin
  TagCount := Trunc(AktuellesDatum.Caption) - Trunc(StrToDateTime
                    (AltesDatum.Caption));

  Label3.Caption := 'Es sind ' + IntToStr(TagCount) + ' Tage.';
end;
Ich denke das willst du haben, oder?

Zur Erklärung: Der Ganzzahlige Teil von TDateTime gaben die Tage an. Du musst nur die Tage des alten Datums von den Tagen vom aktuellen Datum subtrahieren.

mfg Daniel
Daniel
  Mit Zitat antworten Zitat
Daniel B
(Gast)

n/a Beiträge
 
#5

Re: Differenz berechnen

  Alt 8. Jul 2003, 21:00
Hallo,

vielleicht ein verständlicherer Weg.
Unit "DateUtils" einbinden!
Delphi-Quellcode:
procedure TForm1.Button22Click(Sender: TObject);
begin
  Label3.Caption := IntToStr(DaysBetween(
    StrToDate(Label1.Caption), StrToDate(Label2.Caption)));
end;
Grüsse, Daniel
  Mit Zitat antworten Zitat
Benutzerbild von Uncle Cracker
Uncle Cracker

Registriert seit: 30. Mär 2003
Ort: Freital
694 Beiträge
 
#6

Re: Differenz berechnen

  Alt 8. Jul 2003, 21:04
Bei mir kommt jetzt Inkompatiblke Typen nach dem

TagCount := Trunc(AktuellesDatum.Caption)

Was ist denn nun schon wieder das Problem?


Danke UC
I wish it was legal to marry software because I'm madly in love with Delphi...
  Mit Zitat antworten Zitat
Benutzerbild von Uncle Cracker
Uncle Cracker

Registriert seit: 30. Mär 2003
Ort: Freital
694 Beiträge
 
#7

Re: Differenz berechnen

  Alt 8. Jul 2003, 21:05
Zitat von Daniel B:
Hallo,

vielleicht ein verständlicherer Weg.
Unit "DateUtils" einbinden!
Danke, doch bei Delphi 4 Standard gibt es die Komponente nicht
I wish it was legal to marry software because I'm madly in love with Delphi...
  Mit Zitat antworten Zitat
Daniel B
(Gast)

n/a Beiträge
 
#8

Re: Differenz berechnen

  Alt 8. Jul 2003, 21:06
Hallo,

Du musst auch AktuellesDatum, sowie auch AltesDatum mit StrToDateTime umwandeln.

Grüsse, Daniel
  Mit Zitat antworten Zitat
Daniel B
(Gast)

n/a Beiträge
 
#9

Re: Differenz berechnen

  Alt 8. Jul 2003, 21:07
Zitat von Uncle Cracker:
Danke, doch bei Delphi 4 Standard gibt es die Komponente nicht
Das ist keine Komponente, sondern eine Unit, ganz oben bei Uses das noch mit dazu eintragen!

Grüsse, Daniel
  Mit Zitat antworten Zitat
Benutzerbild von Sanchez
Sanchez

Registriert seit: 24. Apr 2003
Ort: Neumarkt Stmk
892 Beiträge
 
Delphi XE6 Enterprise
 
#10

Re: Differenz berechnen

  Alt 8. Jul 2003, 21:08
Sorry, da hab ich was vergessen, der code sollte so aussehen:

Delphi-Quellcode:
Source:

var
  TagCount: Integer;
begin
  TagCount := Trunc(StrToDateTime(AktuellesDatum.Caption))
                   - Trunc(StrToDateTime(AltesDatum.Caption));

  Label3.Caption := 'Es sind ' + IntToStr(TagCount) + ' Tage.';
end;
"Trunc" verlangr einen Fließkommawert, ich hab ihm aber einen String gegeben.

So sollte es aber funktionieren.
Daniel
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 3  1 23      


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 17:23 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