Postman-Collection
Stock Lesen

pixiGetStockForItems

Liefert den verfügbaren Bestand aller Artikel, berechnet nach den Einstellungen für den Bestandsexport.

Liefert je Artikel eine Zeile mit der internen Artikelnummer und einer verfügbaren Menge. Die Berechnung hängt von Pixi-Einstellungen ab, die zur Laufzeit gelesen werden.

Alter Bestandsexport (OldStockExport = 1)

  • Alle Artikel aus Items werden mit Quantity als AvailableQty geliefert. NULL wird zu 0.

Standardmodus (jeder andere Wert von OldStockExport)

  1. Der Lagerort wird aus der Einstellung ExportStock_locations ermittelt:
    • Einstellung fehlt oder ist 0: Lager 001
    • leerer String: alle Lager (ALL)
    • jeder andere Wert: diese Lager-ID
  2. Je Artikel wird der Lagerplatzbestand als Summe von BinItemQty über alle Lagerplätze des gewählten Lagers bzw. aller Lager gebildet. Lager mit SpecialStock = 1 werden immer ausgeschlossen.
  3. Vom Lagerplatzbestand wird offener Bedarf abgezogen:
    • Einstellung ReservePrepaymentOrders ≠ 1: Abgezogen wird die Summe von Qty der Auftragspositionen mit Status ANG. Positionen mit Status HAL zählen zusätzlich, wenn ihr OrderDate innerhalb der letzten HalOrdersActiveDays Tage liegt. Der Wert 0 dieser Einstellung bedeutet 7 Tage.
    • Einstellung ReservePrepaymentOrders = 1: Abgezogen wird die Anzahl der Reservierungsdatensätze des Artikels. Gezählt werden nur Reservierungen, deren Positionsstatus kein Endstatus ist; die Status EIN, FUT und FUS sind ebenfalls ausgeschlossen.
  4. Negative Ergebnisse werden als 0 geliefert.
  5. Stücklistenartikel (Artikel mit Einträgen in BundleItems) werden per UNION ergänzt. Ihre Menge stammt nicht aus den Lagerplätzen. Sie ist Items.Quantity bei ALL bzw. LocationQuantity aus ItemLocationSpecific für das gewählte Lager. Für offene Aufträge oder Reservierungen wird nichts abgezogen, negative Werte werden zu 0.

Filterung

Bei ExcludeZeros = 1 werden vor der Ausgabe alle Zeilen mit AvailableQty = 0 entfernt.

Das Ergebnis hat keine definierte Sortierung.

Hinweise

  • Alle Lesezugriffe erfolgen mit NOLOCK, die Werte können daher nicht festgeschriebene Daten enthalten.
  • Stücklistenartikel können doppelt erscheinen. Im Standardmodus umfasst die erste Abfrage alle Artikel, auch Stücklisten. Eine Stückliste erhält daher eine Zeile aus der lagerplatzbasierten Berechnung und eine aus der Stücklistenberechnung. UNION entfernt nur vollständig identische Zeilen.
  • Fehlendes HalOrdersActiveDays. Fehlt die Einstellung, ist der Wert NULL und nicht 0. Dann greift der Ersatzwert von 7 Tagen nicht, und Positionen mit Status HAL werden nie abgezogen.
  • Reservierungen werden gezählt, nicht summiert. Bei aktivierten Reservierungen wird die Anzahl der Reservierungsdatensätze abgezogen, keine Menge.
  • Die Einstellung ShowLocationStockInItemSearch wird gelesen, wirkt sich aber nicht auf das Ergebnis aus.
  • ExportStock_locations wird in einer varchar(3)-Variablen gespeichert, längere Werte werden auf 3 Zeichen gekürzt.
  • Der Aufruf berechnet korrelierte Unterabfragen je Artikel über alle Artikel und kann bei großen Datenbeständen langsam sein.

Parameter

Parameter Typ Standardwert Beschreibung
ExcludeZeros
bit
boolean
NULL

Bei 1 werden Artikel mit verfügbarer Menge 0 aus dem Ergebnis entfernt.

Erlaubte Werte

  • 1 – Artikel mit `AvailableQty` = 0 ausschließen.
  • 0 – Alle Artikel liefern, auch mit 0 (wie `NULL`).

Beispiel: 1

Antwort

Result-Set 1 · Immer

Eine Zeile je Artikel mit verfügbarer Menge. Im Standardmodus können Stücklistenartikel doppelt erscheinen.

Spalte Typ Beschreibung
ItemNrInt
Kann leer sein
string

Interne Artikelnummer aus Items.ItemNrInt.

AvailableQty
Kann leer sein
int

Verfügbare Menge, nie negativ. Im alten Exportmodus ist es Items.Quantity. Im Standardmodus ist es der Lagerplatzbestand abzüglich offenem Bedarf, bei Stücklisten Quantity/LocationQuantity.

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:pixiGetStockForItems>
      <!-- <ExcludeZeros>1</ExcludeZeros> -->
    </ns1:pixiGetStockForItems>
  </SOAP-ENV:Body>
</SOAP-ENV:Envelope>

Verwendete Tabellen

Settings · Lesen Items · Lesen invBinitem · Lesen InvBin · Lesen Location · Lesen Orderlines · Lesen Reservation · Lesen orderstates · Lesen BundleItems · Lesen ItemLocationSpecific · Lesen
SQL-Objekt:
dbo.pipiGetStockForItems
Prozedur zuletzt geändert am 2026-10-05
Dokumentation von claude-opus-5-5 am 2026-10-30 geschrieben