W systemie PROMOTIC istnieje wiele sposobów, jak zdefiniować zmienną. Podstawowy podział to zmienne licencjonowane oraz nielicencjonowane. Wielkość aplikacji określa ilość zmiennych licencjonowanych oraz można ją stwierdzić w konfiguratorze "
Jak efektywnie pracować ze zmiennymi licencjonowanymi
Rozszerzenia danych:
Rozszerzenia danych zmiennych w obiekcie
PmaData umożliwiają w jednej zmiennej ustawić:
- że zmienna ma być trendowana (
ExtTrend) - z tego powodu nie trzeba definiować dodatkową zmienną w obiekcie
PmaTrendGroup
- że zmienna ma zostać podłączona do drivera komunikacyjnego (
ExtComm) - z tego powodu nie trzeba definiować dodatkową zmienną w obiekcie
PmaCommGroup
- że zmienna ma się komunikować poprzez
OPC (
ExtOpcDa) - z tego powodu nie trzeba definiować dodatkową zmienną w obiekcie
PmaOpcDaClientGroup
Kolumny "Tylko do odczytu" w obiekcie PmaDataTable:
Z powodu licencjonowania każda komórka tabeli zwiększa wielkość aplikacji. Jeżeli w obiekcie
PmaDataTable zostanie zaznaczona kolumna jako
"Tylko do odczytu", wtedy komórki tej kolumny nie zwiększają wielkości aplikacji pod względem licencjonowania. To umożliwia również w aplikacjach z mniejszą ilością punktów stosować obiekt ten w celu przechowywania wartości konfiguracyjnych, które na czas działania aplikacji są stałymi. Realizacyjnie jest to zapewnione w taki sposób, że do kolumn "Tylko do odczytu" można wpisać wartości tylko raz. Ograniczenia dla pojedyńczych metod obiektu
PmaDataTable z powodu kolumn "Tylko do odczytu" są opisane w notatce tej metody.
Driver komunikacyjny
PmChar umożliwia w obiekcie
PmaCommMsg zestawić dane, które zostaną wysłane (w karcie "
Dane-wysłanie") oraz dane, które zostaną odebrane (w karcie "
Dane-odbiór").
Zmienne z obu kartach to zmienne licencjonowane.
Jeżeli potrzeby zestawiania złożonej wiadomości zawierającej dużą ilość zmiennych, wtedy w kartach nie trzeba definiować dużej ilości zmiennych ale można w każdej z kart posiadać tylko jedną zmienną typu
String.
- Zmienną w karcie "
Dane-wysłanie" można ustawić w skrypcie przed wysłaniem wiadomości. Można użyć wartości z wielu innych zmiennych znajdujących się w innych obiektach.
- Zmienną w karcie "
Dane-odbiór" należy odczytać w zdarzeniu
onEndOfTransfer. Podczas odczytu wartości można uzyskany
String opracować tak, że uzyskane z niego wartości zostaną zapisane do wielu innych zmiennych znajdujących się w innych obiektach.
W taki sposób można osiągnąć to, że poprzez jedną zmienną można wysłać/odczytać większą ilość danych.
Jeżeli komunikacja nie jest znakowa ale binarna, wtedy można ustawić, że dane mają zostać zapisane do obiektu
PmaCommMsg w formie
HexaString - patrz
Transmisja danych binarnych.