Löscht, erstellt oder ändert im „dStore“ definierte Versandarten.
Hinweise zu Einschränkungen/Erweiterungen, die seit 6.0.2 gelten :
1.) Allgemein gilt, daß Kosten/Rabatte nicht mehr 1:1 zu einer Versandart (alos in der Tabelle „ShippingTypes“) konfiguriert werden, sondern „Surcharges“ (genau ein „Surcharge“ oder keine/mehrere „Surcharges“) für einen Zeitraum in „ShippingTypeSurcharges“ definiert werden (s. om_ModifyShippingTypeSurch_Ad). Aus Gründen der Abwärtskompatibilität mußte aber für die Parameter „SurchargeTypeID“ und „Cost“ weiterhin eine „sinnvolle Funktionalität“ gewährleistet bleiben. Daher ergeben sich die folgenden weiteren Punkte…
2.) Wird „Cost“ angegeben, muss auch die „SurchargeTypeID“ übergeben werden und umgekehrt.
3.) Sollte es sich bei „SurchargeTypeID“ NICHT um einen „Surcharge“ aus der „SurchargeTypeCategory“ mit der ID „3“ („Versandkosten“) handeln, kommt es zu einem Fehler.
4.) Die Kosten („Cost“) können über diese Prozedur nur bearbeitet werden, wenn es keinen oder nur einen „ShippingTypeSurcharge“ zur angegebenenen „ShippingTypeID“ für den derzeitigen Zeitraum gibt. Sollte es mehr Datensätze geben oder bereits einen Datensatz zur „ShippingTypeID“, dessen „SurchargeTypeID“ aber von der hier übergebenen „SurchargeTypeID“ abweicht, kommt es auch zu einem Fehler („-500“).
5.) Es können grundsätzlich auch „Surcharges“ (zur „SurchargeTypeID“) konfiguriert sein, die in der ZUKUNFT beginnen. Auch diese werden (sofern die in 2. - 4. geschilderten Bedingungen erfüllt sind) durch „Cost“ überschrieben, d.h. die/der durch „Cost“ angegebene(n) Kosten bzw. Rabatt gilt/gelten ab jetzt bis „unendlich“ !
6.) „SurchargeTypeID“ kann nun auch mit „NULL“ belegt werden, was bei Neu-Anlage einer Versandart bedeutet, daß KEINE Kosten oder Rabatte mit ihr verbunden sind (vorher mußte in solch einem Fall „Cost“ mit „0“ belegt werden). Im Ändern-Fall heißt die Angabe von „NULL“ für „SurchargeTypeID“, daß an den bestehenden Kosten/Rabatten NICHTS geändert werden soll.
HTTP-Method | POST |
HTTP-Auth | Optional |
Tags | |
Engine-Kategorie | configurations |
Engine-Typ | Daten-Änderung |
Letzte Aktualisierung | 7.0.7 (2015-01-29) |
Name 1) | Standard-Wert | Beschreibung 2) | SQL-Datentyp3) | ab Version |
---|---|---|---|---|
ShippingTypeID | NULL | ID einer Versandart. „NULL“ angeben, um einen neue Versandart anzulegen. | tinyint | 3.5.0 |
ShippingTypeDescription | Bezeichnung der „ShipingTypeID“ in der Standardsprache („Settings“-Eintrag zum Schlüssel „DefaultLanguageID“) | varchar(100) | 3.5.0 | |
RegionID | ID einer Region, die bestimmte Länder („Countries“) zusammenfaßt. om_GetPaymentAndShipping_Pu bietet die Versandart „ShippingTypeID“ nur dann an, wenn die Person, an die die Ware geliefert werden soll, aus einem Land kommt, das dieser Region angehört. | smallint | 3.5.0 | |
BruttoSumFrom | om_GetPaymentAndShipping_Pu bietet die Versandart „ShippingTypeID“ nur dann an, wenn der Brutto-Bestellwert (in der Einheit „CurrencyID“) mindestens so hoch wie dieser Betrag ist | money | 3.5.0 | |
BruttoSumTo | om_GetPaymentAndShipping_Pu bietet die Versandart „ShippingTypeID“ nur dann an, wenn der Brutto-Bestellwert (in der Einheit „CurrencyID“) höchstens so hoch wie dieser Betrag ist | money | 3.5.0 | |
CurrencyID | ID einer Währung, in der „BruttoSumFrom“ und „BruttoSumTo“ angegeben sind | tinyint | 3.5.0 | |
SurchargeTypeID | ID einer Preis-Aufschlags/Rabatt-Art, die bei der Versandart „ShippingTypeID“ anfällt. Kann auch „NULL“ sein (wenn keine Kosten/Rabatte entstehen bzw. gewährt werden). | smallint | 3.5.0 | |
Cost | Anfallende Kosten, wenn „ShippingTypeID“ gewählt wird. Hier steht entweder ein Prozent-Wert, wenn zur Aufschlagsart „SurchargeTypeID“ für „Relative“ der Wert „1“ hinterlegt ist, oder ein Betrag x (in der zur „SurchargeTypeID“ definierten Einheit !) | decimal(16,6) | 3.5.0 | |
DeleteShippingType | 0 | „0“ : Eine neue Versandart anlegen bzw. die vorhandene „ShippingTypeID“ ändern „1“ : Die Versandart „ShippingTypeID“ soll gelöscht werden | bit | 3.5.0 |
Active | 1 | „0“ : „ShippingTypeID“ soll nicht mehr verwendet werden (kann aber nicht gelöscht werden, da die Versandart noch referenziert wird) „1“ : Die Versandart ist „aktiv“, d.h. wird aktuell und in Zukunft verwendet | bit | 3.5.20 |
PredefBillContentDescription | 'Versandkosten' | Falls angegeben, wird bei Neu-Anlage auch ein entsprechend (via „TableID“ und „TableKeyID“) referenzierter neuer Datensatz in „PredefinedBillContent“ (s.a. om_ModifyPredefBillContent_Ad) angelegt - mit der hier angegebenen Bezeichnung | varchar(100) | 5.5.0 |
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 |
-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] |
6.5.4 | 2013-04-29 | Anpassungen an aktuellen Code-Standard, u.a. wg. UTF8-Unterstützung |
6.0.2 | 2011-06-08 | 1. „Cost“ wird nur noch berücksichtigt, wenn „SurchargeTypeID“ auch angegeben ist 2. Es ist nun möglich, KEINE Kosten zu hinterlegen 3. Die Kosten können nur unter bestimmten Bedingungen bearbeitet werden |
5.5.0 | 2008-01-07 | 1. Neuer Parameter „PredefBillContentDescription“ 2. Ab jetzt gibt es „-500“, wenn eine Versandart aktualisiert/gelöscht werden soll, die es gar nicht gibt 3. Ausgabe via „print“ im Fehler-Fall „-500“ (mit Informationen über die Ursache) |
5.0.2 | 2005-04-29 | „ShippingTypes“ hat eine neue Spalte „CreatedAtDateAndTime“, die ab jetzt natürlich gepflegt wird |
4.0.14 | 2004-06-03 | 1. Aufruf der Prozeduren „_mi_StartProcedure“, „_mi_FinishProcedure“ und „_mi_ChooseParamValueSeperator“ 2. Ausführen von „set transaction isolation level 1“ und „set rowcount 0“ zu Beginn der Prozedur 3. Konsequente Fehlerbehandlung |
3.5.20 | 2002-07-22 | |
3.5.0 | 2000-11-23 | 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_ModifyShippingTypes_Ad?ShippingTypeDescription=<value>&RegionID=<value>&BruttoSumFrom=<value>&BruttoSumTo=<value>&CurrencyID=<value>&SurchargeTypeID=<value>&Cost=<value>'
Mit xmllint 5) formatierte Ausgabe:
curl -X POST 'http://<partner>-<project>.dstore.de/default/engine/om_ModifyShippingTypes_Ad?ShippingTypeDescription=<value>&RegionID=<value>&BruttoSumFrom=<value>&BruttoSumTo=<value>&CurrencyID=<value>&SurchargeTypeID=<value>&Cost=<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_ModifyShippingTypes_Ad', array( 'ShippingTypeDescription' => '<value>', 'RegionID' => <value>, 'BruttoSumFrom' => <value>, 'BruttoSumTo' => <value>, 'CurrencyID' => <value>, 'SurchargeTypeID' => <value>, 'Cost' => <value>, // 'ShippingTypeID' => NULL, // 'DeleteShippingType' => 0, // 'Active' => 1, // 'PredefBillContentDescription' => 'Versandkosten' ) ); $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_ModifyShippingTypes_Ad"> <Parameters> <Parameter Name="ShippingTypeDescription"><!-- varchar value --></Parameter> <Parameter Name="RegionID"><!-- smallint value --></Parameter> <Parameter Name="BruttoSumFrom"><!-- money value --></Parameter> <Parameter Name="BruttoSumTo"><!-- money value --></Parameter> <Parameter Name="CurrencyID"><!-- tinyint value --></Parameter> <Parameter Name="SurchargeTypeID"><!-- smallint value --></Parameter> <Parameter Name="Cost"><!-- decimal value --></Parameter> <!-- <Parameter Name="ShippingTypeID">NULL</Parameter> --> <!-- <Parameter Name="DeleteShippingType">0</Parameter> --> <!-- <Parameter Name="Active">1</Parameter> --> <!-- <Parameter Name="PredefBillContentDescription">'Versandkosten'</Parameter> --> </Parameters> </Procedure> </Batch> </ListOfBatches>