I_ProductionVersionBasic
Production Version Basic
I_ProductionVersionBasic is a Basic CDS View (Dimension) that provides data about "Production Version Basic" in SAP S/4HANA. It reads from 1 data source (mkal) and exposes 60 fields with key fields Product, Plant, ProductionVersion. It has 19 associations to related views. Part of development package VDM_PP_MD_PRV.
Data Sources (1)
| Source | Alias | Join Type |
|---|---|---|
| mkal | mkal | from |
Associations (19)
| Cardinality | Target | Alias | Condition |
|---|---|---|---|
| [1..1] | I_Product | _Product | $projection.Product = _Product.Product |
| [1..1] | I_Plant | _Plant | $projection.Plant = _Plant.Plant |
| [1..1] | I_ProductPlant | _ProductPlant | $projection.Product = _ProductPlant.Product and $projection.Plant = _ProductPlant.Plant |
| [0..1] | I_ProductPlantBasic | _ProductPlant2 | $projection.Plant = _ProductPlant2.Plant and $projection.Product = _ProductPlant2.Product |
| [0..1] | I_Product | _MainProduct | $projection.MainProduct = _MainProduct.Product |
| [0..1] | I_Product | _OriglBatchReferenceMaterial | $projection.OriginalBatchReferenceMaterial = _OriglBatchReferenceMaterial.Product |
| [1..1] | I_BillOfOperationsType | _BillOfOperationsType | $projection.BillOfOperationsType = _BillOfOperationsType.BillOfOperationsType |
| [1..1] | I_BillOfOperationsGroup | _BillOfOperationsGroup | $projection.BillOfOperationsType = _BillOfOperationsGroup.BillOfOperationsType and $projection.BillOfOperationsGroup = _BillOfOperationsGroup.BillOfOperationsGroup |
| [1..1] | I_BillOfOperations | _BillOfOperations | $projection.BillOfOperationsType = _BillOfOperations.BillOfOperationsType and $projection.BillOfOperationsGroup = _BillOfOperations.BillOfOperationsGroup and $projection.BillOfOperationsVariant = _BillOfOperations.BillOfOperationsVariant |
| [0..1] | I_ProductionLine | _ProductionLine | $projection.Plant = _ProductionLine.Plant and $projection.ProductionLine = _ProductionLine.ProductionLine |
| [0..1] | I_ProductionVersionGroup | _ProductionVersionGroup | $projection.Plant = _ProductionVersionGroup.Plant and $projection.ProductionVersionGroup = _ProductionVersionGroup.ProductionVersionGroup |
| [0..1] | I_ProductionSupplyArea | _ProductionSupplyArea | $projection.Plant = _ProductionSupplyArea.Plant and $projection.ProductionSupplyArea = _ProductionSupplyArea.ProductionSupplyArea |
| [0..1] | I_ProductionSupplyArea | _TargetProductionSupplyArea | $projection.Plant = _TargetProductionSupplyArea.Plant and $projection.TargetProductionSupplyArea = _TargetProductionSupplyArea.ProductionSupplyArea |
| [0..1] | I_StorageLocation | _IssuingStorageLocation | $projection.Plant = _IssuingStorageLocation.Plant and $projection.IssuingStorageLocation = _IssuingStorageLocation.StorageLocation |
| [0..1] | I_StorageLocation | _ReceivingStorageLocation | $projection.Plant = _ReceivingStorageLocation.Plant and $projection.ReceivingStorageLocation = _ReceivingStorageLocation.StorageLocation |
| [0..1] | I_MatlCostApportionmentStruc | _MatlCostApportionmentStruc | $projection.Material = _MatlCostApportionmentStruc.Material and $projection.Plant = _MatlCostApportionmentStruc.Plant and $projection.MaterialCostApportionmentStruc = _MatlCostApportionmentStruc.MaterialCostApportionmentStruc |
| [0..1] | I_MRPQuantityDistributionKey | _QuantityDistributionKey | $projection.Plant = _QuantityDistributionKey.Plant and $projection.QuantityDistributionKey = _QuantityDistributionKey.QuantityDistributionKey |
| [0..1] | I_UnitOfMeasure | _MaterialBaseUnit | $projection.MaterialBaseUnit = _MaterialBaseUnit.UnitOfMeasure |
| [1..1] | I_Material | _Material | $projection.Material = _Material.Material |
Annotations (21)
| Name | Value | Level | Field |
|---|---|---|---|
| AbapCatalog.sqlViewName | IPRODNVERSNBASC | view | |
| AbapCatalog.compiler.compareFilter | true | view | |
| AbapCatalog.preserveKey | true | view | |
| AccessControl.authorizationCheck | #CHECK | view | |
| AccessControl.personalData.blocking | #NOT_REQUIRED | view | |
| Analytics.dataCategory | #DIMENSION | view | |
| Analytics.internalName | #LOCAL | view | |
| ClientHandling.algorithm | #SESSION_VARIABLE | view | |
| ClientHandling.type | #CLIENT_DEPENDENT | view | |
| Consumption.ranked | true | view | |
| Metadata.allowExtensions | true | view | |
| Metadata.ignorePropagatedAnnotations | true | view | |
| ObjectModel.modelingPattern | #ANALYTICAL_DIMENSION | view | |
| ObjectModel.representativeKey | ProductionVersion | view | |
| ObjectModel.usageType.serviceQuality | #A | view | |
| ObjectModel.usageType.sizeCategory | #L | view | |
| ObjectModel.usageType.dataClass | #MASTER | view | |
| Search.searchable | true | view | |
| VDM.lifecycle.contract.type | #PUBLIC_LOCAL_API | view | |
| VDM.viewType | #BASIC | view | |
| EndUserText.label | Production Version Basic | view |
Fields (60)
| Key | Field | Source Table | Source Field | Description |
|---|---|---|---|---|
| KEY | Product | |||
| KEY | Plant | werks | ||
| KEY | ProductionVersion | verid | ||
| ProductionVersionText | text1 | |||
| Material | matnr | |||
| BillOfOperationsType | ||||
| BillOfOperationsGroup | ||||
| BillOfOperationsVariant | ||||
| BillOfMaterialVariantUsage | stlan | |||
| BillOfMaterialVariant | stlal | |||
| mdv01asProductionLine | ||||
| ProductionSupplyArea | ||||
| ProductionVersionGroup | ||||
| MainProduct | ||||
| MaterialCostApportionmentStruc | csplt | |||
| IssuingStorageLocation | elpro | |||
| ReceivingStorageLocation | alort | |||
| OriginalBatchReferenceMaterial | ||||
| QuantityDistributionKey | verto | |||
| ProductionVersionStatus | prfg_f | |||
| ProductionVersionLastCheckDate | ||||
| RateBasedPlanningStatus | ||||
| PreliminaryPlanningStatus | ||||
| BOMCheckStatus | ||||
| ValidityStartDate | ||||
| ValidityEndDate | ||||
| ProdnVersIsAllowedForRptvMfg | serkz | |||
| HasVersionCtrldBOMAndRouting | versind | |||
| PlanningAndExecutionBOMIsDiff | diffplanexemstr | |||
| ExecBillOfMaterialVariantUsage | exe_stlan | |||
| ExecBillOfMaterialVariant | exe_stlal | |||
| ExecBillOfOperationsType | exe_plnty | |||
| ExecBillOfOperationsGroup | exe_plnnr | |||
| ExecBillOfOperationsVariant | exe_alnal | |||
| Warehouse | ewm_lgnum | |||
| DestinationStorageBin | ewm_lgpla | |||
| TargetProductionSupplyArea | ||||
| MaterialBaseUnit | _Product | BaseUnit | ||
| MaterialMinLotSizeQuantity | bstmi | |||
| MaterialMaxLotSizeQuantity | bstma | |||
| DistributionKey | verto | |||
| _Product | _Product | |||
| _ProductPlant | _ProductPlant | |||
| _ProductPlant2 | _ProductPlant2 | |||
| _Plant | _Plant | |||
| _BillOfOperationsType | _BillOfOperationsType | |||
| _BillOfOperationsGroup | _BillOfOperationsGroup | |||
| _BillOfOperations | _BillOfOperations | |||
| _ProductionLine | _ProductionLine | |||
| _ProductionVersionGroup | _ProductionVersionGroup | |||
| _ProductionSupplyArea | _ProductionSupplyArea | |||
| _TargetProductionSupplyArea | _TargetProductionSupplyArea | |||
| _MainProduct | _MainProduct | |||
| _OriglBatchReferenceMaterial | _OriglBatchReferenceMaterial | |||
| _IssuingStorageLocation | _IssuingStorageLocation | |||
| _ReceivingStorageLocation | _ReceivingStorageLocation | |||
| _MatlCostApportionmentStruc | _MatlCostApportionmentStruc | |||
| _QuantityDistributionKey | _QuantityDistributionKey | |||
| _Material | _Material | |||
| _MaterialBaseUnit | _MaterialBaseUnit |
@AbapCatalog.sqlViewName: 'IPRODNVERSNBASC'
@AbapCatalog.compiler.compareFilter: true
@AbapCatalog.preserveKey: true
@AccessControl.authorizationCheck: #CHECK
@AccessControl.personalData.blocking: #NOT_REQUIRED
@Analytics.dataCategory: #DIMENSION
@Analytics.internalName: #LOCAL
@ClientHandling.algorithm: #SESSION_VARIABLE
@ClientHandling.type: #CLIENT_DEPENDENT
@Consumption.ranked: true
@Metadata.allowExtensions: true
@Metadata.ignorePropagatedAnnotations: true
@ObjectModel.modelingPattern: #ANALYTICAL_DIMENSION
@ObjectModel.supportedCapabilities: [#ANALYTICAL_DIMENSION, #CDS_MODELING_ASSOCIATION_TARGET, #SQL_DATA_SOURCE, #CDS_MODELING_DATA_SOURCE, #SEARCHABLE_ENTITY]
@ObjectModel.representativeKey: 'ProductionVersion'
@ObjectModel.usageType: {serviceQuality: #A, sizeCategory: #L, dataClass: #MASTER}
@Search.searchable: true
@VDM.lifecycle.contract.type: #PUBLIC_LOCAL_API
@VDM.viewType: #BASIC
@EndUserText.label: 'Production Version Basic'
define view I_ProductionVersionBasic
as select from mkal
association [1..1] to I_Product as _Product on $projection.Product = _Product.Product
association [1..1] to I_Plant as _Plant on $projection.Plant = _Plant.Plant
association [1..1] to I_ProductPlant as _ProductPlant on $projection.Product = _ProductPlant.Product
and $projection.Plant = _ProductPlant.Plant
association [0..1] to I_ProductPlantBasic as _ProductPlant2 on $projection.Plant = _ProductPlant2.Plant
and $projection.Product = _ProductPlant2.Product
association [0..1] to I_Product as _MainProduct on $projection.MainProduct = _MainProduct.Product
association [0..1] to I_Product as _OriglBatchReferenceMaterial on $projection.OriginalBatchReferenceMaterial = _OriglBatchReferenceMaterial.Product
association [1..1] to I_BillOfOperationsType as _BillOfOperationsType on $projection.BillOfOperationsType = _BillOfOperationsType.BillOfOperationsType
association [1..1] to I_BillOfOperationsGroup as _BillOfOperationsGroup on $projection.BillOfOperationsType = _BillOfOperationsGroup.BillOfOperationsType
and $projection.BillOfOperationsGroup = _BillOfOperationsGroup.BillOfOperationsGroup
association [1..1] to I_BillOfOperations as _BillOfOperations on $projection.BillOfOperationsType = _BillOfOperations.BillOfOperationsType
and $projection.BillOfOperationsGroup = _BillOfOperations.BillOfOperationsGroup
and $projection.BillOfOperationsVariant = _BillOfOperations.BillOfOperationsVariant
association [0..1] to I_ProductionLine as _ProductionLine on $projection.Plant = _ProductionLine.Plant
and $projection.ProductionLine = _ProductionLine.ProductionLine
association [0..1] to I_ProductionVersionGroup as _ProductionVersionGroup on $projection.Plant = _ProductionVersionGroup.Plant
and $projection.ProductionVersionGroup = _ProductionVersionGroup.ProductionVersionGroup
association [0..1] to I_ProductionSupplyArea as _ProductionSupplyArea on $projection.Plant = _ProductionSupplyArea.Plant
and $projection.ProductionSupplyArea = _ProductionSupplyArea.ProductionSupplyArea
association [0..1] to I_ProductionSupplyArea as _TargetProductionSupplyArea on $projection.Plant = _TargetProductionSupplyArea.Plant
and $projection.TargetProductionSupplyArea = _TargetProductionSupplyArea.ProductionSupplyArea
association [0..1] to I_StorageLocation as _IssuingStorageLocation on $projection.Plant = _IssuingStorageLocation.Plant
and $projection.IssuingStorageLocation = _IssuingStorageLocation.StorageLocation
association [0..1] to I_StorageLocation as _ReceivingStorageLocation on $projection.Plant = _ReceivingStorageLocation.Plant
and $projection.ReceivingStorageLocation = _ReceivingStorageLocation.StorageLocation
association [0..1] to I_MatlCostApportionmentStruc as _MatlCostApportionmentStruc on $projection.Material = _MatlCostApportionmentStruc.Material
and $projection.Plant = _MatlCostApportionmentStruc.Plant
and $projection.MaterialCostApportionmentStruc = _MatlCostApportionmentStruc.MaterialCostApportionmentStruc
association [0..1] to I_MRPQuantityDistributionKey as _QuantityDistributionKey on $projection.Plant = _QuantityDistributionKey.Plant
and $projection.QuantityDistributionKey = _QuantityDistributionKey.QuantityDistributionKey
association [0..1] to I_UnitOfMeasure as _MaterialBaseUnit on $projection.MaterialBaseUnit = _MaterialBaseUnit.UnitOfMeasure
association [1..1] to I_Material as _Material on $projection.Material = _Material.Material
{
// Key
@Consumption.valueHelpDefinition: [ { entity: { name: 'I_ProductStdVH', element: 'Product' } } ]
@ObjectModel.foreignKey.association: '_Product'
@Search: {defaultSearchElement: true, ranking: #HIGH, fuzzinessThreshold: 0.8}
key cast(matnr as productnumber preserving type) as Product,
@ObjectModel.foreignKey.association: '_Plant'
key werks as Plant,
@ObjectModel.text.element: ['ProductionVersionText']
key verid as ProductionVersion,
// Text
@Semantics.text: true
@Search: {defaultSearchElement: true, ranking: #LOW, fuzzinessThreshold: 0.8}
text1 as ProductionVersionText,
// kept for compatibility reason (metadata extension)
@ObjectModel.foreignKey.association: '_Material'
matnr as Material,
// Key of Bill of Operations (BOO, e.g. Routing)
@ObjectModel.foreignKey.association: '_BillOfOperationsType'
cast(plnty as billofoperationstype preserving type) as BillOfOperationsType,
@ObjectModel.foreignKey.association: '_BillOfOperationsGroup'
cast(plnnr as billofoperationsgroup preserving type) as BillOfOperationsGroup,
@ObjectModel.foreignKey.association: '_BillOfOperations'
cast(alnal as billofoperationsvariant preserving type) as BillOfOperationsVariant,
// Key for Bill of Material (BOM) in addition to matnr and werks
stlan as BillOfMaterialVariantUsage,
stlal as BillOfMaterialVariant,
// Assignments
--@Consumption.valueHelpDefinition: [ { entity: { name: 'I_ProductionLineStdVH', element: 'ProductionLine' } } ]
@Consumption.valueHelpDefinition: [{entity:{name:'I_WRKCTRBYSEMANTICKEYSTDVH' , element: 'WorkCenter'}}]
@ObjectModel.foreignKey.association: '_ProductionLine'
mdv01 as ProductionLine,
@Consumption.valueHelpDefinition: [ { entity: { name: 'I_ProductionSupplyAreaStdVH', element: 'ProductionSupplyArea' } } ]
@ObjectModel.foreignKey.association: '_ProductionSupplyArea'
cast(prvbe as pph_prvbe preserving type) as ProductionSupplyArea,
@ObjectModel.foreignKey.association: '_ProductionVersionGroup'
cast(mdv02 as pph_mdv preserving type) as ProductionVersionGroup,
@Consumption.valueHelpDefinition: [ { entity: { name: 'I_ProductStdVH', element: 'Product' } } ]
@ObjectModel.foreignKey.association: '_MainProduct'
cast(matko as pph_matko preserving type) as MainProduct,
@ObjectModel.foreignKey.association: '_MatlCostApportionmentStruc'
csplt as MaterialCostApportionmentStruc,
@ObjectModel.foreignKey.association: '_IssuingStorageLocation'
elpro as IssuingStorageLocation,
@ObjectModel.foreignKey.association: '_ReceivingStorageLocation'
alort as ReceivingStorageLocation,
@ObjectModel.foreignKey.association: '_OriglBatchReferenceMaterial'
cast(ucmat as pph_rfmat preserving type) as OriginalBatchReferenceMaterial,
@ObjectModel.foreignKey.association: '_QuantityDistributionKey'
verto as QuantityDistributionKey,
prfg_f as ProductionVersionStatus,
cast(prdat as pph_mkprdat preserving type) as ProductionVersionLastCheckDate,
cast(prfg_r as pph_prfgr preserving type) as RateBasedPlanningStatus,
cast(prfg_g as pph_prfgg preserving type) as PreliminaryPlanningStatus,
cast(prfg_s as pph_prfgs preserving type) as BOMCheckStatus,
// Attributes
@Semantics.businessDate.from: true
cast(adatu as vdm_v_validity_start_date preserving type) as ValidityStartDate,
@Semantics.businessDate.to: true
cast(bdatu as vdm_v_validity_end_date preserving type) as ValidityEndDate,
@Semantics.booleanIndicator
case mksp
when '1' then 'X'
when '2' then 'X'
else ''
end as ProductionVersionIsLocked,
serkz as ProdnVersIsAllowedForRptvMfg,
versind as HasVersionCtrldBOMAndRouting,
diffplanexemstr as PlanningAndExecutionBOMIsDiff,
// Shop Floor BOM
exe_stlan as ExecBillOfMaterialVariantUsage,
exe_stlal as ExecBillOfMaterialVariant,
exe_plnty as ExecBillOfOperationsType,
exe_plnnr as ExecBillOfOperationsGroup,
exe_alnal as ExecBillOfOperationsVariant,
// EWM data
ewm_lgnum as Warehouse,
ewm_lgpla as DestinationStorageBin,
@ObjectModel.foreignKey.association: '_TargetProductionSupplyArea'
cast(tsa_prvbe as tsa_prvbe preserving type) as TargetProductionSupplyArea,
// Quantity and UoM
@Semantics.unitOfMeasure: true
_Product.BaseUnit as MaterialBaseUnit,
@Semantics.quantity.unitOfMeasure: 'MaterialBaseUnit'
@Aggregation.default: #MIN
bstmi as MaterialMinLotSizeQuantity,
@Semantics.quantity.unitOfMeasure: 'MaterialBaseUnit'
@Aggregation.default: #MAX
bstma as MaterialMaxLotSizeQuantity,
// kept for compatibility reasons
@VDM.lifecycle.status: #DEPRECATED
@VDM.lifecycle.successor: 'QuantityDistributionKey'
verto as DistributionKey,
// Associations
_Product,
@VDM.lifecycle.status: #DEPRECATED
@VDM.lifecycle.successor: '_ProductPlant2'
_ProductPlant,
_ProductPlant2,
_Plant,
_BillOfOperationsType,
_BillOfOperationsGroup,
_BillOfOperations,
_ProductionLine,
_ProductionVersionGroup,
_ProductionSupplyArea,
_TargetProductionSupplyArea,
_MainProduct,
_OriglBatchReferenceMaterial,
_IssuingStorageLocation,
_ReceivingStorageLocation,
_MatlCostApportionmentStruc,
_QuantityDistributionKey,
_Material,
_MaterialBaseUnit
};
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