I_StockQuantityCurrentValue_2
Current Stock Quantity and Value
I_StockQuantityCurrentValue_2 (Composite)
Package: Explore, extend and adapt the SAP S/4HANA Cloud Public 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. Part of development package MM_IM_VDM_STOCK.
SAP Help Documentation
| Category | CDS Views for Stock and Material Documents |
|---|---|
| Data Category | Cube |
| Status | Released |
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
SAP API Hub
| Category | Composite |
|---|---|
| State | C1 |
| Line of Business | Supply Chain |
| Application Component | MM-IM-VDM-SGM-2CL |
| Capabilities | Data Source in SQL Select,Data Provider for Analytical Queries,Data Source for Defining CDS Entities |
| Extensible (Key User) | No |
| Extensible (Developer) | No |
| Release State (Key User) | Released |
| Release State (Developer) | Released |
| Package | Supply Chain for SAP S/4HANA Cloud Public Edition |
| Description | <p>This CDS view retrieves the time-dependent records of quantity and value for a particular stock.</p> This CDS view provides the prerequisites for answering the following business question:<ul> <li> <p>What is the current material stock quantity and the current material stock value for a particular stock at current prices?</p> </li> </ul> <p>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.</p> |
Documentation
- Analytics with CDS Views — Build Analytics for S/4HANA Cloud Public Edition ABAP CDS views replicated to SAP Cloud Platform
- CDS Views on SAP Business Accelerator Hub — Explore SAP S/4HANA Cloud Public Edition CDS Views on SAP Business Accelerator Hub
- Create CDS View as API — Create CDS views in SAP S/4HANA Cloud Public Edition and consume them as APIs
- Custom CDS Views — Access data using a Custom Core Data Service view (Custom CDS view)
- Custom Communication Scenarios — Create custom communication scenarios to configure custom communication arrangement
- Key User Extensibility Tools — The Key User Extensibility Tools of S/4HANA
- SAP S/4HANA Extensibility — SAP S/4HANA Extensibility Tutorial
- VDM View Types — The Virtual Data Model in SAP S/4HANA Cloud Public Edition
- View Browser — Search, browse and tag CDS Views
Data Sources (1)
| Source | Alias | Join Type |
|---|---|---|
| P_MatStkQtyValCur1_2 | P_MatStkQtyValCur1_2 | from |
Parameters (1)
| Name | Type | Default |
|---|---|---|
| P_DisplayCurrency | nsdm_display_currency |
Associations (12)
| Cardinality | Target | Alias | Condition |
|---|---|---|---|
| [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 (14)
| Name | Value | Level | Field |
|---|---|---|---|
| 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 | |
| VDM.viewType | #COMPOSITE | view | |
| Analytics.dataCategory | #CUBE | view | |
| Analytics.internalName | #LOCAL | view | |
| Analytics.technicalName | ISTOCKQUANVALC_2 | view | |
| Metadata.ignorePropagatedAnnotations | true | view | |
| Metadata.allowExtensions | true | view |
Fields (39)
| Key | Field | Source Table | Source Field | Description |
|---|---|---|---|---|
| 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($parameters.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]
;
Learn More
- VDM (Virtual Data Model) in SAP S/4HANA Explained
- Types of CDS Views: Basic, Composite, Consumption, and Transactional
- CDS View Annotations — A Complete Guide
- What Is a CDS View in SAP S/4HANA?
- SAP Tables vs CDS Views — Key Differences
- Understanding Data Lineage in SAP S/4HANA
- CDS View Field Mapping and Associations
- Understanding the SAP S/4HANA Data Model
- CDS View Extensions and Custom Fields in SAP S/4HANA
- Released APIs and Stability Contracts in SAP S/4HANA
- BSEG to ACDOCA: The Universal Journal Migration
- Business Partner Migration: KNA1/LFA1 to BUT000
- Material Document Migration: MSEG/MKPF to MATDOC
- How to Find the Right CDS View for an SAP Table
- BW Extractor to CDS View Migration Guide
- S/4HANA CDS View Deprecation: What You Need to Know
- ABAP CDS View Tutorial — From Basics to Real-World Examples
- RAP and CDS Views — Building Transactional Apps in SAP S/4HANA
- Sales Document Status Migration: VBUP/VBUK Removal in S/4HANA
- CO Tables in S/4HANA: COEP, COBK, COSS, COSP to ACDOCA