AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Sprachen und Entwicklungsumgebungen Sonstige Fragen zu Delphi Delphi Plausibiltät auf einen Zeitraum von eine Jahr
Thema durchsuchen
Ansicht
Themen-Optionen

Plausibiltät auf einen Zeitraum von eine Jahr

Ein Thema von Eppos · begonnen am 22. Jun 2009 · letzter Beitrag vom 22. Jun 2009
Antwort Antwort
Eppos

Registriert seit: 7. Aug 2006
Ort: Heilbronn
523 Beiträge
 
Delphi 11 Alexandria
 
#1

Plausibiltät auf einen Zeitraum von eine Jahr

  Alt 22. Jun 2009, 09:20
Hallo zusammen,

ich stehe vor folgendem Problem:
Es gibt die Möglichkeit in meinem Programm einen Zeitraum zu wählen.
Nun muss dieser Zeitraum einmal geprüft werden, das er genau ein Jahr ergibt z.B. 01.01.2009 - 31.12.2009
Und das beim anlegen keine Zeitraum überschneidung gibt z.B. Datensatz 1: 01.01.2009 - 31.12.2009; Datensatz 2: 01.12.2009 - 30.11.2010

Hat jemand eine Idee, wie ich das einfach überprüfen kann?

Vielen Dank

Eppos
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

Registriert seit: 9. Dez 2005
Ort: Heilbronn
39.851 Beiträge
 
Delphi 11 Alexandria
 
#2

Re: Plausibiltät auf einen Zeitraum von eine Jahr

  Alt 22. Jun 2009, 09:23
In den DateUtils gibt et Funktionen zum Berechnen von Zeitabschnitten
Markus Kinzler
  Mit Zitat antworten Zitat
Eppos

Registriert seit: 7. Aug 2006
Ort: Heilbronn
523 Beiträge
 
Delphi 11 Alexandria
 
#3

Re: Plausibiltät auf einen Zeitraum von eine Jahr

  Alt 22. Jun 2009, 09:55
Auch in Delphi 5?
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

Registriert seit: 9. Dez 2005
Ort: Heilbronn
39.851 Beiträge
 
Delphi 11 Alexandria
 
#4

Re: Plausibiltät auf einen Zeitraum von eine Jahr

  Alt 22. Jun 2009, 10:11
Da ich seit Urzeiten kein Delphi 5 mehr verwenden, kann ich das nicht Testen.
Markus Kinzler
  Mit Zitat antworten Zitat
Jürgen Thomas

Registriert seit: 13. Jul 2006
Ort: Berlin
750 Beiträge
 
#5

Re: Plausibiltät auf einen Zeitraum von eine Jahr

  Alt 22. Jun 2009, 10:26
Zitat von Eppos:
Auch in Delphi 5?
Anscheinend nicht. In der Delphi-Hilfe finde ich dazu nur SysUtils, in den Delphi-Quellen nichts anderes. In der Rx-Library (einem der Vorgänger der Jedis) gibt es DateUtil mit einigen passenden Funktionen. Jürgen
#D mit C# für NET, dazu Firebird
früher: Delphi 5 Pro, Delphi 2005 Pro mit C# (also NET 1.1)
Bitte nicht sauer sein, wenn ich mich bei Delphi-Schreibweisen verhaue; ich bin inzwischen an C# gewöhnt.
  Mit Zitat antworten Zitat
Benutzerbild von toms
toms
(CodeLib-Manager)

Registriert seit: 10. Jun 2002
4.648 Beiträge
 
Delphi XE Professional
 
#6

Re: Plausibiltät auf einen Zeitraum von eine Jahr

  Alt 22. Jun 2009, 10:30
DaysBetween gibt es noch nicht in D5.

Delphi-Quellcode:
function DaysBetween(const ANow, AThen: TDateTime): Integer;
begin
  if ANow < AThen then
    Result := Trunc(AThen - ANow)
  else
    Result := Trunc(ANow - AThen);
end;
Thomas
  Mit Zitat antworten Zitat
Benutzerbild von leddl
leddl

Registriert seit: 13. Okt 2003
Ort: Künzelsau
1.613 Beiträge
 
Delphi 2006 Professional
 
#7

Re: Plausibiltät auf einen Zeitraum von eine Jahr

  Alt 22. Jun 2009, 10:32
Und warum lässt du nicht einfach nur das Startdatum auswählen und berechnest das Enddatum? Ist doch für den Benutzer deutlich einfacher und weniger fehleranfällig...
Axel Sefranek
A programmer started to cuss, cause getting to sleep was a fuss.
As he lay there in bed, looping round in his head
was: while(!asleep()) ++sheep;
  Mit Zitat antworten Zitat
hoika

Registriert seit: 5. Jul 2006
Ort: Magdeburg
8.270 Beiträge
 
Delphi 10.4 Sydney
 
#8

Re: Plausibiltät auf einen Zeitraum von eine Jahr

  Alt 22. Jun 2009, 10:43
Hallo,

leddl hat Recht, wenn es um Konfigurationen handelt.
Einmal gesetzt, bleibt der Wert solange gestetzt,
bis ein neuer Eintrag mit neuem Startdatum eingetragen wird.

Ansonsten prüfe ich das immer so.


geg:
Eintrag1: Start1/End1
Eintrag2: Start2/End2

Ich prüfe nicht auf Überschneidung, sondern, ob Eintrag 2 vor oder hinter Eintrag 1 ist.
Ist er es nicht, gibt es eine Überschneidung.

davor:
End2 < Start1

dahinter:
Start2 > End1

noch ein not davor und du hast die Überschneidung.


Heiko
Heiko
  Mit Zitat antworten Zitat
Antwort Antwort


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