Bonjour,
Je souhaite donc envoyer un vecteur de double depuis une application google spreadsheet pour en faire la somme :
Le web service:
Code vb : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8 <WebMethod()> _ Public Function SumMat(iMat() As Double, n As Double, p As Double) As Double Dim i As Long SumMat = 0 For i = 0 To n SumMat = iMat(i) + SumMat Next End Function
Le prototype du message :
Code xml : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10 <soap:Body> <SumMat xmlns="..."> <iMat> <double>double</double> <double>double</double> </iMat> <n>double</n> <p>double</p> </SumMat> </soap:Body>
Mon code google :
Et le log que j'obtiens :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25 function RunSum() { var value1 = [[1],[2]]; var n = 1; var p = 0; var wsdl = SoapService.wsdl("..."); var xlFunction = wsdl.getService1(); var param = Xml.element("SumMat", [ Xml.attribute("xmlns", "..."), Xml.element("iMat", value1), Xml.element("n", [n]), Xml.element("p", [p]) ]); var envelope = xlFunction.getSoapEnvelope("SumMat", param) Logger.log(envelope); var result = xlFunction.SumMat(param); Logger.log(result.Envelope.Body.SumMatResponse.SumMatResult.Text); }
Code xml : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6 <SOAP-ENV:Body><SumMat xmlns="..."> <iMat>1.02.0</iMat> <n>1.0</n> <p>0.0</p> </SumMat> </SOAP-ENV:Body>
J'ai remplacer le nom du serveur et autre par "...".
Je bloque sur ça. Pourriez-vous m'aider s'il vous plaît ?
Merci
Partager