Promotic

onDataReceive - událost objektu PmaOpcDaClientGroup

Popis:
Událost je vyvolána po příjmu dat z OPC serveru.
Způsob vyvolání této události závisí na nastavení konfigurátoru "Událost "onDataReceive"". Je doporučeno nastavení "A = volat pro všechny zaregistrované proměnné (v tomto objektu i v jiných objektech PmaData)".
Parametry:
pMe(Object) Reference na PmaOpcDaClientGroup objekt, ve kterém daná událost vzniká.
pEvent(Object) Reference na objekt, který popisuje informace o dané události.
pEvent.Items - (Array) [pro čtení] Vlastnost je nastavena pouze pokud konfigurátor "Událost "onDataReceive"" je nastaven na hodnotu:
- "A = volat pro všechny zaregistrované proměnné (v tomto objektu i v jiných objektech PmaData)".
Tehdy každá položka tohoto pole představuje objekt "datové rozšíření ExtOpcDa" proměnné, která je definovaná buď v objektu PmaOpcDaClientGroup nebo v jiném objektu PmaData.
- "B = volat pro celou skupinu přijatých proměnných - pouze pro proměnné definované v tomto objektu (zastaralé)".
Tehdy každá položka tohoto pole představuje objekt PmVar, která je definovaná v objektu PmaOpcDaClientGroup. Proměnné v jiných PmaData objektech (které mají datové rozšíření ExtOpcDa) se zde nezachycují.

V obou případech pokud se z OPC serveru přijme současně například 10 datových položek, pak událost je vyvolána jen jednou a v poli je těchto 10 položek.
pEvent.VarName - (String) [pro čtení] Název položky dat. Vlastnost je nastavena pouze pokud konfigurátor "Událost "onDataReceive"" je nastaven na "C = volat pro každou proměnnou zvlášť - pouze pro proměnné definované v tomto objektu (zastaralé)".
Například pokud se z OPC serveru přijme najednou 10 datových položek, pak událost je vyvolána pro každou položku zvlášť a ve vlastnosti pEvent.VarName je název této položky.
pEvent.Reason - (Long) [pro čtení] Důvod příjmu.
0 - Příjem z automatické aktualizace (pouze pokud konfigurátor "Obnovit ze serveru při změně na serveru" je zatržen).
1 - Po volání metody Read.
2 - Po volání metody Refresh.
Poznámka:
Vyvolání této události lze i emulovat v INFO systému, když se při prohlížení tohoto objektu stiskne tlačítko "Akce". Viz oprávnění "PmaRoot > Oprávnění > InfoEdit".
Viz také:
Příklad:
Konfigurátor "Událost "onDataReceive"" je nastaven na "A = volat pro všechny zaregistrované proměnné (v tomto objektu i v jiných objektech PmaData)".
Informace o všech přijatých datech vypíšeme do položky Debug INFO systému:
JavaScriptVBScriptVyber a zkopíruj do schránky

var aItems = pEvent.Items;
var nItems = aItems.GetSize(1);
Pm.Debug("OPC onDataReceive: Size=" + nItems + ", Reason=" + pEvent.Reason);

var iItm;
for (iItm = 0; iItm < nItems; iItm++)
{
Pm.Debug("Name=" + aItems.GetItem(iItm).Var.Name);
Pm.Debug("Value=" + aItems.GetItem(iItm).Var.Value);
Pm.Debug("Quality=" + aItems.GetItem(iItm).Var.Quality);
Pm.Debug("ItemId=" + aItems.GetItem(iItm).ItemId);
}
© MICROSYS, spol. s r.o.