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

Lokálne premenné schémy


Lokálne premenné sú premenné, ktoré majú platnosť len v rámci inštancie schémy. To znamená, že tá istá schéma otvorená súčasne na viacerých konzolách používa svoje kópie lokálnych premenných. Lokálne premenné sú viditeľné len v rámci skriptu, na systémovej úrovni nie sú prístupné. Lokálne premenné je možné pripájať na grafické objekty a Windows prvky. Lokálne premenné sú rozdelené do piatich kategórií: 


  • Základné – nemajú žiadne špeciálne vlastnosti, je možné ich pripájať na objekty a tak ovplyvňovať hodnotu objektov.
  • Vstupno / Výstupné – umožňujú odovzdať parametre schéme otváranej z inej schémy a to oboma smermi.
  • Referenčné - slúžia na identifikáciu grafických objektov a Windows prvkov. Takéto premenné sa používajú v rámci skriptu ako jednoznačné identifikátory týchto objektov.
  • Indexové - slúžia na ovládanie aktuálne zobrazovaného riadku štruktúrovanej premennej pripojenej ku grafickému objektu na zobrazovanie.
  • Externé - ako základné, ale sú parametrizovateľné z rodičovskej schémy


Konfigurácia lokálnych premenných



Konfiguráciu lokálnych premenných schémy vyvoláme stlačením tlačidla Lokálne premenné, ktoré je umiestnené v hlavnom nástrojovom paneli.

Definícia jednej lokálnej premennej pozostáva z nasledovných atribútov:


Prvý stĺpecStĺpec slúži na označenie lokálnej premennej v zozname. Dvojité kliknutie na stĺpci zodpovedá stlačeniu tlačidla OK v dialógovom okne.
Po vložení grafických objektov zo schránky do schémy, stĺpec zobrazuje pridanú lokálnu, menný alebo definičný konflikt.
Druhý stĺpecPočet použití v grafických objektoch schémy (nie v skriptoch schémy), neplatí pre kategóriu INOUT
MenoMeno lokálnej premennej. Týmto menom je možné sa odkazovať na premennú ako pri pripájaní na objekty schémy, tak zo skriptu schémy. Musí začínať znakom '_'

Kategória

Kategória lokálnej premennej. Podľa zvolenej kategórie sú farebne odlíšené lokálne premenné v zozname:
  • LOCAL - základná lokálna premenná
  • INOUT  - vstupno / výstupná lokálna premenná použiteľná na odovzdávanie parametrov medzi schémami
  • REFID  - referenčná lokálna premenná slúžiaca na identifikáciu objektov pre použitie v skripte
  • INDEX  - indexová lokálna premenná indexujúca riadok štruktúrovanej premennej
Typ hodnotyTyp hodnoty lokálnej premennej. Možné typy sú:
  • BOOL - Dvojstavová, logická premenná
  • INT     - Celočíselná premenná
  • REAL  - Reálna premenná
  • TIME  - Premenná typu absolútny čas
  • TEXT  - Textová premenná
  • STRUCT - Štruktúrovaná premenná
ŠtruktúraAtribút je platný pre typ hodnoty STRUCT a definuje objekt typu Definícia štruktúry, ktorý určuje typ štruktúrovanej lokálnej premennej.
Atribút je platný tiež pre indexovú lokálnu premennú ovládajúcu filter (bližšie vysvetlenie v popise indexových lokálnych premenných).
Hodnota
  • pre referenčnú premennú definuje jej hodnotu pre použitie v skripte.
  • pre lokálne a externe premenné je to štartovacia hodnota premenných
Typ filtra
  • typ filtra indexovej lokálnej premennej (bližšie vysvetlenie v popise indexových lokálnych premenných).
  • parameter pre lokálne a externe premenné:
    • No start value - bez štartovacej hodnoty
    • Passive - pasívna štartovacia hodnota - iba sa nastaví pri otvorení schémy
    • Active - aktívna štartovacia hodnota  - pri kliknutí nad viditeľným, nezakázaným grafickým objektom používajúcim lokálnu premennú na zobrazenie sa do nej automaticky nastaví hodnota interného identifikátora objektu v D2000 prezentovaná výrazom MyValue. Táto hodnota sa dá použiť v zobrazovacích paletách použitím výrazu MyValue v stavovom skripte riadku palety.

Stavový textObjekt typu Stavový text, ktorý sa použije pre zobrazenie hodnoty lokálnej premennej pri jej pripojení na grafický objekt
Textová paletaDefinícia masky z transformačnej palety pre hodnoty typov INT, REAL a TIME z kategórií LOCAL a INOUT

Poznámka:  položky ktoré nemajú význam sú nedostupné a majú označenie ---

Použitie lokálnych premenných



Základné
Slúžia na pripojenie ku grafickým objektom / Windows prvkom. Pripojenie sa prevedie v paletke Pripojenie objektu v záložkách Pripojenie, Palety, Ovládanie... . Prostredníctvom takto pripojenej lokálnej premennej je možné modifikovať obsah a vzhľad objektu a meniť hodnotu premennej.
Vstupno/výstupné
Slúžia na odovzdávanie parametrov medzi schémami. Medzi schémami sú párované podľa mena - pri otvorení schémy z materskej schémy sa obsah premenných materskej schémy prekopíruje do vstupno / výstupných premenných s takým istým menom v otváranej schéme. Pred zatvorením novej schémy sa prekopíruje ich nový obsah späť do príslušných premenných materskej schémy.
Referenčné

 

 

Slúžia na pomenovanie, identifikáciu objektov. V podstate existujú tri prípady, kedy je potrebné identifikovať objekt:

  • Pri volaní funkcie objektu 
  • Pri definovaní obsluhy udalosti od objektu 
  • Pri zisťovaní zdroja udalosti v generickej obsluhe udalosti
- napr. %HI_SetText(_N1, "Text")
- napr. ENTRY N1_OnClick

- napr. ENTRY OnClick(IN INT _RefID)
              IF _RefID = _N1 THEN
Indexové
Slúžia na ovládanie aktuálne zobrazovaného riadku štruktúrovanej premennej pripojenej ku grafickému objektu na zobrazovanie. Ovládaním hodnoty indexovej premennej zo skriptu môžeme meniť aktuálne pripojený riadok štruktúry. Zmena hodnoty v schéme zmení hodnotu premennej, ale nemení pripojený riadok štruktúry.

Indexové premenné môžu ovládať tzv. filter. Filter umožňuje optimalizáciu komunikácie medzi procesom D2000 Server a procesom D2000 HI tým, že nie sú distribuované zmeny hodnôt celej štruktúrovanej premennej, ale len hodnôt riadku, ktorý je určený indexovou premennou. V tomto prípade musí byť indexová premenná zviazaná so štruktúrovanou premennou pomocou atribútu Štruktúra. Typ filtrovania je určený atribútom Typ filtra s nasledovným významom:

  • No filter - filtrovanie je vypnuté - distribuujú sa zmeny hodnôt všetkých riadkov.
  • Passive - filtrovanie je zapnuté. Počiatočná hodnota indexovej premennej nie je definovaná - je potrebné ju inicializovať v skripte. Pokiaľ nie je hodnota indexovej premennej definovaná, nie je distribuovaná žiadna zmena filtrovanej štruktúrovanej premennej.
  • Active - filtrovanie je zapnuté. Počiatočná hodnota indexovej premennej je automaticky nastavená podľa inštancie schémy. Po otvorení je teda distribuovaná hodnota riadku filtrovanej štruktúrovanej premennej podľa čísla inštancie schémy.

Pri zapnutom filtrovaní je možné distribúciu hodnôt riadiť tiež pomocou funkcií: %HI_OpenRow, %HI_CloseRow, %HI_ChangeRow.

Externé

Hodnoty externých premenných sú parametrizovateľné z rodičovskej schémy, ktorá zobrazuje túto schému v zobrazovači ako podschému. Pri parametrizácii z rodičovskej schémy je na takúto externú premennú možné naviazať inú premennú a externá premenná potom reprezentuje hodnotu tejto naviazanej premennej. Akákoľvek zmena naviazanej premennej sa teda premietne do zmeny hodnoty externej premennej. Väzba je obojsmerná, takže aj zmena externej premennej spôsobí zmenu naviazanej premennej. Externé premenné sa typicky používajú v prípade, keď je schéma použivaná ako komponent. Externé premenné je možné pripájať ku grafickým objektom rovnako ako základné premenné.


Poznámky:
Zoznam lokálnych premenných je usporiadaný najskôr podľa kategórie (stĺpec Kategória) a potom podľa mena (stĺpec Meno premennej). Okno zoznamu lokálnych premenných si pamätá pri znovuotvorení posledné použité triedenie.
Pri vzniku konfliktov (kapitola Vkladanie grafických objektov zo schránky do schémy) je zoznam triedený len podľa mena.
Kliknutie na hlavičku stĺpca utriedi zoznam zostupne, druhé kliknutie ho utriedi vzostupne.
Pri editácii lokálnej premennej z paletky Pripojenie objektu, záložka Skript, sa príslušný riadok v dialógovom okne lokálnych premenných farebne zvýrazní (sivá farba).

            

Write a comment…