Postman-Collection
Reports Lesen

pixiReport_StockValue

Liefert den Lagerwertbericht: Bestand je Artikel und Lager zu einem Stichtag mit VK brutto/netto, EK, Rohertrag und Summenwerten.

Wrapper um die interne Berichtsprozedur Report_StockValue. Alle Parameter werden unverändert weitergereicht.

Ablauf

  1. Der Stichtag wird auf das Tagesende von ParamDate gesetzt. Ohne ParamDate gilt das Ende des aktuellen Tages.
  2. Der Bestand wird aus dem Lagerbewegungsprotokoll InvBinItemLog rekonstruiert. Alle Bewegungen mit UpdateDate bis zum Stichtag werden je Lager (LocID) und Artikel summiert. Nur Kombinationen mit einer Summe ungleich 0 bleiben erhalten, negative Bestände sind also enthalten.
  3. Ist LocID angegeben und nicht leer, werden nur Bewegungen dieses Lagers berücksichtigt. Andernfalls werden alle Lager einbezogen.
  4. Jede Bestandszeile wird mit dem Artikel (Items) verknüpft. Zeilen ohne existierenden Artikel entfallen.
  5. Je Artikel wird die zum Stichtag letzte gültige Lieferanteninformation ermittelt. Sie liefert den Verkaufspreis Price, den Einkaufspreis SupplPrice und die Lieferantennummer. Der Lieferantenname stammt aus Suppliers, der Kategorietext über Items.ConfigType aus TontrArten.
  6. Der Mehrwertsteuersatz wird für das Standardland und den Stichtag anhand von MwStSatz des Artikels bestimmt:
    • 1 = voller Satz
    • 2 = ermäßigter Satz
    • jeder andere Wert = keine MwSt.; der Preis gilt als netto.
  7. Filter:
    • Ist SupplNr angegeben und nicht leer, werden nur Artikel geliefert, deren letzter Lieferant dieser Lieferant ist.
    • Ist Category angegeben und nicht leer, werden nur Artikel mit ConfigType = Category geliefert.
  8. Es wird eine Zeile je Artikel und Lager geliefert, sortiert nach dem internen Artikelschlüssel.

Berechnete Werte

  • VK_Netto = Bruttopreis geteilt durch (1 + MwSt.-Satz)
  • Rohertrag = VK_Netto − EK je Stück
  • Sum_* = Bestandsmenge × Stückwert

Die Spalten par_* geben die wirksamen Filterwerte zurück. Nicht gesetzte Filter erscheinen als -alle-.

Hinweise

  • Nur lesend. Die meisten Tabellen werden WITH (NOLOCK) gelesen, das Ergebnis kann daher nicht festgeschriebene Daten enthalten. Items wird ohne Hinweis gelesen.
  • Der Bestand wird aus dem gesamten Bewegungsprotokoll bis zum Stichtag neu berechnet. Bei großer Historie kann das langsam sein; Filter nach Möglichkeit verwenden.
  • Von ParamDate zählt nur das Datum, da die Uhrzeit immer auf das Tagesende gesetzt wird.
  • Die Lagerspalte der internen Zwischentabelle ist varchar(3), obwohl LocID bis zu 10 Zeichen annimmt.
  • Ist SupplNr gesetzt, entfallen Artikel ohne Lieferanteninformation. Ohne Filter werden sie mit NULL-Preisen geliefert.
  • Rohertrah (sic, abweichend von Rohertrag geschrieben) ist der Gesamt-Rohertrag. Er ist 0 für Artikel, deren MwStSatz weder 1 noch 2 ist, während Rohertrag für diese Artikel trotzdem berechnet wird.
  • Die Ausgabespalte MwStSatz enthält den MwSt.-Satz in Prozent, nicht den Steuerschlüssel des Artikels.
  • Die Hilfsfunktionen fPixi_GetLatestSupplierInfo, fPixi_GetVATRate, fPixi_GetDefaultCountryCode, fPixi_GetDateEndOfDay und pixi.GetDatabaseCurrency liegen nicht vor. Ihre genaue Logik, etwa wie die "letzte" Lieferanteninformation gewählt wird, und die Datentypen der Preisspalten sind daher hier nicht dokumentiert.

Parameter

Parameter Typ Standardwert Beschreibung
ParamDate
datetime
dateTime
NULL

Stichtag des Berichts. Bestand und Preise werden zum Ende dieses Tages ermittelt. NULL = heute.

Beispiel: 2024-03-31T00:00:00

LocID
varchar(10)
string
NULL

Filter auf das Lager. NULL oder leer = alle Lager.

Beispiel: 001

Category
varchar(10)
string
NULL

Filter auf die Artikelkategorie, verglichen mit Items.ConfigType. NULL oder leer = alle Kategorien.

Beispiel: 1

SupplNr
varchar(10)
string
NULL

Filter auf den Lieferanten der zum Stichtag letzten Lieferanteninformation. NULL oder leer = alle Lieferanten.

Beispiel: L100

Antwort

Result-Set 1 · Immer (kann leer sein)

Eine Zeile je Artikel und Lager mit Bestand ungleich 0 zum Stichtag, sortiert nach internem Artikelschlüssel.

Spalte Typ Beschreibung
LieferantenArtikelnummer
Kann leer sein
string

Lieferantenartikelnummer (Items.ItemNrSuppl).

Artikelnummer
Kann leer sein
string

Interne Artikelnummer (Items.ItemNrInt).

Barcode
Kann leer sein
string

EAN/UPC-Barcode des Artikels.

Artikelname
Kann leer sein
string

Artikelname.

Kategorie
Kann leer sein
string

Kategorietext aus TontrArten zum ConfigType des Artikels.

SupplName
Kann leer sein
string

Name des Lieferanten aus der letzten Lieferanteninformation.

LocID varchar(3)
string

Lager-ID.

Bestand int

Bestand zum Stichtag (Summe der Bewegungen, kann negativ sein).

VK_Brutto
Kann leer sein
decimal

Verkaufspreis brutto je Stück.

VK_Netto
Kann leer sein
decimal

Verkaufspreis netto je Stück (Bruttopreis ohne MwSt.).

EK
Kann leer sein
decimal

Einkaufspreis je Stück.

Rohertrag
Kann leer sein
decimal

Rohertrag je Stück (VK_Netto − EK).

Sum_VK_Netto
Kann leer sein
decimal

Bestand × VK netto.

Sum_VK_Brutto
Kann leer sein
decimal

Bestand × VK brutto.

Sum_EK
Kann leer sein
decimal

Bestand × EK (Lagerwert zum Einkaufspreis).

MwStSatz
Kann leer sein
decimal

Angewandter MwSt.-Satz in Prozent (0, wenn der Artikel weder vollen noch ermäßigten Satz hat).

Rohertrah
Kann leer sein
decimal

Gesamt-Rohertrag (Bestand × (VK_Netto − EK)); 0 für Artikel ohne vollen oder ermäßigten MwSt.-Satz.

CurrencyCode
Kann leer sein
varchar(3)
string

Währungscode der Datenbank.

par_paramdate datetime
dateTime

Wirksamer Stichtag (Tagesende).

par_LocID varchar(10)
string

Lagerfilter wie übergeben oder -alle-.

par_Category varchar(10)
string

Kategoriefilter wie übergeben oder -alle-.

par_SupplNR varchar(10)
string

Lieferantenfilter wie übergeben oder -alle-.

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:pixiReport_StockValue>
      <!-- <ParamDate>2024-03-31T00:00:00</ParamDate> -->
      <!-- <LocID>001</LocID> -->
      <!-- <Category>1</Category> -->
      <!-- <SupplNr>L100</SupplNr> -->
    </ns1:pixiReport_StockValue>
  </SOAP-ENV:Body>
</SOAP-ENV:Envelope>

Verwendete Tabellen

InvBinItemLog · Lesen Items · Lesen TontrArten · Lesen Suppliers · Lesen
SQL-Objekt:
dbo.pipiReport_StockValue
Prozedur zuletzt geändert am 2026-10-05
Dokumentation von claude-opus-5-5 am 2026-10-30 geschrieben