Benutzer-Werkzeuge

Webseiten-Werkzeuge


engine:procedures:im_searchbinaries_ad

im_SearchBinaries_Ad

Dient der Suche von „Binaries“, die entweder Artikel-Elementen oder Artikel-Eigenschaften zugewiesen sind.

Die Suche erfolgt aufgrund von (Binary-)Eigenschafts-Bedingungen, die zuvor via „if_mi_SearchBinaries_Conds“ angegeben und in eine entsprechende „Input-Schnittstelle“ eingetragen worden sein müssen. In „InputNestLevel_Conds“ wird der „NestingLevel“ angegeben, der beim Füllen dieser Schnittstelle durch „if_mi_SearchBinaries_Conds“ im Ausgabeparameter „InputNestingLevel“
zurückgegeben wurde.
Hinweis : Als direkter Aufrufer (d.h. wenn diese Prozedur NICHT innerhalb einer anderen Prozedur ausgeführt wird) kann man davon ausgehen, dass „InputNestingLevel“ nach der (fehlerfreien) Ausführung mit dem Wert „2“ belegt ist (daher auch de default-Wert dieses Parameters).

Wie eine Such-Bedingung für Binaries auszusehen hat, ist der Dokumentation von „if_mi_SearchBinaries_Conds“ zu entnehmen.

HTTP-MethodGET
HTTP-AuthOptional
Tags
Engine-Kategorieitem management
Engine-TypDaten-Ermittlung
Letzte Aktualisierung7.0.7 (2015-01-29)

Parameter

Name 1) Standard-Wert Beschreibung 2) SQL-Datentyp3) ab Version
AssignedToTable0 Welche „Art von Binaries“ (i.S.v. „in welcher Tabelle referenziert“) :
- „0“ : für (nicht-gelöschte) Artikel-Elemente (s.a. im_GetBinaryCodeIDsForNode_Pu)
- „1“ : für Artikel-Eigenschaften (s.a. im_GetBinaryCodeIDsForValue_Pu)
tinyint7.0.1
InputNestLevel_Conds2 Die Suchbedingungen werden vorher durch „if_mi_SearchBinaries_Conds“ übergeben. Der Wert des Ausgabeparameters „InputNestingLevel“ besagter Prozedur ist dann anschließend hier zu übergeben (nur bei indirektem Aufruf nötig).
tinyint7.0.1
ValueSeparator_IN_Operator',' Gibt an, durch welche Zeichenkette bei Verwendung des „IN“-Operators die Werte voneinander getrennt sind (s.a. Doku von „if_mi_SearchBinaries_Conds“)
varchar(4)7.0.1
StartAtRowNo1 Erste Zeile der Ausgabe innerhalb des gesamten Suchergebnisses. Zusammen mit „RowCount“ kann man sich so durch das gesamte Ergebnis „blättern“. Es sind nur Werte „>= 1“ erlaubt !
integer7.0.1
RowCount100 Anzahl der auszugebenden Datensätze der Suche („0“ für alle Daten). Zusammen mit „StartAtRowNo“ kann man sich so durch das gesamte Ergebnis „blättern“. Im Fall „IncludeBinaryCode = 1“ sind nur Werte zwischen „1“ und „100“ erlaubt !
integer7.0.1
OutputBinaryCharacID1NULL ID eines Merkmals für Binary-Eigenschaften. Falls angegeben, enthält die Rückgabespalte „BinaryValue1“ zu jedem gefunden Binary die Eigenschaft zu diesem Merkmal.
smallint7.0.1
OutputBinaryCharacID2NULL Wird nur beachtet, wenn „OutputBinaryCharacID1“ angegeben ist ! ID eines Merkmals für Binary-Eigenschaften. Falls angegeben, enthält die Rückgabespalte „BinaryValue2“ zu jedem gefunden Binary die Eigenschaft zu diesem Merkmal.
smallint7.0.1
OutputBinaryCharacID3NULL Wird nur beachtet, wenn „OutputBin…ID1“ und „OutputBin…ID2“ angegeben sind ! ID eines Merkmals für Binary-Eigenschaften. Falls angegeben, enthält die Rückgabespalte „BinaryValue3“ zu jedem gefunden Binary die Eigenschaft zu diesem Merkmal.
smallint7.0.1
IncludeBinaryCode0 Normalerweise wird nicht der „Code“ der „Binaries“ selbst ermittelt, sondern nur die IDs. Möchte man aber auch den „Code“ (das „Binary selbst also“) und den „Thumbnail-Code“ bekommen, übergibt man hier „1“.
bit7.0.1
NodeCharacteristicID1NULL Wird nur beachtet wenn „AssignedToTable = 0“ ! ID eines Artikel-Merkmals. Falls angegeben, erhält man zu jedem gefundenen Element im Artikelbaum (Rückgabespalte „ChosenTreeNodeID“) die Eigenschaft zu diesem Merkmal.
smallint7.0.1
NodeCharacteristicID2NULL Wird nur beachtet wenn „AssignedToTable = 0“ und „NodeCh…ID1“ angegeben ist ! ID eines Artikel-Merkmals. Falls angegeben, erhält man zu jedem gefundenen Element im Artikelbaum (Rückgabespalte „ChosenTreeNodeID“) die Eigenschaft zu diesem Merkmal.
smallint7.0.1
NodeCharacteristicID3NULL Nur beachtet wenn „AssignedToTable = 0“ und „NodeCh…ID1“ und „No…ID2“ angeg. sind ! ID eines Artikel-Merkmals. Falls angegeben, erhält man zu jedem gefund. Element im Artikelbaum (Rückgabesp. „ChosenTreeNodeID“) die Eigenschaft zu diesem Merkmal.
smallint7.0.1

Rückgabe

wenn AssignedToTable = 0 und IncludeBinaryCode = 0

Spaltenname Beschreibung SQL-Datentyp4) ab Version
BinaryCodeIDID eines gefundenen Binaries
integer7.0.1
NodeIDID eines Artikel-Elementes, dem „BinaryCodeID“ zugewiesen ist
integer7.0.1
ChosenTreeNodeIDID eines Elementes im Artikelbaum, das auf „NodeID“ verweist. Hintergrund : Die Zuordnung eines Binaries erfolgt zu einem Artikel-Element, das MEHRFACH im Artikelbaum eingeordnet sein KANN (derzeit aber nur theoretisch).
integer7.0.1
Value1Eigenschaft von „ChosenTreeNodeID“ zum Merkmal „NodeCharacteristicID1“ (Vererbung wird beachtet, aber ohne rekursive Auswertung)
varchar(1000)7.0.1
Value2Eigenschaft von „ChosenTreeNodeID“ zum Merkmal „NodeCharacteristicID2“ (Vererbung wird beachtet, aber ohne rekursive Auswertung)
varchar(1000)7.0.1
Value3Eigenschaft von „ChosenTreeNodeID“ zum Merkmal „NodeCharacteristicID3“ (Vererbung wird beachtet, aber ohne rekursive Auswertung)
varchar(1000)7.0.1
BinaryValue1Eigenschaft von „BinaryCodeID“ zum Merkmal „OutputBinaryCharacID1“
varchar(250)7.0.1
BinaryValue2Eigenschaft von „BinaryCodeID“ zum Merkmal „OutputBinaryCharacID2“
varchar(250)7.0.1
BinaryValue3Eigenschaft von „BinaryCodeID“ zum Merkmal „OutputBinaryCharacID3“
varchar(250)7.0.1
Sortierung der Rückgabe

(parameterunabängige Sortierung)

  • BinaryCodeID (aufsteigend)
  • NodeID (aufsteigend)

wenn AssignedToTable = 0 und IncludeBinaryCode = 1

Spaltenname Beschreibung SQL-Datentyp5) ab Version
BinaryCodeIDID eines gefundenen Binaries
integer7.0.1
NodeIDID eines Artikel-Elementes, dem „BinaryCodeID“ zugewiesen ist
integer7.0.1
ChosenTreeNodeIDID eines Elementes im Artikelbaum, das auf „NodeID“ verweist. Hintergrund : Die Zuordnung eines Binaries erfolgt zu einem Artikel-Element, das MEHRFACH im Artikelbaum eingeordnet sein KANN (derzeit aber nur theoretisch).
integer7.0.1
Value1Eigenschaft von „ChosenTreeNodeID“ zum Merkmal „NodeCharacteristicID1“ (Vererbung wird beachtet, aber ohne rekursive Auswertung)
varchar(1000)7.0.1
Value2Eigenschaft von „ChosenTreeNodeID“ zum Merkmal „NodeCharacteristicID2“ (Vererbung wird beachtet, aber ohne rekursive Auswertung)
varchar(1000)7.0.1
Value3Eigenschaft von „ChosenTreeNodeID“ zum Merkmal „NodeCharacteristicID3“ (Vererbung wird beachtet, aber ohne rekursive Auswertung)
varchar(1000)7.0.1
BinaryValue1Eigenschaft von „BinaryCodeID“ zum Merkmal „OutputBinaryCharacID1“
varchar(250)7.0.1
BinaryValue2Eigenschaft von „BinaryCodeID“ zum Merkmal „OutputBinaryCharacID2“
varchar(250)7.0.1
BinaryValue3Eigenschaft von „BinaryCodeID“ zum Merkmal „OutputBinaryCharacID3“
varchar(250)7.0.1
BinaryCodeDie Binärdaten selbst
longvarbinary7.0.1
ThumbnailCodeDas sogenannte „Thumbnail“ zur „BinaryCodeID“
longvarbinary7.0.1
Sortierung der Rückgabe

(parameterunabängige Sortierung)

  • BinaryCodeID (aufsteigend)
  • NodeID (aufsteigend)

wenn AssignedToTable = 1 und IncludeBinaryCode = 0

Spaltenname Beschreibung SQL-Datentyp6) ab Version
BinaryCodeIDID eines gefundenen Binaries
integer7.0.1
ValueIDID einer Eigenschaft von Artikel-Elementen, der „BinaryCodeID“ zugewiesen ist
integer7.0.1
NodeCharacteristicIDID des Merkmals, zu dem „ValueID“ gehört
smallint7.0.1
ValueWert der Eigenschaft „ValueID“
varchar(1000)7.0.1
BinaryValue1Eigenschaft von „BinaryCodeID“ zum Merkmal „OutputBinaryCharacID1“
varchar(250)7.0.1
BinaryValue2Eigenschaft von „BinaryCodeID“ zum Merkmal „OutputBinaryCharacID2“
varchar(250)7.0.1
BinaryValue3Eigenschaft von „BinaryCodeID“ zum Merkmal „OutputBinaryCharacID3“
varchar(250)7.0.1
Sortierung der Rückgabe

(parameterunabängige Sortierung)

  • BinaryCodeID (aufsteigend)
  • ValueID (aufsteigend)

wenn AssignedToTable = 1 und IncludeBinaryCode = 1

Spaltenname Beschreibung SQL-Datentyp7) ab Version
BinaryCodeIDID eines gefundenen Binaries
integer7.0.1
ValueIDID einer Eigenschaft von Artikel-Elementen, der „BinaryCodeID“ zugewiesen ist
integer7.0.1
NodeCharacteristicIDID des Merkmals, zu dem „ValueID“ gehört
smallint7.0.1
ValueWert der Eigenschaft „ValueID“
varchar(1000)7.0.1
BinaryValue1Eigenschaft von „BinaryCodeID“ zum Merkmal „OutputBinaryCharacID1“
varchar(250)7.0.1
BinaryValue2Eigenschaft von „BinaryCodeID“ zum Merkmal „OutputBinaryCharacID2“
varchar(250)7.0.1
BinaryValue3Eigenschaft von „BinaryCodeID“ zum Merkmal „OutputBinaryCharacID3“
varchar(250)7.0.1
BinaryCodeDie Binärdaten selbst
longvarbinary7.0.1
ThumbnailCodeDas sogenannte „Thumbnail“ zur „BinaryCodeID“
longvarbinary7.0.1
Sortierung der Rückgabe

(parameterunabängige Sortierung)

  • BinaryCodeID (aufsteigend)
  • ValueID (aufsteigend)

Output-Parameter

NumberOfElementsInResultAusgabeparameter, um zu erfahren, wieviele Binaries insgesamt gefunden wurden

Mögliche Return-Codes

Code Beschreibung Quelle 8)
-569Der Benutzer hat kein Ausführungsrecht für die Prozedurnur indirekt
-567Die Prozedur darf z. Zt. nicht ausgeführt werdennur indirekt
-566Die Prozedur darf mit den übergebenen Parametern nicht ausgeführt werdennur indirekt
-535Das Datum liegt nicht in der Vergangenheitnur indirekt
-530Der Wert ist nicht konvertierbarnur indirekt
-510Der Benutzer ist nicht registriertnur indirekt
-504Es ist ein Problem aufgetreten, das nicht gelöst werden kann, Prozedur wird daher abgebrochennur indirekt
-502Die Parameter-Werte der Prozedur können nicht verarbeitet werden (kein passendes Trennzeichen)nur indirekt
-500Falsche Parameterdirekt und indirekt
-283Der Benutzer hat keine Berechtigung, Eigenschaften zu diesem(n) Merkmal(en) zu ermittelnnur indirekt

XML-Schema

Die Rückgabe erfolgt als XML-Dokument welches gegen das Schema Response/EngineProcedure_v1_0.xsd validiert.

Historie

7.0.7 2015-01-29Interne Änderung : Datentyp-Erweiterung des „ReferenceKey“ [für „_mi_StartProcedure“-Aufruf]
7.0.1 2013-08-07Erstmalig in dieser Version erstellt

Code-Snippets

Engine Playground

Der folgende Link öffnet in einem separaten Fenster den Engine Playground der fest mit dem dbap-demo System verbunden ist:

cURL

Unformatierte Ausgabe:

curl -X GET  'http://<partner>-<project>.dstore.de/default/engine/im_SearchBinaries_Ad'

Mit xmllint 9) formatierte Ausgabe:

curl -X GET  'http://<partner>-<project>.dstore.de/default/engine/im_SearchBinaries_Ad' | xmllint --format -
dStore_php
use dStore_php\WebService;
 
$service = new WebService\Service( WebService\Scheme::HTTP,'<partner>-<project>.dstore.de', 80);
 
$request = new WebService\Requests\Engine\Procedure\Request(
			new WebService\Requests\AccessData('default'),
	'im_SearchBinaries_Ad',
		array(
			// 'AssignedToTable' => 0,
			// 'InputNestLevel_Conds' => 2,
			// 'ValueSeparator_IN_Operator' => ',',
			// 'StartAtRowNo' => 1,
			// 'RowCount' => 100,
			// 'OutputBinaryCharacID1' => NULL,
			// 'OutputBinaryCharacID2' => NULL,
			// 'OutputBinaryCharacID3' => NULL,
			// 'IncludeBinaryCode' => 0,
			// 'NodeCharacteristicID1' => NULL,
			// 'NodeCharacteristicID2' => NULL,
			// 'NodeCharacteristicID3' => NULL
		)
);
 
$service->execute($request);
 
			$xml_result = $request->getResponse()->getBody()->toSimpleXmlDocument();
			$ResultSet = $xml_result->getRowsAsArray();
 
$OutputParams = $xml_result->getOutputParametersAsArray();
engine/execute

XML zur Ausführung mit der Methode engine/execute, z.B. per

curl --header 'Content-Type: application/xml' -X POST 'http://<partner>-<kunde>.dstore.de/default/engine/execute' -d '<xml-daten>'
<?xml version="1.0" encoding="UTF-8"?>
<ListOfBatches>
	<Batch No="0">
		<Procedure Name="im_SearchBinaries_Ad">
			<Parameters>
				<!-- <Parameter Name="AssignedToTable">0</Parameter> -->
				<!-- <Parameter Name="InputNestLevel_Conds">2</Parameter> -->
				<!-- <Parameter Name="ValueSeparator_IN_Operator">','</Parameter> -->
				<!-- <Parameter Name="StartAtRowNo">1</Parameter> -->
				<!-- <Parameter Name="RowCount">100</Parameter> -->
				<!-- <Parameter Name="OutputBinaryCharacID1">NULL</Parameter> -->
				<!-- <Parameter Name="OutputBinaryCharacID2">NULL</Parameter> -->
				<!-- <Parameter Name="OutputBinaryCharacID3">NULL</Parameter> -->
				<!-- <Parameter Name="IncludeBinaryCode">0</Parameter> -->
				<!-- <Parameter Name="NodeCharacteristicID1">NULL</Parameter> -->
				<!-- <Parameter Name="NodeCharacteristicID2">NULL</Parameter> -->
				<!-- <Parameter Name="NodeCharacteristicID3">NULL</Parameter> -->
			</Parameters>
		</Procedure>
	</Batch>
</ListOfBatches>
1)
Pflichtparameter sind unterstrichen
8)
direkt meint „von der Prozedur selber“ und indirekt meint „von intern aufgerufenen Unterprozeduren“
9)
I.d.R. auf Unix-artigen Systemen bereits installiert, Bestandteil der libxml2, siehe http://www.xmlsoft.org
engine/procedures/im_searchbinaries_ad.txt · Zuletzt geändert: 11.01.2016 (Externe Bearbeitung)