Promotic

WriteToWeb - metoda objektu PmaDataTable

Popis:
Zaslání dat tohoto objektu do Web serveru ve formátu XML.
Syntaxe:
Boolean WriteToWeb(String URL, String sParam)
Parametry:
URL(String)
URL adresa dat Web serveru, kam se mají XML data poslat. Aplikace PROMOTIC jako Web server tato data obvykle nabízí na cestě (viz karta "PmaDataTable > Web server"):
http://NázevPočítače:Port/IdKomponenty/data.xml

Upozornění! Začátek adresy ("http:") se musí zadat! Pokud chcete zadat adresu lokálního počítače, pak jako NázevPočítače lze zadat slovo localhost. Port není potřeba zadávat, pokud je Web server na standardním portu 80.
Komunikace funguje i se zabezpečeným Web serverem na adrese https://....
sParam(String) Dodatečné parametry přenosu. Je to text v podobě například: "fmt:purevalue;user:NAME1;psw:PASSWORD1;".
fmt (povinné) - Pojmenovaný formát posílaných XML dat. Systém PROMOTIC zatím nabízí pouze formát "purevalue".
user - Jméno uživatele pro autentizaci. Viz oprávnění "WebWrite" na serveru. Pokud není nastaveno a je vyžadována autentizace, pak je vyvolána událost onEndOfTransfer s chybou pEvent.Error=40.
psw - Heslo uživatele pro autentizaci. Tento parametr je ignorován, pokud není zadán parametr user.
Vrácená hodnota:
true - Metoda úspěšně zařadila požadavek na zaslání dat na server. Po přenosu dat je vyvolána událost onEndOfTransfer.
false - Metoda nezařadila požadavek na zaslání. Pravděpodobně ještě nebyl dokončen předchozí požadavek o vysílání/příjmu tohoto objektu. Událost onEndOfTransfer není vyvolána.
Poznámka:
Tato metoda není funkční pro PmFree.

Voláním metody WriteToWeb nad objektem se považuje tento objekt za Web klient, který zapisuje do komponenty Web serveru - v tom případě do jiného ale stejně nakonfigurovaného objektu PmaDataTable v jiné aplikaci na stejném nebo jiném počítači.
Metoda dá jen podnět k přenosu dat, ale není vůbec zaručeno že po ukončení této metody jsou již data přenesena. Konec přenosu dat však způsobí že se vyvolá událost onEndOfTransfer. V době přenosu dat (tzn. v době po volání metody WriteToWeb a předtím než je vyvolána událost onEndOfTransfer) nelze nad objektem znovu volat metodu WriteToWeb ani metodu ReadFromWeb - tehdy metoda vrací hodnotu false. Pomocí vlastnosti WebClientIsReady lze zjistit, zda objekt je připraven na další přenášení.

Klient metodou WriteToWeb nemůže změnit počet dat na serveru - například tak, že by klient poslal více dat než je nastaveno na serveru. Pokud je toto požadováno, pak tuto změnu musí nejprve server provést sám - viz popis v kapitole Sdílení XML dat.
Příklad:
JavaScriptVBScriptVyber a zkopíruj do schránky

var oDataTable = pMe.Pm("/DataTable");
if (oDataTable.WebClientIsReady)
{
oDataTable.WriteToWeb("http://NázevPočítače:Port/IdKomponenty/data.xml", "fmt:purevalue;user:oper;psw:ABCD");
}
else
{
Pm.Debug("Web klient is not ready (is still active)");
}
© MICROSYS, spol. s r.o.