pixiReadDeliveryItems
Liefert Lieferpositionen aus SDelDetail, gefiltert nach Anlage- und/oder Änderungsdatum und nach Schlüssel aufsteigend seitenweise.
Liest Lieferpositionen (Tabelle SDelDetail) und liefert höchstens @RowCount Zeilen, immer aufsteigend nach SDelDkey sortiert.
Vorbereitung:
- Ist
SDelDkeyNULL, wird der Wert auf0gesetzt. - Ist
RowCountNULL, wird der Wert auf1000gesetzt.
Es greift genau ein Filtermodus. Die Prozedur prüft die Modi in dieser Reihenfolge und verwendet den ersten zutreffenden:
- Anlage- oder Änderungsdatum:
CreateAndUpdateDateFromund/oderCreateAndUpdateDateToist gesetzt. Eine Zeile erfüllt die Untergrenze, wenn ihr Anlagedatum oder ihr Änderungsdatum>=dem From-Wert ist. Sie erfüllt die Obergrenze, wenn ihr Anlagedatum oder ihr Änderungsdatum<dem To-Wert ist. - Anlagedatum:
CreateDateFromund/oderCreateDateToist gesetzt. Der Filter lautetSDelDcreateDate >= FromundSDelDcreateDate < To. - Änderungsdatum:
UpdateDateFromund/oderUpdateDateToist gesetzt. Der Filter lautetSDelDupdateDate >= FromundSDelDupdateDate < To. - Schlüsselbereich: Kein Datumsparameter ist gesetzt. Der Aufruf liefert die nächsten Zeilen nach
SDelDkey.
In jedem Modus werden nur Zeilen mit SDelDkey > @SDelDkey geliefert. Zum seitenweisen Abruf wird der höchste SDelDkey der vorherigen Antwort als SDelDkey im nächsten Aufruf übergeben. Der Abruf endet, sobald weniger als RowCount Zeilen zurückkommen.
Die Obergrenzen der Datumsbereiche sind exklusiv. Parameter eines niedriger priorisierten Modus werden ignoriert, wenn ein höher priorisierter Modus aktiv ist.
Hinweise
- Alle Lesezugriffe verwenden
WITH (NOLOCK). Nicht festgeschriebene Daten können geliefert werden, und während Datenänderungen können Zeilen fehlen oder doppelt erscheinen. SDelDkeywird immer als exklusive Untergrenze (>) verwendet. Die Übergabe eines bestimmten Schlüssels liefert diese Zeile nicht, sondern die Zeilen danach. Der Code enthält einen Zweig für den exakten Schlüsselabruf und einen Zweig für ein leeres Ergebnis, beide sind jedoch nicht erreichbar, weilSDelDkeyundRowCountnach der Vorbereitung nie NULL sind.- Im kombinierten Anlage-/Änderungsmodus werden die From- und die To-Prüfung unabhängig voneinander ausgewertet. Eine Zeile kann die From-Grenze über das eine Datum und die To-Grenze über das andere Datum erfüllen. Zum Beispiel wird eine Zeile, die vor To angelegt und nach To geändert wurde, trotzdem geliefert.
- Ein negativer Wert für
RowCountführt zu einem SQL-Fehler beiTOP.RowCount = 0liefert keine Zeilen.
Parameter
| Parameter | Typ | Standardwert | Beschreibung |
|---|---|---|---|
SDelDkey
|
int | NULL |
Exklusive Untergrenze für den Schlüssel der Lieferposition. Es werden nur Zeilen mit größerem Beispiel: |
CreateDateFrom
|
datetime dateTime |
NULL |
Inklusive Untergrenze für Beispiel: |
CreateDateTo
|
datetime dateTime |
NULL |
Exklusive Obergrenze für Beispiel: |
UpdateDateFrom
|
datetime dateTime |
NULL |
Inklusive Untergrenze für Beispiel: |
UpdateDateTo
|
datetime dateTime |
NULL |
Exklusive Obergrenze für Beispiel: |
CreateAndUpdateDateFrom
|
datetime dateTime |
NULL |
Inklusive Untergrenze, die zutrifft, wenn Beispiel: |
CreateAndUpdateDateTo
|
datetime dateTime |
NULL |
Exklusive Obergrenze, die zutrifft, wenn Beispiel: |
RowCount
|
int | 1000 |
Maximale Anzahl gelieferter Zeilen. NULL wird als Beispiel: |
Antwort
Result-Set 1 · Immer; bis zu RowCount Zeilen mit SDelDkey > @SDelDkey, gefiltert nach dem aktiven Datumsmodus, aufsteigend nach SDelDkey sortiert.
Lieferpositionen aus SDelDetail.
| Spalte | Typ | Beschreibung |
|---|---|---|
SDelDkey
|
int |
Schlüssel der Lieferposition. |
SDelDHref
Kann leer sein |
int |
Referenz auf den Lieferungskopf. |
SDelDItemRef
Kann leer sein |
int |
Referenz auf den Artikel. |
SDelDItemName
Kann leer sein |
string |
Artikelbezeichnung der Lieferposition. |
SDelDqtyDelivered
Kann leer sein |
int |
Gelieferte Menge. |
SDelDqtyOrdered
Kann leer sein |
int |
Bestellte Menge. |
SDelDsorderlineRef
Kann leer sein |
int |
Referenz auf die zugehörige Bestellposition. |
SDelDsPrice
Kann leer sein |
decimal |
Preis. |
SDelDsDiscount
Kann leer sein |
decimal |
Rabatt. |
SDelDsFinalPrice
Kann leer sein |
decimal |
Endpreis nach Rabatten. |
SDelDcreateDate
Kann leer sein |
datetime dateTime |
Anlagedatum der Zeile. |
SDelDcreateEmp
Kann leer sein |
string |
Mitarbeiter, der die Zeile angelegt hat. |
SDelDupdateDate
Kann leer sein |
datetime dateTime |
Datum der letzten Änderung. |
SDelDupdateEmp
Kann leer sein |
string |
Mitarbeiter der letzten Änderung. |
SDelDsAddDiscount
Kann leer sein |
decimal |
Zusatzrabatt. |
SDelDsMidPrice
Kann leer sein |
decimal |
Zwischenpreis (wie in |
BatchNumber
Kann leer sein |
string |
Chargennummer der gelieferten Ware. |
BestBeforeDate
Kann leer sein |
dateTime |
Mindesthaltbarkeitsdatum der gelieferten Ware. |
Beispielantwort
<SqlRowSet1>
<row>
<SDelDkey>10235</SDelDkey>
<SDelDHref>4120</SDelDHref>
<SDelDItemRef>88231</SDelDItemRef>
<SDelDItemName>USB-C Ladekabel 1m</SDelDItemName>
<SDelDqtyDelivered>50</SDelDqtyDelivered>
<SDelDqtyOrdered>50</SDelDqtyOrdered>
<SDelDsorderlineRef>77812</SDelDsorderlineRef>
<SDelDsPrice>2.50</SDelDsPrice>
<SDelDsDiscount>0.00</SDelDsDiscount>
<SDelDsFinalPrice>2.50</SDelDsFinalPrice>
<SDelDcreateDate>2024-01-15T09:12:44</SDelDcreateDate>
<SDelDcreateEmp>MK</SDelDcreateEmp>
<SDelDupdateDate>2024-01-15T10:03:10</SDelDupdateDate>
<SDelDupdateEmp>MK</SDelDupdateEmp>
<SDelDsAddDiscount>0.00</SDelDsAddDiscount>
<SDelDsMidPrice>2.50</SDelDsMidPrice>
<BatchNumber>CH-2024-001</BatchNumber>
<BestBeforeDate>2026-12-31T00:00:00</BestBeforeDate>
</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:pixiReadDeliveryItems>
<!-- <SDelDkey>0</SDelDkey> -->
<!-- <CreateDateFrom>2024-01-01T00:00:00</CreateDateFrom> -->
<!-- <CreateDateTo>2024-02-01T00:00:00</CreateDateTo> -->
<!-- <UpdateDateFrom>2024-01-01T00:00:00</UpdateDateFrom> -->
<!-- <UpdateDateTo>2024-02-01T00:00:00</UpdateDateTo> -->
<!-- <CreateAndUpdateDateFrom>2024-01-15T00:00:00</CreateAndUpdateDateFrom> -->
<!-- <CreateAndUpdateDateTo>2024-01-16T00:00:00</CreateAndUpdateDateTo> -->
<!-- <RowCount>500</RowCount> -->
</ns1:pixiReadDeliveryItems>
</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:pixiReadDeliveryItems>
<!-- <SDelDkey>0</SDelDkey> -->
<!-- <CreateDateFrom>2024-01-01T00:00:00</CreateDateFrom> -->
<!-- <CreateDateTo>2024-02-01T00:00:00</CreateDateTo> -->
<!-- <UpdateDateFrom>2024-01-01T00:00:00</UpdateDateFrom> -->
<!-- <UpdateDateTo>2024-02-01T00:00:00</UpdateDateTo> -->
<!-- <CreateAndUpdateDateFrom>2024-01-15T00:00:00</CreateAndUpdateDateFrom> -->
<!-- <CreateAndUpdateDateTo>2024-01-16T00:00:00</CreateAndUpdateDateTo> -->
<!-- <RowCount>500</RowCount> -->
</ns1:pixiReadDeliveryItems>
</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 = [
// 'SDelDkey' => '0',
// 'CreateDateFrom' => '2024-01-01T00:00:00',
// 'CreateDateTo' => '2024-02-01T00:00:00',
// 'UpdateDateFrom' => '2024-01-01T00:00:00',
// 'UpdateDateTo' => '2024-02-01T00:00:00',
// 'CreateAndUpdateDateFrom' => '2024-01-15T00:00:00',
// 'CreateAndUpdateDateTo' => '2024-01-16T00:00:00',
// 'RowCount' => '500',
];
$soapArguments = [];
foreach ($arguments as $name => $value) {
$soapArguments[] = new SoapVar($value, XSD_STRING, '', '', $name);
}
$response = $soapClient->__soapCall('pixiReadDeliveryItems', $soapArguments);
Verwendete Tabellen
- SQL-Objekt:
- dbo.pipiReadDeliveryItems