Pri štarte skriptu pomocou akcie EVENT je možné špecifikovať parametre, ktoré sa prenesú do štartovaného skriptu. Prenesenie parametrov je implementované ako naplnenie definovaných lokálnych premenných štartovaného skriptu hodnotami z lokálnych premenných skriptu, ktorý volá akciu EVENT.

Príklad - Skript ktorý volá iný skript nazvaný E.SubScript

INT _i
_i := 1
EVENT E.SubScript(_par1 = _i)
END


Skript E.SubScript

PUBLIC INT _par1
PUBLIC INT _par2
_par1 := 2
END

V prvom skripte je deklarovaná lokálna premenná _i, ktorá je inicializovaná pred volaním skriptu E.SubScript na hodnotu 1. Štartovanie vnoreného skriptu E.SubScript prebieha s predaním (kopírovaním) hodnoty lokálnej premennej volajúceho skriptu _i do lokálnej (PUBLIC) premennej volaného skriptu _par1. Pri tejto činnosti je kontrolovaná existencia všetkých lokálnych premenných lokálneho skriptu. Tieto musia byť deklarované ako PUBLIC. V prípade, že sa jedná o odkaz na objekt systému (ALIAS), nie je prenášaná hodnota, ale odkaz. Akcia EVENT je synchrónna, teda čaká na ukončenie vnoreného (volaného) skriptu. Po jeho skončení, sú hodnoty (a odkazy) spätne kopírované do lokálnych premenných volajúceho skriptu. V prípade lokálnych premenných typu ALIAS sú kopírované odkazy. Ak pri volaní skriptu nie je niektorá PUBLIC lokálna premenná inicializovaná, má neplatnú hodnotu (Invalid), na rozdiel od ostatných premenných.

Upozornenie

  • Pri editácii skriptu v procese D2000 CNF sa nekontroluje existencia PUBLIC lokálnych premenných vo volanom skripte.

Súvisiace stránky:

Napíšte komentár