Postman-Collection
Direct-Fulfillment Lesen

pixiDFGetOrderlines_new

Liefert die Direct-Fulfillment-Auftragspositionen (Status FUT) eines Auftrags für einen berechtigten Streckenlieferanten inklusive Artikel-, Historien- und Währungsdaten.

Schnittstellenaufruf für Direct-Fulfillment-Lieferanten (Streckengeschäft), um die zu erfüllenden Positionen eines einzelnen Auftrags abzurufen.

Berechtigung

  1. Leere Strings in SupplNr und Secret werden als NULL behandelt.
  2. In Suppliers wird ein Lieferant gesucht, dessen SupplNr gleich SupplNr und dessen CustNr gleich Secret ist, der nicht deaktiviert ist und CanDoDirectFulfillment = 1 hat.
  3. Wird kein solcher Lieferant gefunden und ist die Einstellung DFAPIAllowFullAccessWithoutSecret gleich 0 (oder nicht vorhanden), wird ausschließlich eine Fehlerzeile mit Error = 403 geliefert.
  4. Andernfalls werden die Auftragspositionen geliefert.

Auswahl der Positionen

  • Nur Positionen des Auftrags OrderNR mit Positionsstatus FUT.
  • Jede Position wird mit ihrem neuesten OrderHistory-Eintrag mit Status FUT verknüpft; dieser Status muss in OrderStates ein Fulfillment-Status sein (FulfilmentStatus = 'Y').
  • Standardmäßig werden nur noch nicht bestätigte Positionen geliefert (ClientNotified = 'N'); mit AllOrderlines = 1 auch bereits bestätigte.
  • Ist SupplNr angegeben, werden nur Positionen geliefert, deren SupplInfo gleich SupplNr ist und deren Lieferant ein Direct-Fulfillment-Lieferant ist. Ist SupplNr leer (nur möglich, wenn Vollzugriff ohne Secret erlaubt ist), werden Positionen aller Lieferanten geliefert.
  • Positionen werden ausgeschlossen, wenn die Lieferadresse gesperrt ist (ASLocked = 'Y') oder der Kunde gesperrt ist (SLocked = 'Y').
  • Positionen ohne passende Rechnungsadresse, Kunde, Auftragskopf oder Währung werden nicht geliefert (Inner Joins).

Artikeldaten

Der Artikel wird aus Items gelesen; der lieferantenspezifische Zusatzartikel-Datensatz in AddItems (passend zum Lieferanten der Position, neuester nach UpdateDate) liefert ItemNrSuppl vorrangig, während EANUPC zuerst vom Artikel und nur ersatzweise aus AddItems stammt.

Das Ergebnis ist DISTINCT und hat keine definierte Sortierung.

Hinweise

  • Alle Tabellen werden mit NOLOCK gelesen; nicht festgeschriebene Daten können geliefert werden.
  • Das Secret wird mit dem Feld CustNr des Lieferanten verglichen (die Kundennummer von Pixi beim Lieferanten).
  • Ist die Einstellung DFAPIAllowFullAccessWithoutSecret ungleich 0, ist die Secret-Prüfung faktisch abgeschaltet: Jeder Aufrufer erhält Daten, bei leerer SupplNr sogar die Positionen aller Lieferanten des Auftrags.
  • Der Aufruf ist rein lesend: ClientNotified wird nicht gesetzt. Das Bestätigen von Positionen erfordert einen separaten Aufruf; die Spalte OrderlineConfirmed zeigt nur den aktuellen Wert.
  • Die Fehlerzeile hat andere Spalten (Error, ErrorMsg) als die Datenzeilen; Clients müssen prüfen, welche Spalten vorhanden sind.

Parameter

Parameter Typ Standardwert Beschreibung
OrderNR
Pflicht
int –

Pixi-Auftragsnummer, deren Positionen geliefert werden.

Beispiel: 104523

SupplNr
varchar(4)
string
NULL

Lieferantennummer des Direct-Fulfillment-Lieferanten. Dient der Berechtigung und schränkt die Positionen auf diesen Lieferanten ein. Leerer String wird als NULL behandelt.

Beispiel: DF01

Secret
varchar(20)
string
NULL

Secret des Lieferanten; muss mit der beim Lieferanten hinterlegten CustNr übereinstimmen. Leerer String wird als NULL behandelt.

Beispiel: K-778812

AllOrderlines
bit
boolean
0

Steuert, ob bereits bestätigte Positionen enthalten sind.

Erlaubte Werte

  • 0 – Nur noch nicht bestätigte Positionen (`ClientNotified = 'N'`).
  • 1 – Alle passenden FUT-Positionen, bestätigt oder nicht.

Beispiel: 0

Antwort

Result-Set 1 · Wenn die Prüfung von Lieferant/Secret fehlschlägt und DFAPIAllowFullAccessWithoutSecret gleich 0 ist.

Einzelne Fehlerzeile.

Spalte Typ Beschreibung
Error varchar(3)
string

Fehlercode, immer 403.

ErrorMsg varchar(47)
string

Fehlertext.

Result-Set 2 · Wenn die Berechtigung erfolgreich ist oder Vollzugriff ohne Secret erlaubt ist.

Eine Zeile je passender Direct-Fulfillment-Position des Auftrags.

Spalte Typ Beschreibung
OrderLineRef int

Schlüssel der Auftragsposition (OrderlineKey).

OrderNr int

Pixi-Auftragsnummer.

ArtName
Kann leer sein
string

Artikelbezeichnung der Position.

EANUPC
Kann leer sein
string

EAN/UPC des Artikels; aus Items, ersatzweise aus AddItems.

ItemNrSuppl
Kann leer sein
string

Lieferantenartikelnummer; aus dem lieferantenspezifischen AddItems-Datensatz, ersatzweise aus Items.

itemNrExternal
Kann leer sein
string

Externe Artikelnummer der Position.

Qty
Kann leer sein
int

Bestellte Menge.

Price
Kann leer sein
decimal

Preis der Position.

Status string

Positionsstatus, immer FUT.

OrderHistKey int

Schlüssel des neuesten FUT-Historieneintrags der Position.

StatusChangeDate
Kann leer sein
datetime
dateTime

Datum des Statuswechsels auf FUT.

OrderDate
Kann leer sein
datetime
dateTime

Auftragsdatum.

OrderNrExternal
Kann leer sein
string

Externe (Shop-)Auftragsnummer.

oItemSpecialNote
Kann leer sein
string

Sonderhinweis zur Position.

SupplInfo
Kann leer sein
string

Der Position zugeordnete Lieferantennummer.

InvoiceNrExternal
Kann leer sein
string

Externe Rechnungsnummer.

DF_Type
Kann leer sein
string

Direct-Fulfillment-Typ der Position.

ItemRef int

Artikelschlüssel (ItemKey).

OrderlineConfirmed
Kann leer sein
string

Kennzeichen ClientNotified des FUT-Historieneintrags (Y/N).

OrderCurrencyCode
Kann leer sein
string

Währungscode des Auftrags (codeA aus pixi.Currency).

BundleOrderlineRef
Kann leer sein
int

Verweis auf die übergeordnete Bundle-Position, falls vorhanden.

ItemNrInt
Kann leer sein
string

Interne Pixi-Artikelnummer.

Fehlermeldungen

Status Meldung Ursache
403 Not Authorized. Secret or SupplNr is incorrect. Kein aktiver Direct-Fulfillment-Lieferant passt zu `SupplNr` und `Secret` (`CustNr`), und die Einstellung `DFAPIAllowFullAccessWithoutSecret` ist `0`. Korrekte Lieferantennummer und korrektes Secret übergeben.

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:pixiDFGetOrderlines_new>
      <OrderNR>104523</OrderNR>
      <!-- <SupplNr>DF01</SupplNr> -->
      <!-- <Secret>K-778812</Secret> -->
      <!-- <AllOrderlines>0</AllOrderlines> -->
    </ns1:pixiDFGetOrderlines_new>
  </SOAP-ENV:Body>
</SOAP-ENV:Envelope>

Verwendete Tabellen

Suppliers · Lesen Settings · Lesen Orderlines · Lesen OrderHistory · Lesen Addresses · Lesen Items · Lesen AddItems · Lesen OrderHeader · Lesen OrderStates · Lesen Customers · Lesen Currency · Lesen
SQL-Objekt:
dbo.pipiDFGetOrderlines_new
Prozedur zuletzt geändert am 2026-10-05
Dokumentation von claude-opus-5-5 am 2026-10-30 geschrieben