Benutzer-Werkzeuge

Webseiten-Werkzeuge


engine:procedures:om_getcampaignbundlepricing_ad

om_GetCampaignBundlePricing_Ad

Gibt die Definition von Bundle-Preis-Benefits zurück.

Hintergrund : Der Benefit-Typ „Bundle-Preis“ für Verkaufs-Aktionen bietet die Möglichkeit, Sets von Artikeln definieren zu können, die vergünstigt angeboten werden („3 für 2“ oder „2 XY zum Preis von …“ etc.).

Anmerkung zur Rückgabespalte „Quantity“ :
Der Wert gibt an, wieviele Artikel aus einem Set („ItemSetID“) gewählt werden müssen. Der Kunde muß zwar genau diese Anzahl (genauer : die Anzahl an Artikeln aller für das Bundle definierten Sets) bestellen, um den Bundle-Preis zu erhalten, aber trotzdem können natürlich MEHR Artikel, die zu einem Set des Bundles gehören, bestellt werden (überzählige Artikel werden dann eben zum Normalpreis verkauft, sofern sich nicht insgesamt ergibt, daß das Bundle als gesamtes gesehen merhfach geordert wird).

HTTP-MethodGET
HTTP-AuthOptional
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
CampaignID ID einer Verkaufs-Aktion, zu der der Bundle-Preis-Benefit ausgegeben werden soll
integer7.0.5
BenefitIDNULL ID eines Bundle-Preis-Benefits, dessen Definition ausgegeben werden soll. Wird nur beachtet, wenn „CampaignID = NULL“ ist.
integer7.0.5
GetAssignedSets0 Gibt an, ob in der Rückgabemenge auch die zugeordneten Sets ermittelt werden sollen („1“ - wenn gar keine Sets zugeordnet sind, ist das Ergebnis leer !) oder nicht („0“).
bit7.0.5

Rückgabe

wenn GetAssignedSets = 0

Spaltenname Beschreibung SQL-Datentyp4) ab Version
BenefitIDID eines Bundle-Preis-Benefits für Verkaufs-Aktionen - natürlich identisch mit „BenefitID“ wenn angegeben
integer7.0.5
BundlePricingTypeIDID der Art, wie der (Ziel-)Preis für das Bundle „BenefitID“ bestimmt wird
tinyint7.0.5
BundlePriceOrDiscountBei „BundlePricingTypeID = 0“ der Festpreis, bei „BundlePricingTypeID IN (1,2)“ der prozentuale Rabatt und sonst „NULL“
decimal(12,2)7.0.5
TotalQuantitySumme aller „Quantity“-Werte der „ItemSetID“s, die „BenefitID“ zugeordnet sind (redundante Information aus Performance-Gründen für die Bestimmung, ob im Warenkorb das Bundle „BenefitID“ vorliegt)
integer7.0.5
NetBasedPricingBestimmt je nach „BundlePricingTypeID“, ob der Festpreis (ID „0“) in brutto oder netto angegeben ist bzw. (alle anderen IDs) welcher Preis (ob brutto oder netto) bei der Bestimmung „günstigster/teuerster Artikel“ herangezogen werden soll
bit7.0.6

wenn GetAssignedSets = 1

Spaltenname Beschreibung SQL-Datentyp5) ab Version
BenefitIDID eines Bundle-Preis-Benefits für Verkaufs-Aktionen - natürlich identisch mit „BenefitID“ wenn angegeben
integer7.0.5
BundlePricingTypeIDID der Art, wie der (Ziel-)Preis für das Bundle „BenefitID“ bestimmt wird
tinyint7.0.5
BundlePriceOrDiscountBei „BundlePricingTypeID = 0“ der Festpreis, bei „BundlePricingTypeID IN (1,2)“ der prozentuale Rabatt und sonst „NULL“
decimal(12,2)7.0.5
TotalQuantitySumme aller „Quantity“-Werte der „ItemSetID“s, die „BenefitID“ zugeordnet sind (redundante Information aus Performance-Gründen für die Bestimmung, ob im Warenkorb das Bundle „BenefitID“ vorliegt)
integer7.0.5
NetBasedPricingBestimmt je nach „BundlePricingTypeID“, ob der Festpreis (ID „0“) in brutto oder netto angegeben ist bzw. (alle anderen IDs) welcher Preis (ob brutto oder netto) bei der Bestimmung „günstigster/teuerster Artikel“ herangezogen werden soll
bit7.0.6
ItemSetIDID eines Sets von Artikeln (durch die Bedingung „ItemConditionID“ definiert), die Bestandteil des Bundles „BenefitID“ sind
integer7.0.5
SortNoBestimmt die Reihenfolge von „ItemSetID“ innerhalb aller „BenefitID“ zugeordneten Sets
tinyint7.0.5
QuantityGibt an, wieviele Artikel aus dem Set „ItemSetID“ gewählt werden müssen
tinyint7.0.5
DistinctItemsOnlyNur relevant wenn „Quantity > 1“ ! Darf der Kunde denselben Artikel mehrfach auswählen („0“) oder nicht („1“) ?
bit7.0.5
ItemConditionIDID der Artikel-Bedingung, die das Set „ItemSetID“ definiert. Die genaue Definition der Bedingung erhält man durch im_GetItemConditions_Ad.
integer7.0.5
ItemConditionDescriptionBezeichnung der Artikel-Bedingung „ItemConditionID“
varchar(255)7.0.5

Output-Parameter

Die Prozedur hat keine Output-Parameter.

Mögliche Return-Codes

Code Beschreibung Quelle 6)
-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.6 2014-06-231. Neue Rückgabespalte „NetBasedPricing“
2. Rückgabespalte „AbsDiscountSurchargeTypeID“ ist entfallen
7.0.5 2014-05-26Erstmalig 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_GetCampaignBundlePricing_Ad?CampaignID=<value>'

Mit xmllint 7) formatierte Ausgabe:

curl -X GET  'http://<partner>-<project>.dstore.de/default/engine/om_GetCampaignBundlePricing_Ad?CampaignID=<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_GetCampaignBundlePricing_Ad',
		array(
			'CampaignID' => <value>,
			// 'BenefitID' => NULL,
			// 'GetAssignedSets' => 0
		)
);
 
$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_GetCampaignBundlePricing_Ad">
			<Parameters>
				<Parameter Name="CampaignID"><!-- integer value --></Parameter>
				<!-- <Parameter Name="BenefitID">NULL</Parameter> -->
				<!-- <Parameter Name="GetAssignedSets">0</Parameter> -->
			</Parameters>
		</Procedure>
	</Batch>
</ListOfBatches>
1)
Pflichtparameter sind unterstrichen
6)
direkt meint „von der Prozedur selber“ und indirekt meint „von intern aufgerufenen Unterprozeduren“
7)
I.d.R. auf Unix-artigen Systemen bereits installiert, Bestandteil der libxml2, siehe http://www.xmlsoft.org
engine/procedures/om_getcampaignbundlepricing_ad.txt · Zuletzt geändert: 11.01.2016 (Externe Bearbeitung)