Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Algorithmen, Datenstrukturen und Klassendesign (https://www.delphipraxis.net/78-algorithmen-datenstrukturen-und-klassendesign/)
-   -   Resttage des Monats berechnen (https://www.delphipraxis.net/180163-resttage-des-monats-berechnen.html)

rhodan 27. Apr 2014 06:30

Resttage des Monats berechnen
 
hi!
ich benutze folgenden Code um mir die resttage zwischen 2 verschiedenen Datum anzeigen zu lassen:

Delphi-Quellcode:
procedure TForm2.Button2Click(Sender: TObject);
var
  tage : Integer;
  datum1, datum2: TDate;
begin
  datum1 := StrToDate('27.04.2014');
  datum2 := StrToDate('30.04.2014');
  tage  := DaysBetween(datum1, datum2);
   showmessage(inttostr(tage)+' Resttage');

end;
nun möchte ich allerdings beim datum1 und datum2 stets den aktuellen monat einlesen und mir die verbleibenen tage anzeigen lassen...

ich wollte das so lösen:

Delphi-Quellcode:
function LastDayOfCurrentMonth: TDate;
var
  y, m, d: word;
begin
  decodedate(now, y, m, d);
  m := m + 1;
  if m > 12 then
  begin
   y := y + 1;
   m := 1;
  end;
  result := encodedate(y, m, 1) - 1;
end;
.
.
.
procedure TForm2.Button2Click(Sender: TObject);
var
  tage : Integer;
  datum1, datum2: TDate;
begin
  datum1 := now;
  datum2 := DateToStr(LastDayOfCurrentMonth);
  tage  := DaysBetween(datum1, datum2);
   showmessage(inttostr(tage)+' Resttage');

end;
nur beim datum2 bekomme ich den fehler das TDate und String inkompatibel sind...hat jemand nen tip wie das zu lösen ist?

liebe grüße aus Hamburg

rhodan 27. Apr 2014 06:34

AW: Resttage des Monats berechnen
 
tut mir leid hatte grad ein brett vor dem kopf...

Delphi-Quellcode:
datum1 := now;
  tage  := DaysBetween(datum1, LastDayOfCurrentMonth);
   showmessage(inttostr(tage)+' Resttage');
löst das problem :lol: :lol:

wünsche einen angenehmen tag

Dejan Vu 27. Apr 2014 06:48

AW: Resttage des Monats berechnen
 
Du kannst das Rad nochmal erfinden, wenn du willst. Oder Du nimmst Dir die entsprechende Funktion aus den DateUtils:
EndOfTheMonth


Alle Zeitangaben in WEZ +1. Es ist jetzt 10:37 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