Objekt PmAction
Popis:
Objekt představuje akci, která lze později vyvolat.
Tento objekt je zastaralý (ale funkční) a je určena pouze pro jazyk
VBScript. Pro jazyk
JavaScript je jednodušší a obecnější použít
function.
Poznámka:
Objekt
PmAction je výhodný tehdy, pokud je potřeba aby "někdo" vytvořil tento objekt (tzn. vytvořil "akci"), tento objekt předal někam dál a pak "někdo jiný někdy jindy" danou akci vyvolal. Důležité je, že ten "někdo jiný" pouze zavolá metodu
Call a vůbec nemusí vědět co vlastně ve skutečnosti volá (např. neví, že se zavolá nad nějakým objektem nějaká metoda projektanta s nějakým parametrem).
Způsoby použití objektu PmAction:
Vytvořenou akci lze použít dvěma způsoby:
1. Lze ji nastavit do systémové komponenty tak, že tato komponenta vyvolá akci sama až bude potřeba.
V tom případě projektant
nevolá metodu Call. Tuto metodu volá systémová komponenta a při volání může nastavit různé důležité informace ve vlastnostech objektu, který je pak dostupný ve volané metodě projektanta v parametru
oSystem.
Příklady systémových komponent, do kterých lze nastavit
PmAction:
2. Projektant používá akci pro své účely a sám pak
volá metodu Call kdy on uzná za vhodné.
Příklad vytvoření a použití objektu PmAction:
Vytvoří akci: V této části se vytvoří akce typu "volání metody projektanta" s názvem "
MyMeth1" v objektu, ve kterém je tento skript (tento objekt je tedy dostupný pomocí proměnné
pMe).
Zároveň se nastaví projektantsky zadávané vlastnosti v objektu (který je uložen v
PrivateData): vlastnost "
id" a "
val". Tyto vlastnosti pak budou dostupné při vyvolání akce.
Volání akce: V této části se akce vyvolá. Tento skript může být volán "někým jiným někde jinde", pouze musí mít přístup k vytvořené akci (přístup k hodnotě
oAction).
Pokud byla akce nastavena do nějaké systémové komponenty, pak projektant metodu
Call nevolá (je volána systémem).
Tímto voláním se zavolá metoda projektanta "
MyMeth1" (metoda definovaná v kartě "
Metody"), která musí mít dva parametry:
-
oSystem: Objekt typu
PmMap. Vlastnosti tohoto objektu
nastavuje systém podle toho odkud tuto akci volá.
-
oPrivate: Objekt typu
PmMap. Vlastnosti tohoto objektu
nastavuje projektant v objektu
PmAction.PrivateData.
To znamená, že tento objekt obsahuje dříve nastavené vlastnosti "
id" a "
val".
JavaScriptVBScriptVyber a zkopíruj do schránky
// Vytvoří akci
var oAction = Pm.CreatePmAction(1, pMe, "MyMeth1");
oAction.PrivateData.id = "Teplota";
oAction.PrivateData.val = 56;
// Volání akce
oAction.Call();
' Vytvoří akci
Dim oAction
Set oAction = Pm.CreatePmAction(1, pMe, "MyMeth1")
oAction.PrivateData.mapSetValueAt "id", "Teplota"
oAction.PrivateData.mapSetValueAt "val", 56
' Volání akce
oAction.Call