Ebic, vorrei fare anche io qualcosa del genere, hai del codice di esempio da cui partire per esempio per la connessione
te ne sarei grato
Grazie
Guarda ti passo questo blocco dove chiamo un web service (l'indirizzo è di fantasia) scritto in Vbnet predisposto a rispondere al
parametro di un codice (che vedi in "Query").
Il Servizio legge una tabella sql sul server e ritorna uno o più record relativo alla chiave passata.
la variabile xml include la chiamata Xml che passo al ws e deve ovviamente essere congruente con quello esposto lato server (attenzione che è case sensitive).
La cosa più complessa forse è la lettura della risposta che io ho risolto
nel modo che vedi nel blocco "try" e "for each...".
Il codice è regolarmente indentato e quindi di più facile lettura ma non so perchè nel quote schiaccia tutto a sinistra.
Ti allego anche il formato txt.
Spero ti sia utile.
Dim Query As String = "1234567890"
Dim xml As String = $"<?xml version="1.0" encoding="utf-8"?>
<soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
<soap:Body>
<TWSelect xmlns="http://tempuri.org/">
<Query>${Query}</Query>
</TWSelect>
</soap:Body>
</soap:Envelope>"$
Dim j5 As HttpJob
j5.Initialize("",Me)
j5.PostString("https://2.3.4.5/WebServer.asmx",xml)
j5.GetRequest.SetContentType("text/xml; charset=utf-8")
j5.GetRequest.SetHeader("SOAPaction",$""http://tempuri.org/TWSelect""$)
Try
wait for (j5) JobDone(j5 As HttpJob)
If j5.Success Then
Dim xm2 As Xml2Map
xm2.Initialize
Dim root As Map=xm2.Parse(j5.GetString)
Dim envelope As Map = root.Get("Envelope")
Dim body As Map = envelope.Get("Body")
Dim TWSelectResponse As Map = body.Get("TWSelectResponse")
Dim TWSelectResult As Map = TWSelectResponse.Get("TWSelectResult")
If TWSelectResult.Get("diffgram") Is Map Then
Dim Diffgram As Map = TWSelectResult.Get("diffgram")
Dim NewDataset As Map = Diffgram.Get("NewDataSet")
Dim Dati As List = NewDataset.Get("Dati")
Dim Tabella As List = Dati
For Each Record As Map In Tabella
Log(Record.Get("ID_RECORD") & " <> " & Record.Get("Note") & " ")
Next
End If
Else
Log (j5.ErrorMessage)
Return "Manca connessione con server." & _
"Non è possibile proseguire."
End If
j5.Release
Return "OK"
Catch
Return "Manca connessione con Server."
End Try