Wiki source code of Setting up a Webservice connection to get Overview data from TerraIndex
Version 5.5 by Robert Jan Daams on 2022/08/24 14:49
Show last authors
author | version | line-number | content |
---|---|---|---|
1 | To connect with the TerraIndex database to retreive specific datasets/overviews from TerraIndex, you can connect to a webservice. This webservice provides a function to request the available queries and it’s required Paraterms, and a function to request the actual data. | ||
2 | |||
3 | An example of such an overview is presented in the image below. | ||
4 | |||
5 | [[image:1637574454403-426.png||height="346" width="1486"]] | ||
6 | |||
7 | {{toc/}} | ||
8 | |||
9 | |||
10 | == Changelog == | ||
11 | |||
12 | === Update 2022-08-23 === | ||
13 | |||
14 | As part of on-going efforts to improve performance and scalability, we have introduced a dedicated version of DataWS named DataWSExternals. This new service should be used for external API consumers. | ||
15 | |||
16 | | |**URL**|**Example** | ||
17 | |**Old**|{{code language="none"}}https://web.terraindex.com/DataWS/{{/code}}|((( | ||
18 | [[https:~~/~~/web.terraindex.com/DataWS/ITWViewServiceASMX_V1_0.asmx?wsdl>>https://web.terraindex.com/DataWS/ITWViewServiceASMX_V1_0.asmx?wsdl]] | ||
19 | ))) | ||
20 | |**New**|{{code language="none"}}https://web.terraindex.com/DataWSExternals/{{/code}}|((( | ||
21 | [[https:~~/~~/web.terraindex.com/DataWSExternals/ITWViewServiceASMX_V1_0.asmx?wsdl>>https://web.terraindex.com/DataWSExternals/ITWViewServiceASMX_V1_0.asmx?wsdl]] | ||
22 | ))) | ||
23 | |||
24 | == == | ||
25 | |||
26 | == 1. Retreive all overviews queries from TerraIndex == | ||
27 | |||
28 | To retreive all available queries from the TerraIndex Environment, there is a SOAP webservice call available. This will return all overview queries with it’s names and the required parameters. | ||
29 | With the name and the parameters you can request the actual data with function 2, explained in the next chapter. | ||
30 | |||
31 | To start connecting this webservice, you should use this URL: | ||
32 | |||
33 | [[https:~~/~~/web.terraindex.com/DataWSExternals/ITWViewServiceASMX_V1_0.asmx>>https://web.terraindex.com/DataWSExternals/ITWViewServiceASMX_V1_0.asmx]] | ||
34 | |||
35 | (% class="box infomessage" %) | ||
36 | ((( | ||
37 | If you prefer a REST service, please let us know. It’s currently a SOAP webservice because there will be a typed definition available to avoid mistakes. | ||
38 | ))) | ||
39 | |||
40 | Get the WSDL from: | ||
41 | |||
42 | [[https:~~/~~/web.terraindex.com/DataWSExternals/ITWViewServiceASMX_V1_0.asmx?wsdl>>https://web.terraindex.com/DataWSExternals/ITWViewServiceASMX_V1_0.asmx?wsdl]] | ||
43 | |||
44 | [[image:1637574900554-168.png]] | ||
45 | |||
46 | |||
47 | Fill the **Envelope **of a **SOAP **HTTP call with: | ||
48 | |||
49 | {{code language="XML" layout="LINENUMBERS"}} | ||
50 | |||
51 | <soap:Envelope | ||
52 | xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" | ||
53 | xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" | ||
54 | xmlns:xsd="http://www.w3.org/2001/XMLSchema"> | ||
55 | <soap:Body> | ||
56 | <GetOverviewQueries | ||
57 | xmlns="https://wsterraindex.terraindex.com/ITWorks.TerraIndex/"> | ||
58 | <request> | ||
59 | <Authorisation> | ||
60 | <Username>USERNAME</Username> | ||
61 | <Password>PASSWORD</Password> | ||
62 | <Licensenumber>LICENSENUMBER, of the customer</Licensenumber> | ||
63 | <ApplicationCode>YOUR APP CODE, REQUEST at service@terraindex.com</ApplicationCode> | ||
64 | <FeatureWord>0</FeatureWord> | ||
65 | </Authorisation> | ||
66 | <WebserviceVersion>1.0</WebserviceVersion> | ||
67 | <LanguageCode>nld</LanguageCode> | ||
68 | <UseZipStream>false</UseZipStream> | ||
69 | <DataType>JSON</DataType> | ||
70 | <!--JSON or XML --> | ||
71 | </request> | ||
72 | </GetOverviewQueries> | ||
73 | </soap:Body> | ||
74 | </soap:Envelope> | ||
75 | {{/code}} | ||
76 | |||
77 | Set the correct values for: | ||
78 | |||
79 | * (% class="mark" %)Username(%%); as the username in TerraIndex | ||
80 | * (% class="mark" %)Password(%%); as the username in TerraIndex | ||
81 | * (% class="mark" %)Licensenumber(%%); as your companies license number | ||
82 | * (% class="mark" %)ApplicationCode(%%); as provided by TerraIndex to you, if not provided, request one at: [[service@terraindex.com>>path:mailto:service@terraindex.com]] | ||
83 | * (% class="mark" %)UseZipStreamto (%%)'true', to get GZip data stream. This will be much faster over the internet. | ||
84 | Check here for the Class to use it: [[Setting up a Webservice connection for project exports>>Implementation documentation.Setting up a Webservice connection for project exports.WebHome]], Chapter: Zip Stream class. | ||
85 | * (% class="mark" %)DataType(%%); set the correct data type you would like to receive, this is 'JSON' or 'XML'. | ||
86 | |||
87 | You will receive a response like this: | ||
88 | |||
89 | {{code layout="LINENUMBERS"}} | ||
90 | |||
91 | <soap:Envelope | ||
92 | xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" | ||
93 | xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" | ||
94 | xmlns:xsd="http://www.w3.org/2001/XMLSchema"> | ||
95 | <soap:Body> | ||
96 | <GetOverviewQueriesResponse | ||
97 | xmlns="https://wsterraindex.terraindex.com/ITWorks.TerraIndex/"> | ||
98 | <GetOverviewQueriesResult> | ||
99 | <ResultCode>Succes</ResultCode> | ||
100 | <Content>[ | ||
101 | { | ||
102 | "Name": " ", | ||
103 | "Parameters": null, | ||
104 | "Description": "" | ||
105 | }, | ||
106 | { | ||
107 | "Name": "ArcGIS Export - 1 - Coords", | ||
108 | "Parameters": [ | ||
109 | "ProjectID" | ||
110 | ], | ||
111 | "Description": "" | ||
112 | }, | ||
113 | { | ||
114 | "Name": "ArcGIS Export - 2 - An.results", | ||
115 | "Parameters": [ | ||
116 | "ProjectID" | ||
117 | ], | ||
118 | "Description": "" | ||
119 | }, | ||
120 | { | ||
121 | "Name": "ATKB Overzicht 2", | ||
122 | "Parameters": [ | ||
123 | "PROJECTID" | ||
124 | ], | ||
125 | "Description": "" | ||
126 | }, | ||
127 | { | ||
128 | "Name": "ATKB Peilbuisoverzicht 2", | ||
129 | "Parameters": [ | ||
130 | "PROJECTID" | ||
131 | ], | ||
132 | "Description": "" | ||
133 | }, | ||
134 | { | ||
135 | "Name": "BAM Overzicht diameters", | ||
136 | "Parameters": [ | ||
137 | "ProjectID" | ||
138 | ], | ||
139 | "Description": "" | ||
140 | }, | ||
141 | { | ||
142 | "Name": "BBK", | ||
143 | "Parameters": [ | ||
144 | "projectid" | ||
145 | ], | ||
146 | "Description": "" | ||
147 | }, | ||
148 | { | ||
149 | "Name": "BQ6:Toetsing grond(meng)monste", | ||
150 | "Parameters": [], | ||
151 | "Description": "20190805 BOOT Query #6: Toetsing grond(meng)monsters" | ||
152 | }, | ||
153 | { | ||
154 | "Name": "BQ6A:Toetsing grond(meng)monst", | ||
155 | "Parameters": [ | ||
156 | "ProjectID" | ||
157 | ], | ||
158 | "Description": "20190805 BOOT Query #6: Toetsing grond(meng)monsters" | ||
159 | }, | ||
160 | { | ||
161 | "Name": "Corr. watermonsters (STAP)", | ||
162 | "Parameters": [ | ||
163 | "DateBegin", | ||
164 | "DateEnd" | ||
165 | ], | ||
166 | "Description": "Hiermee zoekt u naar watermonsters die voor alle componenten uit het STAP-pakket een <D hebben. Datum invoeren als MM/DD/YYYY" | ||
167 | }, | ||
168 | { | ||
169 | "Name": "datum", | ||
170 | "Parameters": [], | ||
171 | "Description": "" | ||
172 | }, | ||
173 | { | ||
174 | "Name": "field/analysemonsters", | ||
175 | "Parameters": [], | ||
176 | "Description": "" | ||
177 | }, | ||
178 | { | ||
179 | "Name": "FROM ITWBMAM0 AM ", | ||
180 | "Parameters": null, | ||
181 | "Description": "" | ||
182 | }, | ||
183 | { | ||
184 | "Name": "Gebruikte analyses", | ||
185 | "Parameters": [ | ||
186 | "StartDatum", | ||
187 | "EindDatum" | ||
188 | ], | ||
189 | "Description": "Geeft een overzicht van het aantal keer dat analyses gebruikt zijn, in een op te geven periode, per laboratorium/klantcode/prijsafspraak\r\nDatum invoeren als MM/DD/YYYY\r\n" | ||
190 | }, | ||
191 | { | ||
192 | "Name": "Haskoning aangepast", | ||
193 | "Parameters": [ | ||
194 | "ProjectID" | ||
195 | ], | ||
196 | "Description": "" | ||
197 | }, | ||
198 | { | ||
199 | "Name": "Haskoning nieuw", | ||
200 | "Parameters": [ | ||
201 | "ProjectID" | ||
202 | ], | ||
203 | "Description": "" | ||
204 | }, | ||
205 | { | ||
206 | "Name": "ITW Analysemonsters + deelmons", | ||
207 | "Parameters": [ | ||
208 | "ProjectID" | ||
209 | ], | ||
210 | "Description": "Gegevens analysemonsters" | ||
211 | }, | ||
212 | { | ||
213 | "Name": "ITW Analyseresultaten Grond", | ||
214 | "Parameters": [ | ||
215 | "ProjectID" | ||
216 | ], | ||
217 | "Description": "Overzicht van analyseresultaten van grondmonsters" | ||
218 | }, | ||
219 | { | ||
220 | "Name": "ITW Asbest veldmonsters", | ||
221 | "Parameters": [ | ||
222 | "ProjectID" | ||
223 | ], | ||
224 | "Description": "Overzicht van asbestveldmonsters" | ||
225 | }, | ||
226 | { | ||
227 | "Name": "ITW Boringen + Peilbuizen", | ||
228 | "Parameters": [ | ||
229 | "ProjectID" | ||
230 | ], | ||
231 | "Description": "Overzicht gegevens boringen met peilbuizen" | ||
232 | }, | ||
233 | { | ||
234 | "Name": "ITW Dieptes per meetpunt", | ||
235 | "Parameters": [ | ||
236 | "ProjectID" | ||
237 | ], | ||
238 | "Description": "Dieptes van de meetpunten" | ||
239 | }, | ||
240 | { | ||
241 | "Name": "ITW Dubbele watermonsters", | ||
242 | "Parameters": [], | ||
243 | "Description": "Overzicht dubbele watermonsters in de actieve projecten" | ||
244 | }, | ||
245 | { | ||
246 | "Name": "ITW Grondverzet overzicht", | ||
247 | "Parameters": [ | ||
248 | "ProjectID" | ||
249 | ], | ||
250 | "Description": "Analyseresultaten voor de Grondverzet toetsing" | ||
251 | }, | ||
252 | { | ||
253 | "Name": "ITW Lagen incl. Archeologie", | ||
254 | "Parameters": [ | ||
255 | "ProjectID" | ||
256 | ], | ||
257 | "Description": "Lagen inclusief Archeologie kenmerken" | ||
258 | }, | ||
259 | { | ||
260 | "Name": "ITW MVS export", | ||
261 | "Parameters": [ | ||
262 | "ProjectID" | ||
263 | ], | ||
264 | "Description": "" | ||
265 | }, | ||
266 | { | ||
267 | "Name": "ITW Normen Bbk", | ||
268 | "Parameters": [], | ||
269 | "Description": "Normen van het Besluit Bodemkwaliteit" | ||
270 | }, | ||
271 | { | ||
272 | "Name": "ITW Normen Vlarebo", | ||
273 | "Parameters": [], | ||
274 | "Description": "Normen Vlarebo (> 1-6-2008)" | ||
275 | }, | ||
276 | { | ||
277 | "Name": "ITW Project totalen", | ||
278 | "Parameters": [ | ||
279 | "ProjectID" | ||
280 | ], | ||
281 | "Description": "Van diverse onderdelen de totalen in het project" | ||
282 | }, | ||
283 | { | ||
284 | "Name": "ITW Rekencoëfficienten Bbk", | ||
285 | "Parameters": [], | ||
286 | "Description": "Rekencoëfficienten van het Besluit bodemkwaliteit" | ||
287 | }, | ||
288 | { | ||
289 | "Name": "ITW Sada export", | ||
290 | "Parameters": [ | ||
291 | "ProjectID" | ||
292 | ], | ||
293 | "Description": "Alle gegevens om te importeren in Sada" | ||
294 | }, | ||
295 | { | ||
296 | "Name": "ITW Samples Duplicate Bar Code", | ||
297 | "Parameters": [], | ||
298 | "Description": "Report Field Samples With Duplicate Barcode" | ||
299 | }, | ||
300 | { | ||
301 | "Name": "ITW Samples Without Bar Code", | ||
302 | "Parameters": [], | ||
303 | "Description": "Report Field Samples Without Barcode" | ||
304 | }, | ||
305 | { | ||
306 | "Name": "ITW Toetsing Bbk", | ||
307 | "Parameters": [ | ||
308 | "ProjectID" | ||
309 | ], | ||
310 | "Description": "Resultaten toetsing Bbk" | ||
311 | }, | ||
312 | { | ||
313 | "Name": "ITW Toetsing BBK BoToVa", | ||
314 | "Parameters": [ | ||
315 | "ProjectID" | ||
316 | ], | ||
317 | "Description": "Resultaten toetsing BBK BoToVa" | ||
318 | }, | ||
319 | { | ||
320 | "Name": "ITW Toetsing Brusselse", | ||
321 | "Parameters": [ | ||
322 | "ProjectID" | ||
323 | ], | ||
324 | "Description": "Resultaten Brusselse toetsing" | ||
325 | }, | ||
326 | { | ||
327 | "Name": "ITW Toetsing Eigen normen", | ||
328 | "Parameters": [ | ||
329 | "ProjectID" | ||
330 | ], | ||
331 | "Description": "Resultaten toetsing aan eigen normen" | ||
332 | }, | ||
333 | { | ||
334 | "Name": "ITW Toetsing Vlarebo", | ||
335 | "Parameters": [ | ||
336 | "ProjectID" | ||
337 | ], | ||
338 | "Description": "Resultaten toetsing Vlarebo" | ||
339 | }, | ||
340 | { | ||
341 | "Name": "ITW Toetsing Vlarebo Grondverz", | ||
342 | "Parameters": [ | ||
343 | "ProjectID" | ||
344 | ], | ||
345 | "Description": "Resultaten toetsing Vlarebo grondverzet" | ||
346 | }, | ||
347 | { | ||
348 | "Name": "ITW Toetsing Waalse", | ||
349 | "Parameters": [ | ||
350 | "ProjectID" | ||
351 | ], | ||
352 | "Description": "Resultaten Waalse toetsing" | ||
353 | }, | ||
354 | { | ||
355 | "Name": "ITW Toetsing Waterbodem BoToVa", | ||
356 | "Parameters": [ | ||
357 | "ProjectID" | ||
358 | ], | ||
359 | "Description": "Resultaten waterbodemtoetsingen BoToVa (T1, T3, T5, T6, T7)" | ||
360 | }, | ||
361 | { | ||
362 | "Name": "ITW Toetsing Wbb", | ||
363 | "Parameters": [ | ||
364 | "ProjectID" | ||
365 | ], | ||
366 | "Description": "Alle gegevens die nodig zijn om in een gis te importeren met Wbb gegevens" | ||
367 | }, | ||
368 | { | ||
369 | "Name": "ITW Toetsing WBB BoToVa", | ||
370 | "Parameters": [ | ||
371 | "ProjectID" | ||
372 | ], | ||
373 | "Description": "Resultaten toetsing WBB BoToVa" | ||
374 | }, | ||
375 | { | ||
376 | "Name": "ITW Toetsresultaten Wbb", | ||
377 | "Parameters": [ | ||
378 | "ProjectID" | ||
379 | ], | ||
380 | "Description": "Alle gegevens die je nodig hebt om in een gis te importeren met Wbb gegevens" | ||
381 | }, | ||
382 | { | ||
383 | "Name": "ITW Veldmonsters", | ||
384 | "Parameters": [ | ||
385 | "ProjectID" | ||
386 | ], | ||
387 | "Description": "Gegevens veldmonsters" | ||
388 | }, | ||
389 | { | ||
390 | "Name": "ITW Waterm. incl. flessen", | ||
391 | "Parameters": [ | ||
392 | "ProjectID" | ||
393 | ], | ||
394 | "Description": "Overzicht gegevens watermonsters inclusief flessen" | ||
395 | }, | ||
396 | { | ||
397 | "Name": "ITW Watermonsters", | ||
398 | "Parameters": [ | ||
399 | "ProjectID" | ||
400 | ], | ||
401 | "Description": "Overzicht gegevens watermonstername" | ||
402 | }, | ||
403 | { | ||
404 | "Name": "ITW Watermonsters (NL)", | ||
405 | "Parameters": [ | ||
406 | "ProjectID" | ||
407 | ], | ||
408 | "Description": "Overzicht watermonsters" | ||
409 | }, | ||
410 | { | ||
411 | "Name": "ITW Watermonsters uitgebreid", | ||
412 | "Parameters": [ | ||
413 | "ProjectID" | ||
414 | ], | ||
415 | "Description": "Overzicht gegevens watermonstername (uitgebreid)" | ||
416 | }, | ||
417 | { | ||
418 | "Name": "ITW zoeken barcode", | ||
419 | "Parameters": [ | ||
420 | "Barcode" | ||
421 | ], | ||
422 | "Description": "Toont een overzicht van alle veldmonsters met een (gedeelte van) een barcode, en in welk analysemonster ze voorkomen" | ||
423 | }, | ||
424 | { | ||
425 | "Name": "ITW zoeken project", | ||
426 | "Parameters": [ | ||
427 | "ProjectCodeNaam" | ||
428 | ], | ||
429 | "Description": "Zoeken op (gedeelte van) projectcode en projectnaam in archieven en over vestigingen heen" | ||
430 | }, | ||
431 | { | ||
432 | "Name": "ITW Zoeken projectnaam", | ||
433 | "Parameters": [ | ||
434 | "Projectnaam" | ||
435 | ], | ||
436 | "Description": "" | ||
437 | }, | ||
438 | { | ||
439 | "Name": "MP, XY, Lagen", | ||
440 | "Parameters": [ | ||
441 | "ProjectID" | ||
442 | ], | ||
443 | "Description": "" | ||
444 | }, | ||
445 | { | ||
446 | "Name": "MP, XY, Lagen alle Proj", | ||
447 | "Parameters": [], | ||
448 | "Description": "" | ||
449 | }, | ||
450 | { | ||
451 | "Name": "ORDER BY AM.ANLMONSNM", | ||
452 | "Parameters": null, | ||
453 | "Description": "" | ||
454 | }, | ||
455 | { | ||
456 | "Name": "Ovam test", | ||
457 | "Parameters": [ | ||
458 | "ProjectID" | ||
459 | ], | ||
460 | "Description": "" | ||
461 | }, | ||
462 | { | ||
463 | "Name": "Overzicht analyseresultaten", | ||
464 | "Parameters": [ | ||
465 | "ProjectID" | ||
466 | ], | ||
467 | "Description": "" | ||
468 | }, | ||
469 | { | ||
470 | "Name": "Sada", | ||
471 | "Parameters": [ | ||
472 | "ProjectID" | ||
473 | ], | ||
474 | "Description": "Sada export" | ||
475 | }, | ||
476 | { | ||
477 | "Name": "Test", | ||
478 | "Parameters": [ | ||
479 | "ProjectID" | ||
480 | ], | ||
481 | "Description": "Geef meetpunten met x-y" | ||
482 | }, | ||
483 | { | ||
484 | "Name": "Test Env1", | ||
485 | "Parameters": [ | ||
486 | "ProjectID" | ||
487 | ], | ||
488 | "Description": "" | ||
489 | }, | ||
490 | { | ||
491 | "Name": "Test Env2", | ||
492 | "Parameters": [ | ||
493 | "ProjectID" | ||
494 | ], | ||
495 | "Description": "" | ||
496 | }, | ||
497 | { | ||
498 | "Name": "Test Env3", | ||
499 | "Parameters": [ | ||
500 | "ProjectID" | ||
501 | ], | ||
502 | "Description": "" | ||
503 | }, | ||
504 | { | ||
505 | "Name": "test jayme", | ||
506 | "Parameters": [], | ||
507 | "Description": "" | ||
508 | }, | ||
509 | { | ||
510 | "Name": "Test nle", | ||
511 | "Parameters": [], | ||
512 | "Description": "" | ||
513 | }, | ||
514 | { | ||
515 | "Name": "Test vandaag", | ||
516 | "Parameters": [ | ||
517 | "PROJECTID" | ||
518 | ], | ||
519 | "Description": "" | ||
520 | }, | ||
521 | { | ||
522 | "Name": "testLSC2", | ||
523 | "Parameters": [], | ||
524 | "Description": "" | ||
525 | }, | ||
526 | { | ||
527 | "Name": "veldmonsters", | ||
528 | "Parameters": [], | ||
529 | "Description": "" | ||
530 | }, | ||
531 | { | ||
532 | "Name": "Watermonsters over database", | ||
533 | "Parameters": [], | ||
534 | "Description": "" | ||
535 | }, | ||
536 | { | ||
537 | "Name": "Watersamples", | ||
538 | "Parameters": [ | ||
539 | "ProjectID" | ||
540 | ], | ||
541 | "Description": "Watersamples" | ||
542 | }, | ||
543 | { | ||
544 | "Name": "Watersamples in project", | ||
545 | "Parameters": [ | ||
546 | "ProjectID" | ||
547 | ], | ||
548 | "Description": "Shows all water samples in the current project" | ||
549 | }, | ||
550 | { | ||
551 | "Name": "zzw", | ||
552 | "Parameters": [], | ||
553 | "Description": "" | ||
554 | } | ||
555 | ]</Content> | ||
556 | </GetOverviewQueriesResult> | ||
557 | </GetOverviewQueriesResponse> | ||
558 | </soap:Body> | ||
559 | </soap:Envelope> | ||
560 | {{/code}} | ||
561 | |||
562 | The Content JSON looks like this, but is also available as XML: | ||
563 | |||
564 | {{code language="JSON" layout="LINENUMBERS"}} | ||
565 | [ | ||
566 | { | ||
567 | "Name": "ITW Toetsing WBB BoToVa", | ||
568 | "Parameters": [ | ||
569 | "ProjectID" | ||
570 | ], | ||
571 | "Description": "Resultaten toetsing WBB BoToVa" | ||
572 | }, | ||
573 | { | ||
574 | "Name": "ITW Toetsresultaten Wbb", | ||
575 | "Parameters": [ | ||
576 | "ProjectID" | ||
577 | ], | ||
578 | "Description": "Alle gegevens die je nodig hebt om in een gis te importeren met Wbb gegevens" | ||
579 | }, | ||
580 | { | ||
581 | "Name": "ITW Veldmonsters", | ||
582 | "Parameters": [ | ||
583 | "ProjectID" | ||
584 | ], | ||
585 | "Description": "Gegevens veldmonsters" | ||
586 | }, | ||
587 | { | ||
588 | "Name": "ITW Waterm. incl. flessen", | ||
589 | "Parameters": [ | ||
590 | "ProjectID" | ||
591 | ], | ||
592 | "Description": "Overzicht gegevens watermonsters inclusief flessen" | ||
593 | }, | ||
594 | { | ||
595 | "Name": "ITW zoeken barcode", | ||
596 | "Parameters": [ | ||
597 | "Barcode" | ||
598 | ], | ||
599 | "Description": "Toont een overzicht van alle veldmonsters met een (gedeelte van) een barcode, en in welk analysemonster ze voorkomen" | ||
600 | }, | ||
601 | { | ||
602 | "Name": "MP, XY, Lagen alle Proj", | ||
603 | "Parameters": [], | ||
604 | "Description": "" | ||
605 | }, | ||
606 | { | ||
607 | "Name": "Overzicht analyseresultaten", | ||
608 | "Parameters": [ | ||
609 | "ProjectID" | ||
610 | ], | ||
611 | "Description": "" | ||
612 | }, | ||
613 | { | ||
614 | "Name": "Watersamples in project", | ||
615 | "Parameters": [ | ||
616 | "ProjectID" | ||
617 | ], | ||
618 | "Description": "Shows all water samples in the current project" | ||
619 | } | ||
620 | ] | ||
621 | {{/code}} | ||
622 | |||
623 | |||
624 | (% class="box infomessage" %) | ||
625 | ((( | ||
626 | Is UseZipStream = true; the Content needs to be inflated using the ZipSteamHelper Class. The code can be found here: [[Setting up a Webservice connection for project exports>>Implementation documentation.Setting up a Webservice connection for project exports.WebHome]] | ||
627 | ))) | ||
628 | |||
629 | |||
630 | == 2. Retreive the actual query data from TerraIndex == | ||
631 | |||
632 | To request the actual data from the Overview query in TerraIndex we have a second SOAP webservice call in the same WSDL/Webservice. | ||
633 | |||
634 | [[image:1637575660334-733.png]] | ||
635 | |||
636 | Fill the **Envelope **of a **SOAP **HTTP call with: | ||
637 | |||
638 | |||
639 | {{code language="none" layout="LINENUMBERS"}} | ||
640 | |||
641 | <soap:Envelope | ||
642 | xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" | ||
643 | xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" | ||
644 | xmlns:xsd="http://www.w3.org/2001/XMLSchema"> | ||
645 | <soap:Body> | ||
646 | <GetQueryResult | ||
647 | xmlns="https://wsterraindex.terraindex.com/ITWorks.TerraIndex/"> | ||
648 | <request> | ||
649 | <Authorisation> | ||
650 | <Username>USERNAME</Username> | ||
651 | <Password>PASSWORD</Password> | ||
652 | <Licensenumber>LICENSENUMBER, of the customer</Licensenumber> | ||
653 | <ApplicationCode>YOUR APP CODE, REQUEST at service@terraindex.com</ApplicationCode> | ||
654 | <FeatureWord>0</FeatureWord> | ||
655 | </Authorisation> | ||
656 | <WebserviceVersion>1.0</WebserviceVersion> | ||
657 | <LanguageCode>nld</LanguageCode> | ||
658 | <UseZipStream>true</UseZipStream> | ||
659 | <ViewName>ITW Toetsresultaten Wbb</ViewName> | ||
660 | <Param>{"ProjectID":"100000218"}</Param> | ||
661 | <DataType>JSON</DataType> | ||
662 | </request> | ||
663 | </GetQueryResult> | ||
664 | </soap:Body> | ||
665 | </soap:Envelope> | ||
666 | {{/code}} | ||
667 | |||
668 | Set the correct values for: | ||
669 | |||
670 | * (% class="mark" %)Username(%%); as the username in TerraIndex | ||
671 | * (% class="mark" %)Password(%%); as the username in TerraIndex | ||
672 | * (% class="mark" %)Licensenumber(%%); as your companies license number | ||
673 | * (% class="mark" %)ApplicationCode(%%); as provided by TerraIndex to you, if not provided, request one at: [[service@terraindex.com>>path:mailto:service@terraindex.com]] | ||
674 | * (% class="mark" %)UseZipStreamto (%%)'true', to get GZip data stream. This will be much faster over the internet. | ||
675 | Check here for the Class to use it: | ||
676 | |||
677 | * (% class="mark" %)Chapter(%%): Zip Stream class. | ||
678 | * (% class="mark" %)DataType(%%); set the correct data type you would like to receive, this is 'JSON' or 'XML'. | ||
679 | * (% class="mark" %)Param (%%)must be the Array as received from the GetOverviewQueries, and filled with data. Always needs to be JSON. | ||
680 | |||
681 | You will receive a response like this: | ||
682 | |||
683 | {{code language="xml" layout="LINENUMBERS"}} | ||
684 | |||
685 | <soap:Envelope | ||
686 | xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" | ||
687 | xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" | ||
688 | xmlns:xsd="http://www.w3.org/2001/XMLSchema"> | ||
689 | <soap:Body> | ||
690 | <GetQueryResultResponse | ||
691 | xmlns="https://wsterraindex.terraindex.com/ITWorks.TerraIndex/"> | ||
692 | <GetQueryResultResult> | ||
693 | <ResultCode>Succes</ResultCode> | ||
694 | <Content>H4sIAAAAAAAEAO1R30/CMBD+V0yfhzk3gsnemBgxYdHoIhpjzMEOVuha0rUgEv53y7ATfTcxkbfvV+56/TYsw5EgFj9v2K1WMxqbscodZ2kICUDYaUUhAAu8KxHLnYt6RfykR2JSGY2F5e8kXSolMgsrfaw3gPMEzpzxyGJphQjYkwcpIl+SyAulpoZ+qnc0WQqcN7KSlSH9OTavcLcLjeZvjk61krkTemjszg4hhBa0WxBl0Imjdlwf8ICSxW04hYBlyrD4DGrct6Wt/JqBrSfsSX+QrRfNwy7qb9njm7IaF5rPllxOmxe6y1eI+itVK10xQS+4mzy8JFkc5nI8WDysxyS0Ssk0qft1OVJKeJrM+fDbNidcaUWLJv/aHXqceXC9B9vgF9sOj23/o7ajY9t/rO2X7QeXis4U1QUAAA==</Content> | ||
695 | </GetQueryResultResult> | ||
696 | </GetQueryResultResponse> | ||
697 | </soap:Body> | ||
698 | </soap:Envelope> | ||
699 | {{/code}} | ||
700 | |||
701 | (% class="box infomessage" %) | ||
702 | ((( | ||
703 | Is UseZipStream = true; the Content needs to be inflated using the ZipSteamHelper Class. The code can be found here: [[Setting up a Webservice connection for project exports>>Implementation documentation.Setting up a Webservice connection for project exports.WebHome]] | ||
704 | ))) | ||
705 | |||
706 | |||
707 | The Content JSON looks like this, but is also available as XML (see below the json for xml): | ||
708 | |||
709 | {{code language="JSON"}} | ||
710 | { | ||
711 | "Table": [ | ||
712 | { | ||
713 | "Projectcode": "M20B0026-3200", | ||
714 | "Projectnaam": "Marwei Delfstrahuizen", | ||
715 | "Meetpuntnaam": "DL07B01", | ||
716 | "X": null, | ||
717 | "Y": null, | ||
718 | "Maaiveldhoogte": null, | ||
719 | "MaaiveldRefvlak": null, | ||
720 | "Monsternaam": "dsa", | ||
721 | "Matrix": "grond", | ||
722 | "Datum": "2020-04-03T06:34:00", | ||
723 | "Van": 40, | ||
724 | "Tot": 100, | ||
725 | "Humus": null, | ||
726 | "Lutum": null, | ||
727 | "HLType": null, | ||
728 | "Code": null, | ||
729 | "Omschrijving": null, | ||
730 | "Meetwaarde": null, | ||
731 | "MeetwAlfa": null, | ||
732 | "Ref": null, | ||
733 | "Eenh": null, | ||
734 | "Meetdatum": null, | ||
735 | "WaardeBewMeth": null, | ||
736 | "Symbool": null, | ||
737 | "BkiWaarde": null, | ||
738 | "BkiGroep": null, | ||
739 | "S_AW": null, | ||
740 | "T": null, | ||
741 | "I": null | ||
742 | }, | ||
743 | { | ||
744 | "Projectcode": "M20B0026-3200", | ||
745 | "Projectnaam": "Marwei Delfstrahuizen", | ||
746 | "Meetpuntnaam": "DL07B02", | ||
747 | "X": null, | ||
748 | "Y": null, | ||
749 | "Maaiveldhoogte": null, | ||
750 | "MaaiveldRefvlak": null, | ||
751 | "Monsternaam": "dsa", | ||
752 | "Matrix": "grond", | ||
753 | "Datum": "2020-04-03T06:34:00", | ||
754 | "Van": 40, | ||
755 | "Tot": 100, | ||
756 | "Humus": null, | ||
757 | "Lutum": null, | ||
758 | "HLType": null, | ||
759 | "Code": null, | ||
760 | "Omschrijving": null, | ||
761 | "Meetwaarde": null, | ||
762 | "MeetwAlfa": null, | ||
763 | "Ref": null, | ||
764 | "Eenh": null, | ||
765 | "Meetdatum": null, | ||
766 | "WaardeBewMeth": null, | ||
767 | "Symbool": null, | ||
768 | "BkiWaarde": null, | ||
769 | "BkiGroep": null, | ||
770 | "S_AW": null, | ||
771 | "T": null, | ||
772 | "I": null | ||
773 | }, | ||
774 | { | ||
775 | "Projectcode": "M20B0026-3200", | ||
776 | "Projectnaam": "Marwei Delfstrahuizen", | ||
777 | "Meetpuntnaam": "DL07B03", | ||
778 | "X": null, | ||
779 | "Y": null, | ||
780 | "Maaiveldhoogte": null, | ||
781 | "MaaiveldRefvlak": null, | ||
782 | "Monsternaam": "dsa", | ||
783 | "Matrix": "grond", | ||
784 | "Datum": "2020-04-03T06:34:00", | ||
785 | "Van": 40, | ||
786 | "Tot": 100, | ||
787 | "Humus": null, | ||
788 | "Lutum": null, | ||
789 | "HLType": null, | ||
790 | "Code": null, | ||
791 | "Omschrijving": null, | ||
792 | "Meetwaarde": null, | ||
793 | "MeetwAlfa": null, | ||
794 | "Ref": null, | ||
795 | "Eenh": null, | ||
796 | "Meetdatum": null, | ||
797 | "WaardeBewMeth": null, | ||
798 | "Symbool": null, | ||
799 | "BkiWaarde": null, | ||
800 | "BkiGroep": null, | ||
801 | "S_AW": null, | ||
802 | "T": null, | ||
803 | "I": null | ||
804 | } | ||
805 | ] | ||
806 | } | ||
807 | {{/code}} | ||
808 | |||
809 | The Content XML looks like this: | ||
810 | |||
811 | {{code language="none" layout="LINENUMBERS"}} | ||
812 | <NewDataSet> | ||
813 | <Table> | ||
814 | <Projectcode>M20B0026-3200</Projectcode> | ||
815 | <Projectnaam>Marwei Delfstrahuizen</Projectnaam> | ||
816 | <Meetpuntnaam>DL07B01</Meetpuntnaam> | ||
817 | <Monsternaam>dsa</Monsternaam> | ||
818 | <Matrix>grond</Matrix> | ||
819 | <Datum>2020-04-03T06:34:00+02:00</Datum> | ||
820 | <Van>40</Van> | ||
821 | <Tot>100</Tot> | ||
822 | </Table> | ||
823 | <Table> | ||
824 | <Projectcode>M20B0026-3200</Projectcode> | ||
825 | <Projectnaam>Marwei Delfstrahuizen</Projectnaam> | ||
826 | <Meetpuntnaam>DL07B02</Meetpuntnaam> | ||
827 | <Monsternaam>dsa</Monsternaam> | ||
828 | <Matrix>grond</Matrix> | ||
829 | <Datum>2020-04-03T06:34:00+02:00</Datum> | ||
830 | <Van>40</Van> | ||
831 | <Tot>100</Tot> | ||
832 | </Table> | ||
833 | <Table> | ||
834 | <Projectcode>M20B0026-3200</Projectcode> | ||
835 | <Projectnaam>Marwei Delfstrahuizen</Projectnaam> | ||
836 | <Meetpuntnaam>DL07B03</Meetpuntnaam> | ||
837 | <Monsternaam>dsa</Monsternaam> | ||
838 | <Matrix>grond</Matrix> | ||
839 | <Datum>2020-04-03T06:34:00+02:00</Datum> | ||
840 | <Van>40</Van> | ||
841 | <Tot>100</Tot> | ||
842 | </Table> | ||
843 | </NewDataSet> | ||
844 | {{/code}} | ||
845 | |||
846 | (% class="box infomessage" %) | ||
847 | ((( | ||
848 | This could be parsed directly into a C# .Net Dataset | ||
849 | ))) |