pixiReportOrderOverview
Liefert eine Übersicht der Aufträge mit Rechnungsadresse, Auftragssummen, Netto-Rohertrag und Währung, optional gefiltert nach Auftragsdatum und Auftragsnummer.
Liefert eine Zeile pro Auftrag aus OrderHeader, verknüpft mit der zugehörigen Adresse (AddrRef = AddrKey) und der Auftragswährung.
Filter
- Datumsbereich: Ist
OrderDateFromgesetzt, werden nur Aufträge geliefert, derenOrderDatezwischenOrderDateFromundOrderDateToliegt (einschließlich). IstOrderDateToleer, wird das aktuelle Datum mit Uhrzeit verwendet. IstOrderDateFromleer, wird nicht nach Datum gefiltert, auch wennOrderDateTogesetzt ist. - Auftragsnummer: Ist
OrderNrStartgesetzt, werden nur Aufträge mitOrderNr>=OrderNrStartgeliefert. - Beide Filter werden mit UND verknüpft.
Zeilenlimit und Sortierung
- Die Anzahl der Zeilen wird auf
RowCountbegrenzt (Standard 1000). - Sortiert wird absteigend nach
OrderNr, die neuesten Aufträge (höchste Auftragsnummern) stehen also zuerst.
Berechneter Wert
GrossProfit_Nettoist die Summe vonQty * (Price_Net - SupplPrice)über alle Auftragspositionen des Auftrags.
Hinweise
- Laut Code-Kommentar wird der Rohertrag aus dem Standard-Lieferantenpreis berechnet, der zum Zeitpunkt der Bestellung an der Auftragsposition gespeichert wurde (
SupplPrice). Er ist nicht vergleichbar mit anderen Rohertrags-Reports in Pixi. GrossProfit_NettoistNULLbei Aufträgen ohne Auftragspositionen.- Aufträge ohne passende Adresse oder Währung werden wegen der Inner Joins nicht geliefert.
- Der Datumsvergleich erfolgt per
BETWEENauf einemdatetime-Wert. EinOrderDateToohne Uhrzeit (z. B.2024-03-31) bedeutet Mitternacht. Spätere Aufträge dieses Tages fehlen dann. Stattdessen den Folgetag oder die Uhrzeit23:59:59übergeben. - Da absteigend sortiert und per
RowCountabgeschnitten wird, eignet sichOrderNrStartnicht als Cursor zum Vorwärtsblättern: Es werden immer die höchsten passenden Auftragsnummern geliefert. Passen mehr alsRowCountAufträge, fehlen die älteren. RowCountwird perSET ROWCOUNTangewendet. Der Wert0hebt die Begrenzung auf.- Alle Tabellen werden mit
NOLOCKgelesen, daher können nicht festgeschriebene Daten erscheinen. - Der Aufruf liest nur Daten.
Parameter
| Parameter | Typ | Standardwert | Beschreibung |
|---|---|---|---|
OrderDateFrom
|
datetime dateTime |
NULL |
Beginn des Auftragsdatumsbereichs (einschließlich). Bei Beispiel: |
OrderDateTo
|
datetime dateTime |
NULL |
Ende des Auftragsdatumsbereichs (einschließlich). Bei Beispiel: |
OrderNrStart
|
int | NULL |
Niedrigste zu liefernde Auftragsnummer ( Beispiel: |
RowCount
|
int | 1000 |
Maximale Anzahl gelieferter Zeilen. Beispiel: |
Antwort
Result-Set 1 · Immer (kann leer sein)
Eine Zeile pro passendem Auftrag, absteigend nach OrderNR sortiert, begrenzt auf RowCount Zeilen.
| Spalte | Typ | Beschreibung |
|---|---|---|
OrderNR
|
int |
Auftragsnummer ( |
Anrede
Kann leer sein |
string |
Anrede der Adresse. |
Name
Kann leer sein |
string |
Name der Adresse. |
CareOf
Kann leer sein |
string |
c/o bzw. Adresszusatz. |
Address
Kann leer sein |
string |
Straße und Hausnummer. |
City
Kann leer sein |
string |
Ort. |
ZIP
Kann leer sein |
string |
Postleitzahl. |
Country
Kann leer sein |
string |
Land der Adresse. |
eMail
Kann leer sein |
string |
E-Mail-Adresse. |
Shop_Note
Kann leer sein |
string |
Shop-Notiz zum Auftrag. |
GiftMessage
Kann leer sein |
string |
Geschenknachricht des Auftrags. |
Address_Remarks
Kann leer sein |
string |
Adressbemerkungen am Auftrag. |
PaymentCode
Kann leer sein |
string |
Zahlungsart-Code der Adresse ( |
OrderStatus
Kann leer sein |
string |
Status des Auftrags. |
OrderLinesTotal
Kann leer sein |
decimal |
Summe der Auftragspositionen. |
OrderLinesDiscount
Kann leer sein |
decimal |
Rabatt auf die Auftragspositionen. |
ShipCost
Kann leer sein |
decimal |
Versandkosten des Auftrags. |
Discount
Kann leer sein |
decimal |
Auftragsrabatt. |
OrderTotal
Kann leer sein |
decimal |
Gesamtbetrag des Auftrags. |
GrossProfit_Netto
Kann leer sein |
decimal |
Netto-Rohertrag: Summe von |
OrderDate
Kann leer sein |
datetime dateTime |
Auftragsdatum. |
ShopID
Kann leer sein |
string |
Shop-ID der Adresse ( |
CurrencyCode
Kann leer sein |
string |
Währungscode des Auftrags ( |
Beispielantwort
<SqlRowSet1>
<row>
<OrderNR>150231</OrderNR>
<Anrede>Herr</Anrede>
<Name>Max Mustermann</Name>
<CareOf/>
<Address>Hauptstraße 12</Address>
<City>München</City>
<ZIP>80331</ZIP>
<Country>DE</Country>
<eMail>max@example.com</eMail>
<Shop_Note/>
<GiftMessage/>
<Address_Remarks/>
<PaymentCode>VK</PaymentCode>
<OrderStatus>AUF</OrderStatus>
<OrderLinesTotal>119.90</OrderLinesTotal>
<OrderLinesDiscount>0.00</OrderLinesDiscount>
<ShipCost>4.90</ShipCost>
<Discount>0.00</Discount>
<OrderTotal>124.80</OrderTotal>
<GrossProfit_Netto>38.45</GrossProfit_Netto>
<OrderDate>2024-03-15T10:22:31</OrderDate>
<ShopID>SHOP1</ShopID>
<CurrencyCode>EUR</CurrencyCode>
</row>
</SqlRowSet1>
Beispiele
POST https://apigateway.descartes.com/tms/pixi/
Content-Type: text/xml; charset=utf-8
Authorization: Basic BASE64(USERNAME:PASSWORD)
<?xml version="1.0" encoding="UTF-8"?>
<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ns1="https://apigateway.descartes.com/tms/pixi/">
<SOAP-ENV:Body>
<ns1:pixiReportOrderOverview>
<!-- <OrderDateFrom>2024-03-01T00:00:00</OrderDateFrom> -->
<!-- <OrderDateTo>2024-03-31T23:59:59</OrderDateTo> -->
<!-- <OrderNrStart>150000</OrderNrStart> -->
<!-- <RowCount>500</RowCount> -->
</ns1:pixiReportOrderOverview>
</SOAP-ENV:Body>
</SOAP-ENV:Envelope>
curl -X POST 'https://apigateway.descartes.com/tms/pixi/' \
--user 'USERNAME:PASSWORD' \
--header 'Content-Type: text/xml; charset=utf-8' \
--data-binary @- <<'XML'
<?xml version="1.0" encoding="UTF-8"?>
<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ns1="https://apigateway.descartes.com/tms/pixi/">
<SOAP-ENV:Body>
<ns1:pixiReportOrderOverview>
<!-- <OrderDateFrom>2024-03-01T00:00:00</OrderDateFrom> -->
<!-- <OrderDateTo>2024-03-31T23:59:59</OrderDateTo> -->
<!-- <OrderNrStart>150000</OrderNrStart> -->
<!-- <RowCount>500</RowCount> -->
</ns1:pixiReportOrderOverview>
</SOAP-ENV:Body>
</SOAP-ENV:Envelope>
XML
<?php
$soapClient = new SoapClient(null, [
'login' => 'USERNAME',
'password' => 'PASSWORD',
'location' => 'https://apigateway.descartes.com/tms/pixi/',
'uri' => 'https://apigateway.descartes.com/tms/pixi/',
]);
$arguments = [
// 'OrderDateFrom' => '2024-03-01T00:00:00',
// 'OrderDateTo' => '2024-03-31T23:59:59',
// 'OrderNrStart' => '150000',
// 'RowCount' => '500',
];
$soapArguments = [];
foreach ($arguments as $name => $value) {
$soapArguments[] = new SoapVar($value, XSD_STRING, '', '', $name);
}
$response = $soapClient->__soapCall('pixiReportOrderOverview', $soapArguments);
Verwendete Tabellen
- SQL-Objekt:
- dbo.pipiReportOrderOverview