Stellt eine Suchanfrage an eine oder mehrere Kategorien und gibt für jede gefundene Kategorie ein Dataset mit den Treffern zurück.
Für Kategorien ohne Treffer werden keine Informationen zurückgegeben.
Parameter:
- xml - die Suchbeschreibung, diese wird gegen das Xml Schema http://webs.idu.de/xsdschemas/Cardo/1.0.0/PuzzleQuery.xsd validiert
- maxRecordsPerCategory - Zeilenlimit pro Kategorie, muss > 0 sein
Der Rückgabewert ist eine Menge von Datasets mit den Trefferdaten der jeweiligen Kategorie. Für Kategorien ohne Treffer wird keine Ausgabe generiert.
Jedes Dataset umfasst eine Mindestmenge von Stammdaten und die Felder aus der Klasse der Kategorie, für die die Eigenschaft InTableProjection gesetzt ist.
Hinweis: Wenn Felder mit einer Kardinalität > 1 zurückgegeben werden, sind die Datensätze dupliziert vorhanden. Über die Spalte pzlnodeid kann die Eindeutigkeit bestimmt werden.
Hinweis: Für Datenfelder vom Typ BLOB wird nur die interne Id des Datenobjektes geliefert, mit dem Dienst ogc.ashx kann die Datei referenziert werden. Bsp.: /net3/public/services/ogc.ashx?Service=Ikx&StObjectDataId=26727&Request=GetBlobTumbnailImageData.
Das eigentliche Dokument kann mit der Methode GetDocumentByNodeId dieses Dienstes abgerufen werden. Der dort verwendete Parameter NodeId entspricht dem Inhalt der Spalte pzlnodeid.
Wie oben schon beschrieben kann auf BLOB Dokumente über den Dienst OGC.ashx zugegriffen werden. Dieser Dienst erlaubt u.a. den Zugriff auf den Inhalt von BLOBs, dabei handelt es sich um Dokumente jeglicher Art.
Der Dienst bietet zwei Methoden für den Zugriff auf BLOB Daten, der Datensatz wird dabei über den Parameter StObjectDataId adressiert, die Methoden durch den Parameter Request:
- GetBlobData - liefert ein Dokument genau so wie es gespeichert ist, ist für alle Dokumenttypen anwendbar.
- GetBlobTumbnailImageData - liefert ein Bild im Format JPEG, für diesen Request kann optional width und/oder height spezifiziert werden (jeweils als Pixelangabe). Der Standardwert sind 200 (Pixel). Wird nur einer der Parameter übergeben, wird die "andere" Seite im korrekten Verhältnis angepasst. Werden beide Parameter übergeben, wird ein Bild in exakt der angeforderten Größe zurückgegeben (u.U. verzerrt.) Optional ist zudem die Angabe des Parameters RotateFlip (Werte sind z. B.: Rotate90FlipNone, Rotate180FlipY). GetBlobTumbnailImageData liefert einen Fehler, wenn es sich bei dem Dokument nicht um ein Bild handelt.
<?xml version='1.0' encoding='utf-8'?>
<Query xmlns='http://schemas.webs.idu.de/cardo3/Puzzle/Query'>
<PuzzleCategoryId>SAENA_WAERME_QUELLE</PuzzleCategoryId>
<!-- <PuzzleCategoryId>SAENA_PV_FREIFLAECHE</PuzzleCategoryId> -->
<Or>
<And>
<SingleComparison>
<EntityPath>/*.FIRMA_NAME</EntityPath>
<Is>Like</Is>
<Value>%rohr%</Value>
</SingleComparison>
<SingleComparison>
<EntityPath>/*.FIRMA_BRANCHE</EntityPath>
<Is>Like</Is>
<Value>Metallurgie</Value>
<Value>Gießerei</Value>
</SingleComparison>
</And>
<Or>
<SingleComparison>
<EntityPath>/PUZZLE$ROOTBASECLASS.KEYWORDS</EntityPath>
<Is>Equal</Is>
<Value>KEYWORD1</Value>
<Value>KEYWORD2</Value>
</SingleComparison>
<SingleComparison>
<EntityPath>/*.FIRMA_PLZ</EntityPath>
<Is>Equal</Is>
<Value>04229</Value>
</SingleComparison>
</Or>
</Or>
</Query>