Benutzer-Werkzeuge

Webseiten-Werkzeuge


engine:procedures:om_modifycampaignbenefits_ad

om_ModifyCampaignBenefits_Ad

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 :

  • „1“ : Bei diesem Typ („SurchargeBenefits“) ist pro Verkaufs-Aktion nur EIN „Benefit“ erlaubt. Dieser muß zuvor mittels om_ModifyCampaignSurcharges_Ad angelegt worden sein.
  • „2“ : Vom Typ „Rabatt auf Zusatzkosten (eines Auftrags)“ können grundsätzlich MEHRERE „Benefits“ einer Verkaufs-Aktion zugewiesen werden. Solche sind zuvor durch entsprechende Aufrufe von om_ModifyCampOrderSurchDisc_Ad anzulegen.

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.

  • „3“ : Vom Typ „Bonus-Artikel“ ist pro Verkaufs-Aktion nur EIN „Benefit“ erlaubt. Dieser muß zuvor mittelsom_ModifyCampaignBonusItems_Ad angelegt worden sein.
  • „4“ : Vom Typ „Bundle-Preis“ ist pro Verkaufs-Aktion nur EIN „Benefit“ erlaubt. Dieser muß zuvor mittels om_ModifyCampBundlePricing_Ad angelegt worden sein.

Hinweis : Es können nur „Benefits“ zu einer Verkaufs-Aktion gelöscht oder hinzugefügt werden, wenn die Aktion NICHT aktiv ist !

HTTP-MethodPOST
HTTP-AuthOptional
Tags
Engine-Kategorieorder management
Engine-TypDaten-Änderung
Letzte Aktualisierung7.0.8 (2015-08-21)

Parameter

Name 1) Standard-Wert Beschreibung 2) SQL-Datentyp3) ab Version
CampaignID ID einer Verkaufs-Aktion
integer6.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“).
integer6.0.8
BenefitTypeID ID eines „BenefitTypes“ o.a. „Bonus-Art“ (mögliche Werte : s. om_GetBenefitTypes_Ad) von „BenefitID“
tinyint6.0.8
Delete0 „0“ : „BenefitID“ soll der Verkaufs-Aktion „CampaignID“ zugewiesen werden
„1“ : Die Zuordnung „CampaignID“ - „BenefitID“ soll gelöscht werden
bit6.0.8

Rückgabe

Die Prozedur hat keine Rückgaben.

Output-Parameter

Die Prozedur hat keine Output-Parameter.

Mögliche Return-Codes

Code Beschreibung Quelle 4)
-1216Eine Verkaufs-Aktion darf für eine SurchargeTypeID nur einen Rabatt als Benefit habennur direkt
-1215Maximale Anzahl Benefits eines Typs pro Verkaufs-Aktion ist überschrittennur direkt
-1214Die Währung des „Surcharge-Benefits“ stimmt nicht mit der der Verkaufs-Aktion übereinnur direkt
-1202Die Campaign kann nicht mehr geändert werden, weil sie aktiv istnur direkt
-621Fehlender oder falscher Eintrag in PersonTypeSettingsnur indirekt
-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
-550Fehlender oder falscher Eintrag in Settingsnur 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.8 2015-08-21Kleinen Doku-Fehler behoben
7.0.7 2015-01-29Interne Änderung : Datentyp-Erweiterung des „ReferenceKey“ [für „_mi_StartProcedure“-Aufruf]
7.0.5 2014-05-26Neuer unterstützter „BenefitType“ mit der ID „4“ [„Bundle-Preis“]
7.0.4 2014-03-191. 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-17Implementierung der „BenefitTypeID = 2“
6.0.8 2012-06-29Erstmalig 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 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 -
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_ModifyCampaignBenefits_Ad',
		array(
			'CampaignID' => <value>,
			'BenefitID' => <value>,
			'BenefitTypeID' => <value>,
			// 'Delete' => 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_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>
1)
Pflichtparameter sind unterstrichen
4)
direkt meint „von der Prozedur selber“ und indirekt meint „von intern aufgerufenen Unterprozeduren“
5)
I.d.R. auf Unix-artigen Systemen bereits installiert, Bestandteil der libxml2, siehe http://www.xmlsoft.org
engine/procedures/om_modifycampaignbenefits_ad.txt · Zuletzt geändert: 11.01.2016 (Externe Bearbeitung)