Webservice "zu schnell" für Rückantwort

24. Mai 2017 14:58

Ich weiss nicht, ob ich was falsch programmiert habe oder etwas übersehen habe. Mal sehen, oo ich das formulieren kann.

Es geht um Aufrufe zwischen 2 NAV Datenbanken. Ich habe einen SOAP-Request definiert mit einer Anzahl Übergabeparametern mittels den Funktionen von CU 1290.
Der Aufruf funktioniert tadellos und die Systeme tun, was sie tun sollten.

Nachdem ich den Aufruf mittels cuWebServiceRequestMgt.RUN abgesetzt habe führe ich gleich danach cuWebServiceRequestMgt.GetResponseContent um die beiden Rückgabewerte die ich haben will, zurückzubekommen. Auch das funktioniert im Prinzip tadellos.

Das Problem ist aber, dass zwischen cuWebServiceRequestMgt.RUN und cuWebServiceRequestMgt.GetResponseContent zu wenig Zeit bleibt. Das heisst, es kommt zu einem Fehler, weil der Response noch nichts hat das er zurückgeben kann. Wenn ich dazwischen einen SLEEP(1000) einbaue funktioniert das immer, aber das ist ja nicht die Lösung.

Kann ich irgendwie vor dem cuWebServiceRequestMgt.GetResponseContent feststellen, ob das System überhaupt schon soweit ist?

Re: Webservice "zu schnell" für Rückantwort

31. Mai 2017 08:17

Hallo,

versuche es wie folgt:

Code:
IF c1290.SendRequestToWebService THEN BEGIN
 c1290.GetResponseContent(ResponseInStream);


Das ganze wird auch auf der folgenden Seite beschrieben:

https://forum.mibuso.com/discussion/66843/calling-nav-web-service-with-codeunit-1290-nav-2016

Gruß

Michael