Promotic
WikipediaLinkedInYoutubeTwitterFacebook

WriteToWeb - metoda objektu PmDataTable

Popis:
Poslání dat tohoto objektu do Web serveru v podobě XML.
Syntaxe:
WriteToWeb(URL As String, sParam As String) As Boolean
Volání:
oDataTable.WriteToWeb "http://NázevPočítače/IdKomponenty/data.xml", sParam
Parametry:
URL(String)

URL adresa dat Web serveru, kam se mají XML data poslat. PROMOTIC aplikace jako Web server tato data standardně nabízí na cestě (viz záložka PmDataTable > 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 lze zadat jako NázevPočítače 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 ve tvaru 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 straně serveru. Pokud není nastaveno a je vyžadována autentizace, pak se událost onEndOfTransfer vyvolá 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 do serveru. Po přenosu dat se vyvolá událost onEndOfTransfer.
false - Metoda nezařadila požadavek na zaslání. Pravděpodobně ještě nebyla dokončena předchozí žádost o vysílání/příjmu tohoto objektu. Událost onEndOfTransfer se nevyvolá.
Poznámka:

Tato metoda není funkční pro PmFree.

 
Tím, že se nad objektem volá metoda WriteToWeb, považuje se tento objekt za Web klient, který zapisuje do komponenty Web serveru, v tom případě do jiného ale stejně nakonfigurovaného objektu PmDataTable 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řenášení dat (tzn. v době po vyvolání metody WriteToWeb a před vyvoláním události onEndOfTransfer) nelze nad objektem volat znovu metodu WriteToWeb ani metodu ReadFromWeb - tehdy metoda vrátí hodnotu false. Pomocí vlastnosti WebClientIsReady lze zjistit, zda je objekt připraven na další přenášení.

 
Metodou WriteToWeb klient nemůže změnit počet dat na serveru - například tak, že by klient poslal více dat než je nakonfigurováno na serveru. Pokud je toto požadováno, pak tuto změnu musí nejdřív server provést sám - viz popis v kapitole Sdílení XML dat.
Příklad:
Dim oData
Set oData = pMe.Pm("Data/Param1")
If oData.WebClientIsReady Then
  oData.WriteToWeb "http://localhost/temperatures/data.xml", "fmt:purevalue;user:oper;psw:ABCD"
Else
  Pm.Debug "Object Data/Param1 is not ready (Web is still active)"
End If
© MICROSYS, spol. s r. o.Tavičská 845/21 703 00 Ostrava-Vítkovice