Die virtuelle Funktion „Bestandwerte abfragen“ ermittelt für eine gegebene Firma die Bestandsmengen und Bestandswerte eines Artikels in einer bestimmten Buchungsperiode eines Geschäftsjahres.
Informationen zur Bestandsbewertung finden Sie in der Dokumentation Bestandsbewertung zu virtuellen Funktionen finden Sie in der Dokumentation ODBC-Schnittstelle.
1 Zielgruppe
- Berater
- Entwickler
2 Begriffsbestimmung
Eine virtuelle Funktion ist eine spezielle Tabelle, die zu einer Menge von Eingabewerten eine Ergebniszeile zurückgibt, welche zur Laufzeit der Abfrage berechnet wird. Sie existiert nicht auf der Datenbank, sondern wird vom SAS emuliert.
Eine virtuelle Funktion wird normalerweise über einen Join vom Typ LEFT OUTER an eine andere Datenbanktabelle verbunden. Über die Join-Bedingung oder über die WHERE-Klausel wird die Zuordnung der Werte für die Eingabeparameter der virtuellen Funktion angegeben. Wenn eine Abfrage einen Join enthält, dann wird das Abfrageergebnis zuerst ohne Berücksichtigung der virtuellen Funktion in der Datenbank ermittelt. Anschließend werden für jede Ergebniszeile die Werte der Spalten der virtuellen Funktion berechnet. Dabei berechnet der SAS für die durch die Join-Bedingung festgelegte Wertebelegung der Eingangsparameter, die Werte der Ausgabe-Spalten der virtuellen Funktion.
Bestandsbewertung
Die Bestandsbewertung ist eine fortlaufende Berechnung des entsprechenden Wertes für die im Lager vorhandenen Artikelbestände, in Geldeinheiten ausgedrückt (Hauswährungen einer Firma). Sämtliche Materialbuchungen in Semiramis, welche zu Mengen- beziehungsweise zu Wertveränderungen von bestandsgeführten Artikeln führen, werden in verschiedenen Bewertungsverfahren dokumentiert. Im Zuge der Verarbeitung von Materialbuchungen mithilfe des Lagerlogistik-Servers erfolgt die Aktualisierung der Bestände und deren Bewertung nach dem Verfahren des gleitenden Durchschnittspreises. Die periodisierten Bestandsbewertungen, wie FIFO (first in/first out) oder LIFO (last in/first out), können erst nach Abschluss der Buchungsperiode durchgängig ermittelt werden.
3 Virtuelle Funktion
Die virtuelle Funktion „Bestandswerte abfragen“ ermittelt zu einer gegebenen Bewertungsverfahren, gegebenen Firma, gegebenen Lagerort, gegebenen Artikel die Bestandsmengen und –werte in einer gegebenen Buchungsperiode eines Geschäftsjahres.
Die virtuelle Funktion wird durch die folgende Java-Klasse implementiert:
com.cisag.app.inventory.log.ItemPeriodValuesVirtualFunction
3.1 Tabellenname
Die virtuelle Funktion wird in einem Bericht über den Namen app_inventory_ ItemPeriodValues angesprochen.
3.2 Tabellenspalten
Als Eingabeparameter dienen die Spalten in_valuationMethod, in_finOrganizationGuid, in_itemGuid, in_warehouseGuid, in_fiscalYear und in_fiscalPeriod. Bis auf in_warehouseGuid sind alle Eingabeparameter Pflichtfelder.
Die Tabelle hat folgende Spalten:
app_inventory_ItemPeriodValues | |
Spaltennamen | Beschreibung |
in_valuationMethod | Diesem Eingabeparameter muss das Bewertungsverfahren zugewiesen werden.
· 1 für gleitender Durchschnittspreis · 2 für FIFO · 3 für Jahres-LIFO · 4 für LIFO Die Werte entsprechen dem, des ValueSets com.cisag.app.customizing.inventory. |
in_finOrganizationGuid | Diesem Eingabeparameter muss die GUID der Finanzorganisation zugewiesen werden. |
in_itemGuid | Diesem Eingabeparameter muss die GUID des Artikels zugewiesen werden. |
in_warehouseGuid | Diesem optionalen Eingabeparameter kann die GUID eines Lagerorts zugewiesen werden.
Wenn dieser Eingabeparameter nicht gesetzt wird, so werden die Bestandswerte über alle Lagerorte ermittelt. Der Wert wird in diesem Fall auf Guid.ZEROGUID gesetzt. |
in_fiscalYear | Diesem Eingabeparameter muss das Geschäftsjahr zugewiesen werden. |
in_fiscalPeriod | Diesem Eingabeparameter muss die Buchungsperiode zugewiesen werden. |
beginQuantity | Bestandsmenge zu Beginn der Periode. |
periodQuantity | Änderung der Bestandsmenge während der Periode. |
incomingQuantity | Zugangsmenge in der Periode. |
outgoingQuantity | Abgangsmenge in der Periode. |
beginValue | Bestandwert zu Beginn der Periode. |
periodValue | Änderung des Bestandswerts während der Periode. |
incomingValue | Zugangswert in der Periode. |
outgoingValue | Abgangswert in der Periode. |
unassignableValue | Nicht zurechenbarer Wert in der Periode. |
Hinweise:
Bei eingestellter Bewertungsebene „Artikel“ werden die Spalten beginValue, periodValue, incomingValue, outgoingValue und unassignableValue für die Lagerort-Instanzen auf Basis der vorliegenden Artikel-Periodeninstanz, dem jeweiligen Periodenbestandswert und Periodenbestand aliquotiert. Etwaige Differenzen beim Verteilen auf die vorliegenden Lagerortinstanzen werden auf den größten Wert auf-/abgeschlagen.
3.3 Datenbanktyp
Die virtuelle Funktion „Bestandswerte abfragen“ steht auf Datenbanken des Typs OLTP-Datenbank zur Verfügung.
3.4 Berechtigungen
Für die virtuelle Funktion „Bestandswerte abfragen“ ist das nachfolgende Business Entity relevant.
Bestandssummen je Periode
com.cisag.app.inventory.obj.InventoryOnhandPeriodSummary
Das Business Entity gehört zu folgender Business-Entity-Gruppe:
com.cisag.app.inventory.OrderData