I_ProdnModOpActyComponent

DDL: I_PRODNMODOPACTYCOMPONENT Type: view_entity COMPOSITE

Production Model Activity Component

I_ProdnModOpActyComponent is a Composite CDS View that provides data about "Production Model Activity Component" in SAP S/4HANA. It reads from 5 data sources (P_ProductionModelComponent, I_BOOOperationChgStOANBasic, I_OpActyNtwkElement, I_OpActyBOOOpBOMItmAssgmt, I_RoutingCompAllocSrchMod) and exposes 132 fields with key fields ProductionModelUUID, BillOfOperationsVersion, BOOOperationInternalID, OperationActivity, OperationActyVersionCounter. It has 20 associations to related views.

Data Sources (5)

SourceAliasJoin Type
P_ProductionModelComponent BOMItem inner
I_BOOOperationChgStOANBasic BOOOperationDetails inner
I_OpActyNtwkElement OpactivityNetworkElement inner
I_OpActyBOOOpBOMItmAssgmt OperationActivityComponent from
I_RoutingCompAllocSrchMod OperationComponent inner

Associations (20)

CardinalityTargetAliasCondition
[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..*] I_ProdnModOpActyCompInstance _OpActivityComponentInstance $projection.ProductionModelUUID = _OpActivityComponentInstance.ProductionModelUUID and $projection.BillOfOperationsVersion = _OpActivityComponentInstance.BillOfOperationsVersion and $projection.BOOOperationInternalID = _OpActivityComponentInstance.BOOOperationInternalID and $projection.OperationActivity = _OpActivityComponentInstance.OperationActivity and $projection.OperationActyVersionCounter = _OpActivityComponentInstance.OperationActyVersionCounter and $projection.BOOOpBOMItemInternalID = _OpActivityComponentInstance.BOOOpBOMItemInternalID

Annotations (7)

NameValueLevelField
EndUserText.label Production Model Activity 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 (132)

KeyFieldSource TableSource FieldDescription
KEY ProductionModelUUID P_ProductionModelComponent ProductionModelUUID
KEY BillOfOperationsVersion P_ProductionModelComponent BillOfOperationsVersion
KEY BOOOperationInternalID I_BOOOperationChgStOANBasic BOOOperationInternalID
KEY OperationActivity I_OpActyBOOOpBOMItmAssgmt OperationActivity
KEY OperationActyVersionCounter I_OpActyBOOOpBOMItmAssgmt OperationActyVersionCounter
KEY BOOOpBOMItemInternalID I_OpActyBOOOpBOMItmAssgmt BOOOpBOMItemInternalID
BOOOpInternalVersionCounter I_BOOOperationChgStOANBasic BOOOpInternalVersionCounter
BillOfMaterial P_ProductionModelComponent BillOfMaterial
BillOfMaterialVariant P_ProductionModelComponent BillOfMaterialVariant
BillOfMaterialCategory P_ProductionModelComponent BillOfMaterialCategory
BillOfMaterialVariantUsage P_ProductionModelComponent BillOfMaterialVariantUsage
Plant P_ProductionModelComponent Plant
BillOfOperationsGroup P_ProductionModelComponent BillOfOperationsGroup
BillOfOperationsType P_ProductionModelComponent BillOfOperationsType
BillOfOperationsVariant P_ProductionModelComponent BillOfOperationsVariant
Material P_ProductionModelComponent Material
BillOfMaterialVersion P_ProductionModelComponent BillOfMaterialVersion
OpActyNtwkElementExternalID I_OpActyNtwkElement OpActyNtwkElementExternalID
ProductionModelComponentUUID P_ProductionModelComponent ProductionModelComponentUUID
BillOfMaterialItemNodeNumber P_ProductionModelComponent BillOfMaterialItemNodeNumber
ValidityStartDate P_ProductionModelComponent ValidityStartDate
ValidityEndDate P_ProductionModelComponent ValidityEndDate
EngineeringChangeDocument P_ProductionModelComponent EngineeringChangeDocument
ChgToEngineeringChgDocument P_ProductionModelComponent ChgToEngineeringChgDocument
InheritedNodeNumberForBOMItem P_ProductionModelComponent InheritedNodeNumberForBOMItem
InheritedNodeNumberVersionBOM P_ProductionModelComponent InheritedNodeNumberVersionBOM
BOMItemInternalChangeCount P_ProductionModelComponent BOMItemInternalChangeCount
BillOfMaterialComponent P_ProductionModelComponent BillOfMaterialComponent
ComponentDescription P_ProductionModelComponent ComponentDescription
BillOfMaterialItemCategory P_ProductionModelComponent BillOfMaterialItemCategory
BillOfMaterialItemNumber
ProdnModBOMCompAssgdQuantity I_OpActyBOOOpBOMItmAssgmt BillOfMaterialItemQuantity
ProdnModBOMCompAssgdQtyUnit I_OpActyBOOOpBOMItmAssgmt BillOfMaterialItemUnit
BillOfMaterialItemQuantity P_ProductionModelComponent BillOfMaterialItemQuantity
BillOfMaterialItemUnit P_ProductionModelComponent BillOfMaterialItemUnit
IsAssembly P_ProductionModelComponent IsAssembly
IsSubItem P_ProductionModelComponent IsSubItem
IsDeleted P_ProductionModelComponent IsDeleted
IdentifierBOMItem P_ProductionModelComponent IdentifierBOMItem
BOMItemSorter P_ProductionModelComponent BOMItemSorter
BOMItemHasFixedQuantity P_ProductionModelComponent BOMItemHasFixedQuantity
ComponentScrapInPercent P_ProductionModelComponent ComponentScrapInPercent
OperationScrapInPercent P_ProductionModelComponent OperationScrapInPercent
IsNetScrap P_ProductionModelComponent IsNetScrap
IsBulkMaterial P_ProductionModelComponent IsBulkMaterial
IsBulkMaterialComponent _MaterialPlant IsBulkMaterialComponent
MaterialProvisionType P_ProductionModelComponent IsMaterialProvision
MatlComponentSparePartType P_ProductionModelComponent BOMItemIsSparePart
BOMItemSalesRelevancy P_ProductionModelComponent BOMItemIsSalesRelevant
IsEngineeringRelevant P_ProductionModelComponent IsEngineeringRelevant
BOMItemIsPlantMaintRelevant P_ProductionModelComponent BOMItemIsPlantMaintRelevant
IsProductionRelevant P_ProductionModelComponent IsProductionRelevant
MaterialCompCostingRelevancy P_ProductionModelComponent BOMItemIsCostingRelevant
BOMIsRecursive P_ProductionModelComponent BOMIsRecursive
IsBOMRecursiveAllowed P_ProductionModelComponent IsBOMRecursiveAllowed
FollowUpGroup P_ProductionModelComponent FollowUpGroup
AlternativeItemGroup P_ProductionModelComponent AlternativeItemGroup
MaterialIsCoProduct P_ProductionModelComponent MaterialIsCoProduct
AlternativeItemPriority P_ProductionModelComponent AlternativeItemPriority
AlternativeItemStrategy P_ProductionModelComponent AlternativeItemStrategy
IsALE P_ProductionModelComponent IsALE
UsageProbabilityPercent P_ProductionModelComponent UsageProbabilityPercent
IsPMAssemblyRelevant P_ProductionModelComponent IsPMAssemblyRelevant
DocumentIsCreatedByCAD P_ProductionModelComponent DocumentIsCreatedByCAD
DependencyObjectNumber P_ProductionModelComponent DependencyObjectNumber
DiscontinuationGroup P_ProductionModelComponent DiscontinuationGroup
LeadTimeOffset P_ProductionModelComponent LeadTimeOffset
OperationLeadTimeOffset P_ProductionModelComponent OperationLeadTimeOffset
OpsLeadTimeOffsetUnit P_ProductionModelComponent OpsLeadTimeOffsetUnit
DistrKeyCompConsumption P_ProductionModelComponent DistrKeyCompConsumption
IsPhantomItem P_ProductionModelComponent IsPhantomItem
PurchasingGroup P_ProductionModelComponent PurchasingGroup
DeliveryDurationInDays P_ProductionModelComponent DeliveryDurationInDays
Creditor P_ProductionModelComponent Creditor
MaterialComponentPrice P_ProductionModelComponent MaterialComponentPrice
Currency P_ProductionModelComponent Currency
CostElement P_ProductionModelComponent CostElement
MaterialGroup P_ProductionModelComponent MaterialGroup
GoodsReceiptDuration P_ProductionModelComponent GoodsReceiptDuration
PurchasingOrganization P_ProductionModelComponent PurchasingOrganization
PreliminaryMaterial P_ProductionModelComponent PreliminaryMaterial
Size1 P_ProductionModelComponent Size1
Size2 P_ProductionModelComponent Size2
Size3 P_ProductionModelComponent Size3
UnitOfMeasureForSize1To3 P_ProductionModelComponent UnitOfMeasureForSize1To3
QuantityVariableSizeItem P_ProductionModelComponent QuantityVariableSizeItem
VariableSizeItemQuantity
VariableSizeItemUnit P_ProductionModelComponent UnitOfMeasureForVarSizeItem
FormulaKey P_ProductionModelComponent FormulaKey
VariableSizeCompUnitOfMeasure P_ProductionModelComponent VariableSizeCompUnitOfMeasure
BOMItemDescription P_ProductionModelComponent BOMItemDescription
BOMItemText2 P_ProductionModelComponent BOMItemText2
DocumentType P_ProductionModelComponent DocumentType
DocNumber P_ProductionModelComponent DocNumber
DocumentVersion P_ProductionModelComponent DocumentVersion
DocumentPart P_ProductionModelComponent DocumentPart
ProdOrderIssueLocation P_ProductionModelComponent ProdOrderIssueLocation
ProductionSupplyArea P_ProductionModelComponent ProductionSupplyArea
ExplosionType P_ProductionModelComponent ExplosionType
SpecialProcurementType P_ProductionModelComponent SpecialProcurementType
ReferencePoint P_ProductionModelComponent ReferencePoint
BillOfMaterialItemObjectType P_ProductionModelComponent BillOfMaterialItemObjectType
AssemblySequenceNumber I_OpActyBOOOpBOMItmAssgmt AssemblySequenceNumber
BOMItemRecordCreationDate P_ProductionModelComponent BOMItemRecordCreationDate
BOMItemCreatedByUser P_ProductionModelComponent BOMItemCreatedByUser
BOMItemLastChangeDate P_ProductionModelComponent BOMItemLastChangeDate
BOMItemLastChangedByUser P_ProductionModelComponent BOMItemLastChangedByUser
CreatedByUser I_OpActyBOOOpBOMItmAssgmt CreatedByUser
CreationDateTime I_OpActyBOOOpBOMItmAssgmt CreationDateTime
ChangedBy I_OpActyBOOOpBOMItmAssgmt ChangedBy
LastChangeDateTime I_OpActyBOOOpBOMItmAssgmt LastChangeDateTime
_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
_ProdnModOperationActivity _ProdnModOperationActivity
_ProductionModel _ProductionModel
_OpActivityComponentInstance _OpActivityComponentInstance
@EndUserText.label: 'Production Model Activity Component'
@AccessControl.authorizationCheck: #MANDATORY
@VDM.viewType: #COMPOSITE
@Metadata.ignorePropagatedAnnotations: true
@ObjectModel.usageType:{
  serviceQuality: #C,
  sizeCategory: #L,
  dataClass: #TRANSACTIONAL
}
define view entity I_ProdnModOpActyComponent
  as select from I_OpActyBOOOpBOMItmAssgmt   as OperationActivityComponent
    inner join   I_OpActyNtwkElement         as OpactivityNetworkElement on  OpactivityNetworkElement.OpActyNtwkElementElement       = OperationActivityComponent.OperationActivity
                                                                         and OpactivityNetworkElement.OpActyNtwkElementElmntVersCntr = OperationActivityComponent.OperationActyVersionCounter
                                                                         and OpactivityNetworkElement.OpActyNtwkElementType          = 3
    inner join   I_BOOOperationChgStOANBasic as BOOOperationDetails      on  BOOOperationDetails.ProduceOpActyNtwk             = OpactivityNetworkElement.OperationActivityNetwork
                                                                         and BOOOperationDetails.ProduceOpActyNtwkVersCounter  = OpactivityNetworkElement.OpActyNtwkVersionCounter
                                                                         or  BOOOperationDetails.SetupOpActyNtwk               = OpactivityNetworkElement.OperationActivityNetwork
                                                                         and BOOOperationDetails.SetupOpActyNtwkVersCounter    = OpactivityNetworkElement.OpActyNtwkVersionCounter
                                                                         or  BOOOperationDetails.TeardownOpActyNtwk            = OpactivityNetworkElement.OperationActivityNetwork
                                                                         and BOOOperationDetails.TeardownOpActyNtwkVersCounter = OpactivityNetworkElement.OpActyNtwkVersionCounter
    inner join   I_RoutingCompAllocSrchMod   as OperationComponent       on  OperationComponent.BOOOpBOMItemInternalID  = OperationActivityComponent.BOOOpBOMItemInternalID
                                                                         and OperationComponent.BillOfOperationsType    = BOOOperationDetails.BillOfOperationsType
                                                                         and OperationComponent.BillOfOperationsGroup   = BOOOperationDetails.BillOfOperationsGroup
                                                                         and OperationComponent.BOOOperationInternalID  = BOOOperationDetails.BOOOperationInternalID
                                                                         and OperationComponent.BillOfOperationsVersion = BOOOperationDetails.BillOfOperationsVersion
    inner join   P_ProductionModelComponent  as BOMItem                  on  BOMItem.BillOfMaterial               = OperationComponent.BillOfMaterial
                                                                         and BOMItem.BillOfMaterialVariant        = OperationComponent.BillOfMaterialVariant
                                                                         and BOMItem.BillOfMaterialCategory       = OperationComponent.BillOfMaterialCategory
                                                                         and BOMItem.BillOfMaterialItemNodeNumber = OperationComponent.BillOfMaterialItemNodeNumber
                                                                         and BOMItem.BillOfOperationsGroup        = OperationComponent.BillOfOperationsGroup
                                                                         and BOMItem.BillOfOperationsType         = OperationComponent.BillOfOperationsType
                                                                         and BOMItem.BillOfOperationsVariant      = OperationComponent.BillOfOperationsVariant
                                                                         and BOMItem.BillOfOperationsVersion      = OperationComponent.BillOfOperationsVersion
  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..*] to I_ProdnModOpActyCompInstance as _OpActivityComponentInstance on  $projection.ProductionModelUUID         = _OpActivityComponentInstance.ProductionModelUUID
                                                                                     and $projection.BillOfOperationsVersion     = _OpActivityComponentInstance.BillOfOperationsVersion
                                                                                     and $projection.BOOOperationInternalID      = _OpActivityComponentInstance.BOOOperationInternalID
                                                                                     and $projection.OperationActivity           = _OpActivityComponentInstance.OperationActivity
                                                                                     and $projection.OperationActyVersionCounter = _OpActivityComponentInstance.OperationActyVersionCounter
                                                                                     and $projection.BOOOpBOMItemInternalID      = _OpActivityComponentInstance.BOOOpBOMItemInternalID
  association        to I_ProdnModOperationActivity  as _ProdnModOperationActivity   on  $projection.ProductionModelUUID         = _ProdnModOperationActivity.ProductionModelUUID
                                                                                     and $projection.BillOfOperationsVersion     = _ProdnModOperationActivity.BillOfOperationsVersion
                                                                                     and $projection.BillOfMaterial              = _ProdnModOperationActivity.BillOfMaterial
                                                                                     and $projection.BillOfMaterialVariant       = _ProdnModOperationActivity.BillOfMaterialVariant
                                                                                     and $projection.BillOfMaterialCategory      = _ProdnModOperationActivity.BillOfMaterialCategory
                                                                                     and $projection.BillOfMaterialVariantUsage  = _ProdnModOperationActivity.BillOfMaterialVariantUsage
                                                                                     and $projection.Plant                       = _ProdnModOperationActivity.Plant
                                                                                     and $projection.BillOfOperationsGroup       = _ProdnModOperationActivity.BillOfOperationsGroup
                                                                                     and $projection.BillOfOperationsType        = _ProdnModOperationActivity.BillOfOperationsType
                                                                                     and $projection.BillOfOperationsVariant     = _ProdnModOperationActivity.BillOfOperationsVariant
                                                                                     and $projection.BOOOperationInternalID      = _ProdnModOperationActivity.BOOOperationInternalID
                                                                                     and $projection.OperationActivity           = _ProdnModOperationActivity.OperationActivity
                                                                                     and $projection.OperationActyVersionCounter = _ProdnModOperationActivity.OperationActyVersionCounter
  association        to I_ProductionModel            as _ProductionModel             on  $projection.ProductionModelUUID     = _ProductionModel.ProductionModelUUID
                                                                                     and $projection.BillOfOperationsVersion = _ProductionModel.BillOfOperationsVersion
{
  key BOMItem.ProductionModelUUID,
  key BOMItem.BillOfOperationsVersion,
  key BOOOperationDetails.BOOOperationInternalID,
  key OperationActivityComponent.OperationActivity,
  key OperationActivityComponent.OperationActyVersionCounter,
  key OperationActivityComponent.BOOOpBOMItemInternalID,
      BOOOperationDetails.BOOOpInternalVersionCounter,
      BOMItem.BillOfMaterial,
      BOMItem.BillOfMaterialVariant,
      BOMItem.BillOfMaterialCategory,
      BOMItem.BillOfMaterialVariantUsage,
      BOMItem.Plant,
      BOMItem.BillOfOperationsGroup,
      BOMItem.BillOfOperationsType,
      BOMItem.BillOfOperationsVariant,
      BOMItem.Material,
      BOMItem.BillOfMaterialVersion,
      OpactivityNetworkElement.OpActyNtwkElementExternalID,
      BOMItem.ProductionModelComponentUUID,
      BOMItem.BillOfMaterialItemNodeNumber,
      BOMItem.ValidityStartDate,
      BOMItem.ValidityEndDate,
      BOMItem.EngineeringChangeDocument,
      BOMItem.ChgToEngineeringChgDocument,
      BOMItem.InheritedNodeNumberForBOMItem,
      BOMItem.InheritedNodeNumberVersionBOM,
      BOMItem.BOMItemInternalChangeCount,
      BOMItem.BillOfMaterialComponent,
      BOMItem.ComponentDescription,
      BOMItem.BillOfMaterialItemCategory,
      cast( BOMItem.BillOfMaterialItemNumber as cs_sposn preserving type ) as BillOfMaterialItemNumber,
      @Semantics.quantity.unitOfMeasure: 'ProdnModBOMCompAssgdQtyUnit'
      OperationActivityComponent.BillOfMaterialItemQuantity                as ProdnModBOMCompAssgdQuantity,
      OperationActivityComponent.BillOfMaterialItemUnit                    as ProdnModBOMCompAssgdQtyUnit,
      @Semantics.quantity.unitOfMeasure: 'BillOfMaterialItemUnit'
      BOMItem.BillOfMaterialItemQuantity,
      BOMItem.BillOfMaterialItemUnit,
      @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.IsPMAssemblyRelevant,
      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,
      BOMItem.PreliminaryMaterial,
      @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.BillOfMaterialItemObjectType,
      OperationActivityComponent.AssemblySequenceNumber,
      BOMItem.BOMItemRecordCreationDate,
      BOMItem.BOMItemCreatedByUser,
      BOMItem.BOMItemLastChangeDate,
      BOMItem.BOMItemLastChangedByUser,
      OperationActivityComponent.CreatedByUser,
      OperationActivityComponent.CreationDateTime,
      OperationActivityComponent.ChangedBy,
      OperationActivityComponent.LastChangeDateTime,

      /* Associations */
      _BOMItemCategoryText,
      _DistrKeyText,
      _ExplosionTypeText,
      _SpecialProcTypeText,
      _AltItemStrategyText,
      _ReferencePointText,
      _CostingRelevantText,
      _MatProvisionIndText,
      _IssueLocationText,
      _ProdSupplyAreaText,
      _SparePartText,
      _SalesRelevantText,
      _PurchasingOrgText,
      _PurchasingGroupText,
      _MaterialGroupText,
      _SupplierText,
      _CostElementText,
      _MaterialText,
      _ProdnModOperationActivity,
      _ProductionModel,
      _OpActivityComponentInstance
}
where
  OperationActivityComponent.BillOfOperationsType = 'V'
// and(

//      OperationComponent.BillOfMaterialCategory       = 'K'

//   or OperationComponent.BillOfMaterialCategory       = 'M'

// )