Benutzer-Werkzeuge

Webseiten-Werkzeuge


engine:procedures:om_copyfrompoqueuetoorder_ad

om_CopyFromPOQueueToOrder_Ad

Macht aus einer „Einkaufs-Auftrags-Queue“ einen Einkaufs-Auftrag.

Allgemeine Hinweise :

1. Eine „Einkaufs-Auftrags-Queue“ ist eindeutig durch…

  • einen Lieferanten (→ „SupplierID“),
  • einen Auftrags-Typ (→ „OrderTypeID“) und
  • einen Zeitpunkt, an dem der Auftrag spätestens beim Lieferanten platziert werden muß (→ „OrderDeadline“)

… bestimmt. Um solche „Queues“ einzusehen, ist die Prozedur om_GetPurchaseOrderQueues_Ad zu verwenden.

2. Wurde die „Deadline“ (→ „OrderDeadline“) überschritten, gibt es natürlich einen Fehler.

HTTP-MethodPOST
HTTP-AuthOptional
Aliasom_CopyFromPurchaseOrderQueueToOrder_Ad
Tags
Engine-Kategorieorder management
Engine-TypDaten-Änderung
Letzte Aktualisierung7.0.7 (2015-01-29)

Parameter

Name 1) Standard-Wert Beschreibung 2) SQL-Datentyp3) ab Version
SupplierID ID eines Lieferanten, bei dem bestellt werden soll (also eine „PersonID“)
integer5.1.9
OrderTypeID ID eines Auftrag-Typs. Mögliche Werte : siehe om_GetPurchaseOrderTypes_Ad. Allerdings muß natürlich auch eine „Queue“ zum Lieferanten „SupplierID“ und diesem Auftrags-Typ existieren (s. om_GetPurchaseOrderQueues_Ad) !
tinyint5.1.9
OrderDeadline Zeitpunkt, an dem der Auftrag spätestens beim Lieferanten platziert werden muß. Es muß natürlich auch eine „Queue“ zum Lieferanten „SupplierID“, dem Auftrags-Typ „OrderTypeID“ und dieser „Deadline“ existieren (s. om_GetPurchaseOrderQueues_Ad) !
datetime5.1.9
DeliveryPersonID ID der Person, an die geliefert werden soll (eine Geschäftstelle z.B.). Hinweis : Dieser Wert muß sich von „SupplierID“ unterscheiden !
integer5.1.9
ShippingTypeID ID der Versandart. Mögliche Werte : siehe om_GetShippingTypes_Ad. Allerdings sollte im Regelfall der Wert der Rückgabespalte „ShippingTypeID“ des Aufrufs „exec om_GetSupplierConfiguration_Ad <SupplierID>“ verwendet werden !
tinyint5.1.9
PaymentTypeID ID der Zahlungsart. Mögliche Werte : siehe om_GetPaymentTypes_Ad. Allerdings sollte im Regelfall der Wert der Rückgabespalte „PaymentTypeID“ des Aufrufs „exec om_GetSupplierConfiguration_Ad <SupplierID>“ verwendet werden !
smallint5.1.9
DeliveryDateAndTimeNULL Hier kann (optional) das voraussichtliche Lieferdatum angegeben werden. Hinweis : Wird ein Wert in der Vergangenheit angegeben, gibt es natürlich einen Fehler („-500“) !
datetime5.1.9

Rückgabe

Die Prozedur hat keine Rückgaben.

Output-Parameter

Die Prozedur hat keine Output-Parameter.

Mögliche Return-Codes

Code Beschreibung Quelle 4)
-1323Die Person besitzt kein Konto zum angegebenen Typnur indirekt
-1322Transaktion kann nicht durchgeführt weden, da der Status des Kontos dies nicht erlaubtnur indirekt
-1321Transaktion kann nicht durchgeführt weden, da das Konto keine ausreichende Deckung aufweistnur indirekt
-1305Validierung fehlgeschlagen, der Code zur Zeit inaktiv istnur indirekt
-1304Validierung fehlgeschlagen, da die maximale Menge an Einlösungen der Person für diesen Code erreichtnur indirekt
-1303Validierung fehlgeschlagen, da die maximale Menge an Einlösungen für diesen Code erreicht istnur indirekt
-1302Validierung fehlgeschlagen, da der Code nicht mehr gültig istnur indirekt
-1301Validierung fehlgeschlagen, da der Code nicht existiertnur indirekt
-1204Fehlender oder falscher Eintrag in CampaignSettingsnur indirekt
-661Die Person besitzt keine oder eine ungültige Eigenschaft zu einem bestimmten Merkmaldirekt und indirekt
-655Die VisitorID steht nicht mit der PersonID in Verbindungnur indirekt
-621Fehlender oder falscher Eintrag in PersonTypeSettingsnur indirekt
-602Zur defaultUniqueID („VisitorID = -2“) können keinerlei Daten gespeichert oder verändert werdennur indirekt
-599Lizenz ist ungültig oder abgelaufennur indirekt
-572Die Prozedur darf nur innerhalb einer Transaktion ausgeführt werdennur 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
-540Falsches Formatnur indirekt
-535Das Datum liegt nicht in der Vergangenheitnur indirekt
-530Der Wert ist nicht konvertierbarnur indirekt
-510Der Benutzer ist nicht registriertnur indirekt
-507Fehlerhafte Implementierung einer Prozedur - Daten in einem Ausgabeparameter sind ungültignur indirekt
-506Fehlerhafte Implementierung einer Prozedur - Daten in der Output-Schnittstelle sind ungültignur indirekt
-504Es ist ein Problem aufgetreten, das nicht gelöst werden kann, Prozedur wird daher abgebrochendirekt und indirekt
-503Fehlerhafte Daten in einer Tabelle - genauere Fehlermeldung auf der Standardausgabenur indirekt
-502Die Parameter-Werte der Prozedur können nicht verarbeitet werden (kein passendes Trennzeichen)nur indirekt
-501Der Parameter „TableID“ und/oder der Parameter „TableKeyID“ ist ungültignur indirekt
-500Falsche Parameterdirekt und indirekt
-398Einige OrderSurchargeInformation sind ungültignur indirekt
-391Einige OrderInformation sind ungültignur indirekt
-390Einige OrderContentInformation sind ungültignur indirekt
-385Die Brutto-Summe aus Warenwert plus Surcharges unterschreitet den vorgegebenen Mindestwertnur indirekt
-348Status-Änderung konnte aufgrund paralleler Änderungen nicht durchgeführt werdennur indirekt
-347Ungültige „OrderStateID“ (da für interne Zwecke reserviert)nur indirekt
-340Fehlende Berechtigung zum Ändern des Orderstatusnur indirekt
-333Ein benötigter Steuersatz ist nicht bekannt oder konnte nicht ermittelt werdennur indirekt
-330Es kann keine oder keine eindeutige PaymentForShippingID zu einer Order ermittelt werdennur indirekt
-320Der Bestand eines Produktes darf nicht unter 0 sinkennur indirekt
-316Warenkorb kann nur einmal bestellt werden, verm. Ursache : paralleler „…TrolleyToOrder…“-Aufrufnur indirekt
-285Der Benutzer hat keine Berechtigung, vergangene Eigenschaften zu diesem(n) Merkmal(en) zu ändernnur indirekt
-284Der Benutzer hat keine Berechtigung, Eigenschaften zu diesem(n) Merkmal(en) zu modifizierennur indirekt
-283Der Benutzer hat keine Berechtigung, Eigenschaften zu diesem(n) Merkmal(en) zu ermittelnnur indirekt
-245Einige Artikel-Eigenschaften sind ungültignur indirekt
-242Relative Änderung nicht möglich, da es eine Eigenschaft gibt, deren Gültigkeit in d. Zukunft beginntnur indirekt
-241Änderung(en) der Eigenschaft(en) konnte(n) aufgrund paralleler Änderungen nicht durchgeführt werdennur indirekt
-221Es konnte kein rekursives Merkmal mit der Standardwährung als Einheit ermittelt werdennur indirekt

XML-Schema

Die Rückgabe erfolgt als XML-Dokument welches gegen das Schema Response/EngineProcedure_v1_0.xsd validiert.

Historie

7.0.7 2015-01-29Interne Änderung : Datentyp-Erweiterung des „ReferenceKey“ [für „_mi_StartProcedure“-Aufruf]
7.0.4 2014-03-19Kleine Kosmetik-Korrektur : Bei einigen Code-Zeilen war am Ende ein CR-Zeichen, was wir entfernt haben
6.0.2 2011-06-08Umstellung der Versand- und Zahlungskosten auf das verallgemeinterte „OrderSurcharges“-Konzept ⇒ bei der hier
intern aufgerufenen Prozedur „_om_InsertNewOrder“ sind Parameter entfallen u. die Input-Schnittstelle hat sich
geändert ⇒ entspr. Anpassungen
5.1.9 2007-01-26Erstmalig 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_CopyFromPOQueueToOrder_Ad?SupplierID=<value>&OrderTypeID=<value>&OrderDeadline=<value>&DeliveryPersonID=<value>&ShippingTypeID=<value>&PaymentTypeID=<value>'

Mit xmllint 5) formatierte Ausgabe:

curl -X POST  'http://<partner>-<project>.dstore.de/default/engine/om_CopyFromPOQueueToOrder_Ad?SupplierID=<value>&OrderTypeID=<value>&OrderDeadline=<value>&DeliveryPersonID=<value>&ShippingTypeID=<value>&PaymentTypeID=<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_CopyFromPOQueueToOrder_Ad',
		array(
			'SupplierID' => <value>,
			'OrderTypeID' => <value>,
			'OrderDeadline' => <value>,
			'DeliveryPersonID' => <value>,
			'ShippingTypeID' => <value>,
			'PaymentTypeID' => <value>,
			// 'DeliveryDateAndTime' => NULL
		)
);
 
$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_CopyFromPOQueueToOrder_Ad">
			<Parameters>
				<Parameter Name="SupplierID"><!-- integer value --></Parameter>
				<Parameter Name="OrderTypeID"><!-- tinyint value --></Parameter>
				<Parameter Name="OrderDeadline"><!-- datetime value --></Parameter>
				<Parameter Name="DeliveryPersonID"><!-- integer value --></Parameter>
				<Parameter Name="ShippingTypeID"><!-- tinyint value --></Parameter>
				<Parameter Name="PaymentTypeID"><!-- smallint value --></Parameter>
				<!-- <Parameter Name="DeliveryDateAndTime">NULL</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_copyfrompoqueuetoorder_ad.txt · Zuletzt geändert: 11.01.2016 (Externe Bearbeitung)