CX_SPAN_DATE::MoveStartOfPeriod / MovePeriodToStartDate
Beschreibung:
Diese Funktion setzt ein neues Startdatum für die Datumsperiode, wobei die
Periodenlänge beibehalten wird.
Dies bedeutet, dass sich das Enddatum mitverändert!
Wird z.B. das Startdatum der Periode "7.5.1996 - 10.5.1996" auf den
"3.5.1996" gesetzt, so wird die Datumsperiode "3.5.1996 -
6.5.1996" erzeugt. Soll das Periodenende nicht verändert werden, so ist
die Funktion SetStartOfPeriod zu benutzen.
Im Gegensatz zu MoveRealStartOfPeriod wird die
Datumsperiode nicht notwendigerweise so verschoben, dass das neue Datum
das ältere Grenzdatum wird, denn auch eine nicht positive Periodenlänge bleibt erhalten. Durch Übergabe eines Null-Objektes wird der Start,
wie bei SetStartOfPeriod, gelöscht und die
Datumsperiode damit unendlich.
Es sollte der erste Name, MoveStartOfPeriod, verwendet werden. Der letzte,
MovePeriodToStartDate wird nur noch aus Kompatibilitätsgründen unterstützt
und ist obsolet.
Code-Beispiel:
In dem Beispiel-Programm wird eine Datumsperiode generiert und ihr Startdatum
auf den "3.10.1990" gesetzt.
Var(date, sdate)
// erzeuge die Daten
CreateTransObject(CX_SPAN_DATE) -> sdate
CreateTransObject(CX_DATE) -> date
"3.10.1990" date Put
// setze das neue Startdatum
10days sdate Call(SetDuration)
//setzen der Dauer
date sdate Call(MoveStartOfPeriod)
Als Ergebnis enthält sdate die Datumsperiode "3.10.1990 - 12.10.1990"
Stack | Position | Objekttyp | Kurzbeschreibung |
---|---|---|---|
Stack(In) | Top | CX_SPAN_DATE | das Datum(-sobjekt) |
Top-1 | CX_DATE oder Null | das neue Startdatum | |
Stack(Out) | Top | - | - |
Funktionsaufruf: Call(MoveStartOfPeriod)