Lade...
 

CX_PERIODIC_DATE - Vergleiche

Vergleiche

Beschreibung

Die Vergleichsoperatoren ">", "<" und "=" vergleichen ein periodisches Datum mit einem Datum beliebigen Typs. Dabei gelten folgende Regeln:

  1. Zwei periodische Daten gleichen sich, wenn beide genau die gleichen Informationen enthalten. (Es darf also keine Unterschiede bei Startdatum, Häufigkeit, Bezugszeitraum, Position, Tag-Codierung und Einzelperioden-Dauer geben.)
     
  2. Ein periodisches Datum gleicht einer Datumsperiode, wenn sie genau die gleichen Tage enthalten.
    Das ist nur möglich, wenn beide am gleichen Tag beginnen, das periodische Datum alle möglichen Tage enthält, und die Datumsspanne endlos ist,
    oder wenn das periodische Datum keinen Start besitzt und alle möglichen Tage beinhaltet, während die Datumsspanne weder Start noch Ende hat.
     
  3. Ein periodisches Datum ist immer kleiner als ein anderes periodisches Datum, sofern es nicht gleich ist (siehe 1.).
     
  4. Ein periodisches Datum ist immer größer als ein Tagesdatum.
     
  5. Ein periodisches Datum ist immer größer als eine Datumsperiode (Span), wenn diese ein Ende und Anfang besitzt.
    Es ist kleiner, wenn weder Span-Anfang von Span-Ende existieren, sofern sie nicht gleich sind (siehe 2.).
    Wenn kein Span-Anfang existiert ist, aber ein Ende, ist es immer größer.
    Wenn kein Ende existiert, ist es kleiner, solange es nicht keinen Startwert besitzt, oder dieser vor der Datumsperiode beginnt. 

 Die oben genannten (vielleicht kompliziert wirkenden) Regeln lassen sich dabei auf eine ziemlich einfache Merkregel bringen.

  1. Zwei Datumsdefinitionen sind dann gleich, wenn sie genau die gleichen Tage beinhalten.
  2. Ein Datum ist immer dann kleiner als ein anderes, wenn die beiden Daten nicht gleich sind und die Menge der Tage kleiner ist.
StackStack Position Objekttyp Beschreibung
Stack(In) Top
'>', '<' oder '='
der Vergleichsoperator
  Top-1 CX_DATE, CX_SPAN_DATE oder CX_PERIODIC_DATE das Vergleichsobjekt
  Top-2 CX_PERIODIC_DATE das periodische Datum
Stack(Out) Top INTEGER das Ergebnis des Vergleichs

 Beispiele

Datum Vergleichsdatum = < >
"Montags" 12.5.96-14.5.96 nein nein ja
"Montags" 12.5.96-> nein nein ja
"Montags" "Dienstags" nein ja nein

 

↓ Periodic | Span →
Kein Anfang, Kein Ende Kein Anfang Kein Ende Ende und Anfang
Kein Anfang, Nicht alle Tage < > > >
Kein Anfang, Alle Tage = > > >
Mit Anfang, Nicht alle tage < > N/A* >
Mit Anfang, Alle Tage < > N/A* >
Gleicher Anfang, Nicht alle Tage N/A* N/A* < >
Gleicher Anfang, Alle Tage N/A* N/A* = >
Kleinerer Anfang, Nicht alle Tage N/A* N/A* < >
Kleinerer Anfang, Alle Tage N/A* N/A* > >
Größerer Anfang, Nicht alle Tage N/A* N/A* < >
Größerer Anfang, Alle Tage N/A* N/A* < >

 

Zu lesen: Periodisches Datum (Symbol) Datumsperiode. 

*Nicht anwendbar