Identifikátory v ESL

Identifikátory v ESL

Identifikátor

Identifikátory v skripte slúžia ako prostriedok (nástroj) na sprístupnenie hodnoty objektu alebo lokálnej premennej. V prípade, že ide o štruktúrovanú hodnotu, je možné prostredníctvom identifikátora pristúpiť k celej hodnote, riadku štruktúrovanej hodnoty alebo k jej položke.

Nasledujúci obrázok znázorňuje a pomenúva všetky možné spôsoby odkazu na hodnotu použiteľné v ESL:

Identifikátor hodnoty
Identifikátor hodnoty

Poznámky:

  • Hodnotu označujú len farebné políčka.

  • Políčko zafarbené na zeleno predstavuje hodnotu (skupinu hodnôt v prípade štruktúry), kde nie sú odkazy na iné objekty (ALIAS alebo stĺpec typu Objekt).

  • Políčko zafarbené na červeno predstavuje hodnotu (skupinu hodnôt v prípade štruktúry), kde sú odkazy na iné objekty (ALIAS alebo stĺpec typu Objekt).

  • Kombinácia farieb zelená + červená predstavuje hodnotu (skupinu hodnôt v prípade štruktúry), kde môžu byť kombinované hodnoty aj odkazy.

  • Každý spôsob odkazu na hodnotu je pomenovaný (červený text nad políčkom).

Príklady k jednotlivým typom odkazov na hodnotu:

Typ odkazu (meno)

Popis hodnoty

Príklad

IC_C

Konštanta

"Text", 1, ...

IC_HOBJ_EXPR

Výraz typu HOBJ interpretovaný ako odkaz na objekt. Tento je v zátvorkách na pozícii, kde je očakávaný identifikátor.

(20), (Sec\HBJ)

IC_VOBJ_EXPR

Tri výrazy v zátvorke oddelené čiarkami:

  1. jednoznačný identifikátor - výraz typu HOBJ

  2. číslo riadku - výraz typu INT

  3. číslo stĺpca - výraz typu INT

Poznámka: Odkaz je možné použiť ako odkaz na archívny objekt len pre akcie GETARCHVAL, GETARCHARR a SETDT_LINEOBJ.

(H.Struct\HBJ, 2, 3)

IC_O

Objekt iného typu ako Štruktúrovaná premenná.

Sec, SysTime, Meraný bod, ...

IC_O_R

Objekt typu Štruktúrovaná premenná.

SV.Struktura

IC_O_R_R

Riadok objektu typu Štruktúrovaná premenná. Ak je index 0, ide o celú hodnotu podobne ako pri IC_O_R.

SV.Struktura[2], SV.Struktura[0]

IC_O_R_RIA

Položka riadku objektu typu Štruktúrovaná premenná. Položka je typu Objekt (odkaz na objekt).

SV.Struktura[2]^Object

IC_O_R_RIN

Položka riadku objektu typu Štruktúrovaná premenná. Položka nie je typu Objekt (odkaz na objekt).

SV.Struktura[2]^Text

IC_L

Lokálna premenná typu BOOL, INT, TEXT, TIME alebo REAL.

 

IC_L_CONST

Konštantná (inicializovaná) Lokálna premenná typu BOOL, INT, TEXT, TIME alebo REAL.

 

IC_L_AN

Lokálna premenná typu ALIAS (netypový).

ALIAS _a

IC_L_AT

Lokálna premenná typový ALIAS (bez indexu alebo prístupu na položku).

ALIAS (SD.RecordDef) _recA

IC_L_AT_R

Riadok objektu typu Štruktúrovaná premenná na ktorú aktuálne odkazuje typový ALIAS. Ak je index 0, ide o celú hodnotu.

_recA[1] alebo celá hodnota
_recA[0]

IC_L_AT_RIA

Položka riadku objektu typu Štruktúrovaná premenná na ktorú aktuálne odkazuje typový ALIAS. Položka je typu Objekt (odkaz na objekt).

_recA[1]^Object

IC_L_AT_RIN

Položka riadku objektu typu Štruktúrovaná premenná na ktorú aktuálne odkazuje typový ALIAS. Položka nie je typu Objekt (odkaz na objekt).

_recA[1]^Text

IC_L_RNA

Lokálna premenná typu Record. Odkaz na celú hodnotu.

RECORD NOALIAS (SD.RecordDef) _recNA

IC_L_RNA_R

Riadok lokálnej premennej typu Record. Ak je index 0, ide o celú hodnotu podobne ako pri IC_L_RNA.

_recNA[1] alebo celá hodnota _recNA[0]

IC_L_RNA_RIA

Položka riadku lokálnej premennej typu Record. Položka je typu Objekt (odkaz na objekt). Vzhľadom na zakázané odkazy na objekty táto položka prestavuje jednoduchú hodnotu (bez preddefinovaného typu hodnoty).

_recNA[1]^Object

IC_L_RNA_RIN

Položka riadku lokálnej premennej typu Record. Položka nie je typu Objekt (odkaz na objekt). Na rozdiel od IC_L_RNA_RIA má položka definovaný typ hodnoty.

_recNA[1]^Text

IC_L_R

Lokálna premenná typu Record. Odkaz na celú hodnotu.

RECORD (SD.RecordDef) _rec

IC_L_R_R

Riadok lokálnej premennej typu Record. Ak je index 0, ide o celú hodnotu podobne ako pri IC_L_R.

_rec[1] alebo celá hodnota
_rec[0]

IC_L_R_RIA

Položka riadku lokálnej premennej typu Record. Položka je typu Objekt (odkaz na objekt).

_rec[1]^Object

IC_L_R_RIN

Položka riadku lokálnej premennej typu Record. Položka nie je typu Objekt (odkaz na objekt).

_rec[1]^Text

IC_L_NR

Lokálna premenná typu Record (nie je definovaný typ štruktúry). Odkaz na celú hodnotu.

RECORD () _rec

IC_L_NR_R

Riadok lokálnej premennej typu Record (nieje definovaný typ štruktúry). Ak je index 0, ide o celú hodnotu podobne ako pri IC_L_NR.

_rec[1] alebo celá hodnota
_rec[0]

IC_L_NR_RII

Položka riadku lokálnej premennej typu Record (nie je definovaný typ štruktúry). Stĺpec je definovaný číslom.

_rec[1]^_iCol

IC_L_NRNA

Lokálna premenná typu Record (nie je definovaný typ štruktúry). Odkaz na celú hodnotu.

RECORD NOALIAS () _recNA

IC_L_NRNA_R

Riadok lokálnej premennej typu Record (nie je definovaný typ štruktúry). Ak je index 0, ide o celú hodnotu podobne ako pri IC_L_NRNA.

_recNA[1] alebo celá hodnota
_recNA[0]

IC_L_NRNA_RII

Položka riadku lokálnej premennej typu Record (nie je definovaný typ štruktúry). Stĺpec je definovaný číslom.

_recNA[1]^_iCol