Gibt die Rabatt-Benefits einer gegebenen Verkaufs-Aktion aus.
Anmerkung zur Rückgabespalte „DerivedFromNodeCharacID“ :
Falls hier „1“ steht, handelt es sich bei „SurchargeValue“ um die ID eines Artikel-Merkmals das dynamisch zur Laufzeit den Rabatt-Wert bestimmt (eben aufgrund der Eigenschaft des für die Verkaufs-Aktion in Frage kommenden Artikels zu diesem Merkmal).
Hinweis : Im Falle eines Währungs-Merkmals ergibt sich der dynamische (absolute) Rabatt durch die Differenz des (Standard-)Artikelpreises zur Preis-Eigenschaft zum angegebenen Merkmal.
HTTP-Method | GET |
HTTP-Auth | Optional |
Tags | |
Engine-Kategorie | order management |
Engine-Typ | Daten-Ermittlung |
Letzte Aktualisierung | 7.0.8 (2015-08-21) |
Name 1) | Standard-Wert | Beschreibung 2) | SQL-Datentyp3) | ab Version |
---|---|---|---|---|
CampaignID | ID einer Verkaufs-Aktion. Falls angegeben, werden die zu dieser Aktion definierten Rabatt-Benefits ermittelt. „NULL“ für diesen Parameter UND für „BenefitID“ anzugeben ist nur im Fall „GetUnusedBenefits = 1“ erlaubt ! | integer | 6.0.8 | |
BenefitID | NULL | ID eines Rabatt-Benefits. Wird nur beachtet, wenn „GetUnusedBenefits = 0“ UND „CampaignID = NULL“ ist. Falls angegeben, wird nur die Definition dieses Rabatts (der mehreren Verkaufs-Aktionen zugewiesen sein kann) ermittelt. | integer | 6.0.8 |
GetUnusedBenefits | 0 | „1“ angeben, um an alle Rabatt-Benefits zu kommen, die noch gar keiner Verkaufs-Aktion zugeordnet wurden (durch om_ModifyCampaignSurcharges_Ad) - „CampaignID“ und „BenefitID“ werden dann nicht beachtet | bit | 6.0.8 |
Spaltenname | Beschreibung | SQL-Datentyp4) | ab Version |
---|---|---|---|
BenefitID | ID eines Rabatt-Benefits für Verkaufs-Aktionen - natürlich identisch mit „BenefitID“ wenn angegeben | integer | 6.0.8 |
SurchargeTypeID | ID einer Rabatt-/Aufschlags-Art | smallint | 6.0.8 |
SurchargeTypeDescription | Bezeichnung der „SurchargeTypeID“ | varchar(100) | 6.0.8 |
SurchargeValue | Der Rabatt-Wert (immer ein negativer Wert, Hintergrund : allgemeine „Surcharges“-Logik, bei der Rabatte negativ und Aufschläge positiv sind) oder die ID eines Personen- bzw. Artikel-Merkmals, das den Rabatt-Wert dynamisch zur Laufzeit bestimmt | decimal(16,6) | 6.0.8 |
SurchargeIsAbsoluteValue | Gibt an, wie „SurchargeValue“ zu verstehen ist : „0“ : relative (d.h. prozentuale) Angabe „1“ : absolute Währungs-Angabe in der Einheit „SurchargeValueUnitID“, und zwar ein NETTO-Wert „2“ : wie „1“, nur als BRUTTO-Wert zu verstehen | tinyint | 6.0.8 |
SurchargeValueUnitID | ID der Einheit, in der „SurchargeValue“ angegeben ist. Im Fall „SurchargeIsAbsoluteValue = 0“ ist dies immer die „Prozent“-Einheit, ansonsten eine Währungs-Einheit. | tinyint | 6.0.8 |
SurchargeValueUnitSymbol | Symbol der Einheit „SurchargeValueUnitID“ (z.B. „%“ oder „EUR“) | varchar(10) | 6.0.8 |
ItemConditionID | ID einer Artikel-Bedingung (mögliche Werte : s. im_GetItemConditions_Ad). Falls NICHT „NULL“ bedeutet dies, daß der Rabatt auf alle Positionen angewandt wird, die ein Artikel-Element enthalten, das die hierdurch gegebene Bedingung erfüllt. | integer | 6.0.8 |
ApplyToOption | Gibt an wie/auf was der Rabatt anzuwenden ist : - „0“ : auf Positionen mit einem „ItemConditionID“ erfüllenden Artikel - „1“ : auf die „erweiterte Artikel-Beding.“ erfüllende Positionen - „2“ : alle Positionen - „3“ : Gesamt-Rabatt („OrderSurcharge“) | tinyint | 6.0.8 |
DerivedFromPersonCharacID | Steht hier „1“, handelt es sich bei „SurchargeValue“ um die ID eines Personen-Merkmals, das dynamisch zur Laufzeit den Rabatt-Wert aufgrund der (Prozent-)Eigenschaft zu diesem Merkmal (der bei der Preis-Ermittlung angegebenen Person) bestimmt | bit | 7.0.8 |
DerivedFromNodeCharacID | Steht hier „1“, handelt es sich bei „SurchargeValue“ um die ID eines Artikel-Merkmals, das dynamisch zur Laufzeit den Rabatt-Wert aufgrund der (Prozent-/Währungs-)Eigenschaft (eines in Frage kommenden Artikels) zu diesem Merkmal bestimmt (s. Beschreibung) | bit | 7.0.8 |
Die Prozedur hat keine Output-Parameter.
Code | Beschreibung | Quelle 5) |
---|---|---|
-569 | Der Benutzer hat kein Ausführungsrecht für die Prozedur | nur indirekt |
-567 | Die Prozedur darf z. Zt. nicht ausgeführt werden | nur indirekt |
-566 | Die Prozedur darf mit den übergebenen Parametern nicht ausgeführt werden | nur indirekt |
-535 | Das Datum liegt nicht in der Vergangenheit | nur indirekt |
-530 | Der Wert ist nicht konvertierbar | nur indirekt |
-510 | Der Benutzer ist nicht registriert | nur indirekt |
-504 | Es ist ein Problem aufgetreten, das nicht gelöst werden kann, Prozedur wird daher abgebrochen | nur indirekt |
-500 | Falsche Parameter | direkt und indirekt |
Die Rückgabe erfolgt als XML-Dokument welches gegen das Schema Response/EngineProcedure_v1_0.xsd validiert.
7.0.8 | 2015-08-21 | Neue Rückgabespalten „DerivedFromPersonCharacID“ und „DerivedFromNodeCharacID“ |
7.0.7 | 2015-01-29 | Interne Änderung : Datentyp-Erweiterung des „ReferenceKey“ [für „_mi_StartProcedure“-Aufruf] |
7.0.4 | 2014-03-19 | Kleine Kosmetik-Korrektur : Bei einigen Code-Zeilen war am Ende ein CR-Zeichen, was wir entfernt haben |
6.5.0 | 2012-09-17 | Kleinen Doku-Fehler behoben |
6.0.8 | 2012-06-29 | Erstmalig in dieser Version erstellt |
Der folgende Link öffnet in einem separaten Fenster den Engine Playground der fest mit dem dbap-demo System verbunden ist:
Unformatierte Ausgabe:
curl -X GET 'http://<partner>-<project>.dstore.de/default/engine/om_GetCampaignSurcharges_Ad?CampaignID=<value>'
Mit xmllint 6) formatierte Ausgabe:
curl -X GET 'http://<partner>-<project>.dstore.de/default/engine/om_GetCampaignSurcharges_Ad?CampaignID=<value>' | xmllint --format -
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_GetCampaignSurcharges_Ad', array( 'CampaignID' => <value>, // 'BenefitID' => NULL, // 'GetUnusedBenefits' => 0 ) ); $service->execute($request); $xml_result = $request->getResponse()->getBody()->toSimpleXmlDocument(); $ResultSet = $xml_result->getRowsAsArray();
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_GetCampaignSurcharges_Ad"> <Parameters> <Parameter Name="CampaignID"><!-- integer value --></Parameter> <!-- <Parameter Name="BenefitID">NULL</Parameter> --> <!-- <Parameter Name="GetUnusedBenefits">0</Parameter> --> </Parameters> </Procedure> </Batch> </ListOfBatches>