Die getForms Operation gibt die gespeicherten Formulare Formulareingänge zurück.
Wichtig: Ein Field bzw. dessen ID kann nur einmal verwendet werden. Es darf also nicht zweimal "PLZ" im selben Request gebraucht werden.
Request Struktur
Codeblock |
---|
|
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ws="http://ws.eforms.jaxfront.com/">
<soapenv:Header>
<ws:token>?</ws:token>
</soapenv:Header>
<soapenv:Body>
<ws:getForms>
<formId>?</formId>
<dbmResource>?</dbmResource>
<pageSize>?</pageSize>
<offset>?</offset>
<countTotal>?</countTotal>
<includeXML>?</includeXML>
<resultFields>?</resultFields>
<search>
<field id="?">
<condition>?</condition>
<orClauseGroup>?</orClauseGroup>
<sortOrder>?</sortOrder>
<value>?</value>
</field>
</search>
<update>
<state>?</state>
ws:getForms>
</update>
</ws:getForms>
</soapenv:Body>
</soapenv:Envelope> |
Element | Default | Beschreibung |
---|
token | | Zugangsschlüssel zur Authentisierung |
| Formular
| ID des Formulars |
dbmResource |
DBM PfadPfad zu einem DBM. Beispiel: resources/MANDANT/FormularXY/special_search.dbm |
pageSize | 100 | Anzahl Zeilen |
offset | 0 | Anzahl der Zeilen, die übersprungen werden sollen. |
countTotal | false | Liest alle Zeilen und gibt die Anzahl in der Response zurück. |
includeXML | false | Definiert, ob |
as das xmlField zurückgegeben werden soll. |
resultFields | * (alle) | Im XMLDBMapping definierte Felder, welche zurückgegeben werden sollten. |
id | | Field-id gemäss XMLDBMapping |
value | | checkPDF | false | Definiert, das überprüft werden soll, ob für ein Formular ein PDF existiert. Die einzelnen PDF müssen dann über einen Rest-Aufruf konsumiert werden. |
checkAttachment | false | Definiert, das überprüft werden soll, ob für das Formular Beilagen existieren. Die einzelnen Attachments müssen dann über einen Rest-Aufruf konsumiert werden. |
resultFields | * (alle) | Im XMLDBMapping definierte Felder, welche zurückgegeben werden sollten. |
id |
| Field-ID gemäss XMLDBMapping |
value |
| Wert, nachdem in dem Feld gesucht werden soll. Standardmässig werden die Suchabfragen mit |
Wert, nachdem in dem Feld gesucht werden soll. Standardmässig werden die Suchabfragen mit AND verknüpft ausser es wird eine orClauseGroup angegeben. |
condition | = | Wie der Wert gesucht werden soll (=, <>, >, <, >=, <=, LIKE |
, BETWEEN, IN), erläutert unter "Mögliche Operatoren für Condition" |
orClauseGroup |
mind mindestens 2 searchFields, welche mit OR selektiert werden sollen. |
sortOrder | Siehe "Eingeschränkte Abfrage mit Verwendung der orClauseGroup". |
sortOrder | asc | Sortierung aufsteigend/absteigend (asc/desc) |
Response Struktur
Codeblock |
---|
|
<S:Envelope xmlns:S="http://schemas.xmlsoap.org/soap/envelope/">
<S:Body>
<ns2:getFormsResponse xmlns:ns2="http://ws.eforms.jaxfront.com/">
<result>
<info>
<hasNext>?</hasNext>
<offset>?</offset>
<pageSize>?</pageSize>
<size>?</size>
<totalSize>?</totalSize>
</info>
<row>
<field id="?">?</field>
</row>
</result>
</ns2:getFormsResponse>
</S:Body>
</S:Envelope> |
Element | Beschreibung |
---|
hasNext | toalSize - offset > pageSize |
offset | Definiertes offset |
pageSize | Definierte pageSize |
size | Effektiv zurükgebene Anzahl Zeilen |
totalSize | Total gelesene Zeilen |
field | Wert |
id | Field-id gemäss XMLDBMapping |
Beispiele anhand des PLZ Registers
XMLDBMapping PLZ Register
Codeblock |
---|
language | html/xml |
---|
title | XMLDBMapping example (PLZ) |
---|
|
<XMLDBMapping openLinkSupported="false"
performInitialSearch="false"
sortOrder="desc" tableName="PLZ" useColumnChooser="false"
uuidFieldName="ONO"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="xmlDBMapping.xsd">
<field>
<id>Name</id>
<columnName>PLACE_LONG</columnName>
<showAsFilter>true</showAsFilter>
<showAsColumn>true</showAsColumn>
</field>
<field>
<id>PLZ</id>
<columnName>PLZ</columnName>
<showAsFilter>false</showAsFilter>
<showAsColumn>true</showAsColumn>
</field>
<field>
<id>Canton</id>
<columnName>CANTON</columnName>
<showAsFilter>true</showAsFilter>
<showAsColumn>true</showAsColumn>
</field>
</XMLDBMapping> |
Seitenweise Abfragen
Mögliche Operatoren für Condition
Operator | Beschreibung | Beispiel |
---|
= | Gleich |
|
<> | Nicht gleich |
|
> | Grösser als |
|
< | Kleiner als |
|
>= | Grösser gleich |
|
<= | Kleiner gleich |
|
LIKE | Ähnlich wie. Suchbegriff muss mit den Wildcards % oder * umgeben sein. | <value>*formular*</value> |
MULTI_LIKE | Wenn der Operand entweder ähnlich wie einer angegebenen Werten ist. Die Zahlenwerte müssen per "_;_" getrennt werden. | <value>BL_;_XX_;_GL</value> wenn LIKE %BL%, %XX% und %GL% gesucht werden soll. |
IN | Wenn der Operand gleich ist wie einer aus einer Liste von Werten. WICHTIG: Kein Whitespace zwischen den Werten und Single-Quotes verwenden | <value>'BegriffEins','Test','weitererBegriff'</value> |
BETWEEN | Wenn der Operand zwischen den beiden Zahlenwerten ist. Die Zahlenwerte müssen per Komma oder "_;_" getrennt werden. | <value>5000,6000</value> wenn 5221 gesucht wird. |
CUSTOM | Eigene Where-Bedingung, erlaubt komplexe Abfragen mit Verschachtelungen. | <value>PLZ > 3000 AND PLZ < 3100 AND PLZ not like '%50%'</value> |
NOT [Operator] | Kann als Prefix zur Verneinung eines Operators verwendet werden, z.B.: NOT LIKE |
|
Response Struktur
Codeblock |
---|
|
<S:Envelope xmlns:S="http://schemas.xmlsoap.org/soap/envelope/">
<S:Body>
<ns2:getFormsResponse xmlns:ns2="http://ws.eforms.jaxfront.com/">
<result>
<info>
<hasNext>?</hasNext>
<offset>?</offset>
<pageSize>?</pageSize>
<size>?</size>
<totalSize>?</totalSize>
</info>
<row>
|
Codeblock |
---|
language | html/xml |
---|
title | Request |
---|
|
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ws="http://ws.eforms.jaxfront.com/">
<soapenv:Header>
<ws:token>b86d157d-491f-4af0-b0ad-0141c8fe480c</ws:token>
</soapenv:Header>
<soapenv:Body>
<ws:getForms>
<formId>ZIP</formId>
<countTotal>true</countTotal>
<field id="?">?</field>
<pageSize>10<</pageSize>row>
<offset>5329<</offset>result>
</wsns2:getForms>getFormsResponse>
</soapenv:Body>
</soapenv:Envelope>S:Body>
</S:Envelope> |
Element | Beschreibung |
---|
hasNext | toalSize - offset > pageSize |
offset | Definiertes offset |
pageSize | Definierte pageSize |
size | Effektiv zurükgebene Anzahl Zeilen |
totalSize | Total gelesene Zeilen |
field | Wert des Feldes |
id | Field-id gemäss XMLDBMapping |
Beispiele anhand des PLZ Registers
XMLDBMapping PLZ Register
Codeblock |
---|
language | html/xml |
---|
title | Response | XMLDBMapping example (PLZ) |
---|
|
<XMLDBMapping openLinkSupported="false"
performInitialSearch="false"
sortOrder="desc" tableName="PLZ" useColumnChooser="false"
uuidFieldName="ONO"
xmlns:xsi<S:Envelope xmlns:S="http://schemaswww.xmlsoapw3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="xmlDBMapping.xsd">
<field>
<id>Name</id>
<columnName>PLACE_LONG</columnName>
<showAsFilter>true</showAsFilter>
<showAsColumn>true</showAsColumn>
</field>
<field>
<id>PLZ</id>
<columnName>PLZ</columnName>
<showAsFilter>false</showAsFilter>
<showAsColumn>true</showAsColumn>
</field>
<field>
<id>Canton</id>
<columnName>CANTON</columnName>
<showAsFilter>true</showAsFilter>
<showAsColumn>true</showAsColumn>
</field>
</XMLDBMapping> |
Seitenweise Abfragen
Codeblock |
---|
language | html/xml |
---|
title | Request |
---|
|
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ws="http://ws.eforms.jaxfront.com/">
<soapenv:Header>
<ws:token>b86d157d-491f-4af0-b0ad-0141c8fe480c</ws:token>
</soapenv:Header>
<soapenv:Body>
<ws:getForms>soap/envelope/">
<S:Body>
<ns2:getFormsResponse xmlns:ns2="http://ws.eforms.jaxfront.com/">
<result>
<info>
<hasNext>false</hasNext>
<offset>5329</offset>
<pageSize>10</pageSize>
<size>2</size>
<totalSize>5331</totalSize>
</info><formId>ZIP</formId>
<row><countTotal>true</countTotal>
<pageSize>10</pageSize>
<field id="Name">Lausanne 1 Dépôt<<offset>5329</field>offset>
</ws:getForms>
</soapenv:Body>
</soapenv:Envelope> |
Codeblock |
---|
language | html/xml |
---|
title | Response |
---|
|
<S:Envelope xmlns:S="http://schemas.xmlsoap.org/soap/envelope/"> <field id="PLZ">1000</field>
<S:Body>
<field id="Canton">VD</field>
</row><ns2:getFormsResponse xmlns:ns2="http://ws.eforms.jaxfront.com/">
<row><result>
<field id="Name">Lausanne</field><info>
<field id="PLZ">1000</field><hasNext>false</hasNext>
<field id="Canton">VD</field><offset>5329</offset>
</row>
</result><pageSize>10</pageSize>
</ns2:getFormsResponse>
</S:Body>
</S:Envelope> |
Eingeschränkte Abfrage
Codeblock |
---|
language | html/xml |
---|
title | Request |
---|
|
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ws="http://ws.eforms.jaxfront.com/">
<soapenv:Header>
<size>2</size>
<ws:token>b86d157d-491f-4af0-b0ad-0141c8fe480c</ws:token><totalSize>5331</totalSize>
</soapenv:Header>info>
<soapenv:Body>
<row>
<ws:getForms>
<field id="Name">Lausanne 1 <formId>ZIP<Dépôt</formId>field>
<countTotal>true</countTotal>
<field id="PLZ">1000</field>
<search>
<field id ="PLZ">Canton">VD</field>
</row>
<row>
<value>9656</value>
<field id="Name">Lausanne</field>
<field <condition>>=</condition>
id="PLZ">1000</field>
<sortOrder>desc</sortOrder><field id="Canton">VD</field>
</field>row>
</search>result>
</wsns2:getForms>getFormsResponse>
</soapenvS:Body>
</soapenvS:Envelope> |
Eingeschränkte Abfrage
Codeblock |
---|
language | html/xml |
---|
title | ResponseRequest |
---|
|
<S<soapenv:Envelope xmlns:S="http://schemas.xmlsoap.org/soap/envelope/">
<S:Body>
<ns2:getFormsResponse xmlns:ns2soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ws="http://ws.eforms.jaxfront.com/">
<soapenv:Header>
<result><ws:token>b86d157d-491f-4af0-b0ad-0141c8fe480c</ws:token>
<info></soapenv:Header>
<hasNext>false</hasNext><soapenv:Body>
<ws:getForms>
<offset>0<<formId>ZIP</offset>formId>
<pageSize>100</pageSize><countTotal>true</countTotal>
<search>
<size>3</size>
<field id ="PLZ"> <totalSize>3</totalSize>
</info>
<row><value>9656</value>
<field id="PLZ">9658</field><condition>>=</condition>
<field id="Name">Wildhaus</field><sortOrder>desc</sortOrder>
</field>
<field id="Canton">SG</field> </search>
</ws:getForms>
</soapenv:Body>
</soapenv:Envelope> |
Codeblock |
---|
language | html/xml |
---|
title | Response |
---|
|
<S:Envelope xmlns:S="http://schemas.xmlsoap.org/soap/envelope/"> </row>
<S:Body>
<row><ns2:getFormsResponse xmlns:ns2="http://ws.eforms.jaxfront.com/">
<field id="PLZ">9657</field><result>
<field id="Name">Unterwasser</field>
<info>
<field id="Canton">SG</field> <hasNext>false</hasNext>
</row> <offset>0</offset>
<row> <pageSize>100</pageSize>
<field id="PLZ">9656</field><size>3</size>
<field id="Name">Alt St. Johann</field>
<totalSize>3</totalSize>
</info>
<field id="Canton">SG</field> <row>
</row>
<field id="PLZ">9658</field>
</result>
</ns2:getFormsResponse>
</S:Body>
</S:Envelope> |
Eingeschränkte Abfrage mit Verwendung der orClauseGroup
Codeblock |
---|
language | html/xml |
---|
title | Request |
---|
|
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ws="http://ws.eforms.jaxfront.com/">
<soapenv:Header>
<ws:token>b86d157d-491f-4af0-b0ad-0141c8fe480c</ws:token>
</soapenv:Header>
<soapenv:Body>
<ws:getForms><field id="Name">Wildhaus</field>
<field id="Canton">SG</field>
</row>
<row>
<field id="PLZ">9657</field>
<field id="Name">Unterwasser</field>
<formId>ZIP</formId>
<field id="Canton">SG</field>
<countTotal>true</countTotal>
<search></row>
<field<row>
id ="PLZ"> <field id="PLZ">9656</field>
<field id="Name">Alt St. <value>6085<Johann</value>field>
<condition>></condition><field id="Canton">SG</field>
<orClauseGroup>OR1</orClauseGroup>
</row>
</field>result>
</ns2:getFormsResponse>
</S:Body>
</S:Envelope> |
Eingeschränkte Abfrage mit Verwendung der orClauseGroup
Codeblock |
---|
language | html/xml |
---|
title | Request |
---|
|
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ws="http://ws.eforms.jaxfront.com/">
<soapenv:Header> <field id ="Name">
<value>Schangnau</value><ws:token>b86d157d-491f-4af0-b0ad-0141c8fe480c</ws:token>
</soapenv:Header>
<soapenv:Body>
<ws:getForms>
<condition>=</condition>
<formId>ZIP</formId>
<orClauseGroup>OR1<<countTotal>true</orClauseGroup>countTotal>
</field><search>
<field id ="CantonPLZ">
<value>BE<<value>6085</value>
<condition>=<<condition>></condition>
</field>
</search>
</ws:getForms>
</soapenv:Body>
</soapenv:Envelope> |
Resultierende Query (Pseudo): ... WHERE (PLZ > '6085' OR PLACE_LONG= 'Schangnau') AND CANTON = 'BE'
Codeblock |
---|
language | html/xml |
---|
title | Response |
---|
|
<S:Envelope xmlns:S="http://schemas.xmlsoap.org/soap/envelope/">
<S:Body>
<orClauseGroup>OR1</orClauseGroup>
</field>
<field <ns2:getFormsResponse xmlns:ns2="http://ws.eforms.jaxfront.com/">
id ="Name"> <result>
<info> <value>Schangnau</value>
<hasNext>false<<condition>=</hasNext>condition>
<offset>0<<orClauseGroup>OR1</offset>orClauseGroup>
</field>
<pageSize>100</pageSize>
<field id ="Canton"> <size>2</size>
<totalSize>2</totalSize>
<<value>BE</info>value>
<row> <condition>=</condition>
</field>
<field id="PLZ">6197</field> </search>
</ws:getForms>
</soapenv:Body>
</soapenv:Envelope> |
Resultierende Query (Pseudo): ... WHERE (PLZ > '6085' OR PLACE_LONG= 'Schangnau') AND CANTON = 'BE'
Codeblock |
---|
language | html/xml |
---|
title | Response |
---|
|
<S:Envelope xmlns:S="http://schemas.xmlsoap.org/soap/envelope/">
<S:Body>
<field id="Name">Schangnau</field>
<field id="Canton">BE</field>
</row><ns2:getFormsResponse xmlns:ns2="http://ws.eforms.jaxfront.com/">
<row><result>
<field id="PLZ">6086</field><info>
<field id="Name">Hasliberg Reuti</field><hasNext>false</hasNext>
<field id="Canton">BE</field>
<offset>0</offset>
</row>
<<pageSize>100</result>pageSize>
</ns2:getFormsResponse>
</S:Body>
</S:Envelope> |
Abfrage der JAXForms Standard-Formulare (Standard XMLDBMapping)
Codeblock |
---|
language | html/xml |
---|
title | Request |
---|
|
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ws="http://ws.eforms.jaxfront.com/">
<soapenv:Header>
<size>2</size>
<totalSize>2</totalSize>
</info>
<row>
<ws:token>30de6360-c1e4-4e72-a3c2-b0b7f0f2b2b1</ws:token>
</soapenv:Header>
<soapenv:Body><field id="PLZ">6197</field>
<ws:getForms>
<countTotal>true</countTotal><field id="Name">Schangnau</field>
<includeXML>false</includeXML>
<search><field id="Canton">BE</field>
<field</row>
id ="Type"> <row>
<field id="PLZ">6086</field>
<value>DEMO-FEEDBACK</value>
<<field id="Name">Hasliberg Reuti</field>
<field id ="Sender">Canton">BE</field>
</row>
</result>
</ns2:getFormsResponse>
</S:Body>
</S:Envelope> |
Abfrage der JAXForms Standard-Formulare (Standard XMLDBMapping)
Wenn keine formId und dbmResource angegeben werden, werden die Standard JAXForms Formulare abgefragt.
Codeblock |
---|
language | html/xml |
---|
title | Request |
---|
|
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ws="http://ws.eforms.jaxfront.com/">
<soapenv:Header> <value>rwu@jaxfront.com</value>
</field>
</search>
<<ws:token>30de6360-c1e4-4e72-a3c2-b0b7f0f2b2b1</ws:getForms>token>
</soapenv:Body>
</soapenv:Envelope> |
Codeblock |
---|
language | html/xml |
---|
title | Response |
---|
|
<S:Envelope xmlns:S="http://schemas.xmlsoap.org/soap/envelope/">
<SHeader>
<soapenv:Body>
<ns2:getFormsResponse xmlns:ns2="http://ws.eforms.jaxfront.com/"><ws:getForms>
<countTotal>true</countTotal>
<result><includeXML>false</includeXML>
<resultFields>Type,Sender</resultFields>
<info> <search>
<field id <hasNext>false</hasNext>
="Type"> <offset>0</offset>
<pageSize>100<<value>DEMO-FEEDBACK</pageSize>value>
<size>1</size></field>
<field id <totalSize>1</totalSize>
="Sender"> </info>
<row>
<value>rwu@jaxfront.com</value>
<field id="Type">DEMO-FEEDBACK<</field>
</search>
</ws:getForms>
</soapenv:Body>
</soapenv:Envelope> |
Codeblock |
---|
language | html/xml |
---|
title | Response |
---|
|
<S:Envelope xmlns:S="http://schemas.xmlsoap.org/soap/envelope/"><field id="Sender">rwu@jaxfront.com</field>
<S:Body>
<field id="Access ID">39582CBB5FB8324853956894768E5A0F</field>
<ns2:getFormsResponse xmlns:ns2="http://ws.eforms.jaxfront.com/">
<field id="UUID">150</field>
<result>
<field id="ID">DEMO-FEEDBACK-1048</field> <info>
<field id="Created">2012-10-26T12:13:39.0</field><hasNext>false</hasNext>
<field id="Last Update">2012-10-26T12:13:39.0</field><offset>0</offset>
<field id="Status">2</field><pageSize>100</pageSize>
<field id="Owner">anonymous</field><size>1</size>
<field id="Mandator">5</field><totalSize>1</totalSize>
</info>
<field id="Parent"/> <row>
<field id="InfoType">DEMO-FEEDBACK</>field>
<field id="GroupSender">6<>rwu@jaxfront.com</field>
</row>
</result>
</ns2:getFormsResponse>
</S:Body>
</S:Envelope> |
...