Dient zur Verwaltung von „Surcharges“ (Rabatte bzw. Aufschläge) für eine Person (immer bezogen auf ein Element des Artikelbaums).
Näheres zu „Surcharges“ siehe om_GetPersonSurcharges_Ad.
| HTTP-Method | POST |
| HTTP-Auth | Optional |
| 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 |
|---|---|---|---|---|
| PersonID | ID einer Person | integer | 3.5.3 | |
| TreeNodeID | ID eines Elementes im Artikelbaum, auf das sich der Rabatt/-Aufschlag „SurchargeTypeID“ für die Person „PersonID“ bezieht. Dieser gilt dann auch für alle NACHFOLGER (bis auf die, denen direkt eine andere „SurchargeTypeID“ zugwiesen ist). | integer | 3.5.3 | |
| SurchargeTypeID | ID einer Aufschlags-/Rabattart (wie z.B. „Sonder-Rabatt“) | smallint | 3.5.3 | |
| SurchargeValue | Der Wert zur „SurchargeTypeID“, der der Person „PersonID“ für das Element „TreeNodeID“ zugewiesen werden soll. Ein negativer Wert bedeutet einen Rabatt, ein positiver Wert stellt einen Aufschlag dar. | decimal(16,6) | 3.5.3 | |
| DeleteSurcharge | 0 | „0“ : Der Rabatt/Aufschlag „SurchargeValue“ soll für „PersonID“ eingetragen bzw. geändert werden „1“ : Ein evtl. bestehender Rabatt/Aufschlag für die Person „PersonID“ zur „SurchargeTypeID“ für das Element „TreeNodeID“ soll gelöscht werden | bit | 3.5.3 |
Die Prozedur hat keine Rückgaben.
Die Prozedur hat keine Output-Parameter.
| Code | Beschreibung | Quelle 4) |
|---|---|---|
| -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 | nur 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] |
| 4.0.14 | 2004-06-03 | 1. Aufruf der Prozeduren „_mi_StartProcedure“ und „_mi_FinishProcedure“ 2. Ausführen von „set transaction isolation level 1“ und „set rowcount 0“ zu Beginn der Prozedur 3. Konsequente Fehlerbehandlung |
| 3.5.3 | 2001-02-11 | 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_ModifyPersonSurcharges_Ad?PersonID=<value>&TreeNodeID=<value>&SurchargeTypeID=<value>&SurchargeValue=<value>'
Mit xmllint 5) formatierte Ausgabe:
curl -X POST 'http://<partner>-<project>.dstore.de/default/engine/om_ModifyPersonSurcharges_Ad?PersonID=<value>&TreeNodeID=<value>&SurchargeTypeID=<value>&SurchargeValue=<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_ModifyPersonSurcharges_Ad', array( 'PersonID' => <value>, 'TreeNodeID' => <value>, 'SurchargeTypeID' => <value>, 'SurchargeValue' => <value>, // 'DeleteSurcharge' => 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_ModifyPersonSurcharges_Ad"> <Parameters> <Parameter Name="PersonID"><!-- integer value --></Parameter> <Parameter Name="TreeNodeID"><!-- integer value --></Parameter> <Parameter Name="SurchargeTypeID"><!-- smallint value --></Parameter> <Parameter Name="SurchargeValue"><!-- decimal value --></Parameter> <!-- <Parameter Name="DeleteSurcharge">0</Parameter> --> </Parameters> </Procedure> </Batch> </ListOfBatches>