Postman-Collection
Suppliers Lesen

pixiGetHistoricalSupplierPrices

Liefert die FIFO-Lieferantenpreise von Einlagerungsbewegungen für einen oder alle Artikel in einem Zeitraum von höchstens 31 Tagen.

Liefert die Lieferantenpreise, die Pixi den Einlagerungsbewegungen zugeordnet hat (FIFO-Preise), zusammen mit Artikel, Menge, Lieferant und Referenzbeleg.

Prüfungen (bei Fehler wird eine einzelne Error-Zeile geliefert, siehe Fehler):

  • DateFrom und DateTo sind Pflicht, obwohl sie den Standardwert NULL haben.
  • Beide Werte werden auf das Datum reduziert. Das Ende des Zeitraums ist der Tag nach DateTo, DateTo ist also inklusive.
  • Der Zeitraum von DateFrom bis DateTo darf höchstens 31 Kalendertage (inklusive) umfassen.
  • DateTo darf höchstens gestern sein; Daten für den aktuellen Tag können nicht abgefragt werden.

Auswahl:

  • Ist ItemKey angegeben, werden nur Bewegungen dieses Artikels geliefert, sonst alle Artikel.
  • Ein Datensatz wird geliefert, wenn entweder das Einlagerungsdatum der Bewegung (DatePutToStock) oder das letzte Änderungsdatum des zugehörigen Preisdatensatzes im Zeitraum liegt. Datensätze, deren Preis im Zeitraum neu berechnet wurde, erscheinen also auch dann, wenn die Einlagerung früher erfolgte.
  • RefType beschreibt die Quelle, aus der der Preis stammt; RefDocumentNumber ist die Nummer der verknüpften Lieferantenlieferung (direkt zugeordnete Lieferung, ersatzweise die nachträglich zugeordnete), sofern vorhanden.

Ergebnis: Die Zeilen sind nach InvBinItemLogId sortiert. Gibt es keine Treffer, wird stattdessen eine einzelne Warning-Zeile geliefert.

Hinweise

  • Alle Tabellen werden mit NOLOCK gelesen, nicht festgeschriebene Daten können daher erscheinen.
  • Fehler werden nicht als SqlMessage geliefert: Prüffehler und alle anderen Laufzeitfehler werden abgefangen und als normale Zeile mit den Spalten Staus (sic, falsch geschrieben) und Message zurückgegeben. Vor dem Auswerten der Datenzeilen sollte auf eine Spalte Staus geprüft werden.
  • Liegt DateFrom nach DateTo, entsteht kein Prüffehler; es wird lediglich die Warning-Zeile geliefert.
  • Das Ende des Zeitraums wird mit <= gegen Mitternacht des Folgetags von DateTo verglichen, Datensätze mit genau diesem Zeitstempel werden daher ebenfalls geliefert.
  • Ob eine Einlagerungsbewegung mehrere Preisdatensätze haben kann (und damit in mehreren Zeilen erscheint), hängt von den Daten in InvBinItemLog_In_Price ab und ist aus dem Code nicht ersichtlich.

Parameter

Parameter Typ Standardwert Beschreibung
ItemKey
int NULL

Interner Artikelschlüssel (ItemRef der Lagerbewegung). Bei NULL werden Bewegungen aller Artikel geliefert.

Beispiel: 4711

DateFrom
datetime
dateTime
NULL

Beginn des Zeitraums (inklusive, Uhrzeit wird ignoriert). Faktisch Pflicht: Fehlt der Wert, wird eine Error-Zeile geliefert.

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

DateTo
datetime
dateTime
NULL

Ende des Zeitraums (inklusive, Uhrzeit wird ignoriert). Faktisch Pflicht; darf höchstens gestern sein und höchstens 31 Tage (inklusive) nach DateFrom liegen.

Beispiel: 2024-05-31T00:00:00

Antwort

Result-Set 1 · Wenn die Prüfungen bestanden sind und mindestens ein Datensatz passt

Einlagerungsbewegungen mit ihren FIFO-Lieferantenpreisen, sortiert nach InvBinItemLogId.

Spalte Typ Beschreibung
InvBinItemLogId int

Schlüssel der Lagerbewegung (InvBinItemLog), zu der der Preis gehört.

ItemID int

Interner Artikelschlüssel.

DatePutToStock
Kann leer sein
dateTime

Datum und Uhrzeit der Lagerbewegung (UpdateDate).

Quantity
Kann leer sein
decimal

Menge der Lagerbewegung.

SupplierPrice
Kann leer sein
decimal

Der Bewegung zugeordneter Lieferantenpreis.

SupplierId
Kann leer sein
int

Schlüssel des Lieferanten, von dem der Preis stammt.

RefType
Kann leer sein
string

Beschreibung der Quelle, aus der der Preis ermittelt wurde (MatchDescription aus InvBinItemLog_QuerySource).

RefDocumentNumber
Kann leer sein
string

Nummer der verknüpften Lieferantenlieferung (SDelHNr); NULL, wenn keine Lieferung verknüpft ist.

Result-Set 2 · Wenn die Prüfungen bestanden sind, aber kein Datensatz passt

Einzelne Warnzeile.

Spalte Typ Beschreibung
Staus varchar(7)
string

Immer Warning (Spaltenname ist im Code falsch geschrieben).

Message nvarchar(46)
string

Warnungstext.

Result-Set 3 · Wenn eine Prüfung fehlschlägt oder ein anderer Fehler auftritt

Einzelne Fehlerzeile mit der Fehlermeldung.

Spalte Typ Beschreibung
Staus varchar(5)
string

Immer Error (Spaltenname ist im Code falsch geschrieben).

Message
Kann leer sein
nvarchar(4000)
string

Fehlermeldung (ERROR_MESSAGE()).

Fehlermeldungen

Status Meldung Ursache
Error Paramters @DateFrom and @DateTo are mandatory. `DateFrom` oder `DateTo` wurde nicht übergeben oder ist `NULL`. Beide Datumswerte immer übergeben.
Error Maximum date range peroid is limited to 31 days. Der Zeitraum von `DateFrom` bis `DateTo` (inklusive) umfasst mehr als 31 Tage. Die Abfrage in kleinere Zeiträume aufteilen.
Error It is not possible to get data for current day. Max value for paramter @DateTo is: "current date -1". `DateTo` ist heute oder liegt in der Zukunft. Gestern oder ein früheres Datum verwenden.
Error {ERROR_MESSAGE()} Jeder andere Laufzeitfehler (z. B. ungültige Datumskonvertierung) wird abgefangen und mit der Originalmeldung geliefert.
Warning No records found based on specified paramters. Keine Lagerbewegung bzw. kein Preisdatensatz passt zu Artikel und Zeitraum, oder `DateFrom` liegt nach `DateTo`.

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:pixiGetHistoricalSupplierPrices>
      <!-- <ItemKey>4711</ItemKey> -->
      <!-- <DateFrom>2024-05-01T00:00:00</DateFrom> -->
      <!-- <DateTo>2024-05-31T00:00:00</DateTo> -->
    </ns1:pixiGetHistoricalSupplierPrices>
  </SOAP-ENV:Body>
</SOAP-ENV:Envelope>

Verwendete Tabellen

InvBinItemLog · Lesen InvBinItemLog_In_Price · Lesen InvBinItemLog_QuerySource · Lesen SDelHeader · Lesen
SQL-Objekt:
dbo.pipiGetHistoricalSupplierPrices
Prozedur zuletzt geändert am 2026-10-05
Dokumentation von claude-opus-5-5 am 2026-10-30 geschrieben