Benutzer-Werkzeuge

Webseiten-Werkzeuge


engine:procedures:om_getcampaignitemcondparts_ad

om_GetCampaignItemCondParts_Ad

Gibt zu einer auf Artikel-Bedingungen basierenden Verkaufs-Aktions-Bedingung die um Mengen/Warenwert-Kriterien erweiterten zugehörigen Bedingungs-Teile zurück.

Hintergrund : Ein Bedingungs-Teil ist Bestandteil einer sogenannten Artikel-Bedingung, deren Aufbau in im_GetItemConditionParts_Ad beschrieben ist. Mit einem solchen Bedingungsteil können Dinge wie „Schuhe der Marke X“ abgebildet werden. Solche Bedingungen müssen aber häufig noch ein Mengen- und/oder Warenwert-Kriterium bekommen, um einen „vollständigen Bedingungteil“ zu erhalten - wie etwa : „mind. 2 Schuhe der Marke X im Wert von 250 Euro“.

Hinweise :
1.) Ob die „…PriceSum…“-Angaben in Brutto oder Netto angegeben sind, bestimmt ein entsprechender „CampaignSettings“-Eintrag (s. om_GetCampaignSettingEntry) zum Schlüssel „PriceConditionsInNet“ (zu der Verkaufs-Aktion, der die Bedingung „ConditionID“ zugeordnet ist).
2.) Die Grenzen der durch die „From…“- und „To…“-Werte bzw. „Min…“- und „Max…“-Angaben definierten Bereiche (wenn nicht „NULL“) sind immer als „einschließlich“ zu verstehen.
3.) NULL„ für „ConditionID“ UND „ItemConditionPartID“ anzugeben ist natürlich nicht erlaubt !

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

Parameter

Name 1) Standard-Wert Beschreibung 2) SQL-Datentyp3) ab Version
ConditionID ID einer auf Artikel-Bedingungen basierenden Verkaufs-Aktions-Bedingung, zu der die erweiterten Artikel-Bedinguns-Teile ermittelt werden sollen. Mögliche Werte : s. om_GetCampaignConditions_Ad (Rückgabespalte „ConditionID“ zur „CriteriaTypeID = 1“).
integer6.0.7
ItemConditionPartIDNULL ID eines Artikel-Bedingungs-Teils. Angeben, um nur die Erweiterung dieses Teils (wenn Bestandteil von „ConditionID“) zu erhalten bzw. um ALLE Verkaufs-Aktions-Bedingungen zu ermitteln (wenn „ConditionID“ „NULL“ ist), zu denen dieser Teil gehört.
integer6.0.7

Rückgabe

(parameterunabhängig)

Spaltenname Beschreibung SQL-Datentyp4) ab Version
ConditionIDID einer Verkaufs-Aktions-Bedingung (die auf einer Artikel-Bedingung basiert) - natürlich identisch mit „ConditionID“ wenn angegeben
integer6.0.7
ItemConditionPartIDID der Artikel-Bedingung, auf der „ConditionID“ basiert - natürlich identisch mit „ItemConditionPartID“ wenn angegeben
integer6.0.7
ExtendedItemCondPartDescrBezeichnung des (um Mengen- und/oder Warenwert-Kriterium erweiterten) Bedingungs-Teils „ItemConditionPartID“
varchar(255)6.0.7
LevelIDsUm den (Artikel-)Bedingungs-Teil „ItemConditionPartID“ zu erfüllen, muß die Hierarchie („LevelID“) eines Artikel-Elementes aus der hier angegebenen Menge der Hierarchien („LevelID“s) kommen. Sonderfall “,,„ bedeutet „beliebige Hierarchie“.
varchar(50)6.0.7
DomainTreeNodeIDsUm den (Artikel-)Bedingungs-Teil „ItemConditionPartID“ zu erfüllen, muß ein Element im Artikelbaum ein Vorgänger-Element besitzen, dessen „TreeNodeID“ aus der hier angegebenen Menge von IDs kommt. Sonderfall “,,„ bedeutet „beliebiger Vorgänger“.
varchar(200)6.0.7
NodeCharacteristicIDID eines Merkmals. Um „ItemConditionPartID“ zu erfüllen, muß ein Element im Artikelbaum eine Eigenschaft zu diesem Merkmal besitzen, die der Bedingung („Operator1“ etc.) genügt. Sonderfall “-1„ : „KEINE Eigenschafts-Bedingung“ (ist also immer erfüllt).
smallint6.0.7
Operator1Operator für die Bedingung „Condition1“. Mögliche Werte :
- “=„
- “!=„ / “<>„
- “~„ / “!~„ (LIKE / NOT LIKE)
- “>„
- “<„
- “>=„
- “⇐„
- „IN“ / “!I„ (in / NICHT in Menge von „Value“-Werten)
- „E“ / “!E„ (IRGENDEINE / KEINE Eigenschaft)
varchar(2)6.0.7
Condition1Bedingung, die in Verbindung mit „Operator1“ anzuwenden ist („NULL“, falls „Operator1“ den Wert „E“ oder “!E„ hat)
varchar(2000)6.0.7
Operator2Operator für die Bedingung „Condition2“. Mögliche Werte :
- “<„ oder “⇐„, falls „Operator1“ “>„ oder “>=„ enthält
- bel. Zeichen (Trennzeichen für Werte-Menge), falls „Operator1“ „IN“ oder “!I„ enthält
varchar(2)6.0.7
Condition2Bedingung, die in Verbindung mit „Operator2“ anzuwenden ist (nur belegt, wenn „Operator2“ den Wert “<„ oder “⇐„ enthält)
varchar(1000)6.0.7
InheritDepthWelche Eigenschaften zu „NodeCharacteristicID“ hinsichtlich Vererbung sollen bei Prüfung der Eigenschafts-Bedingung beachtet werden :
“-1„ : Alle
„0“ : unvererbte
„1“ : direkte u. einfach geerbte
„2“ : direkte u. einfach oder zweifach geerbte
usw.
smallint6.0.7
RecursiveEvaluationWas soll zwecks Prüfung der Bedingung zu „NodeCharacteristicID“ (wenn rekursiv) gewählt werden ?
„0“ : direkte Eigenschaft (also eine Merkmal-ID)
„1“ : rekursiv ausgewertete Eigenschaft
„2“ : zugehör. Beschreibung der Eigenschaft (also der Merkmal-ID)
tinyint6.0.7
MinNumberOfItemsDie Anzahl VERSCHIEDENER Artikel-Elemente, die den Bedingungs-Teil „ItemConditionPartID“ erfüllen, muß zwischen diesem Wert und „MaxNumberOfItems“ (sofern nicht „NULL“) liegen (um „ConditionID“ zu erfüllen)
integer6.0.7
MaxNumberOfItemsDie Anzahl VERSCHIEDENER Artikel-Elemente, die den Bedingungs-Teil „ItemConditionPartID“ erfüllen, muß zwischen „MinNumberOfItems“ und diesem Wert (sofern nicht „NULL“) liegen (um „ConditionID“ zu erfüllen)
integer6.0.7
FromQuantityDie Gesamt-Menge (Summe „Quantity“) ALLER Artikel-Elemente, die den Bedingungs-Teil „ItemConditionPartID“ erfüllen, muß zwischen diesem Wert und „ToQuantity“ (sofern nicht „NULL“) liegen (um „ConditionID“ zu erfüllen)
integer6.0.7
ToQuantityDie Gesamt-Menge (Summe „Quantity“) ALLER Artikel-Elemente, die den Bedingungs-Teil „ItemConditionPartID“ erfüllen, muß zwischen „FromQuantity“ und diesem Wert (sofern nicht „NULL“) liegen (um „ConditionID“ zu erfüllen)
integer6.0.7
FromItemBasicPriceDer EINZEL-Preis, den „_om_GetBasicPrices“ für ein Artikel-Element, das den Bedingungs-Teil „ItemConditionPartID“ erfüllt, liefert, muß zwischen diesem Wert und „ToItemBasicPrice“ (sofern nicht „NULL“) liegen (um „ConditionID“ zu erfüllen)
money6.0.7
ToItemBasicPriceDer EINZEL-Preis, den „_om_GetBasicPrices“ für ein Artikel-Element, das den Bedingungs-Teil „ItemConditionPartID“ erfüllt, liefert, muß zwischen „FromItemBasicPrice“ und diesem Wert (sofern nicht „NULL“) liegen (um „ConditionID“ zu erfüllen)
money6.0.7
FromBasicPriceSumDie Gesamt-Summe für alle Artikel-Elemente (Summe aller Einzelpreise, die „_om_GetBasicPrices“ liefert, mit der jeweiligen „Quantity“ multipliziert), die den Bedingungsteil „ItemConditionPartID“ erfüllen, muß zw. diesem Wert und „ToBasicPriceSum“ liegen
money6.0.7
ToBasicPriceSumDie Gesamt-Summe für alle Artikel-Elemente (Summe aller Einzelpreise, die „_om_GetBasicPrices“ liefert, mit der jeweiligen „Quantity“ multipliziert), die den Bedingungsteil „ItemConditionPartID“ erfüllen, muß zw. „FromBasicPriceSum“ und diesem Wert liegen
money6.0.7
Sortierung der Rückgabe

(parameterunabängige Sortierung)

  • ConditionID (aufsteigend)
  • ItemConditionPartID (aufsteigend)

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
-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.5 2014-05-26Doku bzgl. Datentyp der Rückgabespalten „Condition1“ und „Condition2“ angepasst
6.0.7 2012-05-08Erstmalig 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/om_GetCampaignItemCondParts_Ad?ConditionID=<value>'

Mit xmllint 6) formatierte Ausgabe:

curl -X GET  'http://<partner>-<project>.dstore.de/default/engine/om_GetCampaignItemCondParts_Ad?ConditionID=<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'),
	'om_GetCampaignItemCondParts_Ad',
		array(
			'ConditionID' => <value>,
			// 'ItemConditionPartID' => 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="om_GetCampaignItemCondParts_Ad">
			<Parameters>
				<Parameter Name="ConditionID"><!-- integer value --></Parameter>
				<!-- <Parameter Name="ItemConditionPartID">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/om_getcampaignitemcondparts_ad.txt · Zuletzt geändert: 11.01.2016 (Externe Bearbeitung)