I_ProductStorageLocationBasic
Product Storage Location
I_ProductStorageLocationBasic is a Basic CDS View (Dimension) that provides data about "Product Storage Location" in SAP S/4HANA. It reads from 1 data source (P_ProductStorageLocationBasic) and exposes 25 fields with key fields Product, Plant, StorageLocation. It has 5 associations to related views.
Data Sources (1)
| Source | Alias | Join Type |
|---|---|---|
| P_ProductStorageLocationBasic | StorageLocation | from |
Associations (5)
| Cardinality | Target | Alias | Condition |
|---|---|---|---|
| [1..1] | I_Product | _Product | $projection.Product = _Product.Product |
| [0..1] | E_Productstoragelocation | _ProdStorLocExt | $projection.Product = _ProdStorLocExt.Product and $projection.Plant = _ProdStorLocExt.Plant and $projection.StorageLocation = _ProdStorLocExt.StorageLocation |
| [0..*] | I_MaterialStock | _Stock | $projection.Product = _Stock.Material and $projection.Plant = _Stock.Plant and $projection.StorageLocation = _Stock.StorageLocation |
| [1..1] | I_Plant | _Plant | $projection.Plant = _Plant.Plant |
| [1..1] | I_StorageLocation | _StorageLocation | $projection.Plant = _StorageLocation.Plant and $projection.StorageLocation = _StorageLocation.StorageLocation |
Annotations (17)
| Name | Value | Level | Field |
|---|---|---|---|
| AbapCatalog.sqlViewName | IPRDSTORLOCBASIC | view | |
| AbapCatalog.compiler.compareFilter | true | view | |
| AbapCatalog.preserveKey | true | view | |
| AccessControl.authorizationCheck | #CHECK | view | |
| ClientHandling.algorithm | #SESSION_VARIABLE | view | |
| EndUserText.label | Product Storage Location | view | |
| Metadata.ignorePropagatedAnnotations | true | view | |
| Metadata.allowExtensions | true | view | |
| ObjectModel.usageType.serviceQuality | #A | view | |
| ObjectModel.usageType.sizeCategory | #XL | view | |
| ObjectModel.usageType.dataClass | #MASTER | view | |
| ObjectModel.representativeKey | Product | view | |
| VDM.viewType | #BASIC | view | |
| Analytics.dataCategory | #DIMENSION | view | |
| Analytics.dataExtraction.enabled | true | view | |
| Analytics.dataExtraction.delta.changeDataCapture.automatic | true | view | |
| Analytics.internalName | #LOCAL | view |
Fields (25)
| Key | Field | Source Table | Source Field | Description |
|---|---|---|---|---|
| KEY | Product | Product | ||
| KEY | Plant | Plant | ||
| KEY | StorageLocation | StorageLocation | ||
| WarehouseStorageBin | WarehouseStorageBin | |||
| MaintenanceStatus | MaintenanceStatus | |||
| IsMarkedForDeletion | IsMarkedForDeletion | |||
| PhysicalInventoryBlockInd | PhysicalInventoryBlockInd | |||
| CreationDate | CreationDate | |||
| DateOfLastPostedCntUnRstrcdStk | DateOfLastPostedCntUnRstrcdStk | |||
| InventoryCorrectionFactor | InventoryCorrectionFactor | |||
| InvtryRestrictedUseStockInd | InvtryRestrictedUseStockInd | |||
| InvtryCurrentYearStockInd | InvtryCurrentYearStockInd | |||
| InvtryQualInspCurrentYrStkInd | InvtryQualInspCurrentYrStkInd | |||
| InventoryBlockStockInd | InventoryBlockStockInd | |||
| InvtryRestStockPrevPeriodInd | InvtryRestStockPrevPeriodInd | |||
| InventoryStockPrevPeriod | InventoryStockPrevPeriod | |||
| InvtryStockQltyInspPrevPeriod | InvtryStockQltyInspPrevPeriod | |||
| HasInvtryBlockStockPrevPeriod | HasInvtryBlockStockPrevPeriod | |||
| FiscalYearCurrentInvtryPeriod | FiscalYearCurrentInvtryPeriod | |||
| LeanWrhsManagementPickingArea | LeanWrhsManagementPickingArea | |||
| IsActiveEntity | ||||
| _Product | _Product | |||
| _Stock | _Stock | |||
| _Plant | _Plant | |||
| _StorageLocation | _StorageLocation |
@AbapCatalog:{
sqlViewName: 'IPRDSTORLOCBASIC',
compiler.compareFilter: true,
preserveKey: true
}
@AccessControl.authorizationCheck: #CHECK
@ClientHandling.algorithm: #SESSION_VARIABLE
@EndUserText.label: 'Product Storage Location'
@Metadata.ignorePropagatedAnnotations:true
@Metadata.allowExtensions:true
@ObjectModel:{
usageType.serviceQuality: #A,
usageType.sizeCategory : #XL,
usageType.dataClass: #MASTER,
representativeKey: 'Product'
}
@VDM.viewType: #BASIC
@Analytics:{
dataCategory: #DIMENSION,
dataExtraction: {
enabled: true,
delta.changeDataCapture.automatic: true
},
internalName: #LOCAL
}
@ObjectModel.supportedCapabilities: [ #SQL_DATA_SOURCE,
#CDS_MODELING_DATA_SOURCE,
#CDS_MODELING_ASSOCIATION_TARGET,
#EXTRACTION_DATA_SOURCE
]
// Scope of this view is V_MARD_MD no aggreated fields should be added to this view.
define view I_ProductStorageLocationBasic
as select from P_ProductStorageLocationBasic as StorageLocation
association [1..1] to I_Product as _Product on $projection.Product = _Product.Product
association [0..1] to E_Productstoragelocation as _ProdStorLocExt on $projection.Product = _ProdStorLocExt.Product
and $projection.Plant = _ProdStorLocExt.Plant
and $projection.StorageLocation = _ProdStorLocExt.StorageLocation
association [0..*] to I_MaterialStock as _Stock on $projection.Product = _Stock.Material
and $projection.Plant = _Stock.Plant
and $projection.StorageLocation = _Stock.StorageLocation
association [1..1] to I_Plant as _Plant on $projection.Plant = _Plant.Plant
//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 Product,
@ObjectModel.foreignKey.association: '_Plant'
key Plant,
@ObjectModel.foreignKey.association: '_StorageLocation'
@ObjectModel.sapObjectNodeTypeReference:'StorageLocation'
key StorageLocation,
WarehouseStorageBin,
MaintenanceStatus,
IsMarkedForDeletion,
PhysicalInventoryBlockInd,
CreationDate,
DateOfLastPostedCntUnRstrcdStk,
InventoryCorrectionFactor,
InvtryRestrictedUseStockInd,
InvtryCurrentYearStockInd,
InvtryQualInspCurrentYrStkInd,
InventoryBlockStockInd,
InvtryRestStockPrevPeriodInd,
InventoryStockPrevPeriod,
InvtryStockQltyInspPrevPeriod,
HasInvtryBlockStockPrevPeriod,
FiscalYearCurrentInvtryPeriod,
LeanWrhsManagementPickingArea,
cast( 'X' as sdraft_is_active preserving type ) as IsActiveEntity,
_Product,
_Stock,
_Plant,
_StorageLocation //ESH related associations
}
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