Hodnoty z archívu - funkcia D2_ArchValue

Prístup k archívnym hodnotám zo systému D2000 umožňuje funkcia D2_ArchValue.


Deklarácia
D2_ArchValue
(target, archObjeName, bt, et, step, attribute, refresh) 

Parametre
target

 

Odkaz na jednoriadkovú alebo jednostĺpcovú oblasť určujúcu polohu hodnôt z archívu.
archObjName typ TEXT
  • Odkaz na jednu archívnu hodnotu.
  • Odkaz na jednoduchú hodnotu objektu.
  • V prípade štruktúrovanej premennej je to jedno políčko (SV.Struct[2]^Item),
    ináč je to meno objektu (napríklad meraný bod).
    V tomto prípade systém automaticky zabezpečí vyhľadanie "vhodného" archívneho objektu.
    Ak je stĺpec "Item" typu objekt, je možné zadať bezprostredne za menom stĺpca reťazec ",ALL" (napríklad SV.Struct[4]^Item,ALL).
    Vtedy sú získavané archívne hodnoty pre objekt, na ktorý ukazuje príslušné políčko, nie pre políčko ako také.
bt

typ ABS. ČAS

Počiatočný čas archívneho bloku.
et

typ ABS. ČAS

Koncový čas archívneho bloku.
step

typ INT

Časový krok [s] v rámci archívneho bloku.
attribute

typ TEXT

Požadovaný atribút archívnej hodnoty.
refresh

 

Nepovinný parameter.

Popis
Funkcia vráti požadovaný atribút archivovanej hodnoty (parameter attribut – význam pozri funkciu D2_GetValue) daného archívneho objektu archObjName. Parametre bt, et určujú časový interval archívneho bloku a parameter step definuje prevzorkovanie hodnôt v archíve.

Parameter refresh má zhodnú úlohu, ako pri funkcii D2_GetValue.

Čas hodnoty z archívu je určený vzájomnou polohou bunky ktorá obsahuje volanie funkcie a blokom na ktorý odkazuje parameter target.

Blok musí byť jednoriadkový, alebo jednostĺpcový.



Jednoriadkový blok


Jednoriadkový (voliteľne viacstĺpcový) blok vymedzuje bunky, do ktorých je možné umiestniť funkciu D2_ArchValue ako obdĺžnik zhora ním ohraničený. Správne a nesprávne umiestnenie buniek znázorňuje nasledujúci obrázok (pre prehľadnosť je vo funkciách uvedený len parameter target):

Bunky C10, C11, C12, …, D10, D11, E10, E11, F10, F11, F12, … sú umiestnené nesprávne a bunky D12, D13, …, E12, E13, … sú umiestnené správne vzhľadom na blok D12:E12 (Target). Znak $ v odkaze na blok zaručí, že odkaz je absolútny (nie relatívny) a nebude pri kopírovaní buniek zmenený (prečíslovaný).

Vymedzením časového intervalu (bt, et) a kroku (step) dostaneme postupnosť archivovaných hodnôt usporiadaných vzostupne podľa času. Toto nám umožňuje jednotlivé hodnoty očíslovať vzostupne (podľa času) od 1. Závislosť medzi umiestnením funkcie (polohou bunky) D2_ArchValue a číslom (indexom) zaarchivovanej hodnoty znázorňuje nasledujúci obrázok:

Bunky, ktoré majú neprípustné umiestnenie, majú hodnotu invalid position (invalid target). V správne umiestnených bunkách je číslo (index) hodnoty, ktorá bude v skutočnosti zobrazená. Pri jednoriadkových blokoch sú bunky číslované od 1 (bunka v ľavom hornom rohu oblasti Target) postupne zľava doprava po riadkoch.

Príklad:

Ak sú parametre pre archívny blok napríklad:
BT =
10:00:00 1.1.2000
ET =
12:00:00 1.1.2000
STEP =
30*60 = 1800 (1/2 hodiny)

budú časy jednotlivých hodnôt nasledovné:

Číslo hodnoty

Čas hodnoty

1

10:00:00 1.1.2000

2

10:30:00 1.1.2000

3

11:00:00 1.1.2000

4

11:30:00 1.1.2000

5

12:00:00 1.1.2000

6

Hodnota je mimo žiadaného intervalu.

Pre hodnoty, ktoré sú mimo žiadaný interval je návratová hodnota funkcie chyba: #Value (#Hodnota), alebo hodnota bunky s menom SUPP_NO_ARCH_DATA, ak existuje (pozri Preddefinované bunky).

Jednostĺpcový blok


Jednostĺpcový (voliteľne viacriadkový) blok vymedzuje bunky, do ktorých je možné umiestniť funkciu D2_ArchValue ako obdĺžnik zľava ním ohraničený. Správne a nesprávne umiestnenie buniek znázorňuje nasledujúci obrázok (pre prehľadnosť je vo funkciách uvedený len parameter target):

Bunky C10, D10, D10, …, C11, D11, E11, …, C12, C13, C14, C15, C16, D16, E16, … sú umiestnené nesprávne a bunky D12, E12, …, D13, E13, …, D15, E15, … sú umiestnené správne vzhľadom na blok D12:D15 (Target).

Závislosť medzi umiestnením funkcie (polohou bunky) D2_ArchValue a číslom (indexom) zaarchivovanej hodnoty znázorňuje nasledujúci obrázok:

Napíšte komentár