mojaSymfonia FORUM
https://forum.mix-soft.pl/

[Handel 50C] Msxml2.XMLHTTP wykonuje się tylko raz
https://forum.mix-soft.pl/viewtopic.php?f=15&t=10480
Strona 1 z 1

Autor:  Zenek N [ 2023-02-09, 13:26 ]
Tytuł:  [Handel 50C] Msxml2.XMLHTTP wykonuje się tylko raz

Witam mam problem z używaniem metody OnAfterUpdate. Poniższy kod działa tylko podczas pierwszej edycji towaru, przy następnych już się nie wykonuje.
Kod:
int Sub OnAfterUpdate(long lId)
dispatch http="Msxml2.XMLHTTP"
http.open("GET", "localhost", 1)
http.send()
EndSub


Aby ponownie dokonać edycji tego samego towaru muszę włączyć i wyłączyć Symfonie 50C, w Handlu 2.0 było to samo.

Autor:  rafal [ 2023-02-09, 13:40 ]
Tytuł:  Re: [Handel 50C] Raport Tw OnAfterUpdate wykonuje się tylko

Wykonuje się wykonuje kolejne razy (oczywiście w klasycznej formatce).

Używasz w niej ciężkiego kodu. Łączysz się gdzieś, coś pobierasz i nie rozłączasz. I możliwe że ten skrypt się nie kończy. A jak się nie kończy to następny OnAfterUpdate nie wzbudza się.

Wstaw sobie samo Message("test") i zobaczysz że jest OK.

Autor:  Zenek N [ 2023-02-09, 14:17 ]
Tytuł:  Re: [Handel 50C] Raport Tw OnAfterUpdate wykonuje się tylko

Dzięki za błyskawiczną odpowiedź na stackoverflow napisane jest że nie można otwierać kolejnych instancji obiektu Msxml2.XMLHTTP

Kod:
https://stackoverflow.com/questions/28099211/does-xmlhttprequest-object-close-after-response-received


Rozwiązany z pomocą
Kod:
dispatch http = "WinHttp.WinHttpRequest.5.1"

Autor:  rafal [ 2023-02-09, 14:32 ]
Tytuł:  Re: [Handel 50C] Msxml2.XMLHTTP wykonuje się tylko raz

Czy to znaczy że już jest OK?

Autor:  Zenek N [ 2023-02-09, 14:39 ]
Tytuł:  Re: [Handel 50C] Msxml2.XMLHTTP wykonuje się tylko raz

Tak, instancja obiektu Msxml2.XMLHTTP nie zamyka gniazda socketowego :mrgreen: i stąd można użyć tylko raz dla tego samego urla

Strona 1 z 1 Strefa czasowa UTC+1godz. [letni]
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
http://www.phpbb.com/