Exportiert alle Auftrags-Positionen von Aufträgen in einem bestimmten Zeitraum, die sich in einem Order-Status befinden, der der Kategorie „Zum Export freigegeben“ („OrderStateCategoryID = 2“) zugeordnet ist. Außerdem werden nur die Aufträge berücksichtigt, die noch KEINE Fremd-Auftragsnummer besitzen („OrderNo = NULL“).
„Exportieren“ bedeutet, daß diese Auftrags-Positionen in den Status der Kategorie „Im Export befindlich“ („OrderStateCategoryID = 3“) gesetzt werden. Möchte man verhindern, daß nur ein Teil der Positionen umgesetzt wird, setzt man „SkipOHavingDifferentOStates“ auf „1“.
Anschließend gibt die Prozedur die Aufträge (samt Positionen) im gewünschten Zeitraum zurück, die mindestens eine Position besitzen, die sich im Status der Kategorie „Im Export befindlich“ („OrderStateCategoryID = 3“) befindet. Dabei kann über den Parameter „GetAllPositionsOfOrder“ gesteuert werden, ob man garantiert ALLE Positionen dieser Aufträge im Ergebnis ausgegeben bekommt oder nur die Positionen, die auch in besagtem Status sind.
HTTP-Method | POST |
HTTP-Auth | Optional |
Tags | |
Engine-Kategorie | order management |
Engine-Typ | Daten-Ermittlung |
Letzte Aktualisierung | 7.0.7 (2015-01-29) |
Name 1) | Standard-Wert | Beschreibung 2) | SQL-Datentyp3) | ab Version |
---|---|---|---|---|
FromDate | Es werden nur Aufträge berücksichtigt, die zu diesem Zeitpunkt oder später erstellt wurden | datetime | 4.0.0 | |
ToDate | NULL | Es werden nur Aufträge berücksichtigt, die zu diesem Zeitpunkt oder früher erstellt wurden. Bei Angabe von „NULL“ wird der aktuelle Zeitpunkt gewählt. | datetime | 4.0.0 |
NodeCharacteristicID1 | 6 | ID eines Merkmals. Falls angegeben, wird in der Rückgabespalte „Value1“ die (direkte !) Eigenschaft des Artikels der jeweiligen Auftragsposition zu diesem Merkmal („GetActualItemInfo“ steuert den Zeitpunkt) zurückgegeben. | smallint | 4.0.0 |
NodeCharacteristicID2 | NULL | ID eines Merkmals. Falls angegeben, wird in der Rückgabespalte „Value2“ die (direkte !) Eigenschaft des Artikels der jeweiligen Auftragsposition zu diesem Merkmal („GetActualItemInfo“ steuert den Zeitpunkt) zurückgegeben. | smallint | 4.0.0 |
NodeCharacteristicID3 | NULL | ID eines Merkmals. Falls angegeben, wird in der Rückgabespalte „Value3“ die (direkte !) Eigenschaft des Artikels der jeweiligen Auftragsposition zu diesem Merkmal („GetActualItemInfo“ steuert den Zeitpunkt) zurückgegeben. | smallint | 4.0.0 |
SkipOHavingDifferentOStates | 0 | Wird „1“ übergeben, wird eine Auftrags-Position nur dann umgesetzt, wenn alle Positionen des zugehörigen Auftrags „OrderID“ sich in einem Status der Kategorie „Zum Export freigegeben“ („OrderStateCategoryID = 2“) befinden | bit | 4.0.2 |
GetAllPositionsOfOrder | 0 | Gibt an, ob nur Auftrags-Positionen ausgegeben werden sollen, die in einem Status der Kategorie „Im Export befindlich“ („OrderStateCategoryID = 3“) sind („0“), oder aber alle Positionen eines betroffenen Auftrags („1“) | bit | 4.0.2 |
MaxNumberOfOrders | NULL | Möchte man nicht alle „im Export befindlichen“ Aufträge zurückbekommen, gibt man hier die entsprechende Anzahl an („0“ oder „NULL“ bedeutet keine Einschränkung, ein negativer Wert ist nicht erlaubt) | smallint | 4.0.3 |
IncludeOrdersWithOrderNo | 0 | „0“ : Nur Aufträge mit „OrderNo is NOT NULL“ berücksichtigen „1“ : Auch Aufträge mit „OrderNo is NULL“ zurückgeben „2“ : Wie „0“; außerdem werden Aufträge mit „OrderNo is NOT NULL“ NICHT in den Status der Kategorie „Im Export befindlich“ gesetzt | tinyint | 4.0.3 |
GetActualItemInfo | 0 | Gibt an, ob bei der Ermittlung von Eigenschaften der (bestellten) Artikel (zu den durch die „NodeCharacteristicID…“-Parameter angegebenen Merkmale) der Auftrags-Zeitpunkt oder der aktuelle Zeitpunkt gewählt werden soll („1“) oder nicht („0“) | bit | 5.5.1 |
Spaltenname | Beschreibung | SQL-Datentyp4) | ab Version |
---|---|---|---|
OrderID | ID eines Auftrags | integer | 4.0.0 |
OrderDateAndTime | Eingangsdatum des Auftrags „OrderID“ | datetime | 4.0.0 |
OrderDateAndTime_char | „OrderDateAndTime“ als String im Format „15.04.2000 12:33:28:120“ | varchar(23) | 4.0.0 |
PersonID | ID der Person, die den Auftrag „OrderID“ aufgegeben hat | integer | 4.0.0 |
DeliveryPersonID | ID der Person, an die die Ware geliefert werden soll | integer | 4.0.0 |
ShippingTypeID | ID der Versandart für den Auftrag „OrderID“ | tinyint | 4.0.0 |
ShippingType | Bezeichnung der Versandart „ShippingTypeID“ | varchar(100) | 4.0.0 |
NettoShippingCost | Evtl. anfallende (Netto-)Kosten (in der durch „CurrencyID“ angegebenen Währung) für die Versandart „ShippingTypeID“ (Englischer Spaltenname ist NICHT korrekt, NICHT mehr verwenden !) | money | 4.0.0 |
NetShippingCost | Evtl. anfallende (Netto-)Kosten (in der durch „CurrencyID“ angegebenen Währung) für die Versandart „ShippingTypeID“ | money | 5.0.1 |
PreciseNetShippingCost | Exakter (intern gespeicherter) Wert für „NetShippingCost“ | decimal(16,4) | 5.0.1 |
BruttoShippingCost | Evtl. anfallende (Brutto-)Kosten (in der durch „CurrencyID“ angegebenen Währung) für die Versandart „ShippingTypeID“ (Englischer Spaltenname ist NICHT korrekt, NICHT mehr verwenden !) | money | 4.0.0 |
GrossShippingCost | Evtl. anfallende (Brutto-)Kosten (in der durch „CurrencyID“ angegebenen Währung) für die Versandart „ShippingTypeID“ | money | 5.0.1 |
PreciseGrossShippingCost | Exakter (intern gespeicherter) Wert für „GrossShippingCost“ | decimal(16,4) | 5.0.1 |
PaymentType | Bezeichnung der Zahlungsart „PaymentTypeID“ | varchar(11) | 4.0.0 |
PaymentTypeID | ID der Zahlungsart für den Auftrag „OrderID“ | smallint | 4.0.0 |
NettoPaymentCost | Evtl. anfallende (Netto-)Kosten (in der durch „CurrencyID“ angegebenen Währung) für die Zahlungsart „PaymentTypeID“ (Englischer Spaltenname ist NICHT korrekt, NICHT mehr verwenden !) | money | 4.0.0 |
NetPaymentCost | Evtl. anfallende (Netto-)Kosten (in der durch „CurrencyID“ angegebenen Währung) für die Zahlungsart „PaymentTypeID“ | money | 5.0.1 |
PreciseNetPaymentCost | Exakter (intern gespeicherter) Wert für „NetPaymentCost“ | decimal(16,4) | 5.0.1 |
BruttoPaymentCost | Evtl. anfallende (Brutto-)Kosten (in der durch „CurrencyID“ angegebenen Währung) für die Zahlungsart „PaymentTypeID“ (Englischer Spaltenname ist NICHT korrekt, NICHT mehr verwenden !) | money | 4.0.0 |
GrossPaymentCost | Evtl. anfallende (Brutto-)Kosten (in der durch „CurrencyID“ angegebenen Währung) für die Zahlungsart „PaymentTypeID“ | money | 5.0.1 |
PreciseGrossPaymentCost | Exakter (intern gespeicherter) Wert für „GrossPaymentCost“ | decimal(16,4) | 5.0.1 |
NettoSum | Netto-Betrag (in der durch „CurrencyID“ angegebenen Währung) für den Auftrag „OrderID“ (Englischer Spaltenname ist NICHT korrekt, NICHT mehr verwenden !) | money | 4.0.0 |
NetSum | Netto-Betrag (in der durch „CurrencyID“ angegebenen Währung) für den Auftrag „OrderID“ | money | 5.0.1 |
PreciseNetSum | Exakter (intern gespeicherter) Wert für „NetSum“ | decimal(16,4) | 5.0.1 |
BruttoSum | Brutto-Betrag (in der durch „CurrencyID“ angegebenen Währung) für den Auftrag „OrderID“ (Englischer Spaltenname ist NICHT korrekt, NICHT mehr verwenden !) | money | 4.0.0 |
GrossSum | Brutto-Betrag (in der durch „CurrencyID“ angegebenen Währung) für den Auftrag „OrderID“ | money | 5.0.1 |
PreciseGrossSum | Exakter (intern gespeicherter) Wert für „GrossSum“ | decimal(16,4) | 5.0.1 |
CurrencyID | ID einer Währung, in der die Kosten „NettoShippingCost“, „BruttoShippingCost“, „NettoPaymentCost“, „BruttoPaymentCost“, „NettoSum“, „BruttoSum“, „NettoPositionSum“ und „BruttoPositionSum“ angegeben sind | tinyint | 4.0.0 |
Currency | Symbol (im Regelfall der ISO-Code) der Einheit „CurrencyID“ | varchar(10) | 4.0.0 |
DeliveryDateAndTime | Vom Auftraggeber gewünschter Liefertermin | datetime | 4.0.0 |
DeliveryDateAndTime_char | „DeliveryDateAndTime“ als String im Format „15.04.2000 12:33:28:120“ | varchar(23) | 4.0.0 |
PositionCount | Wieviele Positionen (unabhängig vom Status) enthält der Auftrag „OrderID“ | integer | 4.0.2 |
OrderContentID | ID einer Position des Auftrags „OrderID“ | integer | 4.0.0 |
Position | Um die wievielte Position des Auftrags handelt es sich bei „OrderContentID“ | smallint | 4.0.0 |
HTreeNodeID | ID des Elementes aus „HistoryTreeView“ (in dieser ist die Historie des gesamten Artikelbaums abgebildet), das den bestellten Artikel der Position „OrderContentID“ eindeutig kennzeichnet | integer | 4.0.0 |
NodeID | ID des von „HTreeNodeID“ referenzierten Artikel-Elementes | integer | 6.0.1 |
Value1 | (Direkte !) Eigenschaft des zur „HTreeNodeID“ zugehörigen Artikel-Elementes zum durch „NodeCharacteristicID1“ angegebenen Merkmal zum Zeitpunkt „OrderDateAndTime“ bzw. (falls „GetActualItemInfo = 1“ ist) zum aktuellen Zeitpunkt | varchar(1000) | 4.0.0 |
Value2 | (Direkte !) Eigenschaft des zur „HTreeNodeID“ zugehörigen Artikel-Elementes zum durch „NodeCharacteristicID2“ angegebenen Merkmal zum Zeitpunkt „OrderDateAndTime“ bzw. (falls „GetActualItemInfo = 1“ ist) zum aktuellen Zeitpunkt | varchar(1000) | 4.0.0 |
Value3 | (Direkte !) Eigenschaft des zur „HTreeNodeID“ zugehörigen Artikel-Elementes zum durch „NodeCharacteristicID3“ angegebenen Merkmal zum Zeitpunkt „OrderDateAndTime“ bzw. (falls „GetActualItemInfo = 1“ ist) zum aktuellen Zeitpunkt | varchar(1000) | 4.0.0 |
Quantity | Wieviel wurde vom zur „HTreeNodeID“ zugehörigen Artikel-Element bestellt | integer | 4.0.0 |
NettoPositionSum | Netto-Betrag (in der durch „CurrencyID“ angegebenen Währung) der Auftragsposition „OrderContentID“ (Englischer Spaltenname ist NICHT korrekt, NICHT mehr verwenden !) | money | 4.0.0 |
NetPositionSum | Netto-Betrag (in der durch „CurrencyID“ angegebenen Währung) der Auftragsposition „OrderContentID“ | money | 5.0.1 |
PreciseNetPositionSum | Exakter (intern gespeicherter) Wert für „NetPositionSum“ | decimal(16,4) | 5.0.1 |
BruttoPostionSum | Brutto-Betrag (in der durch „CurrencyID“ angegebenen Währung) der Auftragsposition „OrderContentID“ (Englischer Spaltenname ist NICHT korrekt, NICHT mehr verwenden !) | money | 4.0.0 |
GrossPositionSum | Brutto-Betrag (in der durch „CurrencyID“ angegebenen Währung) der Auftragsposition „OrderContentID“ | money | 5.0.1 |
PreciseGrossPositionSum | Exakter (intern gespeicherter) Wert für „GrossPositionSum“ | decimal(16,4) | 5.0.1 |
OrderStateID | ID des Status für die Auftrags-Position „OrderContentID“ | tinyint | 4.0.2 |
SurchargeTypeID | ID eines Preis-Aufschlags oder Rabatts, der im Preis der Position „OrderContentID“ enthalten ist | smallint | 5.0.2 |
SurchargeValue | Ein Preis-Aufschlag oder Rabatt (je nach „SurchargeIsAbsoluteValue“ ein prozentualer oder absoluter Wert), der im Preis der Position „OrderContentID“ enthalten ist | decimal(16,6) | 5.0.2 |
SurchargeIsAbsoluteValue | Gibt an, wie „SurchargeValue“ zu verstehen ist : „0“ : Es ist eine relative (d.h. prozentuale) Angabe „1“ : Es ist eine absolute Währungs-Angabe in der Einheit „CurrencyID“, und zwar ein NETTO-Wert „2“ : Wie „1“ nur als BRUTTO-Wert zu verstehen | tinyint | 5.0.2 |
(parameterunabängige Sortierung)
Die Prozedur hat keine Output-Parameter.
Code | Beschreibung | Quelle 5) |
---|---|---|
-1323 | Die Person besitzt kein Konto zum angegebenen Typ | nur indirekt |
-1322 | Transaktion kann nicht durchgeführt weden, da der Status des Kontos dies nicht erlaubt | nur indirekt |
-1321 | Transaktion kann nicht durchgeführt weden, da das Konto keine ausreichende Deckung aufweist | nur indirekt |
-1204 | Fehlender oder falscher Eintrag in CampaignSettings | nur indirekt |
-621 | Fehlender oder falscher Eintrag in PersonTypeSettings | nur indirekt |
-599 | Lizenz ist ungültig oder abgelaufen | nur indirekt |
-572 | Die Prozedur darf nur innerhalb einer Transaktion ausgeführt werden | 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 |
-540 | Falsches Format | 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 |
-507 | Fehlerhafte Implementierung einer Prozedur - Daten in einem Ausgabeparameter sind ungültig | nur indirekt |
-506 | Fehlerhafte Implementierung einer Prozedur - Daten in der Output-Schnittstelle sind ungültig | nur indirekt |
-504 | Es ist ein Problem aufgetreten, das nicht gelöst werden kann, Prozedur wird daher abgebrochen | nur indirekt |
-503 | Fehlerhafte Daten in einer Tabelle - genauere Fehlermeldung auf der Standardausgabe | nur indirekt |
-502 | Die Parameter-Werte der Prozedur können nicht verarbeitet werden (kein passendes Trennzeichen) | nur indirekt |
-501 | Der Parameter „TableID“ und/oder der Parameter „TableKeyID“ ist ungültig | nur indirekt |
-500 | Falsche Parameter | direkt und indirekt |
-398 | Einige OrderSurchargeInformation sind ungültig | nur indirekt |
-390 | Einige OrderContentInformation sind ungültig | nur indirekt |
-385 | Die Brutto-Summe aus Warenwert plus Surcharges unterschreitet den vorgegebenen Mindestwert | nur indirekt |
-348 | Status-Änderung konnte aufgrund paralleler Änderungen nicht durchgeführt werden | nur indirekt |
-347 | Ungültige „OrderStateID“ (da für interne Zwecke reserviert) | nur indirekt |
-346 | Es ist kein Status der Kategorie „Im Export befindlich“ („OrderStateCategoryID = 3“) zugeordnet | nur direkt |
-340 | Fehlende Berechtigung zum Ändern des Orderstatus | nur indirekt |
-333 | Ein benötigter Steuersatz ist nicht bekannt oder konnte nicht ermittelt werden | nur indirekt |
-330 | Es kann keine oder keine eindeutige PaymentForShippingID zu einer Order ermittelt werden | nur indirekt |
-320 | Der Bestand eines Produktes darf nicht unter 0 sinken | nur indirekt |
-286 | Der Benutzer hat nicht die Berechtigung(en), Eigenschaften zu diesem(n) Merkmal(en) zu lesen/ändern | nur indirekt |
-285 | Der Benutzer hat keine Berechtigung, vergangene Eigenschaften zu diesem(n) Merkmal(en) zu ändern | nur indirekt |
-284 | Der Benutzer hat keine Berechtigung, Eigenschaften zu diesem(n) Merkmal(en) zu modifizieren | nur indirekt |
-283 | Der Benutzer hat keine Berechtigung, Eigenschaften zu diesem(n) Merkmal(en) zu ermitteln | nur indirekt |
-245 | Einige Artikel-Eigenschaften sind ungültig | nur indirekt |
-242 | Relative Änderung nicht möglich, da es eine Eigenschaft gibt, deren Gültigkeit in d. Zukunft beginnt | nur indirekt |
-241 | Änderung(en) der Eigenschaft(en) konnte(n) aufgrund paralleler Änderungen nicht durchgeführt werden | nur indirekt |
-221 | Es konnte kein rekursives Merkmal mit der Standardwährung als Einheit ermittelt werden | 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] |
7.0.1 | 2013-08-07 | 1. Datentyp der Rückgabespalten „Value…“ hat sich erweitert ⇒ Anpassung der Doku 2. Anpassungen des Quellcodes an den aktuellen Standard |
6.0.5 | 2011-12-13 | Fehler beim „fetch“-Befehl eines cursor [„The number of parameters/variables in the FETCH INTO clause does not match the number of columns in cursor …“] behoben |
6.0.2 | 2011-06-08 | Holger Wies / Stefan Goebel : 1. Änderungen in Folge von Tabellenänderungen an PaymentTypes und ShippingTypes 2. Ermittlung der Kosten für Zahlungs- und Versandarten nun über „OrderSurcharges“ |
6.0.1 | 2010-07-20 | Neue Rückgabespalte „NodeID“ |
5.5.2 | 2008-10-21 | Bei der intern aufgerufenen Prozedur om_ChangeOrderState_Ad ist ein Parameter weggefallen ⇒ entsprechende Änderung hier im Aufruf |
5.5.1 | 2008-07-29 | 1. Neuer Parameter „GetActualItemInfo“ 2. Ausgabe an die Standard-Ausgabe [via „print“] im Fehler-Fall „-500“, die nähere Informationen über die Ursache enthält |
5.1.5 | 2006-08-29 | Fehler : „LockedNodeCharacteristics“ wurde bisher GAR NICHT beachtet ! |
5.1.1 | 2006-04-05 | Optimierung des Zugriffs auf „NodeProperties“ (bedingt durch die Änderung dieser Tabelle in 5.1.0) |
5.0.2 | 2005-04-29 | Berücksichtigung der Historien-Tabellen für „ShippingTypes“ und „PaymentTypes“ |
5.0.1 | 2005-03-29 | 1. Falsche Werte für „NettoPaymentCost“, „BruttoPaymentCost“, „NettoShippingCost“ und „BruttoShippingCost“ 2. Neue Rückgabespalten |
5.0.0 | 2004-12-21 | „IncludeOrdersWithOrderNo“ ist jetzt ein „tinyint“ ⇒ neue Möglichkeit durch Angabe des Wertes „2“ |
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 |
4.0.3 | 2003-07-10 | 1. Änderung der Sortierung der Rückgabemenge 2. Neue Parameter „MaxNumberOfRows“ und „IncludeOrdersWithOrderNo“ 3. Interne Änderung : Es wird nicht mehr zuerst über das Datum eingeschränkt, sondern über die „OrderStateID“ |
4.0.2 | 2003-06-11 | 1. Implementierung der Prozedur 2. Neue Parameter „SkipOHavingDifferentOStates“ und „GetAllPositionsOfOrder“ 3. Neuer Rückgabespalten „TotalPositionCount“ und „OrderStateID“ |
4.0.0 | 2003-04-03 | 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_ExportOrders_Ad?FromDate=<value>'
Mit xmllint 6) formatierte Ausgabe:
curl -X POST 'http://<partner>-<project>.dstore.de/default/engine/om_ExportOrders_Ad?FromDate=<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_ExportOrders_Ad', array( 'FromDate' => <value>, // 'ToDate' => NULL, // 'NodeCharacteristicID1' => 6, // 'NodeCharacteristicID2' => NULL, // 'NodeCharacteristicID3' => NULL, // 'SkipOHavingDifferentOStates' => 0, // 'GetAllPositionsOfOrder' => 0, // 'MaxNumberOfOrders' => NULL, // 'IncludeOrdersWithOrderNo' => 0, // 'GetActualItemInfo' => 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_ExportOrders_Ad"> <Parameters> <Parameter Name="FromDate"><!-- datetime value --></Parameter> <!-- <Parameter Name="ToDate">NULL</Parameter> --> <!-- <Parameter Name="NodeCharacteristicID1">6</Parameter> --> <!-- <Parameter Name="NodeCharacteristicID2">NULL</Parameter> --> <!-- <Parameter Name="NodeCharacteristicID3">NULL</Parameter> --> <!-- <Parameter Name="SkipOHavingDifferentOStates">0</Parameter> --> <!-- <Parameter Name="GetAllPositionsOfOrder">0</Parameter> --> <!-- <Parameter Name="MaxNumberOfOrders">NULL</Parameter> --> <!-- <Parameter Name="IncludeOrdersWithOrderNo">0</Parameter> --> <!-- <Parameter Name="GetActualItemInfo">0</Parameter> --> </Parameters> </Procedure> </Batch> </ListOfBatches>