Prozedur zum Hinzufügen und Löschen von Benefits zu Verkaufsaktionen („Campaigns“). Es handelt sich hierbei um die Verknüpfung von Benefits verschiedener Arten („BenefitTypes“) zu einer Aktion.
Anmerkung zum Parameter „BenefitTypeID“ :
Derzeit werden ZWEI „BenefitTypes“ unterstützt, dementsprechend sind zwei möglich :
Einschränkung : Die „Benefits“ dieses Typs, die einer einzigen Aktion zugewiesen sind, müssen VERSCHIEDENE „ApplyToSurchargeTypeID“s aufweisen (s. gleichnamige Rückgabespalte von om_GetCampOrderSurchDisc_Ad.
Hinweis : Es können nur „Benefits“ zu einer Verkaufs-Aktion gelöscht oder hinzugefügt werden, wenn die Aktion NICHT aktiv ist !
HTTP-Method | POST |
HTTP-Auth | Optional |
Tags | |
Engine-Kategorie | order management |
Engine-Typ | Daten-Änderung |
Letzte Aktualisierung | 7.0.8 (2015-08-21) |
Name 1) | Standard-Wert | Beschreibung 2) | SQL-Datentyp3) | ab Version |
---|---|---|---|---|
CampaignID | ID einer Verkaufs-Aktion | integer | 6.0.8 | |
BenefitID | ID eines Rabatt-Benefits vom Typ „BenefitTypeID“, dessen Zuordnung zu „CampaignID“ (je nach „Delete“) erstellt oder gelöscht werden soll. Muß natürlich zuvor erstellt worden sein, z.B. durch om_ModifyCampaignSurcharges_Ad (wenn „BenefitTypeID = 1“). | integer | 6.0.8 | |
BenefitTypeID | ID eines „BenefitTypes“ o.a. „Bonus-Art“ (mögliche Werte : s. om_GetBenefitTypes_Ad) von „BenefitID“ | tinyint | 6.0.8 | |
Delete | 0 | „0“ : „BenefitID“ soll der Verkaufs-Aktion „CampaignID“ zugewiesen werden „1“ : Die Zuordnung „CampaignID“ - „BenefitID“ soll gelöscht werden | bit | 6.0.8 |
Die Prozedur hat keine Rückgaben.
Die Prozedur hat keine Output-Parameter.
Code | Beschreibung | Quelle 4) |
---|---|---|
-1216 | Eine Verkaufs-Aktion darf für eine SurchargeTypeID nur einen Rabatt als Benefit haben | nur direkt |
-1215 | Maximale Anzahl Benefits eines Typs pro Verkaufs-Aktion ist überschritten | nur direkt |
-1214 | Die Währung des „Surcharge-Benefits“ stimmt nicht mit der der Verkaufs-Aktion überein | nur direkt |
-1202 | Die Campaign kann nicht mehr geändert werden, weil sie aktiv ist | nur direkt |
-621 | Fehlender oder falscher Eintrag in PersonTypeSettings | nur indirekt |
-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 |
-550 | Fehlender oder falscher Eintrag in Settings | 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 | Kleinen Doku-Fehler behoben |
7.0.7 | 2015-01-29 | Interne Änderung : Datentyp-Erweiterung des „ReferenceKey“ [für „_mi_StartProcedure“-Aufruf] |
7.0.5 | 2014-05-26 | Neuer unterstützter „BenefitType“ mit der ID „4“ [„Bundle-Preis“] |
7.0.4 | 2014-03-19 | 1. Implementierung der „BenefitTypeID = 3“ [„Bonus-Artikel“] 2. Doppelte Implementierung des „Nicht-Mehr-Als-Ein-Benefit-Pro-Aktion“-Checks für „BenefitTypeID = 1“ entfernt |
6.5.0 | 2012-09-17 | Implementierung der „BenefitTypeID = 2“ |
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 POST 'http://<partner>-<project>.dstore.de/default/engine/om_ModifyCampaignBenefits_Ad?CampaignID=<value>&BenefitID=<value>&BenefitTypeID=<value>'
Mit xmllint 5) formatierte Ausgabe:
curl -X POST 'http://<partner>-<project>.dstore.de/default/engine/om_ModifyCampaignBenefits_Ad?CampaignID=<value>&BenefitID=<value>&BenefitTypeID=<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_ModifyCampaignBenefits_Ad', array( 'CampaignID' => <value>, 'BenefitID' => <value>, 'BenefitTypeID' => <value>, // 'Delete' => 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_ModifyCampaignBenefits_Ad"> <Parameters> <Parameter Name="CampaignID"><!-- integer value --></Parameter> <Parameter Name="BenefitID"><!-- integer value --></Parameter> <Parameter Name="BenefitTypeID"><!-- tinyint value --></Parameter> <!-- <Parameter Name="Delete">0</Parameter> --> </Parameters> </Procedure> </Batch> </ListOfBatches>