pixiReadItemBinLog
Liefert Einträge des Lagerplatz-Artikel-Protokolls (InvBinItemLog), optional nach Datumsbereichen gefiltert und über den Protokollschlüssel geblättert.
Liest Zeilen aus dem Lagerplatz-Artikel-Protokoll InvBinItemLog. Jede Zeile beschreibt eine Mengenbuchung eines Artikels auf einem Lagerplatz.
Blättern (Paging)
ItemBinLogKeyist eine exklusive Untergrenze. Es werden nur Zeilen mitIBILkeygrößer als dieser Wert geliefert. Fehlt der Parameter oder ist er NULL, wird0verwendet; der Abruf beginnt dann am Anfang des Protokolls.RowCountbegrenzt die Anzahl der Zeilen. Standard ist 1000; NULL wird ebenfalls als 1000 behandelt.- Die Sortierung erfolgt immer aufsteigend nach
IBILkey. Für die nächste Seite wird der höchsteIBILkeyder vorherigen Seite alsItemBinLogKeyübergeben.
Datumsfilter
Es wird nur eine Gruppe von Datumsfiltern verwendet. Die Gruppen werden in dieser Reihenfolge geprüft; die erste Gruppe mit mindestens einem gesetzten Wert gilt:
CreateAndUpdateDateFrom/CreateAndUpdateDateTo: Die Untergrenze trifft zu, wennUpdateDateoderReportedDate>= From ist. Die Obergrenze trifft zu, wennUpdateDateoderReportedDate< To ist.CreateDateFrom/CreateDateTo: filtert auf die SpalteUpdateDate(>= From, < To).UpdateDateFrom/UpdateDateTo: filtert auf die SpalteReportedDate(>= From, < To).
In jeder Gruppe kann eine der beiden Grenzen fehlen. Obergrenzen sind exklusiv. Ist kein Datumsparameter gesetzt, liefert der Aufruf die nächsten RowCount Zeilen nach ItemBinLogKey.
Hinweise
- Die Tabelle wird
WITH (NOLOCK)gelesen. Noch nicht festgeschriebene Zeilen können erscheinen, und Zeilen können fehlen oder doppelt auftreten. - Mit
ItemBinLogKeylässt sich kein einzelner Eintrag abrufen. Ein übergebener Schlüssel liefert die Zeilen nach diesem Schlüssel, nie die Zeile mit diesem Schlüssel. Der Code enthält Zweige für eine exakte Schlüsselsuche und für ein leeres Ergebnis. Diese werden nie erreicht, daItemBinLogKeyundRowCountzu Beginn durch Werte ungleich NULL ersetzt werden. - Die Parameternamen entsprechen nicht den Spaltennamen.
CreateDate*filtert aufUpdateDate,UpdateDate*filtert aufReportedDate. - Im kombinierten Filter werden die From- und To-Bedingung unabhängig ausgewertet. Eine Zeile kann die Untergrenze über eine Spalte und die Obergrenze über die andere erfüllen.
- Datumsparameter einer nachrangigen Gruppe werden ignoriert, sobald eine vorrangige Gruppe einen Wert hat.
- Die Datentypen der Spalten sind im Code nicht ersichtlich, außer bei
IBILkey(Vergleich mit int) und den Datumsspalten (Vergleich mit datetime-Werten).
Parameter
| Parameter | Typ | Standardwert | Beschreibung |
|---|---|---|---|
ItemBinLogKey
|
int | NULL |
Exklusive Untergrenze für Beispiel: |
CreateDateFrom
|
datetime dateTime |
NULL |
Liefert Zeilen mit Beispiel: |
CreateDateTo
|
datetime dateTime |
NULL |
Liefert Zeilen mit Beispiel: |
UpdateDateFrom
|
datetime dateTime |
NULL |
Liefert Zeilen mit Beispiel: |
UpdateDateTo
|
datetime dateTime |
NULL |
Liefert Zeilen mit Beispiel: |
CreateAndUpdateDateFrom
|
datetime dateTime |
NULL |
Untergrenze des kombinierten Filters. Eine Zeile trifft zu, wenn Beispiel: |
CreateAndUpdateDateTo
|
datetime dateTime |
NULL |
Obergrenze des kombinierten Filters (exklusiv). Eine Zeile trifft zu, wenn Beispiel: |
RowCount
|
int | 1000 |
Maximale Anzahl gelieferter Zeilen. NULL wird als 1000 behandelt. Beispiel: |
Antwort
Result-Set 1 · Immer; kann leer sein, wenn keine Zeilen zutreffen.
Protokolleinträge aus InvBinItemLog, aufsteigend nach IBILkey sortiert, höchstens RowCount Zeilen.
| Spalte | Typ | Beschreibung |
|---|---|---|
IBILkey
|
int |
Primärschlüssel des Protokolleintrags; wird zum Blättern verwendet. |
LocID
Kann leer sein |
string |
Kennung des Standorts (Lager). |
BinRef
Kann leer sein |
int |
Referenz auf den Lagerplatz. |
Qty
Kann leer sein |
int |
Gebuchte Menge. |
ItemRef
Kann leer sein |
int |
Referenz auf den Artikel. |
UpdateEmp
Kann leer sein |
string |
Mitarbeiter, der die Buchung vorgenommen hat. |
UpdateDate
Kann leer sein |
datetime dateTime |
Zeitstempel des Eintrags. Die Parameter |
ReportedDate
Kann leer sein |
datetime dateTime |
Gemeldeter Zeitstempel. Die Parameter |
ForOrderline
Kann leer sein |
int |
Referenz auf die Auftragsposition, zu der die Buchung gehört, falls vorhanden. |
Reason
Kann leer sein |
string |
Grund der Buchung. |
SMORef
Kann leer sein |
int |
Im Protokoll gespeicherter Referenzwert |
SMTRef
Kann leer sein |
int |
Im Protokoll gespeicherter Referenzwert |
DeliveryId
Kann leer sein |
string |
Mit der Buchung verknüpfte Lieferungskennung. |
Beispielantwort
<SqlRowSet1>
<row>
<IBILkey>125431</IBILkey>
<LocID>001</LocID>
<BinRef>4711</BinRef>
<Qty>-2</Qty>
<ItemRef>88213</ItemRef>
<UpdateEmp>MM</UpdateEmp>
<UpdateDate>2024-05-01T09:14:22.000</UpdateDate>
<ReportedDate>2024-05-01T09:14:22.000</ReportedDate>
<ForOrderline>553201</ForOrderline>
<Reason>Pick</Reason>
<SMORef>0</SMORef>
<SMTRef>0</SMTRef>
<DeliveryId>DL-20240501-17</DeliveryId>
</row>
<row>
<IBILkey>125432</IBILkey>
<LocID>001</LocID>
<BinRef>4802</BinRef>
<Qty>10</Qty>
<ItemRef>88214</ItemRef>
<UpdateEmp>JS</UpdateEmp>
<UpdateDate>2024-05-01T09:20:05.000</UpdateDate>
<ReportedDate>2024-05-01T09:20:05.000</ReportedDate>
<ForOrderline>0</ForOrderline>
<Reason>Booking</Reason>
<SMORef>0</SMORef>
<SMTRef>0</SMTRef>
<DeliveryId/>
</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:pixiReadItemBinLog>
<!-- <ItemBinLogKey>125430</ItemBinLogKey> -->
<!-- <CreateDateFrom>2024-05-01T00:00:00</CreateDateFrom> -->
<!-- <CreateDateTo>2024-05-02T00:00:00</CreateDateTo> -->
<!-- <UpdateDateFrom>2024-05-01T00:00:00</UpdateDateFrom> -->
<!-- <UpdateDateTo>2024-05-02T00:00:00</UpdateDateTo> -->
<!-- <CreateAndUpdateDateFrom>2024-05-01T00:00:00</CreateAndUpdateDateFrom> -->
<!-- <CreateAndUpdateDateTo>2024-05-02T00:00:00</CreateAndUpdateDateTo> -->
<!-- <RowCount>500</RowCount> -->
</ns1:pixiReadItemBinLog>
</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:pixiReadItemBinLog>
<!-- <ItemBinLogKey>125430</ItemBinLogKey> -->
<!-- <CreateDateFrom>2024-05-01T00:00:00</CreateDateFrom> -->
<!-- <CreateDateTo>2024-05-02T00:00:00</CreateDateTo> -->
<!-- <UpdateDateFrom>2024-05-01T00:00:00</UpdateDateFrom> -->
<!-- <UpdateDateTo>2024-05-02T00:00:00</UpdateDateTo> -->
<!-- <CreateAndUpdateDateFrom>2024-05-01T00:00:00</CreateAndUpdateDateFrom> -->
<!-- <CreateAndUpdateDateTo>2024-05-02T00:00:00</CreateAndUpdateDateTo> -->
<!-- <RowCount>500</RowCount> -->
</ns1:pixiReadItemBinLog>
</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 = [
// 'ItemBinLogKey' => '125430',
// 'CreateDateFrom' => '2024-05-01T00:00:00',
// 'CreateDateTo' => '2024-05-02T00:00:00',
// 'UpdateDateFrom' => '2024-05-01T00:00:00',
// 'UpdateDateTo' => '2024-05-02T00:00:00',
// 'CreateAndUpdateDateFrom' => '2024-05-01T00:00:00',
// 'CreateAndUpdateDateTo' => '2024-05-02T00:00:00',
// 'RowCount' => '500',
];
$soapArguments = [];
foreach ($arguments as $name => $value) {
$soapArguments[] = new SoapVar($value, XSD_STRING, '', '', $name);
}
$response = $soapClient->__soapCall('pixiReadItemBinLog', $soapArguments);
Verwendete Tabellen
- SQL-Objekt:
- dbo.pipiReadItemBinLog