I_ProductionModelComponent

DDL: I_PRODUCTIONMODELCOMPONENT Type: view_entity COMPOSITE

Production Model Component

I_ProductionModelComponent is a Composite CDS View that provides data about "Production Model Component" in SAP S/4HANA. It reads from 2 data sources (I_BillOfMaterialComponent, I_ProductionModel) and exposes 118 fields with key fields ProductionModelUUID, ProductionModelComponentUUID. It has 22 associations to related views.

Data Sources (2)

SourceAliasJoin Type
I_BillOfMaterialComponent BOMItem from
I_ProductionModel ProductionModel inner

Associations (22)

CardinalityTargetAliasCondition
[0..1] P_ProdnModCompDgtlMockUpCharcs _DgtlMockUpCharcsValue _DgtlMockUpCharcsValue.DgtlMockUpUUID = $projection.ProductionModelComponentUUID
[0..1] I_MaterialText _MaterialText _MaterialText.Material = BOMItem.BillOfMaterialComponent and _MaterialText.Language = $session.system_language
[0..1] I_BomItemCategoryText _BOMItemCategoryText $projection.BillOfMaterialItemCategory = _BOMItemCategoryText.BillOfMaterialItemCategory and _BOMItemCategoryText.Language = $session.system_language
[0..1] I_MRPQuantityDistrKeyText _DistrKeyText $projection.Plant = _DistrKeyText.Plant and $projection.DistrKeyCompConsumption = _DistrKeyText.QuantityDistributionKey and _DistrKeyText.Language = $session.system_language
[0..1] I_ExplosionTypeVH _ExplosionTypeText $projection.ExplosionType = _ExplosionTypeText.ExplosionType
[0..1] I_SpecialProcurementType _SpecialProcTypeText $projection.Plant = _SpecialProcTypeText.Plant and $projection.SpecialProcurementType = _SpecialProcTypeText.SpecialProcurementType
[0..1] I_AltItemStrategyVH _AltItemStrategyText $projection.AlternativeItemStrategy = _AltItemStrategyText.AlternativeItemStrategy and _AltItemStrategyText.Language = $session.system_language
[0..1] I_ReferencePointVH _ReferencePointText $projection.ReferencePoint = _ReferencePointText.ReferencePoint
[0..1] I_BOMItemCostingRelevant _CostingRelevantText $projection.MaterialCompCostingRelevancy = _CostingRelevantText.BOMItemIsCostingRelevant
[0..1] I_MatProvisionIndicatorVH _MatProvisionIndText $projection.MaterialProvisionType = _MatProvisionIndText.IsMaterialProvision
[0..1] I_StorageLocation _IssueLocationText $projection.Plant = _IssueLocationText.Plant and $projection.ProdOrderIssueLocation = _IssueLocationText.StorageLocation
[0..1] I_ProductionSupplyAreaText _ProdSupplyAreaText $projection.Plant = _ProdSupplyAreaText.Plant and $projection.ProductionSupplyArea = _ProdSupplyAreaText.ProductionSupplyArea and _ProdSupplyAreaText.Language = $session.system_language
[0..1] I_BOMItemSparePart _SparePartText $projection.MatlComponentSparePartType = _SparePartText.BOMItemIsSparePart
[0..1] I_BOMItemSalesRelevant _SalesRelevantText $projection.BOMItemSalesRelevancy = _SalesRelevantText.BOMItemIsSalesRelevant
[0..1] I_PurchasingOrganization _PurchasingOrgText $projection.PurchasingOrganization = _PurchasingOrgText.PurchasingOrganization
[0..1] I_PurchasingGroup _PurchasingGroupText $projection.PurchasingGroup = _PurchasingGroupText.PurchasingGroup
[0..1] I_MaterialGroupText _MaterialGroupText $projection.MaterialGroup = _MaterialGroupText.MaterialGroup and _MaterialGroupText.Language = $session.system_language
[0..1] I_Supplier _SupplierText $projection.Creditor = _SupplierText.Supplier
[0..1] I_CostElementText _CostElementText $projection.CostElement = _CostElementText.CostElement and _CostElementText.Language = $session.system_language
[0..1] I_ProductSupplyPlanning _MaterialPlant $projection.BillOfMaterialComponent = _MaterialPlant.Product and $projection.Plant = _MaterialPlant.Plant
[0..1] I_ProductionModel _ProductionModel $projection.ProductionModelUUID = _ProductionModel.ProductionModelUUID
[0..*] I_ProdnModelComponentInstance _HeaderComponentInstance $projection.ProductionModelUUID = _HeaderComponentInstance.ProductionModelUUID and $projection.ProductionModelComponentUUID = _HeaderComponentInstance.ProductionModelComponentUUID

Annotations (7)

NameValueLevelField
EndUserText.label Production Model Component view
AccessControl.authorizationCheck #MANDATORY view
VDM.viewType #COMPOSITE view
Metadata.ignorePropagatedAnnotations true view
ObjectModel.usageType.serviceQuality #C view
ObjectModel.usageType.sizeCategory #L view
ObjectModel.usageType.dataClass #TRANSACTIONAL view

Fields (118)

KeyFieldSource TableSource FieldDescription
KEY ProductionModelUUID I_ProductionModel ProductionModelUUID
KEY ProductionModelComponentUUID I_BillOfMaterialComponent BillOfMaterialItemUUID
BillOfMaterialCategory I_BillOfMaterialComponent BillOfMaterialCategory
BillOfMaterial
Material BOMHdr Material
Plant BOMHdr Plant
BillOfMaterialVariantUsage BOMHdr BillOfMaterialVariantUsage
BillOfMaterialVariant I_BillOfMaterialComponent BillOfMaterialVariant
BillOfMaterialVersion I_BillOfMaterialComponent BillOfMaterialVersion
BillOfOperationsGroup I_ProductionModel BillOfOperationsGroup
BillOfOperationsType I_ProductionModel BillOfOperationsType
BillOfOperationsVariant I_ProductionModel BillOfOperationsVariant
BillOfOperationsVersion I_ProductionModel BillOfOperationsVersion
BillOfMaterialItemNodeNumber I_BillOfMaterialComponent BillOfMaterialItemNodeNumber
ValidityStartDate I_BillOfMaterialComponent ValidityStartDate
ValidityEndDate I_BillOfMaterialComponent ValidityEndDate
EngineeringChangeDocument I_BillOfMaterialComponent EngineeringChangeDocument
ChgToEngineeringChgDocument I_BillOfMaterialComponent ChgToEngineeringChgDocument
InheritedNodeNumberForBOMItem I_BillOfMaterialComponent InheritedNodeNumberForBOMItem
InheritedNodeNumberVersionBOM I_BillOfMaterialComponent InheritedNodeNumberVersionBOM
BOMItemInternalChangeCount I_BillOfMaterialComponent BOMItemInternalChangeCount
BillOfMaterialComponent I_BillOfMaterialComponent BillOfMaterialComponent
ComponentDescription I_BillOfMaterialComponent ComponentDescription
BillOfMaterialItemCategory I_BillOfMaterialComponent BillOfMaterialItemCategory
BillOfMaterialItemNumber
BillOfMaterialItemUnit I_BillOfMaterialComponent BillOfMaterialItemUnit
BillOfMaterialItemQuantity I_BillOfMaterialComponent BillOfMaterialItemQuantity
IsAssembly I_BillOfMaterialComponent IsAssembly
IsSubItem I_BillOfMaterialComponent IsSubItem
IsDeleted I_BillOfMaterialComponent IsDeleted
IdentifierBOMItem I_BillOfMaterialComponent IdentifierBOMItem
BOMItemSorter I_BillOfMaterialComponent BOMItemSorter
BOMItemHasFixedQuantity I_BillOfMaterialComponent BOMItemHasFixedQuantity
ComponentScrapInPercent I_BillOfMaterialComponent ComponentScrapInPercent
OperationScrapInPercent I_BillOfMaterialComponent OperationScrapInPercent
IsNetScrap I_BillOfMaterialComponent IsNetScrap
IsBulkMaterial I_BillOfMaterialComponent IsBulkMaterial
IsBulkMaterialComponent _MaterialPlant IsBulkMaterialComponent
MaterialProvisionType I_BillOfMaterialComponent IsMaterialProvision
MatlComponentSparePartType I_BillOfMaterialComponent BOMItemIsSparePart
BOMItemSalesRelevancy I_BillOfMaterialComponent BOMItemIsSalesRelevant
IsEngineeringRelevant I_BillOfMaterialComponent IsEngineeringRelevant
BOMItemIsPlantMaintRelevant I_BillOfMaterialComponent BOMItemIsPlantMaintRelevant
IsProductionRelevant I_BillOfMaterialComponent IsProductionRelevant
MaterialCompCostingRelevancy I_BillOfMaterialComponent BOMItemIsCostingRelevant
BOMIsRecursive I_BillOfMaterialComponent BOMIsRecursive
IsBOMRecursiveAllowed I_BillOfMaterialComponent IsBOMRecursiveAllowed
FollowUpGroup I_BillOfMaterialComponent FollowUpGroup
AlternativeItemGroup I_BillOfMaterialComponent AlternativeItemGroup
MaterialIsCoProduct I_BillOfMaterialComponent MaterialIsCoProduct
AlternativeItemPriority I_BillOfMaterialComponent AlternativeItemPriority
AlternativeItemStrategy I_BillOfMaterialComponent AlternativeItemStrategy
IsALE I_BillOfMaterialComponent IsALE
UsageProbabilityPercent I_BillOfMaterialComponent UsageProbabilityPercent
DocumentIsCreatedByCAD I_BillOfMaterialComponent DocumentIsCreatedByCAD
DependencyObjectNumber I_BillOfMaterialComponent DependencyObjectNumber
DiscontinuationGroup I_BillOfMaterialComponent DiscontinuationGroup
LeadTimeOffset I_BillOfMaterialComponent LeadTimeOffset
OperationLeadTimeOffset I_BillOfMaterialComponent OperationLeadTimeOffset
OpsLeadTimeOffsetUnit I_BillOfMaterialComponent OpsLeadTimeOffsetUnit
DistrKeyCompConsumption I_BillOfMaterialComponent DistrKeyCompConsumption
IsPhantomItem I_BillOfMaterialComponent IsPhantomItem
PurchasingGroup I_BillOfMaterialComponent PurchasingGroup
DeliveryDurationInDays I_BillOfMaterialComponent DeliveryDurationInDays
Creditor I_BillOfMaterialComponent Creditor
MaterialComponentPrice I_BillOfMaterialComponent MaterialComponentPrice
Currency I_BillOfMaterialComponent Currency
CostElement I_BillOfMaterialComponent CostElement
MaterialGroup I_BillOfMaterialComponent MaterialGroup
GoodsReceiptDuration I_BillOfMaterialComponent GoodsReceiptDuration
PurchasingOrganization I_BillOfMaterialComponent PurchasingOrganization
Size1 I_BillOfMaterialComponent Size1
Size2 I_BillOfMaterialComponent Size2
Size3 I_BillOfMaterialComponent Size3
UnitOfMeasureForSize1To3 I_BillOfMaterialComponent UnitOfMeasureForSize1To3
QuantityVariableSizeItem I_BillOfMaterialComponent QuantityVariableSizeItem
VariableSizeItemQuantity
VariableSizeItemUnit I_BillOfMaterialComponent UnitOfMeasureForVarSizeItem
FormulaKey I_BillOfMaterialComponent FormulaKey
VariableSizeCompUnitOfMeasure I_BillOfMaterialComponent VariableSizeCompUnitOfMeasure
BOMItemDescription I_BillOfMaterialComponent BOMItemDescription
BOMItemText2 I_BillOfMaterialComponent BOMItemText2
DocumentType I_BillOfMaterialComponent DocumentType
DocNumber I_BillOfMaterialComponent DocNumber
DocumentVersion I_BillOfMaterialComponent DocumentVersion
DocumentPart I_BillOfMaterialComponent DocumentPart
ProdOrderIssueLocation I_BillOfMaterialComponent ProdOrderIssueLocation
ProductionSupplyArea I_BillOfMaterialComponent ProductionSupplyArea
ExplosionType I_BillOfMaterialComponent ExplosionType
SpecialProcurementType I_BillOfMaterialComponent SpecialProcurementType
ReferencePoint I_BillOfMaterialComponent ReferencePoint
PreliminaryMaterial I_BillOfMaterialComponent PreliminaryMaterial
IsPMAssemblyRelevant I_BillOfMaterialComponent IsPMAssemblyRelevant
BOMItemRecordCreationDate I_BillOfMaterialComponent BOMItemRecordCreationDate
BOMItemCreatedByUser I_BillOfMaterialComponent BOMItemCreatedByUser
BOMItemLastChangeDate I_BillOfMaterialComponent BOMItemLastChangeDate
BOMItemLastChangedByUser I_BillOfMaterialComponent BOMItemLastChangedByUser
DgtlMockUpCharcsValue _DgtlMockUpCharcsValue DgtlMockUpCharcsValue
_BOMItemCategoryText _BOMItemCategoryText
_DistrKeyText _DistrKeyText
_ExplosionTypeText _ExplosionTypeText
_SpecialProcTypeText _SpecialProcTypeText
_AltItemStrategyText _AltItemStrategyText
_ReferencePointText _ReferencePointText
_CostingRelevantText _CostingRelevantText
_MatProvisionIndText _MatProvisionIndText
_IssueLocationText _IssueLocationText
_ProdSupplyAreaText _ProdSupplyAreaText
_SparePartText _SparePartText
_SalesRelevantText _SalesRelevantText
_PurchasingOrgText _PurchasingOrgText
_PurchasingGroupText _PurchasingGroupText
_MaterialGroupText _MaterialGroupText
_SupplierText _SupplierText
_CostElementText _CostElementText
_MaterialText _MaterialText
_ProductionModel _ProductionModel
_HeaderComponentInstance _HeaderComponentInstance
@EndUserText.label: 'Production Model Component'
@AccessControl.authorizationCheck: #MANDATORY
@VDM.viewType: #COMPOSITE
@Metadata.ignorePropagatedAnnotations: true
@ObjectModel.usageType:{
  serviceQuality: #C,
  sizeCategory: #L,
  dataClass: #TRANSACTIONAL
}

define view entity I_ProductionModelComponent
  as select from           I_BillOfMaterialComponent as BOMItem
    left outer to one join I_BillOfMaterialHeader    as BOMHdr          on  BOMHdr.BillOfMaterialCategory = BOMItem.BillOfMaterialCategory
                                                                        and BOMHdr.BillOfMaterial         = BOMItem.BillOfMaterial
                                                                        and BOMHdr.BillOfMaterialVariant  = BOMItem.BillOfMaterialVariant
                                                                        and BOMHdr.BillOfMaterialVersion  = BOMItem.BillOfMaterialVersion
    inner join             I_ProductionModel         as ProductionModel on  ProductionModel.Material                   = BOMHdr.Material
                                                                        and ProductionModel.BillOfMaterial             = BOMItem.BillOfMaterial
                                                                        and ProductionModel.BillOfMaterialVariant      = BOMItem.BillOfMaterialVariant
                                                                        and ProductionModel.BillOfMaterialCategory     = BOMItem.BillOfMaterialCategory
                                                                        and ProductionModel.BillOfMaterialVariantUsage = BOMHdr.BillOfMaterialVariantUsage
                                                                        and ProductionModel.BillOfMaterialVersion      = BOMItem.BillOfMaterialVersion
                                                                        and ProductionModel.Plant                      = BOMHdr.Plant
  association [0..1] to P_ProdnModCompDgtlMockUpCharcs as _DgtlMockUpCharcsValue   on  _DgtlMockUpCharcsValue.DgtlMockUpUUID = $projection.ProductionModelComponentUUID
  association [0..1] to I_MaterialText                 as _MaterialText            on  _MaterialText.Material = BOMItem.BillOfMaterialComponent
                                                                                   and _MaterialText.Language = $session.system_language
  association [0..1] to I_BomItemCategoryText          as _BOMItemCategoryText     on  $projection.BillOfMaterialItemCategory = _BOMItemCategoryText.BillOfMaterialItemCategory
                                                                                   and _BOMItemCategoryText.Language          = $session.system_language
  association [0..1] to I_MRPQuantityDistrKeyText      as _DistrKeyText            on  $projection.Plant                   = _DistrKeyText.Plant
                                                                                   and $projection.DistrKeyCompConsumption = _DistrKeyText.QuantityDistributionKey
                                                                                   and _DistrKeyText.Language              = $session.system_language
  association [0..1] to I_ExplosionTypeVH              as _ExplosionTypeText       on  $projection.ExplosionType = _ExplosionTypeText.ExplosionType
  association [0..1] to I_SpecialProcurementType       as _SpecialProcTypeText     on  $projection.Plant                  = _SpecialProcTypeText.Plant
                                                                                   and $projection.SpecialProcurementType = _SpecialProcTypeText.SpecialProcurementType
  association [0..1] to I_AltItemStrategyVH            as _AltItemStrategyText     on  $projection.AlternativeItemStrategy = _AltItemStrategyText.AlternativeItemStrategy
                                                                                   and _AltItemStrategyText.Language       = $session.system_language
  association [0..1] to I_ReferencePointVH             as _ReferencePointText      on  $projection.ReferencePoint = _ReferencePointText.ReferencePoint
  association [0..1] to I_BOMItemCostingRelevant       as _CostingRelevantText     on  $projection.MaterialCompCostingRelevancy = _CostingRelevantText.BOMItemIsCostingRelevant
  association [0..1] to I_MatProvisionIndicatorVH      as _MatProvisionIndText     on  $projection.MaterialProvisionType = _MatProvisionIndText.IsMaterialProvision
  association [0..1] to I_StorageLocation              as _IssueLocationText       on  $projection.Plant                  = _IssueLocationText.Plant
                                                                                   and $projection.ProdOrderIssueLocation = _IssueLocationText.StorageLocation
  association [0..1] to I_ProductionSupplyAreaText     as _ProdSupplyAreaText      on  $projection.Plant                = _ProdSupplyAreaText.Plant
                                                                                   and $projection.ProductionSupplyArea = _ProdSupplyAreaText.ProductionSupplyArea
                                                                                   and _ProdSupplyAreaText.Language     = $session.system_language
  association [0..1] to I_BOMItemSparePart             as _SparePartText           on  $projection.MatlComponentSparePartType = _SparePartText.BOMItemIsSparePart
  association [0..1] to I_BOMItemSalesRelevant         as _SalesRelevantText       on  $projection.BOMItemSalesRelevancy = _SalesRelevantText.BOMItemIsSalesRelevant
  association [0..1] to I_PurchasingOrganization       as _PurchasingOrgText       on  $projection.PurchasingOrganization = _PurchasingOrgText.PurchasingOrganization
  association [0..1] to I_PurchasingGroup              as _PurchasingGroupText     on  $projection.PurchasingGroup = _PurchasingGroupText.PurchasingGroup
  association [0..1] to I_MaterialGroupText            as _MaterialGroupText       on  $projection.MaterialGroup   = _MaterialGroupText.MaterialGroup
                                                                                   and _MaterialGroupText.Language = $session.system_language
  association [0..1] to I_Supplier                     as _SupplierText            on  $projection.Creditor = _SupplierText.Supplier
  association [0..1] to I_CostElementText              as _CostElementText         on  $projection.CostElement   = _CostElementText.CostElement // Need to add key fields

                                                                                   and _CostElementText.Language = $session.system_language
  association [0..1] to I_ProductSupplyPlanning        as _MaterialPlant           on  $projection.BillOfMaterialComponent = _MaterialPlant.Product
                                                                                   and $projection.Plant                   = _MaterialPlant.Plant
  association [0..1] to I_ProductionModel              as _ProductionModel         on  $projection.ProductionModelUUID = _ProductionModel.ProductionModelUUID
  association [0..*] to I_ProdnModelComponentInstance  as _HeaderComponentInstance on  $projection.ProductionModelUUID          = _HeaderComponentInstance.ProductionModelUUID
                                                                                   and $projection.ProductionModelComponentUUID = _HeaderComponentInstance.ProductionModelComponentUUID

{
  key    ProductionModel.ProductionModelUUID,
  key    BOMItem.BillOfMaterialItemUUID                                       as ProductionModelComponentUUID,
         BOMItem.BillOfMaterialCategory,
         cast( BOMItem.BillOfMaterial as cs_stlnr preserving type )           as BillOfMaterial,
         BOMHdr.Material,
         BOMHdr.Plant,
         BOMHdr.BillOfMaterialVariantUsage,
         BOMItem.BillOfMaterialVariant,
         BOMItem.BillOfMaterialVersion,
         ProductionModel.BillOfOperationsGroup,
         ProductionModel.BillOfOperationsType,
         ProductionModel.BillOfOperationsVariant,
         ProductionModel.BillOfOperationsVersion,
         BOMItem.BillOfMaterialItemNodeNumber,
         BOMItem.ValidityStartDate,
         BOMItem.ValidityEndDate,
         BOMItem.EngineeringChangeDocument,
         BOMItem.ChgToEngineeringChgDocument,
         BOMItem.InheritedNodeNumberForBOMItem,
         BOMItem.InheritedNodeNumberVersionBOM,
         BOMItem.BOMItemInternalChangeCount,
         BOMItem.BillOfMaterialComponent,
         //    _MaterialText.MaterialName,

         BOMItem.ComponentDescription,
         BOMItem.BillOfMaterialItemCategory,
         cast( BOMItem.BillOfMaterialItemNumber as cs_sposn preserving type ) as BillOfMaterialItemNumber,
         BOMItem.BillOfMaterialItemUnit,
         @Semantics.quantity.unitOfMeasure: 'BillOfMaterialItemUnit'
         BOMItem.BillOfMaterialItemQuantity,
         @Semantics.booleanIndicator: true
         BOMItem.IsAssembly,
         @Semantics.booleanIndicator: true
         BOMItem.IsSubItem,
         @Semantics.booleanIndicator: true
         BOMItem.IsDeleted,
         BOMItem.IdentifierBOMItem,
         BOMItem.BOMItemSorter,
         @Semantics.booleanIndicator: true
         BOMItem.BOMItemHasFixedQuantity,
         BOMItem.ComponentScrapInPercent,
         BOMItem.OperationScrapInPercent,
         @Semantics.booleanIndicator: true
         BOMItem.IsNetScrap,
         @Semantics.booleanIndicator: true
         BOMItem.IsBulkMaterial,
         @Semantics.booleanIndicator: true
         _MaterialPlant.IsBulkMaterialComponent,
         BOMItem.IsMaterialProvision                                          as MaterialProvisionType,
         BOMItem.BOMItemIsSparePart                                           as MatlComponentSparePartType,
         BOMItem.BOMItemIsSalesRelevant                                       as BOMItemSalesRelevancy,
         @Semantics.booleanIndicator: true
         BOMItem.IsEngineeringRelevant,
         @Semantics.booleanIndicator: true
         BOMItem.BOMItemIsPlantMaintRelevant,
         @Semantics.booleanIndicator: true
         BOMItem.IsProductionRelevant,
         BOMItem.BOMItemIsCostingRelevant                                     as MaterialCompCostingRelevancy,
         @Semantics.booleanIndicator: true
         BOMItem.BOMIsRecursive,
         @Semantics.booleanIndicator: true
         BOMItem.IsBOMRecursiveAllowed,
         BOMItem.FollowUpGroup,
         BOMItem.AlternativeItemGroup,
         BOMItem.MaterialIsCoProduct,
         BOMItem.AlternativeItemPriority,
         BOMItem.AlternativeItemStrategy,
         @Semantics.booleanIndicator: true
         BOMItem.IsALE,
         BOMItem.UsageProbabilityPercent,
         BOMItem.DocumentIsCreatedByCAD,
         BOMItem.DependencyObjectNumber,
         BOMItem.DiscontinuationGroup,
         BOMItem.LeadTimeOffset,
         BOMItem.OperationLeadTimeOffset,
         BOMItem.OpsLeadTimeOffsetUnit,
         BOMItem.DistrKeyCompConsumption,
         BOMItem.IsPhantomItem,
         BOMItem.PurchasingGroup,
         BOMItem.DeliveryDurationInDays,
         BOMItem.Creditor,
         @Semantics.amount.currencyCode : 'Currency'
         BOMItem.MaterialComponentPrice,
         //      BOMItem.MaterialPriceUnitQty,

         BOMItem.Currency,
         BOMItem.CostElement,
         BOMItem.MaterialGroup,
         BOMItem.GoodsReceiptDuration,
         BOMItem.PurchasingOrganization,
         @Semantics.quantity.unitOfMeasure: 'UnitOfMeasureForSize1To3'
         BOMItem.Size1,
         @Semantics.quantity.unitOfMeasure: 'UnitOfMeasureForSize1To3'
         BOMItem.Size2,
         @Semantics.quantity.unitOfMeasure: 'UnitOfMeasureForSize1To3'
         BOMItem.Size3,
         BOMItem.UnitOfMeasureForSize1To3,
         @Semantics.quantity.unitOfMeasure: 'VariableSizeCompUnitOfMeasure'
         BOMItem.QuantityVariableSizeItem,
         @Semantics.quantity.unitOfMeasure: 'VariableSizeItemUnit'
         cast(BOMItem.NumberOfVariableSizeItem as pph_roanz preserving type)  as VariableSizeItemQuantity,
         BOMItem.UnitOfMeasureForVarSizeItem                                  as VariableSizeItemUnit,
         BOMItem.FormulaKey,
         BOMItem.VariableSizeCompUnitOfMeasure,
         BOMItem.BOMItemDescription,
         BOMItem.BOMItemText2,
         BOMItem.DocumentType,
         BOMItem.DocNumber,
         BOMItem.DocumentVersion,
         BOMItem.DocumentPart,
         BOMItem.ProdOrderIssueLocation,
         BOMItem.ProductionSupplyArea,
         BOMItem.ExplosionType,
         BOMItem.SpecialProcurementType,
         BOMItem.ReferencePoint,
         BOMItem.PreliminaryMaterial,
         BOMItem.IsPMAssemblyRelevant,
         BOMItem.BOMItemRecordCreationDate,
         BOMItem.BOMItemCreatedByUser,
         BOMItem.BOMItemLastChangeDate,
         BOMItem.BOMItemLastChangedByUser,
         _DgtlMockUpCharcsValue.DgtlMockUpCharcsValue,

         /* Associations */
         _BOMItemCategoryText,
         _DistrKeyText,
         _ExplosionTypeText,
         _SpecialProcTypeText,
         _AltItemStrategyText,
         _ReferencePointText,
         _CostingRelevantText,
         _MatProvisionIndText,
         _IssueLocationText,
         _ProdSupplyAreaText,
         _SparePartText,
         _SalesRelevantText,
         _PurchasingOrgText,
         _PurchasingGroupText,
         _MaterialGroupText,
         _SupplierText,
         _CostElementText,
         _MaterialText,
         _ProductionModel,
         _HeaderComponentInstance
}
where
  (
       BOMItem.BillOfMaterialCategory = 'K'
    or BOMItem.BillOfMaterialCategory = 'M'
  )
/*+[internal] {
"BASEINFO":
{
"FROM":
[
"I_BILLOFMATERIALCOMPONENT",
"I_BILLOFMATERIALHEADER",
"I_PRODUCTIONMODEL",
"I_PRODUCTSUPPLYPLANNING",
"P_PRODNMODCOMPDGTLMOCKUPCHARCS"
],
"ASSOCIATED":
[
"I_ALTITEMSTRATEGYVH",
"I_BOMITEMCATEGORYTEXT",
"I_BOMITEMCOSTINGRELEVANT",
"I_BOMITEMSALESRELEVANT",
"I_BOMITEMSPAREPART",
"I_COSTELEMENTTEXT",
"I_EXPLOSIONTYPEVH",
"I_MATERIALGROUPTEXT",
"I_MATERIALTEXT",
"I_MATPROVISIONINDICATORVH",
"I_MRPQUANTITYDISTRKEYTEXT",
"I_PRODNMODELCOMPONENTINSTANCE",
"I_PRODUCTIONMODEL",
"I_PRODUCTIONSUPPLYAREATEXT",
"I_PURCHASINGGROUP",
"I_PURCHASINGORGANIZATION",
"I_REFERENCEPOINTVH",
"I_SPECIALPROCUREMENTTYPE",
"I_STORAGELOCATION",
"I_SUPPLIER"
],
"BASE":
[],
"ANNO_REF":
[],
"SCALAR_FUNCTION":
[],
"VERSION":0,
"ANNOREF_EVALUATION_ERROR":""
}
}*/