Hier werden die Unterschiede zwischen zwei Versionen angezeigt.
— |
engine:procedures:if_om_createnewbill_ad [11.01.2016 ] (aktuell) |
||
---|---|---|---|
Zeile 1: | Zeile 1: | ||
+ | ===== if_om_CreateNewBill_Ad ===== | ||
+ | |||
+ | Fügt Daten in die Input-Schnittstelle von [[dstoreproc>om_CreateNewBill_Ad]] ein.\\ | ||
+ | |||
+ | Genauer gibt es ZWEI Input-Schnittstellen : eine für die Positionen auf der Rechnung, die sich auf Auftragspositionen beziehen, die andere für "andere" Positionen (z.B. Versandkosten oder Gutschriften). Mit "OtherContent" gibt man an, welche der Schnittstellen gefüllt werden sollen.\\ | ||
+ | |||
+ | |||
+ | |||
+ | Ist "OtherContent = 0", dann soll die Schnittstelle mit den Positionen, die sich auf Auftragspositionen beziehen, gefüllt werden. Diese enthält die folgenden Spalten :\\ | ||
+ | |||
+ | * Position smallint | ||
+ | -> Aufsteigende Nummerierung der Positionen. Diese wird automatisch gefüllt, und beginnt mit "1" bzw. der Zahl, die auf den größten (durch einen vorherigen Aufruf entstandenen) "Position"-Wert folgt, der schon in der Input-Schnittstelle steht ! | ||
+ | * OrderContentID integer | ||
+ | -> ID einer Auftragsposition, die in Rechnung gestellt werden soll - hier werden die Daten aus "ContentIDList" eingefügt | ||
+ | * Quantity integer | ||
+ | -> Gibt die Menge an, die vom Artikel der Position "OrderContentID" in Rechnung gestellt werden soll - hier werden die Daten aus "QuantityList" eingefügt | ||
+ | * NetSum money | ||
+ | -> Netto-Summe der in Rechnung zu stellenden Position "OrderContentID" - hier werden die Daten aus "NetSumList" eingefügt | ||
+ | * GrossSum money | ||
+ | -> Brutto-Summe der in Rechnung zu stellenden Position "OrderContentID" - hier werden die Daten aus "GrossSumList" eingefügt\\ | ||
+ | |||
+ | |||
+ | |||
+ | Ist "OtherContent = 1", dann soll die Schnittstelle für "andere" Positionen gefüllt werden. Diese enthält die folgenden Spalten :\\ | ||
+ | |||
+ | * Position tinyint | ||
+ | -> Aufsteigende Nummerierung der "anderen" Positionen. Diese wird automatisch gefüllt, und beginnt mit "1" bzw. der Zahl, die auf den größten (durch einen vorherigen Aufruf entstandenen) "Position"-Wert folgt, der schon in der Input-Schnittstelle steht ! | ||
+ | * PredefinedBillContentID smallint | ||
+ | -> ID einer vordefinierten Rechnungsposition (mögliche Werte : s. [[dstoreproc>om_GetPredefinedBillContent_Ad]]). Hier werden die Daten aus "ContentIDList" eingefügt. Hinweis : die Reihenfolge der Elemente bestimmt den Wert für "Position", insbesondere kann durchaus eine "PredefinedBillContentID" mehrfach vorkommen. | ||
+ | * Quantity integer | ||
+ | -> Gibt die Menge an, die von der "Position" (also von "PredefinedBillContentID") in Rechnung gestellt werden soll - hier werden die Daten aus "QuantityList" eingefügt | ||
+ | * NetSum money | ||
+ | -> Netto-Summe der in Rechnung zu stellenden Position - hier werden die Daten aus "NetSumList" eingefügt | ||
+ | * GrossSum money | ||
+ | -> Brutto-Summe der in Rechnung zu stellenden Position - hier werden die Daten aus "GrossSumList" eingefügt\\ | ||
+ | |HTTP-Method|POST | | ||
+ | |HTTP-Auth|Optional | | ||
+ | |Tags|{{tag>[if Create New Bill Ad]}}| | ||
+ | |Engine-Kategorie|order management | | ||
+ | |Engine-Typ|Daten-Änderung | | ||
+ | |Letzte Aktualisierung|7.0.7 (2015-01-29)| | ||
+ | |||
+ | ==== Parameter ==== | ||
+ | |||
+ | ^Name ((Pflichtparameter sind unterstrichen)) ^Standard-Wert ^Beschreibung ((siehe [[webservice:engine_parameterconventions|Parameter-Konventionen engine/<Prozedur-Name>]])) ^SQL-Datentyp((siehe [[:webservice:engine_datatypes|Datentypen im Bereich "engine"]])) ^ab Version ^ | ||
+ | |__ContentIDList__| |Liste von IDs (durch das in "Separator" angegebene Zeichen getrennt), die jeweils (je nach "OtherContent") in die Spalte "OrderContentID" oder "PredefinedBillContentID" eingefügt werden (s. Beschreibung !)\\ |varchar(255)|5.5.0| | ||
+ | |__QuantityList__| |Liste von Mengen-Angaben ("integer"-Werte, durch das in "Separator" angegebene Zeichen getrennt), die jeweils in die Spalte "Quantity" eingefügt werden (s. Beschreibung !)\\ |varchar(255)|5.5.0| | ||
+ | |__NetSumList__| |Liste von Netto-Summen ("money"-Werte, durch das in "Separator" angegebene Zeichen getrennt), die jeweils in die Spalte "NetSum" eingefügt werden (s. Beschreibung !)\\ |varchar(255)|5.5.0| | ||
+ | |__GrossSumList__| |Liste von Brutto-Summen ("money"-Werte, durch das in "Separator" angegebene Zeichen getrennt), die jeweils in die Spalte "GrossSum" eingefügt werden (s. Beschreibung !)\\ |varchar(255)|5.5.0| | ||
+ | |Delete|0 |Möchte man zuvor die Input-Schnittstelle leeren, setzt man "Delete" auf "1".\\ |bit|5.5.0| | ||
+ | |Separator|'¶' |Gibt an, durch welche Zeichenkette die Werte in den "Listen-"Parametern ("...List") getrennt sind\\ |varchar(4)|5.5.0| | ||
+ | |OtherContent|0 |Gibt an, welche der ZWEI Input-Schnittstellen gefüllt werden soll :\\ "0" : Schnittstelle mit den Positionen, die sich auf Auftragspositionen beziehen\\ "1" : Schnittstelle für "andere" Positionen\\ |bit|5.5.0| | ||
+ | ==== Rückgabe ==== | ||
+ | |||
+ | Die Prozedur hat keine Rückgaben. | ||
+ | ==== Output-Parameter ==== | ||
+ | |||
+ | Die Prozedur hat keine Output-Parameter.==== Mögliche Return-Codes ==== | ||
+ | |||
+ | ^Code ^Beschreibung ^Quelle ((direkt meint "von der Prozedur selber" und indirekt meint "von intern aufgerufenen Unterprozeduren")) ^ | ||
+ | |-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| | ||
+ | ==== XML-Schema ==== | ||
+ | |||
+ | Die Rückgabe erfolgt als XML-Dokument welches gegen das Schema [[http://resources.dstore.de/xsd/webservice_SmartGate/Response/EngineProcedure_v1_0.xsd|Response/EngineProcedure_v1_0.xsd]] validiert. | ||
+ | ==== Historie ==== | ||
+ | |||
+ | |7.0.7 |2015-01-29|1. "_mi_FinishProcedure"-Aufruf am Schluß fehlte\\ 2. Interne Änderung : Datentyp-Erweiterung des "ReferenceKey" [für "_mi_StartProcedure"-Aufruf]\\ | | ||
+ | |6.5.3 |2013-03-18|1. Ereiterung des Datentyps von "Separator" [von "1" auf "4"]\\ 2. Interne Anpassungen wg. UTF8-Unterstützung\\ 3. Interne Quellcode-Überarbeitung\\ | | ||
+ | |5.5.0 |2008-01-07|Erstmalig in dieser Version erstellt\\ | | ||
+ | |||
+ | ==== Code-Snippets ==== | ||
+ | |||
+ | Es handelt sich um eine Methode zum Füllen von Schnittstellentabelle wie in [[:engine:procedures-background#input_-tabellen|Hintergrundinformationen zu Engine-Prozeduren]] erläutert. Die Methode kann ausschließlich per engine/execute in einem gemeinsamen Batch mit komplementären Prozeduren verwendet werden.== engine/execute == | ||
+ | XML zur Ausführung mit der Methode [[:webservice:engine:execute|engine/execute]], z.B. per | ||
+ | curl --header 'Content-Type: application/xml' -X POST 'http://<partner>-<kunde>.dstore.de/default/engine/execute' -d '<xml-daten>' | ||
+ | |||
+ | <code xml> | ||
+ | <?xml version="1.0" encoding="UTF-8"?> | ||
+ | <ListOfBatches> | ||
+ | <Batch No="0"> | ||
+ | <Procedure Name="if_om_CreateNewBill_Ad"> | ||
+ | <Parameters/> | ||
+ | </Procedure> | ||
+ | </Batch> | ||
+ | </ListOfBatches></code> | ||