Promotic

Set - polecenie języka VBScript

Opis:
Przyszeregowanie odniesienia do obiektu do zmiennej (lub do właściwości obiektu).
Składnia:

Set zmienna_obiektowa = {wyrażenie_obiektowe | Nothing}

zmienna_obiektowa Nazwa zmiennej lub właściwości, według standardowych konwencji nazewnictwa zmiennych.
wyrażenie_obiektowe wyrażenie składające się z nazwy obiektu, innej deklarowane zmiennej tego samego obiektowego typu, metody lub funkcji, które zwracają taki sam obiektowy typ danych
Nothing Usuwa powiązanie w zmiennej zmienna_obiektowa i dowolnego obiektu Przez przyszeregowanie wartości Nothing do zmiennej zmienna_obiektowa zostaną zwolnione wszystkie systemowe i pamięciowe źródła połączone z poprzednim odnoszonym obiektem, jeżeli nie odnosi się do niego żadna inna zmienna.
Notatka:
Żeby zmienna_obiektowa była ważna, to musi odpowiadać typ odnoszonego obiektu obiektowemu typu zmiennej. Po przyszeregowaniu zmienna będzie typu Object.

Polecenia Dim lub ReDim deklarują wyłącznie zmienną odnoszącą się do obiektu. Dopóki jednak nie jest zastosowane żadne polecenie Set dla określonego obiektu, zmienna nie odnosi się do żadnego rzeczywistego obiektu.

Ogólnie obowiązuje, że przez zastosowanie polecenia Set nie powstaje żadna kopia obiektu. Powstaje tylko odniesienie do obiektu. Kilka zmiennych obiektowych może odnosić się jednocześnie do tego samego obiektu. Ponieważ zmienne są raczej odniesieniami niż kopiami obiektu, to jakakolwiek zmiana w obiekcie przejawi się we wszystkich zmiennych, które odnoszą się do tego obiektu.

W skryptach systemu PROMOTIC można zakładać zmienną również za pomocą dyrektywy #pragma variable, która umożliwia wytworzenie zmiennej z już ustawioną specjaliną wartością (np. odniesienie do obiektu, tekst w danym języku, itd.). W przypadku tym sposobem wytworzonej zmiennej polecenie Dim oraz Set nie jest stosowane.

W języku JavaScript w podobnym celu stosowane jest polecenie var.
Patrz również:
Przykład:
VBScriptWybierz oraz skopiuj do schowka

Dim oTemperature
Set oTemperature = pMe.Pm("/Data/#vars/Temperature")
Pm.Debug "Temperature=" & oTemperature.Value
© MICROSYS, spol. s r.o.