Postman-Collection
Customers Lesen

pixiEmillGetCustomers2

Liefert eine Liste von Kunden mit Rechnungsadresse und letzten Auftragsdaten, gefiltert nach Artikel-, Auftrags-, Zahlungs- und Kundenmerkmalen.

Liefert eine Zeile pro Kunde, der mindestens eine Auftragsposition besitzt, die allen angegebenen Filtern entspricht. Der Kunde wird mit seiner Adresse (AddrRef), den Auftragspositionen, dem Artikel, der Artikelkategorie (tontrArten über configType) und optional mit Rechnung, Lieferant und zusätzlichen Artikeldaten verknüpft. Alle Filter werden mit UND kombiniert. Ein Filter, dessen Parameter NULL ist, wird nicht angewendet.

Shop

  • ShopID: nur Kunden, deren CustomerOf diesem Wert entspricht. Ein Leerstring gilt als NULL.

Artikelfilter (auf die Auftragspositionen angewendet)

  • ArticleName mit ArticleNameCmp: 0 = exakte Übereinstimmung mit dem Artikelnamen der Auftragsposition, 1 = Name enthält den Wert.
  • ArticleNr mit ArticleNrCmp: vergleicht mit Lieferanten-Artikelnummer, EAN/UPC oder interner Artikelnummer. 0 = exakt, 1 = enthält.
  • ArtCategory: Schlüssel der Artikelkategorie (tontrArtKey).
  • ArtSupplier: Lieferantennummer der Auftragsposition (SupplInfo) oder Lieferantenname.

Auftragsfilter

  • orderStatus: Status der Auftragsposition, z. B. AUS oder RET.
  • ShipDateFrom/ShipDateTo: Versanddatum der Auftragsposition zwischen beiden Werten. Der Filter greift nur, wenn beide gesetzt sind.
  • ShipDateDays mit ShipDateDaysCmp: Anzahl Tage zwischen Versanddatum und jetzt. 0 = mehr als, 1 = genau, 2 = weniger als ShipDateDays Tage.
  • PaymentType: Zahlungsart der mit der Auftragsposition verknüpften Rechnung.

Kundenfilter

  • CustTurnover mit CustTurnoverCmp: Summe aller Rechnungsbeträge des Kunden. 0 = Umsatz größer als der Wert, 1 = gleich, 2 = kleiner.
  • CustReturn: 0 = ignorieren, 1 = nur Kunden mit mindestens einer Auftragsposition im Status RET, -1 = nur Kunden ohne solche Positionen.
  • CustBlocked: 0 = nur nicht gesperrte Kunden, 1 = gesperrte und nicht gesperrte Kunden.
  • CustOpenOrders: 0 = ignorieren, 1 = nur Kunden mit mindestens einem Auftrag, dessen Gesamtstatus OPEN ist.

Die Spalten OrderDate, ShipDate und Status sind die Maximalwerte über die passenden Auftragspositionen des Kunden. Das Ergebnis ist nach CustKey sortiert.

Hinweise

  • Alle Tabellen werden mit NOLOCK gelesen, nicht festgeschriebene Daten können daher erscheinen.
  • resumeKey ist deklariert, wird aber nicht verwendet; es gibt kein Paging.
  • Status ist der alphabetisch höchste Status der passenden Auftragspositionen, nicht zwingend der Status des neuesten Auftrags. OrderDate und ShipDate werden unabhängig voneinander ermittelt.
  • Vergleichsparameter mit anderen als den dokumentierten Werten (z. B. ArticleNameCmp = 2 bei gesetztem ArticleName oder CustBlocked = 2) führen dazu, dass der Filter nichts trifft und das Ergebnis leer ist.
  • CustTurnover schließt Kunden ohne Rechnung aus, da deren Umsatzsumme NULL ist.
  • Bei gesetztem PaymentType werden nur Auftragspositionen berücksichtigt, die mit einer Rechnung desselben Kunden verknüpft sind.
  • Auftragspositionen, deren configType keinen Eintrag in tontrArten hat, werden nie berücksichtigt.
  • CustOpenOrders = 1 ruft die Skalarfunktion fPixi_GetWholeOrderState pro Auftrag des Kunden auf, was bei Kunden mit vielen Aufträgen langsam sein kann.

Parameter

Parameter Typ Standardwert Beschreibung
ArticleName
varchar(100)
string
NULL

Artikelname der Auftragsposition als Filter; Vergleich gemäß ArticleNameCmp.

Beispiel: T-Shirt

ArticleNameCmp
int 0

Vergleichsmodus für ArticleName. NULL wird als 0 behandelt.

Erlaubte Werte

  • 0 – Exakte Übereinstimmung
  • 1 – Name enthält den Wert

Beispiel: 1

ArticleNr
varchar(50)
string
NULL

Artikelnummer als Filter; Vergleich mit Lieferanten-Artikelnummer, EAN/UPC und interner Artikelnummer gemäß ArticleNrCmp.

Beispiel: 4006381333931

ArticleNrCmp
int 0

Vergleichsmodus für ArticleNr. NULL wird als 0 behandelt.

Erlaubte Werte

  • 0 – Exakte Übereinstimmung
  • 1 – Nummer enthält den Wert

Beispiel: 0

ArtCategory
int NULL

Schlüssel der Artikelkategorie (tontrArtKey in tontrArten).

Beispiel: 3

ArtSupplier
varchar(50)
string
NULL

Lieferantennummer der Auftragsposition oder Lieferantenname.

Beispiel: LIEF01

orderStatus
varchar(3)
string
NULL

Status der Auftragsposition, z. B. AUS oder RET.

Beispiel: AUS

ShipDateFrom
datetime
dateTime
NULL

Beginn des Versanddatumsbereichs. Wirkt nur zusammen mit ShipDateTo.

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

ShipDateTo
datetime
dateTime
NULL

Ende des Versanddatumsbereichs (inklusive). Wirkt nur zusammen mit ShipDateFrom.

Beispiel: 2024-03-31T23:59:59

ShipDateDays
int NULL

Anzahl Tage seit dem Versanddatum der Auftragsposition; Vergleich gemäß ShipDateDaysCmp.

Beispiel: 30

ShipDateDaysCmp
int 1

Vergleichsmodus für ShipDateDays. NULL wird als 1 behandelt.

Erlaubte Werte

  • 0 – Versand liegt mehr als `ShipDateDays` Tage zurück
  • 1 – Versand liegt genau `ShipDateDays` Tage zurück
  • 2 – Versand liegt weniger als `ShipDateDays` Tage zurück

Beispiel: 0

PaymentType
varchar(30)
string
NULL

Zahlungsart der mit der Auftragsposition verknüpften Rechnung.

Beispiel: PayPal

CustTurnover
int NULL

Umsatzschwelle, verglichen mit der Summe aller Rechnungsbeträge des Kunden gemäß CustTurnoverCmp.

Beispiel: 500

CustTurnoverCmp
int 1

Vergleichsmodus für CustTurnover. NULL wird als 1 behandelt.

Erlaubte Werte

  • 0 – Kundenumsatz größer als `CustTurnover`
  • 1 – Kundenumsatz gleich `CustTurnover`
  • 2 – Kundenumsatz kleiner als `CustTurnover`

Beispiel: 0

CustReturn
int 0

Filter auf Retouren des Kunden. NULL wird als 0 behandelt.

Erlaubte Werte

  • 0 – Retouren ignorieren
  • 1 – Nur Kunden mit mindestens einer Auftragsposition im Status `RET`
  • -1 – Nur Kunden ohne Auftragspositionen im Status `RET`

Beispiel: -1

CustBlocked
int 0

Steuert, ob gesperrte Kunden enthalten sind. NULL wird als 0 behandelt.

Erlaubte Werte

  • 0 – Nur nicht gesperrte Kunden (`SLocked` leer oder `N`)
  • 1 – Gesperrte und nicht gesperrte Kunden

Beispiel: 0

CustOpenOrders
int 0

Filter auf offene Aufträge des Kunden. NULL wird als 0 behandelt.

Erlaubte Werte

  • 0 – Offene Aufträge ignorieren
  • 1 – Nur Kunden mit mindestens einem Auftrag mit Gesamtstatus `OPEN`

Beispiel: 1

resumeKey
int NULL

Wird von der Prozedur nicht verwendet.

ShopID
varchar(3)
string
NULL

Shop, dem der Kunde zugeordnet ist (CustomerOf). Leerstring oder NULL bedeutet alle Shops.

Beispiel: SHP

Antwort

Result-Set 1 · Immer (kann leer sein)

Eine Zeile pro passendem Kunden, sortiert nach CustKey.

Spalte Typ Beschreibung
CustKey int

Interner Kundenschlüssel.

CustomerNrExternal
Kann leer sein
string

Externe Kundennummer.

CeMail
Kann leer sein
string

E-Mail-Adresse des Kunden.

firstname
Kann leer sein
string

Vorname aus der Kundenadresse.

lastname
Kann leer sein
string

Nachname aus der Kundenadresse.

Address
Kann leer sein
string

Straße und Hausnummer.

ZIP
Kann leer sein
string

Postleitzahl.

City
Kann leer sein
string

Ort.

State
Kann leer sein
string

Bundesland bzw. Region.

OrderDate
Kann leer sein
dateTime

Spätestes Auftragsdatum der passenden Auftragspositionen.

ShipDate
Kann leer sein
dateTime

Spätestes Versanddatum der passenden Auftragspositionen.

Status
Kann leer sein
string

Alphabetisch höchster Status der passenden Auftragspositionen.

ShopID
Kann leer sein
string

Shop, dem der Kunde zugeordnet ist (CustomerOf).

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:pixiEmillGetCustomers2>
      <!-- <ArticleName>T-Shirt</ArticleName> -->
      <!-- <ArticleNameCmp>1</ArticleNameCmp> -->
      <!-- <ArticleNr>4006381333931</ArticleNr> -->
      <!-- <ArticleNrCmp>0</ArticleNrCmp> -->
      <!-- <ArtCategory>3</ArtCategory> -->
      <!-- <ArtSupplier>LIEF01</ArtSupplier> -->
      <!-- <orderStatus>AUS</orderStatus> -->
      <!-- <ShipDateFrom>2024-01-01T00:00:00</ShipDateFrom> -->
      <!-- <ShipDateTo>2024-03-31T23:59:59</ShipDateTo> -->
      <!-- <ShipDateDays>30</ShipDateDays> -->
      <!-- <ShipDateDaysCmp>0</ShipDateDaysCmp> -->
      <!-- <PaymentType>PayPal</PaymentType> -->
      <!-- <CustTurnover>500</CustTurnover> -->
      <!-- <CustTurnoverCmp>0</CustTurnoverCmp> -->
      <!-- <CustReturn>-1</CustReturn> -->
      <!-- <CustBlocked>0</CustBlocked> -->
      <!-- <CustOpenOrders>1</CustOpenOrders> -->
      <!-- <resumeKey>?</resumeKey> -->
      <!-- <ShopID>SHP</ShopID> -->
    </ns1:pixiEmillGetCustomers2>
  </SOAP-ENV:Body>
</SOAP-ENV:Envelope>

Verwendete Tabellen

customers · Lesen addresses · Lesen orderlines · Lesen tontrArten · Lesen Invoices · Lesen items · Lesen suppliers · Lesen additems · Lesen OrderHeader · Lesen OrderStates · Lesen
SQL-Objekt:
dbo.pipiEmillGetCustomers2
Prozedur zuletzt geändert am 2026-10-05
Dokumentation von claude-opus-5-5 am 2026-10-30 geschrieben