Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Object-Pascal / Delphi-Language (https://www.delphipraxis.net/32-object-pascal-delphi-language/)
-   -   Delphi Eine neues Datum generieren??? (https://www.delphipraxis.net/54209-eine-neues-datum-generieren.html)

romber 29. Sep 2005 18:06


Eine neues Datum generieren???
 
Hallo!

Ich habe z.B. ein Datum 31.12.2005
Ich möchte zu diesem Datum z.B. drei Monate addieren, und zwar so, dass es "kalendarisch" richtig ist. Mit FormatDateTime-function muss das irgendwie gehen, da muss glaube ich ein Parameter her. Wie ist der Parameter?

Danke!

marabu 29. Sep 2005 18:19

Re: Eine neues Datum generieren???
 
Hallo romber,

rechnen kannst du nur mit Zeiteinheiten. Du erkennst diese daran, dass sie als Vielfache von Sekunden ausgedrückt werden können. Monat und Jahr zählen nicht dazu. Um ein Datum um 3 Monate zu "erhöhen" musst du zusätzliche Regeln definieren. Hier ein paar Kandidaten:
  • Beibehalten des Tages im Monat und Reduzieren des Tages bei Überlauf
  • Monat pauschal auf 30 Tage setzen
  • Rechnen mit Quartalsabständen
Weitere Regeln sind denkbar - hast du dich schon entschieden? Rechnen kannst du dann mit DecodeDate() und EncodeDate().

Grüße vom marabu

ManuMF 29. Sep 2005 18:21

Re: Eine neues Datum generieren???
 
Delphi-Quellcode:
function IncMonth(const Date: TDateTime; NumberOfMonths: Integer = 1): TDateTime;
Dürfte das sein, was du brauchst.

Beispiel:
Delphi-Quellcode:
NeuesDatum := IncMonth(AltesDatum, 3);
Gruß,
ManuMF

mojo777 29. Sep 2005 18:46

Re: Eine neues Datum generieren???
 
*klugscheiß-mode-on*
und incDay(date:TDateTime; anz:Integer);
*klugscheiß-mode-off*
passt zwar nciht ganz hier rein, aber vll. brauchst du das auch :-D


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