Postman-Collection
Suppliers Lesen

pixiDispoGetOpenSupplierOrders

Liefert offene Lieferantenbestellpositionen und Auftragspositionen im Status ANG mit offener Menge und erwartetem Liefertermin, seitenweise nach Positionsschlüssel.

Sammelt offene Bestellmengen für die Disposition aus zwei Quellen und liefert sie als gemeinsame Liste.

Typ 1200 – Lieferantenbestellpositionen (pixi.SupplierOrderLine):

  • Nur Positionen, deren Lieferantenbestellung einen Status mit IsOrderedConfirmed = 1 hat (bestellt bzw. bestätigt).
  • Nur Positionen mit einer offenen Menge ungleich 0. Die offene Menge ist Qty - DeliveredQty - UndeliveredQty, fehlende Werte zählen als 0.
  • EstimatedDeliveryDate ist der erwartete Liefertermin der Position oder '0', wenn keiner gesetzt ist.
  • SupplOrderNR ist die interne Nummer der Lieferantenbestellung. SupplOrderDate ist das Anlagedatum der Position.

Typ 2200 – Auftragspositionen im Status ANG (Orderlines):

  • Nur Positionen mit Status = 'ANG' und einer Menge ungleich 0.
  • Qty und QtyOrdered entsprechen der Positionsmenge. QtyReceived und QtyNotDelivered sind immer 0.
  • EstimatedDeliveryDate ist das heutige Datum plus DefaultDeliveryDays des Lieferanten. Ohne Wert beim Lieferanten wird 1 Tag verwendet.
  • SupplOrderNR ist die Auftragsnummer. SupplOrderDate ist das Anlagedatum der Position.

Für beide Typen stammen die Artikeldaten (SupplNr, ItemNrInt, ItemNrSuppl) per Left Join aus Items. ItemNrSuppl fällt auf ItemNrInt zurück, wenn der Artikel keine Lieferantenartikelnummer hat.

Paging: Es werden nur Positionen geliefert, deren Schlüssel größer als SOrderlineKeyStart ist. Die gemeinsame Liste wird aufsteigend nach SOrderlineKey sortiert und auf RowCount Zeilen begrenzt. Für die nächste Seite wird der zuletzt erhaltene SOrderlineKey als neuer SOrderlineKeyStart übergeben.

Alle Datumswerte werden als Text im Format dd.mm.yyyy geliefert.

Hinweise

  • Alle Tabellen werden mit NOLOCK gelesen, daher kann das Ergebnis nicht festgeschriebene Daten enthalten.
  • SOrderlineKey stammt aus zwei verschiedenen Schlüsselräumen: SupplierOrderLine.Id für Typ 1200 und Orderlines.OrderlineKey für Typ 2200. Derselbe Schlüsselwert kann daher in beiden Typen vorkommen.
    • Das Paging verwendet eine gemeinsame Schwelle für beide Quellen.
    • Endet eine Seite mitten in einem solchen doppelten Schlüssel, wird die verbleibende Zeile mit diesem Schlüssel auf der nächsten Seite übersprungen.
    • Type sollte immer zusammen mit SOrderlineKey ausgewertet werden.
  • Die beiden Quellen werden mit UNION verbunden, vollständig identische Zeilen erscheinen daher nur einmal.
  • Ist RowCount NULL, wird 10000 verwendet.
  • EstimatedDeliveryDate für Typ 2200 wird aus dem aktuellen Serverdatum zum Zeitpunkt des Aufrufs berechnet.

Parameter

Parameter Typ Standardwert Beschreibung
SOrderlineKeyStart
int 0

Es werden nur Positionen mit einem Schlüssel größer als dieser Wert geliefert. Dient dem Paging; NULL wird als 0 behandelt.

Beispiel: 0

RowCount
int 10000

Maximale Anzahl gelieferter Zeilen. NULL wird als 10000 behandelt.

Beispiel: 5000

Antwort

Result-Set 1 · Immer

Offene Lieferantenbestellpositionen (Typ 1200) und Auftragspositionen im Status ANG (Typ 2200), aufsteigend sortiert nach SOrderlineKey.

Spalte Typ Beschreibung
SOrderlineKey int

Schlüssel der Position: SupplierOrderLine.Id bei Typ 1200, Orderlines.OrderlineKey bei Typ 2200.

ItemKey
Kann leer sein
int

Schlüssel des Artikels.

EstimatedDeliveryDate
Kann leer sein
varchar(10)
string

Erwarteter Liefertermin als dd.mm.yyyy. Bei Typ 1200 '0', wenn nicht gesetzt; bei Typ 2200 heute plus DefaultDeliveryDays des Lieferanten (Standard 1).

Qty
Kann leer sein
int

Offene Menge: bestellt minus geliefert minus nicht geliefert (Typ 1200) bzw. Positionsmenge (Typ 2200).

Type varchar(4)
string

Herkunft der Zeile: '1200' = Lieferantenbestellposition, '2200' = Auftragsposition im Status ANG.

SupplNr
Kann leer sein
string

Lieferantennummer aus den Artikelstammdaten.

ItemNrInt
Kann leer sein
string

Interne Artikelnummer.

ItemNrSuppl
Kann leer sein
string

Lieferantenartikelnummer; fällt auf ItemNrInt zurück, wenn leer.

SupplOrderDate
Kann leer sein
varchar(10)
string

Anlagedatum der Position als dd.mm.yyyy.

SupplOrderNR
Kann leer sein
string

Interne Nummer der Lieferantenbestellung (Typ 1200) bzw. Auftragsnummer (Typ 2200).

QtyOrdered
Kann leer sein
int

Bestellte Menge der Position.

QtyReceived int

Bereits gelieferte Menge (Typ 1200); bei Typ 2200 immer 0.

QtyNotDelivered int

Als nicht geliefert markierte Menge (Typ 1200); bei Typ 2200 immer 0.

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:pixiDispoGetOpenSupplierOrders>
      <!-- <SOrderlineKeyStart>0</SOrderlineKeyStart> -->
      <!-- <RowCount>5000</RowCount> -->
    </ns1:pixiDispoGetOpenSupplierOrders>
  </SOAP-ENV:Body>
</SOAP-ENV:Envelope>

Verwendete Tabellen

SupplierOrderLine · Lesen SupplierOrder · Lesen SupplierOrderStatus · Lesen Items · Lesen Orderlines · Lesen Suppliers · Lesen
SQL-Objekt:
dbo.pipiDispoGetOpenSupplierOrders
Prozedur zuletzt geändert am 2026-10-05
Dokumentation von claude-opus-5-5 am 2026-10-30 geschrieben