I_ProductStorageLocation
Product Storage Location
I_ProductStorageLocation is a Basic CDS View that provides data about "Product Storage Location" in SAP S/4HANA. It reads from 1 data source (nsdm_e_mard) and exposes 27 fields with key fields Product, Plant, StorageLocation. It has 5 associations to related views. Part of development package VDM_MD_PRODUCT_DDIC.
Data Sources (1)
| Source | Alias | Join Type |
|---|---|---|
| nsdm_e_mard | StorageLocation | from |
Associations (5)
| Cardinality | Target | Alias | Condition |
|---|---|---|---|
| [1..1] | I_Product | _Product | $projection.Product = _Product.Product |
| [0..1] | E_Productstoragelocation | _ActiveExtension | $projection.Product = _ActiveExtension.Product and $projection.Plant = _ActiveExtension.Plant and $projection.StorageLocation = _ActiveExtension.StorageLocation |
| [0..*] | I_MaterialStock_2 | _MaterialStock | $projection.Product = _MaterialStock.Material and $projection.Plant = _MaterialStock.Plant |
| [0..*] | I_MaterialStock | _Stock | $projection.Product = _Stock.Material and $projection.Plant = _Stock.Plant and $projection.StorageLocation = _Stock.StorageLocation |
| [1..1] | I_StorageLocation | _StorageLocation | $projection.Plant = _StorageLocation.Plant and $projection.StorageLocation = _StorageLocation.StorageLocation |
Annotations (11)
| Name | Value | Level | Field |
|---|---|---|---|
| AbapCatalog.sqlViewName | IPRDSTORAGELOC | view | |
| VDM.viewType | #BASIC | view | |
| VDM.lifecycle.status | #DEPRECATED | view | |
| VDM.lifecycle.successor | I_ProductStorageLocationBasic | view | |
| AccessControl.authorizationCheck | #CHECK | view | |
| EndUserText.label | Product Storage Location | view | |
| ObjectModel.usageType.serviceQuality | #C | view | |
| ObjectModel.usageType.sizeCategory | #XL | view | |
| ObjectModel.usageType.dataClass | #MIXED | view | |
| ClientHandling.algorithm | #SESSION_VARIABLE | view | |
| Metadata.ignorePropagatedAnnotations | true | view |
Fields (27)
| Key | Field | Source Table | Source Field | Description |
|---|---|---|---|---|
| KEY | Product | nsdm_e_mard | matnr | |
| KEY | Plant | nsdm_e_mard | werks | |
| KEY | StorageLocation | nsdm_e_mard | lgort | |
| WarehouseStorageBin | nsdm_e_mard | lgpbe | ||
| MaintenanceStatus | nsdm_e_mard | pstat | ||
| IsMarkedForDeletion | nsdm_e_mard | lvorm | ||
| PhysicalInventoryBlockInd | nsdm_e_mard | sperr | ||
| CreationDate | nsdm_e_mard | ersda | ||
| DateOfLastPostedCntUnRstrcdStk | nsdm_e_mard | dlinl | ||
| InventoryCorrectionFactor | nsdm_e_mard | bskrf | ||
| InvtryRestrictedUseStockInd | nsdm_e_mard | kzile | ||
| InvtryCurrentYearStockInd | nsdm_e_mard | kzill | ||
| InvtryQualInspCurrentYrStkInd | nsdm_e_mard | kzilq | ||
| InventoryBlockStockInd | nsdm_e_mard | kzils | ||
| InvtryRestStockPrevPeriodInd | nsdm_e_mard | kzvle | ||
| InventoryStockPrevPeriod | nsdm_e_mard | kzvll | ||
| InvtryStockQltyInspPrevPeriod | nsdm_e_mard | kzvlq | ||
| HasInvtryBlockStockPrevPeriod | nsdm_e_mard | kzvls | ||
| FiscalYearCurrentPeriod | nsdm_e_mard | lfgja | ||
| FiscalMonthCurrentPeriod | nsdm_e_mard | lfmon | ||
| FiscalYearCurrentInvtryPeriod | nsdm_e_mard | mdjin | ||
| IsActiveEntity | ||||
| LeanWrhsManagementPickingArea | nsdm_e_mard | lwmkb | ||
| _Product | _Product | |||
| _Stock | _Stock | |||
| _StorageLocation | _StorageLocation | |||
| _MaterialStock | _MaterialStock |
// Product Storage Location (active)
@AbapCatalog.sqlViewName: 'IPRDSTORAGELOC'
@VDM:{
viewType: #BASIC,
lifecycle: {
status: #DEPRECATED,
successor: 'I_ProductStorageLocationBasic'
}
}
@AccessControl.authorizationCheck: #CHECK
@EndUserText.label: 'Product Storage Location'
// performance related
@ObjectModel.usageType.serviceQuality: #C
@ObjectModel.usageType.sizeCategory : #XL
@ObjectModel.usageType.dataClass: #MIXED
@ClientHandling.algorithm: #SESSION_VARIABLE
@Metadata.ignorePropagatedAnnotations: true
@ObjectModel.supportedCapabilities: [ #SQL_DATA_SOURCE,
#CDS_MODELING_DATA_SOURCE,
#CDS_MODELING_ASSOCIATION_TARGET
]
define view I_ProductStorageLocation
as select from nsdm_e_mard as StorageLocation
association [1..1] to I_Product as _Product on $projection.Product = _Product.Product
association [0..1] to E_Productstoragelocation as _ActiveExtension on $projection.Product = _ActiveExtension.Product
and $projection.Plant = _ActiveExtension.Plant
and $projection.StorageLocation = _ActiveExtension.StorageLocation
association [0..*] to I_MaterialStock_2 as _MaterialStock on $projection.Product = _MaterialStock.Material
and $projection.Plant = _MaterialStock.Plant
association [0..*] to I_MaterialStock as _Stock on $projection.Product = _Stock.Material
and $projection.Plant = _Stock.Plant
and $projection.StorageLocation = _Stock.StorageLocation
//Start: enterprise search help (ESH) related associations------------------------------------------------------------------------------------
//These associations are required in I_ProductStorageLocation as N_ProductStorageLocation has these associations
//There can be no associations in N_ProductStorageLocation which are not present in I_ProductStorageLocation
association [1..1] to I_StorageLocation as _StorageLocation on $projection.Plant = _StorageLocation.Plant
and $projection.StorageLocation = _StorageLocation.StorageLocation
//End of ESH related associations-------------------------------------------------------------------------------------------------------------
{
key StorageLocation.matnr as Product,
key StorageLocation.werks as Plant,
key StorageLocation.lgort as StorageLocation,
StorageLocation.lgpbe as WarehouseStorageBin,
StorageLocation.pstat as MaintenanceStatus,
StorageLocation.lvorm as IsMarkedForDeletion,
StorageLocation.sperr as PhysicalInventoryBlockInd,
StorageLocation.ersda as CreationDate,
StorageLocation.dlinl as DateOfLastPostedCntUnRstrcdStk,
StorageLocation.bskrf as InventoryCorrectionFactor,
StorageLocation.kzile as InvtryRestrictedUseStockInd,
StorageLocation.kzill as InvtryCurrentYearStockInd,
StorageLocation.kzilq as InvtryQualInspCurrentYrStkInd,
StorageLocation.kzils as InventoryBlockStockInd,
StorageLocation.kzvle as InvtryRestStockPrevPeriodInd,
StorageLocation.kzvll as InventoryStockPrevPeriod,
StorageLocation.kzvlq as InvtryStockQltyInspPrevPeriod,
StorageLocation.kzvls as HasInvtryBlockStockPrevPeriod,
StorageLocation.lfgja as FiscalYearCurrentPeriod,
StorageLocation.lfmon as FiscalMonthCurrentPeriod,
StorageLocation.mdjin as FiscalYearCurrentInvtryPeriod,
cast( 'X' as sdraft_is_active preserving type ) as IsActiveEntity, // to enbale extensibility in Draft 2.0
// StorageLocation.labst as VltdUnrestrictedUseStkQty -- deprecated field ATC error 26.4.16
// New fields from MDG model, as part of unified API development
StorageLocation.lwmkb as LeanWrhsManagementPickingArea,
_Product,
@API.element.releaseState: #DEPRECATED
@API.element.successor: '_MaterialStock'
_Stock,
//Start of ESH related associations---------------------------
_StorageLocation,
//End of ESH related associations------------------------------
_MaterialStock
}
Learn More
- What Is a CDS View in SAP S/4HANA?
- Types of CDS Views: Basic, Composite, Consumption, and Transactional
- SAP Tables vs CDS Views — Key Differences
- Understanding Data Lineage in SAP S/4HANA
- VDM (Virtual Data Model) in SAP S/4HANA Explained
- CDS View Annotations — A Complete Guide
- 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