Postman-Collection
Stock Lesen

pixiGetChangedItemStockSince

Liefert Artikel, deren Bestand seit einem Zeitpunkt neu berechnet wurde, mit physischem und verfügbarem Bestand, Liefertermin und offener Lieferantenbestellmenge, seitenweise.

Delta-Export der Artikelbestände auf Basis der Artikelspalte LastCalculateStockDate.

  1. Ist Since NULL, wird 0 (1900-01-01) verwendet, d. h. alle Artikel werden berücksichtigt. Ein NULL in Start wird als 0 behandelt.
  2. Die ersten Start + Rowcount Artikel mit LastCalculateStockDate >= Since werden ermittelt, sortiert nach LastCalculateStockDate und dann ItemKey. Jede Zeile erhält in dieser Reihenfolge eine fortlaufende RowNr.
  3. Für die Zeilen mit RowNr > Start werden die Artikeldaten ergänzt: Artikelnummern, EAN, physischer Bestand (Quantity), Mindestbestand, Aktiv-Kennzeichen, Stücklisten-/Bundle-Kennzeichen, der voraussichtliche Liefertermin aus der Tabelle der Liefertermine sowie der verfügbare Bestand.
  4. Verfügbarer Bestand ist der Exportbestand der Lagerplätze des Artikels abzüglich eines von Einstellungen abhängigen Abzugs:
    • Ist StockExportUsePhysicalStock gleich '1', wird nichts abgezogen.
    • Andernfalls wird, wenn Reservierungen (ReservePrepaymentOrders = '1') deaktiviert sind oder aktiv sind und ExportAvailableStock_WhenReservationsAreEnabled = 1 gilt, die Menge offener Auftragspositionen abgezogen.
    • Andernfalls wird bei aktiven Reservierungen die Menge offener Reservierungen abgezogen.
    • Bei Bundle-Artikeln erfolgt nie ein Abzug.
  5. Die offene Lieferantenbestellmenge wird je Artikel als Summe aus bestellter minus gelieferter minus nicht gelieferter Menge über Lieferantenbestellpositionen berechnet, deren Lieferantenbestellung einen als offen gekennzeichneten Status (IsAllOpen = 1) hat und deren Berücksichtigungs-Startdatum leer oder nicht in der Zukunft liegt.
  6. Zurückgegeben werden bis zu Rowcount Zeilen mit RowNr > Start, sortiert nach RowNr.

Paging: Start ist die Anzahl zu überspringender Zeilen, Rowcount die Seitengröße. Für die nächste Seite Start + Rowcount mit gleichem Since übergeben oder mit dem letzten UpdateDate als neuem Since neu beginnen.

Hinweise

  • Alle Lesezugriffe erfolgen mit NOLOCK; Ergebnisse können nicht festgeschriebene Daten enthalten und sich zwischen Paging-Aufrufen verschieben, wenn Bestände zwischenzeitlich neu berechnet werden (die Reihenfolge hängt von LastCalculateStockDate ab).
  • Der Filter lautet >= Since; wird mit dem letzten UpdateDate als Since fortgesetzt, werden Artikel mit genau diesem Zeitstempel erneut geliefert.
  • Die Spalte OpenSupplierOrderQTY wird nie befüllt und ist immer 0. Die tatsächliche offene Lieferantenbestellmenge steht in OpenSupplOrdersQty; sie ist NULL, wenn der Artikel keine offenen Lieferantenbestellpositionen hat.
  • Rowcount darf nicht NULL sein; TOP mit NULL führt zu einem SQL-Fehler.
  • Einstellungen werden über fpixi_GetSetting gelesen; fehlende Einstellungen gelten als '0'. Die Einstellung ExportAvailableStock_WhenReservationsAreEnabled wird nach int konvertiert, ein nicht numerischer Wert führt zu einem Konvertierungsfehler.
  • Der Aufwand steigt mit Start, da bei jedem Aufruf Start + Rowcount Zeilen vorbereitet werden.

Parameter

Parameter Typ Standardwert Beschreibung
Since
Pflicht
datetime
dateTime
–

Untergrenze (inklusive) für das Datum der letzten Bestandsberechnung des Artikels. NULL liefert alle Artikel.

Beispiel: 2024-05-01T08:00:00

Rowcount
int 1000

Maximale Anzahl zurückgegebener Zeilen (Seitengröße).

Beispiel: 500

Start
int 0

Anzahl zu überspringender Zeilen; nur Zeilen mit RowNr > Start werden geliefert. NULL wird als 0 behandelt.

Beispiel: 0

Antwort

Result-Set 1 · Immer (kann leer sein).

Eine Zeile je Artikel, dessen Bestand seit Since neu berechnet wurde, sortiert nach RowNr.

Spalte Typ Beschreibung
RowNr int

Fortlaufende Zeilennummer in der Reihenfolge LastCalculateStockDate, ItemKey; für Paging verwendbar.CRLF

ItemKey int

Interner Schlüssel des Artikels.

ItemNrInt
Kann leer sein
varchar(50)
string

Interne Artikelnummer.

EANUPC
Kann leer sein
varchar(13)
string

EAN/UPC des Artikels.

ItemNrSuppl
Kann leer sein
varchar(50)
string

Lieferanten-Artikelnummer.

PhysicalStock
Kann leer sein
int

Physischer Bestand (Quantity des Artikels).

AvailableStock
Kann leer sein
int

Exportbestand der Lagerplätze abzüglich offener Auftragspositionen oder offener Reservierungen je nach Einstellungen; kein Abzug bei Bundles oder bei konfiguriertem Export des physischen Bestands.

EstimatedDelivery
Kann leer sein
datetime
dateTime

Voraussichtlicher Liefertermin für den Export; NULL, wenn keiner hinterlegt ist.

MinStockQty
Kann leer sein
int

Mindestbestand des Artikels.

Enabled
Kann leer sein
bit
boolean

Gibt an, ob der Artikel aktiv ist.

OpenSupplierOrderQTY
Kann leer sein
int

Wird vom Code nicht befüllt; immer 0. Stattdessen OpenSupplOrdersQty verwenden.

UpdateDate
Kann leer sein
datetime
dateTime

Datum der letzten Bestandsberechnung des Artikels (LastCalculateStockDate).

BundleItem
Kann leer sein
bit
boolean

Gibt an, ob der Artikel ein Bundle ist.

OpenSupplOrdersQty
Kann leer sein
int

Offene Menge aus offenen Lieferantenbestellungen (bestellt minus geliefert minus nicht geliefert); NULL, wenn keine vorhanden sind.

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:pixiGetChangedItemStockSince>
      <Since>2024-05-01T08:00:00</Since>
      <!-- <Rowcount>500</Rowcount> -->
      <!-- <Start>0</Start> -->
    </ns1:pixiGetChangedItemStockSince>
  </SOAP-ENV:Body>
</SOAP-ENV:Envelope>

Verwendete Tabellen

items · Lesen Item_EstimatedDelivery · Lesen SupplierOrder · Lesen SupplierOrderStatus · Lesen SupplierOrderLine · Lesen Settings · Lesen
SQL-Objekt:
dbo.pipiGetChangedItemStockSince
Prozedur zuletzt geändert am 2026-10-05
Dokumentation von claude-opus-5-5 am 2026-10-30 geschrieben