I_ProductionVersionBasic

DDL: I_PRODUCTIONVERSIONBASIC SQL: IPRODNVERSNBASC Type: view BASIC

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.

Data Sources (1)

SourceAliasJoin Type
mkal mkal from

Associations (19)

CardinalityTargetAliasCondition
[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)

NameValueLevelField
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)

KeyFieldSource TableSource FieldDescription
KEY Product
KEY Plant werks
KEY ProductionVersion verid
ProductionVersionText text1
Material matnr
BillOfOperationsType
BillOfOperationsGroup
BillOfOperationsVariant
BillOfMaterialVariantUsage stlan
BillOfMaterialVariant stlal
ProductionLine mdv01
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_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
};