pixiGetOrdersReadyForPickup
Liefert die Aufträge mit reservierten Auftragspositionen, die Kunden an einem bestimmten POS-Standort abholen können, samt Kundenreferenz.
Listet Aufträge auf, die an einem POS-Standort zur Abholung durch den Kunden bereitstehen.
Ein Auftrag wird geliefert, wenn er mindestens eine Auftragsposition hat, die alle folgenden Bedingungen erfüllt:
- die
LocationIDder Position entsprichtLocationId; - der Standort der Position existiert in
Locationund hat einen Reservierungsstandort (ResLocID), der ebenfalls inLocationexistiert; - die
CustRefder Position verweist auf einen vorhandenen Kunden inCustomers; - für die Position existiert eine Reservierung in
Reservation(ResOrderlineRef= Schlüssel der Auftragsposition); - der Positionsstatus ist
ANGoderHAL; - das Auftragsdatum ist nicht älter als die Reservierungsfrist in Tagen:
ResExpDaysdes Reservierungsstandorts oder, falls dieser NULL ist, der Wert der EinstellungReservationExpiry.
Zusätzlich wird der gesamte Auftrag ausgeschlossen, wenn irgendeine seiner Auftragspositionen einen Artikel betrifft, für den kein ItemLocationSpecific-Datensatz zum Reservierungsstandort existiert. Geprüft wird nur das Vorhandensein dieses Datensatzes, nicht der Bestand.
Das Ergebnis ist je Auftragsnummer und Kunde eindeutig und aufsteigend nach Auftragsnummer sortiert.
Hinweise
- Wird
LocationIdweggelassen (NULL), trifft der Vergleich mitLocationIDnie zu und das Ergebnis ist immer leer. Es sollte immer ein Standort übergeben werden. - Falle beim Fristwert: Auf 14 Tage wird nur zurückgegriffen, wenn die Einstellung
ReservationExpiryeinen Leerstring liefert.fPIXI_GetSettingliefert'0', wenn die Einstellung nicht existiert; ohne Einstellung und ohneResExpDaysam Reservierungsstandort werden daher nur Aufträge mit heutigem Datum geliefert. - Die Frist wird in Kalendertagen zwischen Auftragsdatum und aktuellem Serverdatum gemessen (
DATEDIFFin Tagen). - Alle Tabellen werden mit
NOLOCKgelesen; nicht festgeschriebene Daten können erscheinen. - Nur lesend; es werden keine Daten geändert.
Parameter
| Parameter | Typ | Standardwert | Beschreibung |
|---|---|---|---|
LocationId
|
varchar(50) string |
NULL |
ID des POS-Standorts ( Beispiel: |
Antwort
Result-Set 1 · Immer (kann leer sein)
Eine Zeile je abholbereitem Auftrag, aufsteigend nach Auftragsnummer sortiert.
| Spalte | Typ | Beschreibung |
|---|---|---|
ordernr
|
int |
Auftragsnummer ( |
CustRef
|
int |
Kundenschlüssel der Auftragsposition ( |
Beispielantwort
<SqlRowSet1>
<row>
<ordernr>100245</ordernr>
<CustRef>5821</CustRef>
</row>
<row>
<ordernr>100251</ordernr>
<CustRef>6034</CustRef>
</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:pixiGetOrdersReadyForPickup>
<!-- <LocationId>POS</LocationId> -->
</ns1:pixiGetOrdersReadyForPickup>
</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:pixiGetOrdersReadyForPickup>
<!-- <LocationId>POS</LocationId> -->
</ns1:pixiGetOrdersReadyForPickup>
</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 = [
// 'LocationId' => 'POS',
];
$soapArguments = [];
foreach ($arguments as $name => $value) {
$soapArguments[] = new SoapVar($value, XSD_STRING, '', '', $name);
}
$response = $soapClient->__soapCall('pixiGetOrdersReadyForPickup', $soapArguments);
Verwendete Tabellen
- SQL-Objekt:
- dbo.pipiGetOrdersReadyForPickup