pixiItemsBySupplier
Liefert eine seitenweise Liste der Artikel eines Lieferanten mit EAN, Artikelname und Gesamtbestand über alle Lagerplätze.
Liefert alle Artikel, die mit dem Lieferanten SupplNr verknüpft sind.
- Die Prozedur ermittelt alle
IntLinkNr1-Werte ausAddItemsmit der angegebenenSupplNr. Anschließend werden alle Datensätze ausItemsmit einem dieserIntLinkNr1-Werte gewählt. - Für jeden Artikel wird
StockQtyals Summe vonBinItemQTYausInvBinItemberechnet (BinItemRef=ItemKey). Die Summe umfasst alle Lagerplätze und ist0, wenn für den Artikel keine Bestandsdatensätze vorhanden sind. - Die Zeilen werden in einer temporären Tabelle fortlaufend nummeriert (
RowNr, beginnend bei 1). - Zurückgegeben werden nur die Zeilen mit
RowNrzwischenFromRowundFromRow + Rows - 1.
Jede Zeile enthält zusätzlich Paging-Informationen:
RecordsTotal: Anzahl aller passenden Artikel.RecordsFrom: der übergebene Wert vonFromRow.RecordsRequested: der übergebene Wert vonRows.
Zum seitenweisen Abruf wird FromRow jeweils um Rows erhöht, bis FromRow größer als RecordsTotal ist.
Hinweise
- Die Nummerierung der Zeilen erfolgt ohne
ORDER BY. Die Reihenfolge der Artikel und damit der Inhalt der einzelnen Seiten ist nicht garantiert. Sie kann sich zwischen Aufrufen unterscheiden, sodass beim Paging Artikel doppelt erscheinen oder fehlen können. - Ist
RowsNULL, werden alle Zeilen abFromRowgeliefert. IstFromRowNULL, wird unabhängig vonRowsdie vollständige Liste geliefert. RecordsFromundRecordsRequestedgeben die Parameterwerte unverändert zurück, auchNULL.- Alle Tabellen werden
WITH (NOLOCK)gelesen. Die Ergebnisse können nicht festgeschriebene Daten enthalten. StockQtyist die Summe über alle Lagerplätze und Lager. Reservierungen und Sperrbestände werden nicht berücksichtigt.- Passt kein Artikel zum Lieferanten, wird eine leere Ergebnismenge geliefert. Eine Fehlerzeile gibt es nicht.
Parameter
| Parameter | Typ | Standardwert | Beschreibung |
|---|---|---|---|
SupplNr
Pflicht
|
char(4) string |
– |
Lieferantennummer. Wird mit Beispiel: |
FromRow
|
int | 1 |
Nummer der ersten zurückzugebenden Zeile (beginnend bei 1). Bei Beispiel: |
Rows
|
int | 50 |
Maximale Anzahl zurückzugebender Zeilen. Bei Beispiel: |
Antwort
Result-Set 1 · Immer (kann leer sein)
Die angeforderte Seite der Artikel des Lieferanten mit Paging-Informationen.
| Spalte | Typ | Beschreibung |
|---|---|---|
RowNr
|
int |
Fortlaufende Zeilennummer innerhalb des Gesamtergebnisses. |
ItemKey
|
int |
Interner Artikelschlüssel aus |
EANUPC
Kann leer sein |
string |
EAN/UPC des Artikels. |
ItemName
Kann leer sein |
string |
Artikelname. |
StockQty
|
decimal |
Summe von |
RecordsTotal
|
int |
Gesamtanzahl der passenden Artikel. |
RecordsFrom
Kann leer sein |
int |
Wert des Parameters |
RecordsRequested
Kann leer sein |
int |
Wert des Parameters |
Beispielantwort
<SqlRowSet1>
<row>
<RowNr>1</RowNr>
<ItemKey>1024</ItemKey>
<EANUPC>4006381333931</EANUPC>
<ItemName>Ballpoint pen blue</ItemName>
<StockQty>120</StockQty>
<RecordsTotal>2</RecordsTotal>
<RecordsFrom>1</RecordsFrom>
<RecordsRequested>50</RecordsRequested>
</row>
<row>
<RowNr>2</RowNr>
<ItemKey>1025</ItemKey>
<EANUPC>4006381333948</EANUPC>
<ItemName>Ballpoint pen red</ItemName>
<StockQty>0</StockQty>
<RecordsTotal>2</RecordsTotal>
<RecordsFrom>1</RecordsFrom>
<RecordsRequested>50</RecordsRequested>
</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:pixiItemsBySupplier>
<SupplNr>L001</SupplNr>
<!-- <FromRow>1</FromRow> -->
<!-- <Rows>50</Rows> -->
</ns1:pixiItemsBySupplier>
</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:pixiItemsBySupplier>
<SupplNr>L001</SupplNr>
<!-- <FromRow>1</FromRow> -->
<!-- <Rows>50</Rows> -->
</ns1:pixiItemsBySupplier>
</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 = [
'SupplNr' => 'L001',
// 'FromRow' => '1',
// 'Rows' => '50',
];
$soapArguments = [];
foreach ($arguments as $name => $value) {
$soapArguments[] = new SoapVar($value, XSD_STRING, '', '', $name);
}
$response = $soapClient->__soapCall('pixiItemsBySupplier', $soapArguments);
Verwendete Tabellen
- SQL-Objekt:
- dbo.pipiItemsBySupplier