Postman-Collection
Orderlines Lesen

pixiGetOrderline

Liefert Auftragspositionen gefiltert nach Schlüssel, Auftrag, Status, Shop, Zahlungsart, Datum oder Rechnung, inkl. Preisen, MwSt., Versanddaten und verfügbarem Bestand.

Liefert Auftragspositionen (Orderlines) und Bundle-Positionen (BundleOrderlines), die allen angegebenen Filtern entsprechen, sortiert nach OrderlineKey.

Normalisierung der Eingaben

  • OrderlineKey und OrderNR mit Wert 0 sowie leere Strings bei Text- und Datumsparametern gelten als nicht gesetzt.
  • RowCount NULL wird zu 1000.
  • Enthält OrderNRExternal DROP, ALTER, DELETE, TRUNCATE oder UPDATE, endet die Prozedur sofort ohne Ergebnismenge.

Filter (UND-verknüpft, nur wenn gesetzt)

  • OrderlineKey, OrderNR, OrderNRExternal, Status: exakter Vergleich mit der Auftragsposition.
  • ShopID: CustomerOF des Kunden der Position.
  • PaymentType: APayment der Adresse der Position.
  • OrderDateFrom/OrderDateTo und UpdateDateFrom/UpdateDateTo: exklusive Grenzen (> und <).
  • InvoiceNr: nur Positionen, die als Rechnungsposition der Rechnung mit dieser Nummer vorkommen.

Bundle-Behandlung (ShowOrderlines)

  • 1: Bundles werden nicht als normale Artikel verarbeitet; alle Auftragspositionen inkl. der Bundle-Komponenten werden geliefert.
  • 0: Bundles werden als normale Artikel verarbeitet; Komponentenpositionen (mit Bundle-Referenz) entfallen, die Bundle-Position selbst wird aus BundleOrderlines geliefert.
  • nicht gesetzt: Wert aus der Einstellung ProcessBundleItemsAsNormalItems (Standard 0).

Bundle-Positionen werden mit denselben Filtern gesucht; Datums- und Rechnungsfilter werden gegen die Komponentenpositionen geprüft, und die Filter OrderNR/OrderNRExternal treffen Bundle-Positionen nur, wenn Bundles als normale Artikel verarbeitet werden.

Zeilenlimit: Zuerst werden bis zu RowCount normale Auftragspositionen (aufsteigend nach OrderlineKey) gesammelt, danach füllen Bundle-Positionen das restliche Kontingent. Einen Offset gibt es nicht; für Paging eignen sich OrderlineKey- oder Datumsfilter.

Berechnete Werte

  • FullPrice = Qty × Price; FullPriceForItem ist der gespeicherte Gesamtpreis der Position.
  • VATRate und PriceNoVAT (auf 2 Nachkommastellen gerundet) stammen aus der ersten Rechnungsposition, sonst aus der MwSt.-Klasse des Artikels (H, L, N) bzw. dem Nettopreis der Position.
  • ShipDate ist das Scan-Out-Datum der Rechnung (bzw. der referenzierten Rechnung).
  • AvailStockOrderLine = Bestand des Artikels am Lager der Position abzüglich der Anzahl früherer Reservierungen desselben Artikels durch Positionen in aktiven (nicht finalen) Status außer EIN, FUT, FUS.
  • ReservedCount = das Minimum aus Qty und AvailStockOrderLine, mindestens 0.

Bundle-Positionen enthalten keine Versand-, Bestands- oder Lieferterminangaben (NULL).

Hinweise

  • Nur lesend; alle Tabellen werden mit NOLOCK gelesen, nicht festgeschriebene Daten können erscheinen.
  • Die Filterabfrage wird als dynamisches SQL aufgebaut, aber parametrisiert über sp_executesql ausgeführt.
  • Die Schlüsselwortprüfung auf OrderNRExternal endet stillschweigend (keine Zeilen, kein Fehler) – eine externe Auftragsnummer, die z. B. UPDATE enthält, ist nicht suchbar.
  • RowCount begrenzt die Kandidaten vor den abschließenden Joins. Positionen ohne Auftragskopf, Währung, Artikel, Auftragsstatus oder ItemLocationSpecific-Eintrag für Artikel und Lager entfallen, daher können weniger Zeilen als RowCount zurückkommen.
  • Bei ShowOrderlines = 1 (oder Einstellung 0) ohne Filter OrderNR/OrderNRExternal können Bundle-Positionen aus BundleOrderlines zusätzlich zu ihren Komponenten erscheinen.
  • ReservedCount ist bei Bundle-Positionen NULL, da AvailStockOrderLine dort NULL ist.

Parameter

Parameter Typ Standardwert Beschreibung
OrderlineKey
int NULL

Schlüssel einer einzelnen Auftragsposition; 0 gilt als nicht gesetzt.

Beispiel: 154872

OrderNR
int NULL

Pixi-Auftragsnummer; 0 gilt als nicht gesetzt.

Beispiel: 200345

OrderNRExternal
varchar(50)
string
NULL

Externe (Shop-)Auftragsnummer, exakter Vergleich. Werte mit DROP, ALTER, DELETE, TRUNCATE oder UPDATE beenden den Aufruf ohne Ergebnis.

Beispiel: SHOP-100234

Status
varchar(3)
string
NULL

Statuscode der Auftragsposition (aus OrderStates).

Beispiel: AUF

ShopID
varchar(3)
string
NULL

Shop-ID; Vergleich mit CustomerOF des Kunden der Position.

Beispiel: SH1

PaymentType
char(1)
string
NULL

Zahlungsart; Vergleich mit APayment der Adresse der Position.

Beispiel: V

OrderDateFrom
datetime
dateTime
NULL

Nur Positionen mit Auftragsdatum echt nach diesem Wert.

Beispiel: 2024-01-01T00:00:00

OrderDateTo
datetime
dateTime
NULL

Nur Positionen mit Auftragsdatum echt vor diesem Wert.

Beispiel: 2024-02-01T00:00:00

UpdateDateFrom
datetime
dateTime
NULL

Nur Positionen, die echt nach diesem Zeitpunkt geändert wurden.

Beispiel: 2024-01-15T08:00:00

UpdateDateTo
datetime
dateTime
NULL

Nur Positionen, die echt vor diesem Zeitpunkt geändert wurden.

Beispiel: 2024-01-16T08:00:00

RowCount
int 1000

Maximale Anzahl Kandidatenpositionen (zuerst normale, dann Bundle-Positionen). NULL bedeutet 1000.

Beispiel: 500

InvoiceNr
varchar(50)
string
NULL

Nur Positionen, die in der Rechnung mit dieser Nummer enthalten sind.

Beispiel: RE2024-001234

ShowOrderlines
bit
boolean
NULL

Steuert die Bundle-Behandlung. NULL verwendet die Einstellung ProcessBundleItemsAsNormalItems.

Erlaubte Werte

  • 1 – Alle Auftragspositionen inkl. Bundle-Komponenten liefern (Bundles nicht als normale Artikel).
  • 0 – Bundles als normale Artikel verarbeiten: Komponenten ausblenden, Bundle-Position liefern.

Beispiel: 1

Antwort

Result-Set 1 · Immer, außer OrderNRExternal enthält ein gesperrtes Schlüsselwort (dann keine Ergebnismenge).

Passende Auftrags- und Bundle-Positionen, sortiert nach OrderlineKey.

Spalte Typ Beschreibung
OrderlineKey
Kann leer sein
int

Schlüssel der Auftragsposition.

ArtName
Kann leer sein
varchar(120)
string

Artikelbezeichnung der Position.

Qty
Kann leer sein
int

Bestellmenge.

Price
Kann leer sein
money
decimal

Einzelpreis.

Status
Kann leer sein
varchar(3)
string

Statuscode der Position.

StatusText
Kann leer sein
varchar(60)
string

Statustext aus OrderStates.

ItemNrExternal
Kann leer sein
varchar(50)
string

Externe Artikelnummer.

OrderNR
Kann leer sein
int

Pixi-Auftragsnummer.

OrderNrExternal
Kann leer sein
varchar(50)
string

Externe Auftragsnummer.

OrderCurrency
Kann leer sein
varchar(3)
string

Währungscode des Auftrags.

OrderDate
Kann leer sein
datetime
dateTime

Auftragsdatum (bei Bundle-Positionen von einer Komponente).

UpdateDate
Kann leer sein
datetime
dateTime

Letzte Änderung (bei Bundle-Positionen von einer Komponente).

ItemRef
Kann leer sein
int

Artikelschlüssel.

oItemSpecialNote
Kann leer sein
varchar(8000)
string

Sondervermerk der Position.

DiscountValue
Kann leer sein
money
decimal

Rabattbetrag.

DiscountPerc
Kann leer sein
numeric(6,2)
decimal

Rabatt in Prozent.

FullPrice
Kann leer sein
money
decimal

Qty × Price.

FullPriceForItem
Kann leer sein
money
decimal

Gespeicherter Gesamtpreis der Position.

VATRate
Kann leer sein
varchar(1)
string

MwSt.-Klasse: aus Rechnungsposition, sonst H (voll), L (ermäßigt), N (keine) aus dem Artikel.

PriceNoVAT
Kann leer sein
money
decimal

Netto-Einzelpreis, bei normalen Positionen auf 2 Stellen gerundet.

ItemNrInt
Kann leer sein
varchar(50)
string

Interne Artikelnummer.

ShipDate
Kann leer sein
datetime
dateTime

Scan-Out-Datum der Rechnung; NULL bei Bundle-Positionen.

DFShipDate
Kann leer sein
datetime
dateTime

Versanddatum Direct Fulfillment.

DFShipmentTrackingID
Kann leer sein
varchar(100)
string

Sendungsverfolgungsnummer Direct Fulfillment.

AvailStockOrderLine
Kann leer sein
int

Bestand am Lager der Position abzüglich früherer Reservierungen des Artikels; NULL bei Bundle-Positionen.

EstimatedDelivery
Kann leer sein
datetime
dateTime

Voraussichtlicher Liefertermin der Position.

EANUPC
Kann leer sein
varchar(13)
string

EAN/UPC des Artikels.

ReservedCount
Kann leer sein
numeric
decimal

Minimum aus Qty und AvailStockOrderLine, mindestens 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:pixiGetOrderline>
      <!-- <OrderlineKey>154872</OrderlineKey> -->
      <!-- <OrderNR>200345</OrderNR> -->
      <!-- <OrderNRExternal>SHOP-100234</OrderNRExternal> -->
      <!-- <Status>AUF</Status> -->
      <!-- <ShopID>SH1</ShopID> -->
      <!-- <PaymentType>V</PaymentType> -->
      <!-- <OrderDateFrom>2024-01-01T00:00:00</OrderDateFrom> -->
      <!-- <OrderDateTo>2024-02-01T00:00:00</OrderDateTo> -->
      <!-- <UpdateDateFrom>2024-01-15T08:00:00</UpdateDateFrom> -->
      <!-- <UpdateDateTo>2024-01-16T08:00:00</UpdateDateTo> -->
      <!-- <RowCount>500</RowCount> -->
      <!-- <InvoiceNr>RE2024-001234</InvoiceNr> -->
      <!-- <ShowOrderlines>1</ShowOrderlines> -->
    </ns1:pixiGetOrderline>
  </SOAP-ENV:Body>
</SOAP-ENV:Envelope>

Verwendete Tabellen

OrderStates · Lesen Orderlines · Lesen Customers · Lesen Addresses · Lesen Invlines · Lesen Invoices · Lesen BundleOrderlines · Lesen Reservation · Lesen OrderHeader · Lesen Currency · Lesen Items · Lesen ItemLocationSpecific · Lesen Orderline_EstimatedDelivery · Lesen Settings · Lesen
SQL-Objekt:
dbo.pipiGetOrderline
Prozedur zuletzt geändert am 2026-10-05
Dokumentation von claude-opus-5-5 am 2026-10-30 geschrieben