Promotic

Obiekt PmAction

Opis:
Obiekt przedstawia akcję, którą można później wywołać.
Obiekt ten jest przestarzały (lecz funkcjonalny) oraz jest przeznaczona tylko dla języka VBScript. Dla języka JavaScript prostrzym oraz ogólniejszym jest zastosowanie function.
Właściwości i metody:
Call()Wołanie akcji
PrivateDataObiekt zawierający projektantem zdefiniowane właściwości
Notatka:
- Obiekt można wytworzyć przy pomocy metody Pm.CreatePmAction.
- Obiekt ten działa również w Web panelach.


Obiekt PmAction jest odpowiedni wtedy, jeżeli istnieje potrzeba by "ktoś" wytworzył obiekt ten (tzn. wytworzył "akcję"), obiekt ten przekazał w dowolne miesjce a później "ktoś kiedyś" daną akcję wywołał. Ważnym jest, że ten "ktoś" tylko wywoła metodę Call i wogóle nie musi znać zawartości (np. nie wie, że ponad dowolnym obiektem zostanie wywołana dowolna metoda projektanta z jakimś parametrem,).

Sposoby stosowania obiektu PmAction:
Wytworzoną akcję można użytkować na dwa sposoby:
1. Można ją ustawić do komponentu systemowego tak, że ten komponent wywoła akcję samodzielnie aż będzie potrzebna.
W tym przypadku projektant nie woła metodę Call. Tą metodę woła komponent systemowy a przy wywołaniu może ustawić różne ważne informacje w właściwościach obiektu, który jest poźniej dostępny w wołanej metodzie projektanta w parametrze oSystem.
Przykłady komponent systemowych, w których można ustawić PmAction:
- Zamknięcie panela: W metodzie OpenView można ustawić akcję w danej oExtra.onClose. Akcja zostanie wywołana podczas zamykania panela a w parametrze oSystem zostanie ustawiona właściwość ReturnValue.
2. Projektant korzysta z akcji dla swoich potrzeb i później woła metodę Call kiedy uzna za stosowne.

Przykład wytworzenia oraz zastosowania obiektu PmAction:
Wytworzy akcję: W tej częsci zostanie wytworzona akcja typu "wołanie metody projektanta" o nazwie "MyMeth1" w obiekcie, w którym znajduje się ten skrypt (obiekt ten jest dostępny przy pomocy zmiennej pMe).
Równocześnie zostaną ustawione projektantem wprowadzane właściwości w obiekcie (który jest zapisany w PrivateData): właściwość "id" oraz "val". Właściwości te będą dostępne podczas wołania akcji.
Wołanie akcji: W tej części zostanie akcja wywołana. Skrypt ten może zostać wywołany "kimkolwiek gdziekolwiek", musi tylko posiadać dostęp do wytworzonej akcji (dostęp do wartości oAction). Jeżeli akcja została ustawiona w dowolnym komponencie systemowym, wtedy projektant nie woła metody Call (jest wołana sestemem).
Tym wołaniem zostanie wywołana metoda projektanta "MyMeth1" (metoda zdefiniowana w karcie "Metody"), która musi posiadać dwa parametry:
- oSystem: Obiekt typu PmMap. Właściwości tego obiektu ustawia system według tego skąd dana akcja jest wołana.
- oPrivate: Obiekt typu PmMap. Właściwości tego obiektu ustawia projektant w obiekcie PmAction.PrivateData.
To znaczy, że obiekt ten zawiera wcześniej ustawione właściwości "id" oraz "val".
JavaScriptVBScriptWybierz oraz skopiuj do schowka

// Wytworzy akcję
var oAction = Pm.CreatePmAction(1, pMe, "MyMeth1");
oAction.PrivateData.id = "Temperatura";
oAction.PrivateData.val = 56;
// Wołanie akcji
oAction.Call();

Historia:
Pm8.03.06: Wytworzono
© MICROSYS, spol. s r.o.