Benutzer-Werkzeuge

Webseiten-Werkzeuge


engine:procedures:mi_getsearchitemlacks_ad

mi_GetSearchItemLacks_Ad

Gibt aus der Tabelle „SearchItemLacks“ Suchbegriffe zurück, die in einer Suche verwendet wurden, wobei diese Suche jedoch kein Ergebnis lieferte.

Anmerkung :
Zur Zeit wird die Tabelle „SearchItemLacks“ nur von den Prozeduren im_SearchProductTreeNodes_Ad und „…_Pu“ verwendet und entsprechend gefüllt; allerdings ist die Tabelle prinzipiell für jegliche Suchen geeignet, die sich auf Suchbegriffe für bestimmte MERKMALE stützen - wie z.B. eine Suche nach Eigenschaften von Personen (derzeit noch nicht im „public“-Bereich implementiert). Daher gibt es auch den Parameter „TableID“.

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

Parameter

Name 1) Standard-Wert Beschreibung 2) SQL-Datentyp3) ab Version
TableID ID der Tabelle auf die sich die Suche bezogen hat. Mögliche Werte : siehe Aufruf „exec mi_GetTabsRefInOtherTabs_Ad UsedInSearchItemLacks = 1“, Rückgabespalte „TableID“.
tinyint3.5.20
CharacteristicID ID eines Merkmals, zu dem Eigenschaften in der durch „TableID“ symbolisierten Tabelle existieren und zu dem die Suchbegriffe ausgegeben werden sollen, die kein Suchergebnis lieferten
smallint3.5.20
SearchValue Ein Suchbegriff, nachdem gefiltert werden soll („NULL“ um keine Einschränkung vorzunehmen)
varchar(600)3.5.20
MinimalRequestCounter Für jeden Suchbegriff, der kein Suchergebnis lieferte, wird festgehalten, wie oft er verwendet wurde. Dieser Parameter schränkt nun die Rückgabemenge auf die Suchbegriffe ein, die wenigstens so oft verwendet wurden.
integer3.5.20
rowcount200 Beschränkung der Anzahl Datensätze in der Rückgabemenge (muß „>= 1“ sein)
smallint3.5.20
MaxRequestCounterNULL Für jeden Suchbegriff, der kein Suchergebnis lieferte, wird festgehalten, wie oft er verwendet wurde. Dieser Parameter schränkt nun die Rückgabemenge auf die Suchbegriffe ein, die maximal so oft verwendet wurden.
integer6.0.0

Rückgabe

(parameterunabhängig)

Spaltenname Beschreibung SQL-Datentyp4) ab Version
CharacteristicIDID eines Merkmals (zu dem in der durch „TableID“ symbolisierten Tabelle Eigenschaften hinterlegt sind), in dem nach „SearchValue“ erfolglos gesucht wurde
smallint3.5.20
SearchValueEin Suchbegriff, der zu einem leeren Suchergebnis führte
varchar(600)3.5.20
RequestCounterSo oft wurde „SearchValue“ verwendet
integer3.5.20
Sortierung der Rückgabe

(parameterunabängige Sortierung)

  • RequestCounter (absteigend)

Output-Parameter

Die Prozedur hat keine Output-Parameter.

Mögliche Return-Codes

Code Beschreibung Quelle 5)
-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
-501Der Parameter „TableID“ und/oder der Parameter „TableKeyID“ ist ungültignur indirekt
-500Falsche Parameterdirekt und 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.2 2013-08-291. Datentyp-Erweiterung des Parameters „SearchValue“ [von „100“ auf „600“]
2. Doku-Anpassung bzgl. der Rückgabespalte „SearchValue“ : Aufgrund entsprechender Änderung an der Tabelle
„SearchItemLacks“ ist der Datentyp von „100“ auf „600“ erweitert
6.5.3 2013-03-18Interne Anpassungen wg. UTF8-Unterstützung
6.0.1 2010-07-20Holger Wies : Workaround für „set rowcount“-Bug [siehe Doku im Quelltext]
6.0.0 2010-03-261. Neuer Parameter „MaxRequestCounter“, Quellcode-Anpassungen an den aktuellen Standard
2. Zahlreiche interne Optimierungen
3. Überprüfung, ob „CharacteristicID“ zur „TableID“ paßt
⇒ Neukodierung der Prozedur
4.0.14 2004-06-031. Aufruf der Prozeduren „_mi_StartProcedure“, „_mi_FinishProcedure“ und „_mi_ChooseParamValueSeperator“
2. Ausführen von „set transaction isolation level 1“ und „set rowcount 0“ zu Beginn der Prozedur
4.0.6 2003-11-141. Änderung der Doku bzgl. des Parameters „TableID“
2. Änderung des Checks bzgl. „TableID“
3. Doku der Rückgabemenge fehlte
4. Fehler bzgl. Rückgabespalte „CharacteristicID“ [falscher Wert und Spalte war nicht benannt]
4.0.3 2003-07-101. Änderung bzgl. „TableID“ : „2“ statt „1“ für „NodeCharacteristicValues“ !
2. Es gab immer „-500“, wenn „CharacteristicID = NULL“ angegeben wurde
3.5.20 2002-07-22Erstmalig 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/mi_GetSearchItemLacks_Ad?TableID=<value>&CharacteristicID=<value>&SearchValue=<value>&MinimalRequestCounter=<value>'

Mit xmllint 6) formatierte Ausgabe:

curl -X GET  'http://<partner>-<project>.dstore.de/default/engine/mi_GetSearchItemLacks_Ad?TableID=<value>&CharacteristicID=<value>&SearchValue=<value>&MinimalRequestCounter=<value>' | 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'),
	'mi_GetSearchItemLacks_Ad',
		array(
			'TableID' => <value>,
			'CharacteristicID' => <value>,
			'SearchValue' => '<value>',
			'MinimalRequestCounter' => <value>,
			// 'rowcount' => 200,
			// 'MaxRequestCounter' => NULL
		)
);
 
$service->execute($request);
 
			$xml_result = $request->getResponse()->getBody()->toSimpleXmlDocument();
			$ResultSet = $xml_result->getRowsAsArray();
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="mi_GetSearchItemLacks_Ad">
			<Parameters>
				<Parameter Name="TableID"><!-- tinyint value --></Parameter>
				<Parameter Name="CharacteristicID"><!-- smallint value --></Parameter>
				<Parameter Name="SearchValue"><!-- varchar value --></Parameter>
				<Parameter Name="MinimalRequestCounter"><!-- integer value --></Parameter>
				<!-- <Parameter Name="rowcount">200</Parameter> -->
				<!-- <Parameter Name="MaxRequestCounter">NULL</Parameter> -->
			</Parameters>
		</Procedure>
	</Batch>
</ListOfBatches>
1)
Pflichtparameter sind unterstrichen
5)
direkt meint „von der Prozedur selber“ und indirekt meint „von intern aufgerufenen Unterprozeduren“
6)
I.d.R. auf Unix-artigen Systemen bereits installiert, Bestandteil der libxml2, siehe http://www.xmlsoft.org
engine/procedures/mi_getsearchitemlacks_ad.txt · Zuletzt geändert: 11.01.2016 (Externe Bearbeitung)