I_StockQuantityCurrentValue_2

DDL: I_STOCKQUANTITYCURRENTVALUE_2 Type: view COMPOSITE

Current Stock Quantity and Value

I_StockQuantityCurrentValue_2 (Composite)

Package: Explore, extend and adapt the SAP S/4HANA Cloud Private Edition with built-in and side-by-side extension capabilities.

Supply Chain

I_StockQuantityCurrentValue_2 is a Composite CDS View (Cube) that provides data about "Current Stock Quantity and Value" in SAP S/4HANA. It reads from 1 data source (P_MatStkQtyValCur1_2) and exposes 39 fields with key fields Plant, StorageLocation, Batch, Supplier, SDDocument. It has 12 associations to related views.

SAP Help Documentation

CategoryCDS Views for Stock and Material Documents
Data CategoryCube
StatusReleased
Purpose
This CDS view retrieves the time-dependent records of quantity and value for a particular stock. This CDS view provides the prerequisites for answering the following business question: What is the current material stock quantity and the current material stock value for a particular stock at current prices? To help you decide which CDS view to use for your purposes, SAP has introduced the annotation ObjectModel.supportedCapabilities that indicates the most appropriate use cases for each CDS view. To find out what use cases are best supported by this CDS view, access the entry of the CDS view in the View Browser app and find the values for this annotation under the Annotation tab. For more information, see Supported Capabilities for CDS Views .

Prerequisites
Configuration You have configured the currency conversion rates to use the value in reporting currency.

Structure
Business Objects The business object Material Stock provides information about absolute stock and stock changes derived from the business object Material Document . Parameters The view has the following input parameter: Reporting Currency The parameters of the CDS view are as follows: P_DisplayCurrency used to set the display currency for stock values. Fields used for filtering The main filters are as follows: Product used to select the materials of interest. Plant used to select the plant of interest. ValuationAreaType used to determine the correct inventory prices. This field must be set at either 1 or 3 . The correct values can be determined from view F_ValuationAreaType . Not setting this filter will result in incorrect data. Some important measures are: Material stock quantity in material base unit Material stock value in company code currency Material stock value in reporting currency Further important fields Important fields in this view include the following: Field Name Description Measure or Attribute Comment Product Material in Respect of Which Stock is Managed Attribute Plant Plant Attribute StorageLocation Storage Location Attribute InventoryStockType Stock Type of Goods Movement Attribute InventorySpecialStockType Special Stock Type Attribute MatlWrhsStkQtyInMatlBaseUnit Stock Quantity in Base Unit of Measure Measure StockValueInCCCrcy Stock Value in Company Code Currency Measure StockValueInDisplayCurrency Stock Value in Display Currency Measure

Calculation of Stock Values
Calculation Methods Caution Note that the stock value calculation in MM-IM Fiori apps and CDS views cannot be compared with the stock value calculation in Finance (FI) or in Material Ledger (ML). Variances are possible because of specific calculation procedures (including rounding) within MM-IM compared to Finance and Material Ledger. In MM-IM, the stock values are calculated to enable aggregation across materials with different base units of measure and therefore have a rather informational character and can’t be used for legal reporting. Comparison of Calculation Methods MM-IM Calculation Method Finance and Material Ledger Calculation Method The system calculates the stock value at a certain date and independent of the reporting date you have chosen, as follows: stock value = stock quantity (of a particular stock type and/or a certain date) * current material price Note Note that the current material price is also a calculated price. There are two ways to calculate the current material price: total amount / total quantity by price / price unit Rounding can occur as a result of these types of calculation of the stock value. If you also want to sum up stock values across different levels (unrestricted stock of batches of a material, for example), existing rounding is also summed up (unrestricted stock of material on plant, for example). The system calculates the stock value as follows: stock value = sum of all values received/issued/changed up to a certain date Example Sample Code cast( round( cast(MatlWrhsStkQtyInMatlBaseUnit as abap.dec( 21, 3 )) * division( cast(_Cur

View on SAP Help Portal →

SAP API Hub

StateC1
Line of BusinessSupply Chain
Application ComponentMM-IM-VDM-SGM
CapabilitiesData Provider for Analytical Queries, Data Source in SQL Select, Data Source for Defining CDS Entities
PackageSupply Chain for SAP S/4HANA Cloud Private Edition

Documentation

Data Sources (1)

SourceAliasJoin Type
P_MatStkQtyValCur1_2 P_MatStkQtyValCur1_2 from

Parameters (1)

NameTypeDefault
P_DisplayCurrency nsdm_display_currency

Associations (12)

CardinalityTargetAliasCondition
[0..1] I_Product _Product $projection.Product = _Product.Product
[0..1] I_Plant _Plant $projection.Plant = _Plant.Plant
[0..1] I_StorageLocation _StorageLocation $projection.Plant = _StorageLocation.Plant and $projection.StorageLocation = _StorageLocation.StorageLocation
[0..1] I_Supplier _Supplier $projection.Supplier = _Supplier.Supplier
[0..1] I_Customer _Customer $projection.Customer = _Customer.Customer
[0..1] I_Supplier _SpecialStockIdfgStockOwner $projection.SpecialStockIdfgStockOwner = _SpecialStockIdfgStockOwner.Supplier
[0..1] I_InventorySpecialStockType _InventorySpecialStockType $projection.InventorySpecialStockType = _InventorySpecialStockType.InventorySpecialStockType
[0..1] I_InventoryStockType _InventoryStockType $projection.InventoryStockType = _InventoryStockType.InventoryStockType
[0..1] I_Producttype _ProductType $projection.ProductType = _ProductType.ProductType
[0..1] I_ProductGroup_2 _ProductGroup $projection.ProductGroup = _ProductGroup.ProductGroup
[1..1] I_UnitOfMeasure _UnitOfMeasure $projection.MaterialBaseUnit = _UnitOfMeasure.UnitOfMeasure
[1..1] I_Currency _Currency $projection.Currency = _Currency.Currency

Annotations (17)

NameValueLevelField
AbapCatalog.sqlViewName ISTOCKQUANVALC_2 view
AbapCatalog.compiler.compareFilter true view
AbapCatalog.preserveKey true view
AccessControl.authorizationCheck #CHECK view
AccessControl.personalData.blocking #NOT_REQUIRED view
EndUserText.label Current Stock Quantity and Value view
VDM.lifecycle.contract.type #PUBLIC_LOCAL_API view
ObjectModel.usageType.sizeCategory #XXL view
ObjectModel.usageType.serviceQuality #D view
ObjectModel.usageType.dataClass #TRANSACTIONAL view
ObjectModel.modelingPattern #ANALYTICAL_CUBE view
ClientHandling.algorithm #SESSION_VARIABLE view
VDM.viewType #COMPOSITE view
Analytics.dataCategory #CUBE view
Analytics.internalName #LOCAL view
Metadata.ignorePropagatedAnnotations true view
Metadata.allowExtensions true view

Fields (39)

KeyFieldSource TableSource FieldDescription
defaultValueEUR
CurrencykeyMaterialasProduct
KEY Plant Plant Valuation Area
KEY StorageLocation StorageLocation Storage Location
KEY Batch Batch Batch Number (Stock Identifier)
KEY Supplier Supplier Supplier for Special Stock
KEY SDDocument SDDocument Sales Order Number of Valuated Sales Order Stock
KEY SDDocumentItem SDDocumentItem Sales Order Item of Valuated Sales Order Stock
KEY WBSElementInternalID WBSElementInternalID Valuated Sales Order Stock WBS Element
KEY Customer Customer Customer for Special Stock
KEY SpecialStockIdfgStockOwner SpecialStockIdfgStockOwner Add. Supplier for Special Stock
KEY InventoryStockType InventoryStockType Stock Type of Goods Movement (Stock Identifier)
KEY InventorySpecialStockType InventorySpecialStockType Special Stock Type
KEY MaterialBaseUnit MaterialBaseUnit Base Unit of Measure
KEY Currency Currency Valuation Crcy
DisplayCurrency Display Currency
ValuationAreaType ValuationAreaType Valuation area setting
MatlWrhsStkQtyInMatlBaseUnit MatlWrhsStkQtyInMatlBaseUnit Stock Quantity in Base Unit of Measure
StockValueInCCCrcy StockValueInCCCrcy Stock Value in Company Code Currency
ProductGroup _Product ProductGroup Product Sold Group
ProductType _Product ProductType Product Type Group
ProductDescription
PlantName
InventoryStockTypeName
InventorySpecialStockTypeName
MaterialGroupName
MaterialTypeName
_UnitOfMeasure _UnitOfMeasure
_Product _Product
_Plant _Plant
_StorageLocation _StorageLocation
_Supplier _Supplier
_Customer _Customer
_SpecialStockIdfgStockOwner _SpecialStockIdfgStockOwner
_InventoryStockType _InventoryStockType
_InventorySpecialStockType _InventorySpecialStockType
_ProductType _ProductType
_ProductGroup _ProductGroup
_Currency _Currency

Derived SQL interpretation, reconstructed from the parsed view metadata (data sources, associations, and field mappings). SAP annotations are omitted and the structure is reformulated as SQL — this is a functional approximation, not the verbatim SAP source.

-- Derived SQL interpretation of CDS view I_StockQuantityCurrentValue_2.
-- Reconstructed from parsed metadata (data sources, associations, fields).
-- SAP annotations are omitted and the structure is reformulated as SQL;
-- this is a functional approximation, not the verbatim SAP source. Some join
-- conditions may be unavailable and a few CDS constructs are kept as-is.
-- Parameters: P_DisplayCurrency : nsdm_display_currency

CREATE VIEW I_StockQuantityCurrentValue_2 AS
SELECT
  defaultValue: 'EUR' AS defaultValueEUR,
  valueHelpDefinition: [{ entity: { name:'I_Currency', element:'Currency' AS CurrencykeyMaterialasProduct,
  Plant,
  StorageLocation,
  Batch,
  Supplier,
  SDDocument,
  SDDocumentItem,
  WBSElementInternalID,
  Customer,
  SpecialStockIdfgStockOwner,
  InventoryStockType,
  InventorySpecialStockType,
  MaterialBaseUnit,
  Currency,
  cast(:P_DisplayCurrency as nsdm_display_currency preserving type ) AS DisplayCurrency,
  ValuationAreaType,
  MatlWrhsStkQtyInMatlBaseUnit,
  StockValueInCCCrcy,
  _Product.ProductGroup AS ProductGroup,
  _Product.ProductType AS ProductType
FROM P_MatStkQtyValCur1_2
LEFT OUTER JOIN I_Product AS _Product ON Product = _Product.Product  -- association [0..1]
LEFT OUTER JOIN I_Plant AS _Plant ON Plant = _Plant.Plant  -- association [0..1]
LEFT OUTER JOIN I_StorageLocation AS _StorageLocation ON Plant = _StorageLocation.Plant AND StorageLocation = _StorageLocation.StorageLocation  -- association [0..1]
LEFT OUTER JOIN I_Supplier AS _Supplier ON Supplier = _Supplier.Supplier  -- association [0..1]
LEFT OUTER JOIN I_Customer AS _Customer ON Customer = _Customer.Customer  -- association [0..1]
LEFT OUTER JOIN I_Supplier AS _SpecialStockIdfgStockOwner ON SpecialStockIdfgStockOwner = _SpecialStockIdfgStockOwner.Supplier  -- association [0..1]
LEFT OUTER JOIN I_InventorySpecialStockType AS _InventorySpecialStockType ON InventorySpecialStockType = _InventorySpecialStockType.InventorySpecialStockType  -- association [0..1]
LEFT OUTER JOIN I_InventoryStockType AS _InventoryStockType ON InventoryStockType = _InventoryStockType.InventoryStockType  -- association [0..1]
LEFT OUTER JOIN I_Producttype AS _ProductType ON ProductType = _ProductType.ProductType  -- association [0..1]
LEFT OUTER JOIN I_ProductGroup_2 AS _ProductGroup ON ProductGroup = _ProductGroup.ProductGroup  -- association [0..1]
LEFT OUTER JOIN I_UnitOfMeasure AS _UnitOfMeasure ON MaterialBaseUnit = _UnitOfMeasure.UnitOfMeasure  -- association [1..1]
LEFT OUTER JOIN I_Currency AS _Currency ON Currency = _Currency.Currency  -- association [1..1]
;