Page tree
Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 3 Next »

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ú.

Upozornenie: Ak sa parameter odkazuje na objekt, ktorý je viacnásobne archivovaný, nie je určené, hodnoty ktorého archívneho objektu sa použijú pre akciu.
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:

Konštanta Popis
_INTEGRAL_HOURUNIT Hodinový integrál
_INTEGRAL_MINUNIT Minútový integrál
_INTEGRAL_SECUNIT Sekundový integrál
_STAT_F_GE_TIME
_STAT_F_GT_TIME
_STAT_F_LE_TIME
_STAT_F_LT_TIME
_STAT_F_ADDITION_PARAM
_STAT_F_INCREMENT_PARAM
_STAT_F_DELTA_PARAM
Referenčná hodnota

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:

  • No labels