Die getForms Operation gibt die gespeicherten 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

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ws="http://ws.eforms.jaxfront.com/">
   <soapenv:Header>
   </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>        
      </ws:getForms>
   </soapenv:Body>
</soapenv:Envelope>
ElementDefaultBeschreibung
formId
ID des Formulars
dbmResource
Absoluter Pfad zu einem DBM. Beispiel: resources/MANDANT/FormularXY/special_search.dbm
pageSize100Anzahl Zeilen
offset0Anzahl der Zeilen, die übersprungen werden sollen.
countTotalfalseLiest alle Zeilen und gibt die Anzahl in der Response zurück.
includeXMLfalseDefiniert, ob das xmlField zurückgegeben werden soll.
checkPDFfalseDefiniert, 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. 
checkAttachmentfalseDefiniert, 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 AND verknüpft ausser es wird eine orClauseGroup angegeben.
condition=Wie der Wert gesucht werden soll (=, <>, >, <, >=, <=, LIKE, IN), erläutert unter "Mögliche Operatoren für Condition"
orClauseGroup
Identifikation für mindestens 2 searchFields, welche mit OR selektiert werden sollen. Siehe "Eingeschränkte Abfrage mit Verwendung der orClauseGroup".
sortOrderascSortierung aufsteigend/absteigend (asc/desc)

Mögliche Operatoren für Condition

OperatorBeschreibungBeispiel
=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> 
BETWEENWenn der Operand zwischen den beiden Zahlenwerten ist. Die Zahlenwerte müssen per Komma oder "_;_" getrennt werden.<value>5000,6000</value> wenn 5221 gesucht wird.
CUSTOMEigene Where-Bedingung, erlaubt komplexe Abfragen mit Verschachtelungen.

<value>PLZ &gt; 3000 AND PLZ &lt; 3100 AND PLZ not like '%50%'</value>

NOT [Operator]Kann als Prefix zur Verneinung eines Operators verwendet werden, z.B.: NOT LIKE


Response Struktur

<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>
ElementBeschreibung
hasNexttoalSize - offset > pageSize
offsetDefiniertes offset
pageSizeDefinierte pageSize
sizeEffektiv zurükgebene Anzahl Zeilen
totalSizeTotal gelesene Zeilen
fieldWert des Feldes
idField-id gemäss XMLDBMapping

Beispiele anhand des PLZ Registers

XMLDBMapping PLZ Register

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

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>
         <pageSize>10</pageSize>
         <offset>5329</offset>
      </ws:getForms>
   </soapenv:Body>
</soapenv:Envelope>
Response
<S:Envelope xmlns:S="http://schemas.xmlsoap.org/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>
            <row>
               <field id="Name">Lausanne 1 Dépôt</field>
               <field id="PLZ">1000</field>
               <field id="Canton">VD</field>
            </row>
            <row>
               <field id="Name">Lausanne</field>
               <field id="PLZ">1000</field>
               <field id="Canton">VD</field>
            </row>
         </result>
      </ns2:getFormsResponse>
   </S:Body>
</S:Envelope>

Eingeschränkte Abfrage

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>
         <search>
            <field id ="PLZ">               
               <value>9656</value>
               <condition>>=</condition>
               <sortOrder>desc</sortOrder>
            </field>
         </search>
      </ws:getForms>
   </soapenv:Body>
</soapenv:Envelope>
Response
<S:Envelope xmlns:S="http://schemas.xmlsoap.org/soap/envelope/">
   <S:Body>
      <ns2:getFormsResponse xmlns:ns2="http://ws.eforms.jaxfront.com/">
         <result>
            <info>
               <hasNext>false</hasNext>
               <offset>0</offset>
               <pageSize>100</pageSize>
               <size>3</size>
               <totalSize>3</totalSize>
            </info>
            <row>
               <field id="PLZ">9658</field>
               <field id="Name">Wildhaus</field>
               <field id="Canton">SG</field>
            </row>
            <row>
               <field id="PLZ">9657</field>
               <field id="Name">Unterwasser</field>
               <field id="Canton">SG</field>
            </row>
            <row>
               <field id="PLZ">9656</field>
               <field id="Name">Alt St. Johann</field>
               <field id="Canton">SG</field>
            </row>
         </result>
      </ns2:getFormsResponse>
   </S:Body>
</S:Envelope>

Eingeschränkte Abfrage mit Verwendung der orClauseGroup

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>
         <search>
            <field id="PLZ">               
               <value>6085</value>
               <condition>></condition>
               <orClauseGroup>OR1</orClauseGroup>
            </field>
            <field id ="Name">               
               <value>Schangnau</value>
               <condition>=</condition>
               <orClauseGroup>OR1</orClauseGroup>
            </field>
            <field id ="Canton">               
               <value>BE</value>
               <condition>=</condition>
            </field>
         </search>
      </ws:getForms>
   </soapenv:Body>
</soapenv:Envelope>

Resultierende Query (Pseudo): ... WHERE (PLZ > '6085' OR PLACE_LONG= 'Schangnau') AND CANTON = 'BE'

Response
<S:Envelope xmlns:S="http://schemas.xmlsoap.org/soap/envelope/">
   <S:Body>
      <ns2:getFormsResponse xmlns:ns2="http://ws.eforms.jaxfront.com/">
         <result>
            <info>
               <hasNext>false</hasNext>
               <offset>0</offset>
               <pageSize>100</pageSize>
               <size>2</size>
               <totalSize>2</totalSize>
            </info>
            <row>
               <field id="PLZ">6197</field>
               <field id="Name">Schangnau</field>
               <field id="Canton">BE</field>
            </row>
            <row>
               <field id="PLZ">6086</field>
               <field id="Name">Hasliberg Reuti</field>
               <field id="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.

Request
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ws="http://ws.eforms.jaxfront.com/">
   <soapenv:Header>
      <ws:token>30de6360-c1e4-4e72-a3c2-b0b7f0f2b2b1</ws:token>
   </soapenv:Header>
   <soapenv:Body>
      <ws:getForms>
         <countTotal>true</countTotal>
         <includeXML>false</includeXML>
         <resultFields>Type,Sender</resultFields>
         <search>
            <field id ="Type">               
               <value>DEMO-FEEDBACK</value>
            </field>
            <field id ="Sender">               
               <value>rwu@jaxfront.com</value>
            </field>
         </search>
      </ws:getForms>
   </soapenv:Body>
</soapenv:Envelope>
Response
<S:Envelope xmlns:S="http://schemas.xmlsoap.org/soap/envelope/">
   <S:Body>
      <ns2:getFormsResponse xmlns:ns2="http://ws.eforms.jaxfront.com/">
         <result>
            <info>
               <hasNext>false</hasNext>
               <offset>0</offset>
               <pageSize>100</pageSize>
               <size>1</size>
               <totalSize>1</totalSize>
            </info>
            <row>
               <field id="Type">DEMO-FEEDBACK</field>
               <field id="Sender">rwu@jaxfront.com</field>
            </row>
         </result>
      </ns2:getFormsResponse>
   </S:Body>
</S:Envelope>


  • No labels