Promotic

WriteToWeb - metoda obiektu PmaDataTable

Opis:
Wysłanie danych tego obiektu do Web serwera w formacie XML.
Składnia:
Boolean WriteToWeb(String URL, String sParam)
Parametry:
URL(String)
Adres URL danych Web serwera, pod który dane XML mają zostać wysłane. Aplikacja PROMOTIC w funkcji Web serwera takie dane zazwyczaj oferuje na ścieżce (patrz karta "PmaDataTable > Web serwer"):
http://NazwaKomputera:Port/IdElementu/data.xml

Uwaga! Początek adresu ("http:") musi zostać wprowadzony! Jeżeli chcesz wprowadzić adres komputera lokalnego, wtedy jako NazwaKomputera można wprowadzić słowo localhost. Nie jest konieczne określenie Port, jeżeli Web serwer działa pod standardowym portem 80.
Komunikacja działa również z zabezpieczonym Web serwerem pod adresem https://....
sParam(String) Dodatkowe parametry transmisji. Jest to tekst w formie na przykład: "fmt:purevalue;user:NAME1;psw:PASSWORD1;".
fmt (obowiązkowe) - Nazwany format wysyłanych danych XML. System PROMOTIC na razie oferuje tylko format "purevalue".
user - Nazwa użytkownika do uwierzytelnienia. Patrz uprawnienie "WebWrite" na serwerze. Jeżeli nie jest ustawione oraz jest wymagane uwierzytelnienie, wtedy zostanie wywołane zdarzenie onEndOfTransfer z błędem pEvent.Error=40.
psw - Hasło użytkownika do uwierzytelnienia. Parametr ten jest ignorowany, jeżeli nie jest określony parametr user.
Wartość zwrotna:
true - Metoda pomyślnie zaszeregowała żądanie wysłania danych do serwera. Po transmisji danych zostanie wywołane zdarzenie onEndOfTransfer.
false - Metoda nie zaszeregowała żądanie wysłania danych. Prawdopodobnie jeszcze nie został zakończony poprzedni wymóg wysłania/odczytu danych tego obiektu. Zdarzenie onEndOfTransfer nie zostanie wywołane.
Notatka:
Metoda ta nie działa w PmFree.

Przez wywołanie metody WriteToWeb nad obiektem, obiekt ten jest uważany za Web klienta, który zapisuje do komponentu Web serwera - w tym przypadku do innego lecz tak samo ustawionego obiektu PmaDataTable w innej aplikacji na tym samym lub innym komputerze.
Metoda tylko zainicjuje transmisję danych, lecz nie jest zapewnione, że po skończeniu tej metody dane zostaną już przeniesione. Koniec transmisji danych jest oznajmiony przez zdarzenie onEndOfTransfer. Podczas transmisji danych (tzn. w czasie po wołaniu metody WriteToWeb i przed tym zanim zostanie wywołane zdarzenie onEndOfTransfer) nad obiektem nie można ponownie wywołać metodę WriteToWeb ani metodę ReadFromWeb - w takim przypadku metoda zwraca wartość false. Przy pomocy właściwości WebClientIsReady można stwierdzić, czy obiekt jest przygotowany do kolejnej transmisji.

Klient przy pomocy metody WriteToWeb nie może zmienić ilość danych na serwerze - na przykład tak, że klient wysłałby więcej danych, niż jest ustawione na serwerze. Jeżeli istnieje taki wymóg, wtedy takiej zmiany musi dokonać najpierw sam serwer - patrz opis w rozdziale Współdzielenie danych XML.
Przykład:
JavaScriptVBScriptWybierz oraz skopiuj do schowka

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