Promotic
WikipediaLinkedInYoutubeTwitterFacebook

Události

V předchozích kapitolách jste v objektu "BoilerPlant/Boiler1/Data" vytvořili tři proměnné, "Temperature", "Power" a "Status". Do objektu "Temperature" se zapisuje každou sekundu číslo generované ve skriptu časovače "Emul". Hodnotu výkonu měníte a ovlivňujete posouváním táhla objektu PmgSliderPane, který jste umístili do okna nazvaného "Panel".
 

V některých případech je potřeba zaznamenávat události (např. přepínání stavových tlačítek – změna hodnoty). Tyto požadavky řeší systém PROMOTIC pomocí systému eventů. Systém PROMOTIC může tyto události zapisovat a následně prohlížet jejich historii.

 
V této kapitole se naučíte:
- přidat do aplikace a nastavit objekt PmaEventGroup, který zajišťuje vyhodnocování eventů
- definovat, jaké proměnné a jakým způsobem chcete eventovat
 

Přidání objektu PmaEventGroup

Nejprve v editoru Pma objektů vytvořte v objektu "Boiler1" nový objekt typu PmaEventGroup - eventová skupina.
 
V otevřeném konfiguračním okně se zobrazí následující dotazy:
 
Identifikátor skupiny: zadejte "Boiler1ev".
 
Zobrazovaný název skupiny: zadejte "Boiler no.1 events".
 
V jedné aplikaci může být více objektů PmaEventGroup a k jejich rozlišení se používá identifikátor skupiny. Proto každý objekt PmaEventGroup musí mít jedinečný identifikátor skupiny v rámci celé aplikace. Další konfigurátory ponechte beze změny.

Při vytvoření nového objektu PmaEventGroup je také automaticky vytvořen jeden vzor pro dynamicky vytvářené eventy, jeho nastavení můžete ověřit a případně upravit dle potřeby v kartě "Položky" nově vytvořeného objektu.

Způsoby zaznamenávání eventů proměnných

Základní způsob zaznamenávání je pomocí datového rozšíření ExtEvent - Rozšíření o generování eventů.
 
Zaznamenávat lze změnu celé hodnoty ale také změnu konkrétního bitu. V našem příkladě:
 
- Vyberte proměnnou Status. Otevřete konfigurační okno této proměnné (tlačítko " " nebo dvojklik myší).
- Vytvořte nové datové rozšíření (tlačítko "Přidat") a vyberte datové rozšíření ExtEvent.
 
Cílový objekt (PmaEventGroup): Vyberte objekt PmaEventGroup (pomocí tlačítka se třemi tečkami, zvolte "Relativní cesta vzhledem k:")
Vzor eventu: Vyberte (pomocí tlačítka se třemi tečkami) automaticky vytvořený vzor (šablonu) alarmů event0.
Popis eventu definován zde (v jiném případě ze vzoru): Zatrhněte a v konfigurátoru "Popis eventu (desc)" zadejte text eventu, například "Switching boiler 1 on"
Typ hodnoty: vyberte "1 - určený bit" a v konfigurátoru "Určuje číslo bitu pro testování" vyberte "0 – bit".
Event aktivovat při: vyberte "Při každé změně na true"
 
Zbývající položky v tomto dialogovém okně ponechte beze změn.
 
Uvedeným způsobem jste nastavili, že aplikace bude automaticky hlídat hodnotu prvního bitu (indexováno od 0) proměnné Status a pokud hodnota tohoto bitu se změní na 1 (true), pak dojde k vyvolání eventu.
 

Pokročilé zaznamenávání eventů

Výše uvedené postupy umožňují rychle a jednoduše zaznamenávat eventy proměnných v aplikaci. Pokud tyto možnosti z jakýchkoli důvodů nedostačují, pak je možné s eventy pracovat také ve skriptech. Tímto způsobem je možné využít další možnosti eventového systému, které nejsou dostupné pomocí datových rozšíření.
 
Podrobnější informace o tomto způsobu práce s eventy najdete v kapitole Systém Alarmů a Eventů a v popisu objektu PmaEventGroup.
Záznam při přihlášení uživatele:
Ukázka skriptu v události onUserLogonEnd objektu PmaRoot.
JavaScriptVBScriptVyber a zkopíruj do schránky

var oEv = pMe.Pm("/BoilerPlant/Boiler1/Events");
oEv.ActivateNew("logon", "event0", "logon", pEvent.Name);
© MICROSYS, spol. s r. o.Tavičská 845/21 703 00 Ostrava-Vítkovice