Promotic

Pm - metoda objektu PmaObject

Popis:
Vrací referenci na Pma objekt nebo na jeho implementační podobjekt.
Syntaxe:
Object Pm(String sPath, [Long nAttr])
Parametry:
sPath(String) Relativní nebo absolutní cesta k Pma objektu ve stromu Pma objektů (rozlišuje velká/malá písmena).
Cesta popisuje umístění objektu ve stromu Pma objektů. Adresace jednotlivých úrovní stromu je oddělena znakem /.
- Na vnořený Pma objekt se odkazuje jeho názvem.
- Na nadřízený Pma objekt se odkazuje znaky ...
- Na vnořený implementační podobjekt (není typu PmaObject) se odkazuje znakem #, za nímž následuje typ implementačního podobjektu (např. #vars).
To znamená, že # adresace opouští strom Pma objektů aplikace (vytvořený uživatelem) a začíná adresovat implementační podobjekty Pma objektu. Například "/appdata/data/#vars/Teplota".
nAttr[nepovinné] (Long) umožňuje změnit chování funkce.
0 (přednastaveno) - Standardní chování.
1 - Při odkazu na neexistující objekt nebude generována globální chyba INFO systému.
Poznámka:
Pomocí této metody lze získat referenci na daný objekt relativně k objektu, nad kterým je tato metoda volána. V parametru sPath nemusí být tedy plná cesta (absolutní cesta), ale relativní cesta. Relativní cesta se zadává bez počátečního znaku lomítko (/). Pokud se požaduje odkazovat na nadřízený (rodičovský) objekt, pak lze zadat 2 tečky (tak jak je zvykem například u zadávání relativní cesty k souborům v OS Windows).
Pokud cesta určená parametrem sPath začíná znakem lomítko (/), pak se považuje tato cesta za absolutní, tzn. cesta je určena relativně k kořenovému objektu aplikace - relativní k objektu PmaRoot.

Identifikátor #vars: Na objekt PmVar se dá také odkázat přímo rozšířením cesty metody Pm pomocí identifikátoru #vars. Tento identifikátor lze použít v metodě Pm nebo v datové vazbě "PP - Datová vazba na vlastnost Pma objektu".
Například metoda Pm("/data/#vars/Teplota) vrací proměnnou "Teplota" (objekt PmVar) v objektu data (objekt PmaData).
 
Identifikátor #ext: Na objekty Datová rozšíření v proměnné PmVar se dá také odkázat přímo rozšířením cesty metody Pm pomocí identifikátoru #ext.
Lze použít v metodě Pm nebo ve vazbě PP v aplikaci a v obrazech.
Například metoda pMe.Pm("/data/#vars/Teplota/#ext/al") vrací datové rozšíření s identifikátorem al (ExtAlarmAnalog) v proměnné "Teplota" (PmVar) v objektu data (objekt PmaData).

Pro vytvoření proměnné typu Object obsahující referenci na Pma objekt ve stromu Pma objektů nebo jeho implementační podobjekt. Viz také: #pragma variable x = PmaObjectRef("cesta").
Viz také:
Příklad:
JavaScriptVBScriptVyber a zkopíruj do schránky

// Vrací referenci na Pma objekt pomocí absolutní cesty:
o = oObject.Pm("/Kotel1/Teplota");

// Vrací referenci pomocí relativní cesty. Objekt bude hledán na stejné úrovni ve stromu objektů jako objekt, nad nímž je metoda volána:
o = oObject.Pm("../Teplota");

// Vrací referenci pomocí relativní cesty. Objekt bude hledán mezi podobjekty objektu nad nímž je metoda volána:
o = oObject.Pm("Teplota");

// Vrací referenci na podobjekt PmVar objektu PmaData:
oVar = pMe.Pm("/Kotel1/Data/#vars/Teplota");

// Zjistí existenci určitého objektu (případná chyba nebude generována v INFO systému):
o = oObject.Pm("/Kotel1/Teplota", 1);
if (o)
{
// ...
}
© MICROSYS, spol. s r.o.