Wprowadzenie do skryptów
Kurs Industrial Graphics w oprogramowaniu AVEVA, odc. 25
Kontakt w sprawie artykułu: Mateusz Zajchowski - 2026-07-24

W tym odcinku poznamy podstawy skryptów QuickScript.NET w symbolach Industrial Graphics.
Kurs projektowania symboli Industrial Graphics w oprogramowaniu wizualizacyjnym AVEVA
1. Wprowadzenie do Industrial GraphicsAby przejść do edytora skryptów, klikamy prawym klawiszem myszy w obszarze roboczym edytora Industrial Graphics i wybieramy opcję Scripts. Jest ona również dostępna za pomocą klawisza F10.

Po lewej stronie widzimy listę skryptów. Są to skrypty predefiniowane (Predefined Scripts), oraz Named Scripts,czyli skrypty zdefiniowane przez użytkownika. Okno domyślnie otwiera się na skryptach predefiniowanych.

Widzimy predefiniowany skrypt typu On Show. Rodzaj skryptu jest determinowany jest przez wyzwalacz, który wybieramy w polu Trigger. Są trzy typy skryptów predefiniowanych:
OnShow – uruchamia się w momencie wyświetlenia symbolu podczas otwierania okna,
WhileShowing – uruchamiany cyklicznie co określoną liczbę milisekund w czasie wyświetlania symbolu,
OnHide – uruchamiany w momencie zamykania okna z symbolem.
Warto pamiętać, że skrypty te nie są obligatoryjne – możemy ich używać, ale mogą też pozostać puste.
Prawa część okna zawiera edytor. W nagłówku edytora widzimy liczbę zdefiniowanych skryptów, a za pomocą strzałek możemy przełączać się pomiędzy poszczególnymi skryptami.

Jeżeli potrzebujemy więcej miejsca na ekranie, by wygodnie edytować dłuższe skrypty, możemy edytor zmaksymalizować, a także ukryć lewą i górną część okna, klikając w te elementy.

Wiersze w skryptach są ponumerowane. Jeżeli przytrzymamy klawisz CTRL, za pomocą kółka myszy możemy powiększać i pomniejszać czcionkę w oknie edytora.
Edytor obsługuje kolorowanie składni, wraz z zaznaczaniem błędów. Przykładowo użycie obiektu, który nie został zdefiniowany, jest sygnalizowane przez bordowy kolor. Edytor obsługuje również autouzupełnianie i podpowiedzi kodu.
Nazwy obiektów mogą zawierać znaki Unicode, a więc możliwe jest np. nazywanie zmiennych korzystając z alfabetów narodowych.

Klikając prawym przyciskiem myszy w treści skryptu wyświetlamy menu kontekstowe, które udostępnia funkcje schowka, możliwość zaznaczania całości skryptu (Select All), a także wyszukiwania i zamiany ciągów znaków.

W prawym górnym rogu znajdziemy dwa przyciski: gumkę, która czyści skrypt, a także przycisk walidacji, który pozwala zweryfikować, czy skrypt nie ma błędów.

Po prawej stronie ponad treścią skryptu znajdują się cztery przyciski, które zapewniają dostęp do dodatkowych funkcji.

Pierwsza z nich to przeglądarka funkcji Script Function Browser. Otwiera ona listę kategorii, z której można wybrać funkcje do użycia w skrypcie. Znajdziemy tu wszystkie funkcje skryptowe, jakie są dostępne, pogrupowane w czytelnych kategoriach.

Drugi przycisk otwiera przeglądarkę Galaxy Browser, ale z widokiem ograniczonym wyłącznie do biblioteki symboli Industrial Graphics. Dzięki temu można łatwo wybierać nazwy symboli do wykorzystania w skrypcie.

Trzeci przycisk otwiera przeglądarkę Automation Object Browser, która umożliwia dostęp do obiektów serwera aplikacji do użycia w skrypcie. Opcja ta jest wykorzystywana, gdy pracujemy z Platformą Systemową AVEVA.
Ostatni przycisk otwiera standardową przeglądarkę Galaxy Browser, która zapewnia dostęp do elementów graficznych wchodzących w skład symbolu, właściwości Custom Properties oraz zmiennych zdefiniowanych w aplikacji.

Oprócz skryptów predefiniowanych On Show, While Showing i On Hide możemy również wykorzystywać inne skrypty, zwane Named Scripts, które są uruchamiane pod innymi warunkami. Są one widoczne poniżej skryptów predefiniowanych.

Aby dodać taki skrypt, naciskamy przycisk z plusem, a następnie wpisujemy nazwę skryptu.

W polu Trigger wybieramy rodzaj skryptu, a precyzyjniej – typ warunku, jaki będzie aktywował ten skrypt.

Jest tu pięć opcji:
WhileTrue i WhileFalse – są to skrypty cyklicznie uruchamiane co określoną liczbę milisekund, w czasie kiedy warunek jest odpowiednio spełniony lub niespełniony.
Skrypty OnTrue i OnFalse z kolei uruchamiają się jednorazowo w momencie, kiedy warunek staje się odpowiednio spełniony lub niespełniony.
Sam warunek uruchomienia skryptu podajemy w polu Expression. Może to być np. warunek logiczny typu
zmienna > wartość
Dla warunków WhileTrue i WhileFalse w polu Period określamy, co ile milisekund będą one wykonywane.

Ostatnia opcja to skrypt typu DataChange. Jest on uruchamiany za każdym razem, kiedy wartość wprowadzona w polu Expression zmieni się. W tym przypadku warunkiem jest zwykle po prostu zmienna albo właściwość Custom Property. Każda zmiana jej wartości aktywuje skrypt. W tym przypadku możemy dodatkowo określić Deadband, czyli nieczułość. Gdy to zrobimy, tylko zmiany większe niż ta wartość będą aktywowały skrypt.

Co istotne, możemy zdefiniować wiele różnych skryptów Named Scripts, z różnymi warunkami. Nawet dla tego samego warunku możemy zdefiniować oddzielne skrypty różnych rodzajów (np. OnTrue, WhileTrue itp.). Co więcej, dla tego samego warunku możemy zdefiniować nawet kilka skryptów WhileTrue lub WhileFalse, różniących się częstotliwością uruchamiania (Period).
W kolejnym odcinku dowiemy się więcej o zmiennych i komentarzach w skryptach.