Lade...
 

CX_SPAN_DATE::SetPeriodBorders

CX_SPAN_DATE::SetPeriodBorders

Beschreibung:

Diese Funktion setzt die Grenzen einer Datumsperiode. Im Gegensatz zu den

Funktionen SetStartOfPeriod, SetEndOfPeriod, MoveStartOfPeriod und MoveEndOfPeriod wird aber nicht nur eine, sondern beide Grenzen auf einmal festgelegt.
Liegt das designierte neue Startdatum hinter dem neuen Enddatum, wird die Periodendauer negativ. (Siehe auch: SetRealStartOfPeriod,SetRealEndOfPeriod.)
Durch Übergabe eines Null-Objektes wird das jeweilige Grenzdatum gelöscht. Je Nachdem welches Grenzdatum gewissermaßen gelöscht wird, erhält die Datumsperiode den entsprechenden Typ (in validEnum).

Code-Beispiel:

1. In dem Beispiel-Programm wird die Datumsperiode "3.5.1996 - 5.5.1996" generiert. 

Var(date1, date2, sdate)                  // erzeuge die Daten
CreateTransObject(CX_SPAN_DATE) -> sdate
CreateTransObject(CX_DATE) -> date1
"3.5.1996" date1 Put                      // das neue Startdatum
CreateTransObject(CX_DATE) -> date2
"5.5.1996" date2 Put                      // das neue Enddatum
date1 date2 sdate Call(SetPeriodBorders)

2. Alternativ kann eine Datumsperiode auch mit Put gesetzt werden. Das entsprechende Programm sieht folgendermaßen aus: 

Var(sdate)                                // erzeuge die Datumsperiode
CreateTransObject(CX_SPAN_DATE) -> sdate
"3.5.1996 - 5.5.1996" sdate Put           // setze das neue Startdatum

Stack
Stack Position Objekttyp Kurzbeschreibung
Stack(In) Top CX_SPAN_DATE das Datum(-sobjekt)
Top-1 CX_DATE oder Null das neue Enddatum
Top-2 CX_DATE oder Null das neue Startdatum
Stack(Out) Top - -

Funktionsaufruf: Call(SetPeriodBorders)