Postman-Collection
Suppliers Lesen

pixiGetSOrderlines

Liefert die Positionen einer Lieferantenbestellung mit Artikel-, Preis-, Liefer- und Bestandsdaten sowie Bedarfs- und Verkaufszahlen je Artikel.

Liefert alle Positionen der Lieferantenbestellung, deren ID in SOrderRef übergeben wird. Intern wird Pixi_GetSorderlines mit allen optionalen Feldern ausgeführt, die Zeilen werden in einer temporären Tabelle zwischengespeichert und unverändert zurückgegeben.

Je Position enthält das Ergebnis:

  • Positionsdaten: Artikelname, Bestellmenge, Statuscode der Lieferantenbestellung, Kommentar, voraussichtliches Lieferdatum, Ersteller und letzter Bearbeiter mit Zeitstempeln.
  • Artikeldaten: EAN (ArtNr), Lieferanten-Artikelnummer und interne Artikelnummer aus den lieferantenspezifischen Artikeldaten des Lieferanten der Bestellung, Verkaufspreis (VKPrice), Bestelleinheit, zum Erstellungsdatum der Position gültiger MwSt-Satz.
  • Einkaufspreise: EKprice ist der auf der Position gespeicherte Lieferantenpreis. Ist der Bestellstatus als neu gekennzeichnet und der Positionspreis 0 oder leer, wird stattdessen der Lieferantenpreis aus den lieferantenspezifischen Artikeldaten verwendet. EKValue ist Menge × EKprice. FinalPrice ist Lieferantenpreis × Menge abzüglich des Positionsrabatts.
  • Lieferdaten: gelieferte und nicht lieferbare Menge der Position sowie die über alle Wareneingangsdetails summierte Eingangsmenge (TotalQtyReceived).
  • Bestand und Bedarf am Lieferlager der Bestellung: Lagerbestand am Lager, Mindestbestell- und Mindestbestandsmenge, Menge in Auftragspositionen mit Status HAL (Hal_Cust_O) bzw. ANG, BES, BOR (Open_Cust_O), Menge in anderen offenen, bestellten/bestätigten Lieferantenbestellungen (Open_Suppl_O) sowie Verkaufsmengen der letzten 30, 120 und 365 Tage (L30, L120, L365, alle Auftragspositionen außer Status STO).

Bei OpenOrderlines = 1 werden nur Positionen geliefert, deren Bestellmenge größer ist als gelieferte plus nicht lieferbare Menge. Die Positionen werden in der Reihenfolge der Positions-ID erzeugt.

Es werden nur Positionen geliefert, für die Artikel, der lagerspezifische Artikeldatensatz am Lieferlager der Bestellung, Lieferant sowie anlegender und ändernder Benutzer existieren (Inner Joins).

Hinweise

  • LocID wird an die innere Prozedur übergeben, in der Abfrage aber nicht verwendet. Lagerbezogene Werte beziehen sich immer auf das Lieferlager der Lieferantenbestellung, unabhängig von LocID.
  • Ist die Einstellung Include_FUT_StatusInOpenOrdersForSupplierOrdering auf 1 gesetzt, werden in Open_Cust_O auch Auftragspositionen mit Status FUT gezählt.
  • Alle Lesezugriffe erfolgen mit NOLOCK; die Werte können nicht festgeschriebene Daten enthalten.
  • Die Abfrage wird als dynamisches SQL aufgebaut; die vielen korrelierten Unterabfragen (Verkäufe 30/120/365 Tage, offene Aufträge) können den Aufruf bei großen Bestellungen verlangsamen.
  • Feste Werte: Detail, Detail2 und Price sind immer 0, ReceiveDate ist immer leer. StockQty entspricht SummaryQuantity.
  • SOrderlineNr enthält tatsächlich die ID der Lieferantenbestellung (wie SOrderRef), keine Positionsnummer. Zur Identifikation einer Position SOrderlineKey verwenden.
  • Die Sortierung nach Positions-ID erfolgt in der inneren Abfrage; das abschließende Select aus der temporären Tabelle hat kein explizites ORDER BY.
  • Mehrere Spalten der internen temporären Tabelle sind als NOT NULL deklariert (z. B. VKPrice, FinalPrice). Enthalten die Quelldaten dort NULL (z. B. Position ohne Lieferantenpreis), kann das Einfügen mit einem SQL-Fehler fehlschlagen.
  • Wird SOrderRef weggelassen (Standard 0), werden keine Zeilen geliefert.

Parameter

Parameter Typ Standardwert Beschreibung
SOrderRef
int 0

ID der Lieferantenbestellung, deren Positionen geliefert werden. NULL wird als 0 behandelt.

Beispiel: 4711

LocID
char(3)
string
001

Lager-ID. Wird intern weitergereicht, hat aber keinen Einfluss auf das Ergebnis; Lagerwerte beziehen sich immer auf das Lieferlager der Bestellung.

Beispiel: 001

OpenOrderlines
bit
boolean
0

Schränkt das Ergebnis auf noch nicht vollständig gelieferte Positionen ein. NULL wird als 0 behandelt.

Erlaubte Werte

  • 0 – Alle Positionen der Lieferantenbestellung liefern.
  • 1 – Nur Positionen liefern, deren Bestellmenge größer ist als gelieferte plus nicht lieferbare Menge.

Beispiel: 1

Antwort

Result-Set 1 · Immer (leer, wenn die Lieferantenbestellung keine passenden Positionen hat).

Eine Zeile je Position der Lieferantenbestellung.

Spalte Typ Beschreibung
Detail int

Immer 0.

Detail2 int

Immer 0.

ArtNr
Kann leer sein
varchar(13)
string

EAN/UPC aus den lieferantenspezifischen Artikeldaten des Lieferanten der Bestellung.

ArtName
Kann leer sein
varchar(200)
string

Auf der Position gespeicherter Artikelname.

OrderQty int

Bestellmenge (0, wenn leer).

ReceiveDate
Kann leer sein
datetime
dateTime

Immer NULL.

Status char(3)
string

Statuscode der Lieferantenbestellung.

CreateDate
Kann leer sein
datetime
dateTime

Erstellungszeitpunkt der Position.

CreateEmp varchar(30)
string

Name des Benutzers, der die Position angelegt hat.

UpdateDate
Kann leer sein
datetime
dateTime

Zeitpunkt der letzten Änderung der Position.

UpdateEmp varchar(30)
string

Name des Benutzers, der die Position zuletzt geändert hat.

SOrderlineKey int

ID der Lieferantenbestellposition.

SitemRef int

Artikel-ID (ItemKey).

SOrderRef int

ID der Lieferantenbestellung.

XMLconfirm
Kann leer sein
bit
boolean

Kennzeichen für XML-Bestätigung (Direct Fulfillment) der Position.

SOrderlineNr int

Enthält die ID der Lieferantenbestellung der Position (gleicher Wert wie SOrderRef).

Note
Kann leer sein
varchar(2000)
string

Kommentar der Position.

EstimatedDelivery
Kann leer sein
datetime
dateTime

Voraussichtliches Lieferdatum der Position.

VKPrice money
decimal

Verkaufspreis des Artikels.

SummaryQuantity int

Gesamtbestand des Artikels.

LocationQuantity int

Bestand des Artikels am Lieferlager der Bestellung.

QtyReceived int

Auf der Position gespeicherte gelieferte Menge.

QtyNotDelivered int

Als nicht lieferbar gekennzeichnete Menge.

MinOrderQty int

Mindestbestellmenge am Lieferlager.

MinStockQty int

Mindestbestand am Lieferlager.

OrderUnit varchar(50)
string

Bestelleinheit des Artikels ('0', wenn leer).

ItemNrSuppl
Kann leer sein
varchar(50)
string

Lieferanten-Artikelnummer aus den lieferantenspezifischen Artikeldaten.

ItemNrInt
Kann leer sein
varchar(50)
string

Interne Artikelnummer aus den lieferantenspezifischen Artikeldaten.

VATperc
Kann leer sein
float
decimal

Zum Erstellungsdatum der Position gültiger MwSt-Satz in Prozent.

EKprice
Kann leer sein
money
decimal

Einkaufspreis; bei neuen Bestellungen ohne Positionspreis der Lieferantenpreis aus den Artikeldaten.

EKValue money
decimal

Menge × Einkaufspreis (0, wenn leer).

Hal_Cust_O
Kann leer sein
int

Menge des Artikels in Auftragspositionen mit Status HAL am Lieferlager.

Open_Cust_O
Kann leer sein
int

Menge in offenen Auftragspositionen (ANG, BES, BOR, optional FUT) am Lieferlager.

Open_Suppl_O int

Menge in bestellten/bestätigten, nicht abgeschlossenen Lieferantenbestellungen für dasselbe Lieferlager (einschließlich dieser Bestellung, falls zutreffend).

L30
Kann leer sein
int

Von Kunden in den letzten 30 Tagen am Lieferlager bestellte Menge (ohne Status STO).

L120
Kann leer sein
int

Von Kunden in den letzten 120 Tagen bestellte Menge (ohne Status STO).

L365
Kann leer sein
int

Von Kunden in den letzten 365 Tagen bestellte Menge (ohne Status STO).

StockQty int

Gesamtbestand des Artikels (wie SummaryQuantity).

Price money
decimal

Immer 0 (aus Kompatibilitätsgründen).

TotalQtyReceived int

Summe der gelieferten Mengen aller Wareneingangsdetails zu dieser Position.

FinalPrice money
decimal

Lieferantenpreis × Menge abzüglich Rabattbetrag der Position.

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:pixiGetSOrderlines>
      <!-- <SOrderRef>4711</SOrderRef> -->
      <!-- <LocID>001</LocID> -->
      <!-- <OpenOrderlines>1</OpenOrderlines> -->
    </ns1:pixiGetSOrderlines>
  </SOAP-ENV:Body>
</SOAP-ENV:Envelope>

Verwendete Tabellen

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