Akcia DELETEARCHDATA


Funkcia Zmazanie archívnych hodnôt z časového intervalu.
Deklarácia
DELETEARCHDATA archIdent, timeFromIdent_TmA, timeToIdent_TmA [,statusIdent_Int]
alebo
 
DELETEARCHDATA archIdent, timeFromIdent_TmA, timeToIdent_TmA [,statusIdent_Int], bRecalcStat
Parametre
archIdent in Odkaz na jednu (archívnu) hodnotu, stĺpec, alebo riadok štruktúrovanej archívnej premennej (viď Poznámka).
timeFromIdent_TmA in Identifikátor typu AbsTime - začiatok intervalu.
timeToIdent_TmA in Identifikátor typu AbsTime - koniec intervalu.
statusIdent_Int out Nepovinný parameter - úspešnosť zmazania.
bRecalcStat in Identifikátor typu Boolean.
Prepočet závislých štatistických archívov. Ak parameter nie je uvedený, závislé štatistické archívy sa neprepočítajú.
Popis Akcia zmaže archívne hodnoty pre archívny objekt archIdent z časového intervalu od timeFromIdent_TmA do timeToIdent_TmA. Pre hodnoty parametrov musí platiť: timeFromIdent_TmA <= timeToIdent_TmA (chyba ERR_RANGE_ERROR). Nepovinný parameter statusIdent_Int predstavuje návratový kód a môže nadobúdať jednu z nasledujúcich hodnôt:
  • _ERR_TRANS_ABORT
  • _ERR_TRANS_ERROR
  • _ERR_TRANS_IGNORED
  • _ERR_NO_ERROR
Ak nie je uvedený, akcia generuje požiadavku na zmazanie a vykonávanie skriptu. Nie je možné testovať úspešnosť akcie.

Zmazané hodnoty nie sú označené ako zmazané (na rozdiel od zmazania v procese D2000 HI - príznak DELETED), ale sú fyzicky zmazané z archívnej databázy.
Poznámka 1 Parameter archIdent
- nekontroluje sa, či sa pracuje s archívnym objektom - stačí odkaz na objekt
- môže odkazovať aj na časť (riadok alebo stĺpec) alebo na celý štruktúrovaný archívny objekt

Príklad:
  • H.ColArchiv - odkaz na celý štruktúrovaný archívny objekt
  • H.ColArchiv[2] - odkaz na všetky hodnoty štruktúrovaného archívneho objektu v riadku 2
  • H.ColArchiv^ColName - odkaz na všetky hodnoty štruktúrovaného archívneho objektu v stĺpci ColName
Poznámka 2Pokiaľ je zadaný parameter statusIdent_Int, akcia DELETEARCHDATA je ukončená vtedy, keď sú zmazané všetky požadované hodnoty. Aj keď je parameter bRecalcStat uvedený a má hodnotu @TRUE, akcia nečaká na skončenie prepočtu závislých štatistických archívov.
Príklad 1
 TIME _timeFrom
  TIME _timeTo
  INT _status

 _timeTo := %StrToTime("10:00:00 31-12-1999")
 _timeFrom := %StrToTime("09:00:00 31-12-1999")
 DELETEARCHDATA H.ArchObj, _timeFrom, _timeTo, _status

 IF _status = _ERR_NO_ERROR THEN
   ; dáta sú zmazané
 ELSE
   ; nastala nejaká chyba
 ENDIF 
Príklad 2
 TIME _timeFrom
  TIME _timeTo
  INT _status

 _timeTo := %StrToTime("10:00:00 31-12-1999")
 _timeFrom := %StrToTime("09:00:00 31-12-1999")
 
  ; Mazanie + prepočet závislých štatistických archívov - synchrónne

 DELETEARCHDATA H.ArchObj, _timeFrom, _timeTo, _status, @TRUE

 IF _status = _ERR_NO_ERROR THEN
   ; dáta sú zmazané
 ELSE
   ; nastala nejaká chyba
 ENDIF
 
 ; Mazanie + prepočet závislých štatistických archívov - asynchrónne
 
 DELETEARCHDATA H.ArchObj, _timeFrom, _timeTo,  @TRUE

Súvisiace stránky:

0 komentárov

Nie ste prihlásený. Akékoľvek zmeny, ktoré vykonáte, sa označia ako anonymné. Ak už máte svoj účet, pravdepodobne sa budete chcieť prihlásiť .