Promotic

Run - metoda objektu PmaCommMsg

Popis:
Pokyn k přenesení zprávy (pouze pro zprávy typu Master).
Syntaxe:
Boolean Run([Boolean bPriority])
Parametry:
bPriority[nepovinné] (Boolean) Příznak jak zařadit do fronty zpráv
false (přednastaveno) - Objekt se postaví na konec fronty
true - Objekt se postaví na začátek fronty, to znamená, že přeskočí jiné čekající zprávy
Vrácená hodnota:
true - Přenos zprávy byl úspěšně "nastartován", zpráva byla postavena do fronty ještě neukončených přenosů jiných objektů PmaCommMsg. Až na ni dojde řada tak se přenese a určitě po přenosu je vyvolána událost onEndOfTransfer.
false - Přenos zprávy se "nenastartoval". Událost onEndOfTransfer není vyvolána. Důvodem může být špatná konfigurace zprávy nebo nejčastěji to bývá proto že v objektu PmaCommMsg ještě probíhá přenos od předcházejícího volání metody Run.
Poznámka:
Tato metoda se nemusí ve skriptu volat, pokud konfigurátor "Automaticky přenášet" je zatržen (pokud vlastnost AutoRunEnabled je nastavena na true).

Tuto metodu je nutno volat pouze pro zprávy typu Master, u zprávy typu Slave je volána automaticky (nastavení Master/Slave - viz konfigurátor "Typ zprávy").
Metoda Run dává pouze podnět k přenesení zprávy. Po ukončení metody Run tedy ještě vůbec není zaručeno, že data jsou již přenesena. Metoda Run jen způsobí, že daný objekt PmaCommMsg se "postaví" do fronty zpráv, které mají být zrovna přenášeny.
Daný objekt PmaCommMsg ve frontě čeká, až na něho přijde řada (tato funkčnost je interní vlastností systému PROMOTIC a projektant se o toto nemusí starat). Potom sám začne vysílat svá data, pak čeká na požadovaná data pro příjem, data příjme a celý proces je ukončen vyvoláním události onEndOfTransfer. Na tyto akce již však metoda Run nečeká.
Objekt PmaCommMsg se tedy může nacházet ve dvou stavech - stav kdy neprobíhá přenos a stav kdy probíhá přenos (tzn. stav mezi voláním metody Run a událostí onEndOfTransfer). Metodu Run lze volat jen nad objektem ve stavu kdy neprobíhá přenos v tomto objektu. Tento stav lze zjistit metodou GetReady.

Tuto metodu lze volat i 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:
JavaScriptVBScriptVyber a zkopíruj do schránky

var oCommMsg = pMe.Pm("/Comm/mr");
if (oCommMsg.GetReady())
{
oCommMsg.Run();
}
© MICROSYS, spol. s r.o.