Funkcia vypočíta zvolený typ agregácie nad zdrojovým vektorom s danou periodicitou. Voliteľne je možné zadať masku vstupných dát.
VECTOR %Aggregate( VECTOR _source, INT _aggrType, TIME _bt, TIME _et, INT|TEXT _period [, [INT|TEXT _timeZone := %TIME_ZONE] [, [INT _dayOffset := %DAY_OFFSET] [, [INT _firstWeekDay := 0] [, [INT _invalidAction := 0] [, [BOOL _invalidateIncomplete := 0] [, [VECTOR _mask]]]]]]] ) |
_source | Zdrojový vektor. |
_aggrType | |
_bt | Začiatočný čas intervalu. |
_et | Koncový čas intervalu. |
_period | Perióda agregačnej funkcie. Je možné použiť jeden z preddefinovaných krokov, kód alebo id užívateľsky alebo lokálne definovanej periódy. |
_timeZone | Identifikátor časového pásma. Použiteľné len v kombinácii s preddefinovanými krokmi. |
_dayOffset | Časový posun v sekundách. Použiteľný len v kombinácii s preddefinovanými krokmi. |
_firstWeekDay | Poradové číslo prvého dňa v týždni (0 - pondelok). Použiteľné len v kombinácii s preddefinovanými krokmi. |
_invalidAction | Spracovanie neplatnej hodnoty v zdrojovom vektore: 0 - ignoruje, 1 - intervalu nastaví Weak, 2 – zneplatní interval. |
_invalidateIncomplete | Učuje, či sa má zneplatniť celý prvý a/alebo posledný interval výstupu, ak na vstupe nie sú dáta v čase požadovanom podľa zadanej periódy alebo ak časy _bt, _et nie sú zarovnané podľa zadanej periódy. |
_mask | Maska vstupných dát, kde platná nenulová hodnota označuje hodnoty, ktoré majú byť započítané do agregácie a neplatná alebo nulová hodnota označuje hodnoty, ktoré nemajú byť započítané do agregácie. |
-- načíta zdrojový vektor a vykoná na ňom sumu s krokom výstupného vektora VECTOR _v; %LoadVector(Vector.Src, _BT, _ET); _v := %Aggregate(Vector.Src, %OP_Sum, _BT, _ET, _STEP); RETURN _v; |