Lade...
 

CX_SPAN_DATE::SetGrossDuration

CX_SPAN_DATE::SetGrossDuration

Beschreibung:

Diese Funktion setzt gleichzeitig die Periodenlänge und den Netto-Typ auf Brutto (ALL_TERMS) für eine Datumsperiode. Wie bei SetDuration kann diese auch einen negativen Wert, wie z.B. "-3 Tage", annehmen. 

Bei Übergabe einer Zeiteinheit gröber als "Tage", wird die Datumsperiode diffus.
Durch Funktionen, wie z.B. SetEndOfPeriod, wird die Duration auch indirekt gesetzt. Auch in diesem Fall wird der Netto-Typ auf Brutto (ALL_TERM) zurückgesetzt.

Code-Beispiel:

In dem Beispiel-Programm

zunächst die Bruttolänge berechnet und dann in der Datumsperiode gespeichert 

Var(sdate)                                      // deklariere Variable
CreateTransObject(CX_SPAN_DATE) -> sdate        // erzeuge eine Datumsperiode

"1.10.1990" sdate Put                           // setze das Startdatum der Periode
9days WORKINGDAY sdate Call(SetNetDuration)     // setze die Länge auf (Netto) 10 Arbeitstage
sdate Call(GrossDuration)                       // ermittle die Bruttolänge
sdate Call(SetGrossDuration)                    // speichere die Bruttolänge
sdate Call(Duration)                            // liefert Dauer, ungeachtet dem Netto-Typ

Der Rückgabewert ist "12 Tage". (12 Brutto-Tage in "1.10.1990 -

12.10.1990" (Nur bis 12.10.1990, da beide Grenzen inklusive gelten und am 12.10.1990 bereits 9 Tage erreicht waren.))

Stack
Stack Position Objekttyp Kurzbeschreibung
Stack(In) Top CX_SPAN_DATE das Datum(-sobjekt)
  Top-1 CX_VALUE die neue Periodenlänge
Stack(Out) Top - -

Funktionsaufruf: Call(SetGrossDuration)