CALCSTATFUNC
Akcia CALCSTATFUNC
Funkcia
Výpočet archívnej štatistickej funkcie na požiadanie.
Deklarácia
CALCSTATFUNC archIdent, timeFromIdent_TmA, timeToIdent_TmA, statFuncIdent_Int, validPercIdent_Int, paramIdent, retValueIdent, statusIdent_Int [,archivInstance_Int]
Parametre
archIdent | in | Odkaz na jednu archívnu hodnotu alebo
odkaz na ľubovoľný objekt, ktorého hodnoty sa archivujú. |
timeFromItemIdent_TmA | in | Identifikátor typu AbsTime - začiatok intervalu. |
timeToItemIdent_TmA | in | Identifikátor typu AbsTime - koniec intervalu. |
statFunctIdent | in | Identifikátor typu Int - typ štatistickej funkcie. |
validPercIdent | in | Identifikátor typu Int - validačné kritérium. |
paramIdent | in | Identifikátor typu Int alebo Real - parameter pre niektoré typy funkcií. |
retValueIdent | out | Identifikátor pre výsledok výpočtu. |
statusIdent | out | Úspešnosť výpočtu. |
archivInstance_Int | in | Nepovinný identifikátor typu Int - identifikácia inštancie archívu. Ak nie je uvedený, nahradí sa hodnotou 0. |
Popis
Akcia vykoná výpočet štatistickej funkcie danej parametrom statFuncIdent_Int na archívnych dátach reprezentovaných archívnym objektom archIdent pre časový interval daný parametrami timeFromIdent_TmA a timeToIdent_TmA. Po úspešnom vykonaní akcie, parameter retValueIdent obsahuje výslednú hodnotu výpočtu. Návratový kód statusIdent_Int môže nadobúdať jednu z nasledujúcich hodnôt:
_ERR_TRANS_ABORT
_ERR_TRANS_ERROR
_ERR_TRANS_IGNORED
_ERR_NO_ERROR
Množina implementovaných funkcií je zhodná z funkciami, ktoré je možné konfigurovať pre
štatistický archív (okrem funkcií FILTER a ECOAVG). Pre jednotlivé funkcie sú v ESL preddefinované
lokálne konštanty.
Parameter validPerctIdent_Int predstavuje Validačné kritérium
použité pri vyhodnocovaní štatistickej funkcie. Môže nadobúdať hodnoty 0 .. 100 (chyba pri nedodržaní podmienky ERR_RANGE_ERROR).
Pre niektoré štatistické funkcie je potrebné zadať parameter paramIdent podľa nasledujúcej tabuľky:
Štatistická funkcia | Popis parametra | ||||||||
_STAT_F_INTEGRAL | Časový rozmer vstupu. Pre jednotlivé typy sú taktiež
zavedené preddefinované lokálne konštanty podľa tabuľky:
| ||||||||
_STAT_F_GE_TIME |
Pre ostatné štatistické funkcie sa parameter paramIdent nevyhodnocuje.
Hodnota parametra archivInstance_Int udáva inštanciu archívu, ktorá realizuje požiadavku. Ak nie je uvedený (alebo má hodnotu 0), požiadavku realizuje aktívna inštancia archívu.
Príklad
TIME _bt
TIME _et
REAL _retValue
INT _retCode
_bt := %StrToTime("8:01:00 16-10-2003")
_et := %StrToTime("8:02:00 16-10-2003")
CALCSTATFUNC H.ArchObj, _bt, _et, _STAT_F_SUM, 100, 0, _retValue, _retCode
IF _retCode = _ERR_NO_ERROR THEN
; výpočet prebehol
ELSE
; nastala nejaká chyba
ENDIF
Poznámka
Použitie akcie CALCSTATFUN neumožňuje počítať štatistické funkcie FILTER a ECOAVG.
Súvisiace stránky: