Prozedur zur Verwaltung von um Mengen/Warenwert-Kriterien erweiterte (Artikel-)Bedingungs-Gruppen für eine Verkaufs-Aktion.
Zum Verständnis :
Jeder „Verkaufs-Aktion“ (einer sogenannten „Campaign“) können Bedingungen zugeordnet werden, die erfüllt sein müssen, damit der Kunde die „Benefits“ der Aktion nutzen kann. (Genau) Eine dieser Bedingungen kann eine sogenannte „Erweiterte Artikel-Bedingung“ sein.
Dieser Bedingung ist genau eine (einfache) Artikel-Bedingung zugeordnet (deren Aufbau detailliert in im_GetItemConditions_Ad beschrieben ist), die kurz gesagt aus Bedingungs-Gruppen besteht, die ihrerseits aus Bedingungs-Teilen bestehen.
Die gesamte Artikel-Bedingung und/oder ihre „Bestandteile“ können (jeweils) „erweitert“ werden, und zwar um Mengen- und/oder
Warenwert-Kriterien. So wird beispielsweise aus der Bedingungs-Gruppe „Schuhe der Marke X ODER grüne Hosen“ eine „erweiterte Bedingungs-Gruppe“ wie „Schuhe der Marke X ODER 3 grüne Hosen im Gesamt-Wert von 250 Euro“.
Hinweise :
1.) Natürlich gibt es einen Fehler, wenn „NULL“ für ALLE „Kriterien-Parameter“ übergeben wird (es sei denn die Erweiterung soll gelöscht werden, sprich es ist „DeleteConditionExtension = 1“).
2.) Wenn ein „Min…“- bzw. „From…“-Parameter angegeben ist, darf der zugehörige „Max…“- bzw. „To…“-Parameter mit „NULL“ übergeben werden. Wenn dem so ist, wählen wir nämlich automatisch den maximal möglichen Wert (für den entsprechenden Datentyp). Beispiel : Wenn „FromQuantity = 2“ und „ToQuantity = NULL“ ist, wählen wir automatisch den „max integer“-Wert (2147483647) für „ToQuantity“.
3.) Sofern „ConditionID“ einer AKTIVEN Verkaufs-Aktion zugeordnet ist, kann NICHTS mehr verändert werden (ggf. gibt es dann also einen Fehler) !
HTTP-Method | POST |
HTTP-Auth | Optional |
Alias | om_ModifyCampaignItemConditionGroups_Ad |
Tags | |
Engine-Kategorie | order management |
Engine-Typ | Daten-Änderung |
Letzte Aktualisierung | 7.0.7 (2015-01-29) |
Name 1) | Standard-Wert | Beschreibung 2) | SQL-Datentyp3) | ab Version |
---|---|---|---|---|
ConditionID | ID einer auf Artikel-Bedingungen basierenden Verkaufs-Aktions-Bedingung | integer | 6.0.7 | |
ItemConditionGroupID | ID einer Artikel-Bedingungs-Gruppe (muß Teil der Artikel-Bedingung sein, auf der „ConditionID“ basiert !), die je nach „DeleteConditionExtension“ erweitert oder deren Erweiterung gelöscht werden soll | integer | 6.0.7 | |
ConditionGroupDescription | Bezeichnung der erweiterten Artikel-Bedingungs-Gruppe „ItemConditionGroupID“ | varchar(255) | 6.0.7 | |
MinNumberOfItems | NULL | Die Anzahl VERSCHIEDENER Artikel-Elemente, die die Artikel-Bedingungs-Gruppe „ItemConditionGroupID“ erfüllen, muß zwischen diesem Wert und „MaxNumberOfItems“ (sofern nicht „NULL“) liegen | integer | 6.0.7 |
MaxNumberOfItems | NULL | Die Anzahl VERSCHIEDENER Artikel-Elemente, die die Artikel-Bedingungs-Gruppe „ItemConditionGroupID“ erfüllen, muß zwischen „MinNumberOfItems“ und diesem Wert (sofern nicht „NULL“) liegen | integer | 6.0.7 |
FromQuantity | NULL | Die Gesamt-Menge (Summe „Quantity“) ALLER Artikel-Elemente, die die Artikel-Bedingungs-Gruppe „ItemConditionGroupID“ erfüllen, muß zwischen diesem Wert und „ToQuantity“ (sofern nicht „NULL“) liegen | integer | 6.0.7 |
ToQuantity | NULL | Die Gesamt-Menge (Summe „Quantity“) ALLER Artikel-Elemente, die die Artikel-Bedingungs-Gruppe „ItemConditionGroupID“ erfüllen, muß zwischen „FromQuantity“ und diesem Wert (sofern nicht „NULL“) liegen | integer | 6.0.7 |
FromItemBasicPrice | NULL | Der EINZEL-Preis, den „_om_GetBasicPrices“ für ein Artikel-Element, das die Artikel-Bedingungs-Gruppe „ItemConditionGroupID“ erfüllt, liefert, muß zwischen diesem Wert und „ToItemBasicPrice“ (sofern nicht „NULL“) liegen | money | 6.0.7 |
ToItemBasicPrice | NULL | Der EINZEL-Preis, den „_om_GetBasicPrices“ für ein Artikel-Element, das die Artikel-Bedingungs-Gruppe „ItemConditionGroupID“ erfüllt, liefert, muß zwischen „FromItemBasicPrice“ und diesem Wert (sofern nicht „NULL“) liegen | money | 6.0.7 |
FromBasicPriceSum | NULL | Die Gesamt-Summe für alle Artikel-Elemente (Summe aller Einzelpreise, die „_om_GetBasicPrices“ liefert, mit der jew. „Quantity“ multipliziert), die die Bedingungs-Gruppe „ItemConditionGroupID“ erfüllen, muß zw. diesem Wert und „ToBasicPriceSum“ liegen | money | 6.0.7 |
ToBasicPriceSum | NULL | Die Gesamt-Summe für alle Artikel-Elemente (Summe aller Einzelpreise, die „_om_GetBasicPrices“ liefert, mit der jew. „Quantity“ multipliziert), die die Bedingungs-Gruppe „ItemConditionGroupID“ erfüllen, muß zw. „FromBasicPriceSum“ und diesem Wert liegen | money | 6.0.7 |
DeleteConditionExtension | 0 | „1“ angeben, um eine bereits vorhandene (innerhalb der Verkaufs-Aktions-Bedingung „ConditionID“ geltende) Erweiterung der Artikel-Bedingungs-Gruppe „ItemConditionGroupID“ zu löschen | bit | 6.0.7 |
Die Prozedur hat keine Rückgaben.
Die Prozedur hat keine Output-Parameter.
Code | Beschreibung | Quelle 4) |
---|---|---|
-1201 | Die Bedingung kann nicht geändert/gelöscht werden, da sie in einer aktiven Campaign verwendet wird | nur direkt |
-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 |
-502 | Die Parameter-Werte der Prozedur können nicht verarbeitet werden (kein passendes Trennzeichen) | 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.7 | 2015-01-29 | Interne Änderung : Datentyp-Erweiterung des „ReferenceKey“ [für „_mi_StartProcedure“-Aufruf] |
7.0.4 | 2014-03-19 | „set forceplan off“-Anweisung fehlte an einer Stelle |
6.5.4 | 2013-04-29 | Anpassungen an aktuellen Code-Standard, u.a. wg. UTF8-Unterstützung |
6.5.1 | 2012-11-02 | Pflege von Informationen zum „MetaInformationType“ „CanCertainlyBeFulfilledBySingleTreeNodeID“ ergänzt |
6.0.7 | 2012-05-08 | 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_ModifyCampItemConGroups_Ad?ConditionID=<value>&ItemConditionGroupID=<value>&ConditionGroupDescription=<value>'
Mit xmllint 5) formatierte Ausgabe:
curl -X POST 'http://<partner>-<project>.dstore.de/default/engine/om_ModifyCampItemConGroups_Ad?ConditionID=<value>&ItemConditionGroupID=<value>&ConditionGroupDescription=<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_ModifyCampItemConGroups_Ad', array( 'ConditionID' => <value>, 'ItemConditionGroupID' => <value>, 'ConditionGroupDescription' => '<value>', // 'MinNumberOfItems' => NULL, // 'MaxNumberOfItems' => NULL, // 'FromQuantity' => NULL, // 'ToQuantity' => NULL, // 'FromItemBasicPrice' => NULL, // 'ToItemBasicPrice' => NULL, // 'FromBasicPriceSum' => NULL, // 'ToBasicPriceSum' => NULL, // 'DeleteConditionExtension' => 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_ModifyCampItemConGroups_Ad"> <Parameters> <Parameter Name="ConditionID"><!-- integer value --></Parameter> <Parameter Name="ItemConditionGroupID"><!-- integer value --></Parameter> <Parameter Name="ConditionGroupDescription"><!-- varchar value --></Parameter> <!-- <Parameter Name="MinNumberOfItems">NULL</Parameter> --> <!-- <Parameter Name="MaxNumberOfItems">NULL</Parameter> --> <!-- <Parameter Name="FromQuantity">NULL</Parameter> --> <!-- <Parameter Name="ToQuantity">NULL</Parameter> --> <!-- <Parameter Name="FromItemBasicPrice">NULL</Parameter> --> <!-- <Parameter Name="ToItemBasicPrice">NULL</Parameter> --> <!-- <Parameter Name="FromBasicPriceSum">NULL</Parameter> --> <!-- <Parameter Name="ToBasicPriceSum">NULL</Parameter> --> <!-- <Parameter Name="DeleteConditionExtension">0</Parameter> --> </Parameters> </Procedure> </Batch> </ListOfBatches>