umożliwia w skrypcie wpływanie na sposób zastosowania owego skryptu w systemie PROMOTIC oraz również ewentualnie modyfikację samej zawartości skryptu.
dochodzi w chwili kompilacji takiego skryptu i tym różni się od wołanie metod podczas uruchomienia skryptu. W przypadku Web aplikacji skrypty panela są wprawdzie uruchamiane u kilenta, lecz przetworzenie dyrektywy
usunie ze skryptu. Jednak na miejsce byłej dyrektywy
zawsze jest zapisana w notatce skryptu, tzn. w
#pragma variable
Służy do modyfikacji właściwego skryptu, to znaczy, że do skryptu jest włożony nowy kod, jako wynik obliczenia odpowiedniej dyraktywy
#pragma.
Dyrektywa skryptu ta włoży do ciała skryptu kod zawierający założenie zmiennej lokalnej w skrypcie o odpowiedniej nazwie (polecenie
var dla
JavaScript lub
Dim dla
VBScript) a następnie kod do zinicjalizowania zmiennej odpowiednią wymaganą wartością (wartością taką może być również odniesienie do obiektu).
Włożony kod, powstały w wyniku przetworzenia jednej i tej samej dyrektywy
#pragma w tym samym skrypcie może różnić się na przykład w zależności od tego, czy skrypt znajduje się w lokalnym albo w
Web panelu, itd.
Ten typ dyrektywy
#pragma sprawia, że skrypty są bardzeij przejrzyste, umożliwia w sposób systemowy wychwycić odniesienia do obiektów oraz również umożliwia wychwycić niektóre różnice pomiędzy panelem lokalnym a
Web panelem.
#pragma variable x = Macro("makro wyrażenie"):
Umożliwia obliczyć makro wyrażenie. W skrypcie wytworzy zmienną lokalną oraz ustawi jej wartość początkową na wartość rezultatu obliczenia makro wyrażenia. Służy zwłaszcza do wczytania lokalizacyjnego tekstu (
Makro wyrażenie $.text). W przypadku Webu dochodzi do obliszenia wyrażenia już na serwerze, więc obliczenie dyrektywy
#pragma posiada dostęp do danych i plików serwera.
Na przykład
'#pragma variable sComment = Macro("$.text('sys','comment')")
Inną możliwością jak uzyskać lokalizowany tekst użycie
Makro wyrażenie $.text lub
EvalMacro.
#pragma variable x = PmaObjectRef("ścieżka"):
Umożliwia uzyskanie
odniesienia do Pma obiekt w drzewie
Pma obiektów lub jego implementacyjny podobiekt. W skrypcie zostanie założona zmienna lokalna i zostanie ustawiona jej wartość początkowa jako odniesienie do wymaganego obiektu.
W ten sposób uzyskane odniesienie do obiektu jest dogodne, ponieważ odniesienie jest znane już w środowisku deweloperskim
PROMOTIC, to znaczy, że system PROMOTIC wie o takim odniesieniu i jest znany typ obiektu, do którego jest wytwarzane odniesienie co w przyszłości umożliwi w edytorze skryptu inteligentną pomoc z lictą metod i właściwości obiektu, itd.
Do uzyskania obiektu położonego na dynamicznej (z góry nie znanej) ścieżce służy metoda
PmaObject.Pm.
Na przykład
'#pragma variable oTemperature1 = PmaObjectRef("/Block1/Data/#vars/Temperature1")
Na przykład
'#pragma variable oTemperature1 = PmaObjectRef("../Data/#vars/Temperature1")
#pragma variable x = PmgObjectRef("ścieżka"):
Umożliwia uzyskanie
odniesienia do Pmg obiektu lub do jego podobiekt implementacyjnego w panelu. W skrypcie zostanie założona zmienna lokalna i zostanie ustawiona jej wartość początkowa jako odniesienie do wymaganego
Pmg obiektu lub jego implementacyjny podobiekt Dyrektywa skryptu ta działa wyłącznie w skryptach w panelach (zdarzenia
Pmg obiektów).
W ten sposób uzyskane odniesienie do obiektu jest dogodne, ponieważ odniesienie jest znane już w środowisku deweloperskim
PROMOTIC, to znaczy, że system PROMOTIC wie o takim odniesieniu i jest znany typ obiektu, do którego jest wytwarzane odniesienie co w przyszłości umożliwi w edytorze skryptu inteligentną pomoc z lictą metod i właściwości obiektu, itd.
Do uzyskania
Pmg obiektu położonego na dynamicznej (z góry nie znanej) ścieżce służy metoda
PmgObject.Items.
Na przykład
'#pragma variable oEdit0 = PmgObjectRef("../edit0")
Na przykład
'#pragma variable oTemperatura1 = PmgObjectRef("../edit0/#vars/Temperatura1")
#pragma option
Służy do wpłynięcia na sposób, w jaki w systemie
PROMOTIC zostanie zastosowany skrypt, to znaczy, że ustawia niektóre parametry systemu PROMOTIC. Nie dochodzi do modyfikacji zawartości skryptu (z wyjątkiem usunięcia właściwej dyrektywy
#pragma).
#pragma option OldGlobalMethodCall:
Umożliwia włączenie starego sposobu wywoływania metod globalnych, kiedy metody globalne były wywoływane w skrypcie bezpośrednio przez ich nazwę (tak samo jak funkcje języka
VBScript). Sposób ten jednak nie był zgodny z Web aplikacjami. W nowy sposób można metody globalne wywołać przy pomocy
Pm.Methods. Ta dyrektywa skryptu ma sens tylko dla metod globalnych aplikacji. Jeżeli nie jest ustawione (lub jeżeli jest zastosowana wartość
0), wtedy jest wykorzystany nowy sposób wywołania metod globalnych.
Składnia: '#pragma option OldGlobalMethodCall = 0/1
gdzie 0 (domyślnie) oznacza nowy sposób a 1 oznacza stary sposób.
Na przykład
'#pragma option OldGlobalMethodCall = 1
Przykład wywołania metody globalnej
Test z dwoma parametrami w skrypcie bezpośrednio w
stary sposób:
v = Test(5, 8)
Przykład wywołania metody globalnej
Test z dwoma parametrami w skrypcie pośrednio w
nowy sposób:
v = Pm.Methods.Test(5, 8)