P_PRODUCTIONMODELCOMPONENT
Prodn Model Sales Order Component
P_PRODUCTIONMODELCOMPONENT is a CDS View in S/4HANA. Prodn Model Sales Order Component. It contains 95 fields. 5 CDS views read from this table.
CDS Views using this table (5)
| View | Type | Join | VDM | Description |
|---|---|---|---|---|
| I_ProdnModelComponentInstance | view_entity | from | COMPOSITE | Production Model Component Instance |
| I_ProdnModOpActyCompInstance | view_entity | inner | COMPOSITE | Prodn Model Op Acty Component Instance |
| I_ProdnModOpActyComponent | view_entity | inner | COMPOSITE | Production Model Activity Component |
| I_ProdnModOperationComponent | view_entity | inner | COMPOSITE | Production Model Operation Component |
| I_ProductionModelComponent | view_entity | from | COMPOSITE | Production Model Component |
Fields (95)
| Key | Field | CDS Fields | Used in Views |
|---|---|---|---|
| KEY | BillOfOperationsVersion | BillOfOperationsVersion | 4 |
| KEY | ProductionModelComponentUUID | ProductionModelComponentUUID | 5 |
| KEY | ProductionModelUUID | ProductionModelUUID | 5 |
| AlternativeItemGroup | AlternativeItemGroup | 3 | |
| AlternativeItemPriority | AlternativeItemPriority | 3 | |
| AlternativeItemStrategy | AlternativeItemStrategy | 3 | |
| BillOfMaterial | BillOfMaterial | 2 | |
| BillOfMaterialCategory | BillOfMaterialCategory | 5 | |
| BillOfMaterialComponent | BillOfMaterialComponent | 3 | |
| BillOfMaterialItemCategory | BillOfMaterialItemCategory | 3 | |
| BillOfMaterialItemNodeNumber | BillOfMaterialItemNodeNumber | 5 | |
| BillOfMaterialItemObjectType | BillOfMaterialItemObjectType | 3 | |
| BillOfMaterialItemQuantity | BillOfMaterialItemQuantity | 3 | |
| BillOfMaterialItemUnit | BillOfMaterialItemUnit | 5 | |
| BillOfMaterialVariant | BillOfMaterialVariant | 4 | |
| BillOfMaterialVariantUsage | BillOfMaterialVariantUsage | 5 | |
| BillOfMaterialVersion | BillOfMaterialVersion | 4 | |
| BillOfOperationsGroup | BillOfOperationsGroup | 4 | |
| BillOfOperationsType | BillOfOperationsType | 5 | |
| BillOfOperationsVariant | BillOfOperationsVariant | 4 | |
| BOMIsRecursive | BOMIsRecursive | 3 | |
| BOMItemCreatedByUser | BOMItemCreatedByUser | 3 | |
| BOMItemDescription | BOMItemDescription | 3 | |
| BOMItemHasFixedQuantity | BOMItemHasFixedQuantity | 3 | |
| BOMItemInternalChangeCount | BOMItemInternalChangeCount | 5 | |
| BOMItemIsCostingRelevant | MaterialCompCostingRelevancy | 3 | |
| BOMItemIsPlantMaintRelevant | BOMItemIsPlantMaintRelevant | 3 | |
| BOMItemIsSalesRelevant | BOMItemSalesRelevancy | 3 | |
| BOMItemIsSparePart | MatlComponentSparePartType | 3 | |
| BOMItemLastChangeDate | BOMItemLastChangeDate | 3 | |
| BOMItemLastChangedByUser | BOMItemLastChangedByUser | 3 | |
| BOMItemRecordCreationDate | BOMItemRecordCreationDate | 3 | |
| BOMItemSorter | BOMItemSorter | 3 | |
| BOMItemText2 | BOMItemText2 | 3 | |
| ChgToEngineeringChgDocument | ChgToEngineeringChgDocument | 3 | |
| ComponentDescription | ComponentDescription | 3 | |
| ComponentScrapInPercent | ComponentScrapInPercent | 3 | |
| CostElement | CostElement | 3 | |
| Creditor | Creditor | 3 | |
| Currency | Currency | 3 | |
| DeliveryDurationInDays | DeliveryDurationInDays | 3 | |
| DependencyObjectNumber | DependencyObjectNumber | 3 | |
| DiscontinuationGroup | DiscontinuationGroup | 3 | |
| DistrKeyCompConsumption | DistrKeyCompConsumption | 3 | |
| DocNumber | DocNumber | 3 | |
| DocumentIsCreatedByCAD | DocumentIsCreatedByCAD | 3 | |
| DocumentPart | DocumentPart | 3 | |
| DocumentType | DocumentType | 3 | |
| DocumentVersion | DocumentVersion | 3 | |
| EngineeringChangeDocument | EngineeringChangeDocument | 3 | |
| ExplosionType | ExplosionType | 3 | |
| FollowUpGroup | FollowUpGroup | 3 | |
| FormulaKey | FormulaKey | 3 | |
| GoodsReceiptDuration | GoodsReceiptDuration | 3 | |
| IdentifierBOMItem | IdentifierBOMItem | 3 | |
| InheritedNodeNumberForBOMItem | InheritedNodeNumberForBOMItem | 5 | |
| InheritedNodeNumberVersionBOM | InheritedNodeNumberVersionBOM | 5 | |
| IsALE | IsALE | 3 | |
| IsAssembly | IsAssembly | 3 | |
| IsBOMRecursiveAllowed | IsBOMRecursiveAllowed | 3 | |
| IsBulkMaterial | IsBulkMaterial | 3 | |
| IsDeleted | IsDeleted | 3 | |
| IsEngineeringRelevant | IsEngineeringRelevant | 3 | |
| IsMaterialProvision | MaterialProvisionType | 3 | |
| IsNetScrap | IsNetScrap | 3 | |
| IsPhantomItem | IsPhantomItem | 3 | |
| IsPMAssemblyRelevant | IsPMAssemblyRelevant | 3 | |
| IsProductionRelevant | IsProductionRelevant | 3 | |
| IsSubItem | IsSubItem | 3 | |
| LeadTimeOffset | LeadTimeOffset | 3 | |
| Material | Material | 4 | |
| MaterialComponentPrice | MaterialComponentPrice | 3 | |
| MaterialGroup | MaterialGroup | 3 | |
| MaterialIsCoProduct | MaterialIsCoProduct | 3 | |
| OperationLeadTimeOffset | OperationLeadTimeOffset | 3 | |
| OperationScrapInPercent | OperationScrapInPercent | 3 | |
| OpsLeadTimeOffsetUnit | OpsLeadTimeOffsetUnit | 3 | |
| Plant | Plant | 5 | |
| PreliminaryMaterial | PreliminaryMaterial | 3 | |
| ProdOrderIssueLocation | ProdOrderIssueLocation | 3 | |
| ProductionSupplyArea | ProductionSupplyArea | 3 | |
| PurchasingGroup | PurchasingGroup | 3 | |
| PurchasingOrganization | PurchasingOrganization | 3 | |
| QuantityVariableSizeItem | QuantityVariableSizeItem | 3 | |
| ReferencePoint | ReferencePoint | 3 | |
| Size1 | Size1 | 3 | |
| Size2 | Size2 | 3 | |
| Size3 | Size3 | 3 | |
| SpecialProcurementType | SpecialProcurementType | 3 | |
| UnitOfMeasureForSize1To3 | UnitOfMeasureForSize1To3 | 3 | |
| UnitOfMeasureForVarSizeItem | VariableSizeItemUnit | 3 | |
| UsageProbabilityPercent | UsageProbabilityPercent | 3 | |
| ValidityEndDate | ValidityEndDate | 3 | |
| ValidityStartDate | ValidityStartDate | 3 | |
| VariableSizeCompUnitOfMeasure | VariableSizeCompUnitOfMeasure | 3 |
@EndUserText.label: 'Prodn Model Sales Order Component'
@AccessControl.authorizationCheck: #NOT_REQUIRED
@VDM.private:true
@VDM.viewType: #COMPOSITE
@ObjectModel.usageType:{
serviceQuality: #B,
sizeCategory: #XL,
dataClass: #TRANSACTIONAL
}
define view entity P_ProductionModelComponent
as select from I_BillOfMaterialItemBasic as BOMItem
inner join I_BillOfMaterialValidItem as ValidItem on BOMItem.BillOfMaterialCategory = ValidItem.BillOfMaterialCategory
and BOMItem.BillOfMaterial = ValidItem.BillOfMaterial
and BOMItem.BillOfMaterialItemNodeNumber = ValidItem.BillOfMaterialItemNodeNumber
inner join I_ProductionModelBasic as ProductionModel on ProductionModel.BillOfMaterialCategory = ValidItem.BillOfMaterialCategory
and ProductionModel.BillOfMaterial = ValidItem.BillOfMaterial
and ProductionModel.BillOfMaterialVariant = ValidItem.BillOfMaterialVariant
and ProductionModel.Material = ProductionModel.Material
and ProductionModel.Plant = ProductionModel.Plant
and ProductionModel.SalesOrder = ProductionModel.SalesOrder
and ProductionModel.SalesOrderItem = ProductionModel.SalesOrderItem
left outer to one join I_SalesOrderBOMLink as SalesOrderBOMLink on SalesOrderBOMLink.BillOfMaterial = BOMItem.BillOfMaterial
and SalesOrderBOMLink.BillOfMaterialVariant = ValidItem.BillOfMaterialVariant
left outer to one join I_MaterialBOMLink as MaterialBOMLink on MaterialBOMLink.BillOfMaterial = ProductionModel.BillOfMaterial
and MaterialBOMLink.BillOfMaterialVariant = ProductionModel.BillOfMaterialVariant
and MaterialBOMLink.BillOfMaterialVariantUsage = ProductionModel.BillOfMaterialVariantUsage
and MaterialBOMLink.BillOfMaterialVariant = ProductionModel.BillOfMaterialVariant
and MaterialBOMLink.Material = ProductionModel.Material
and MaterialBOMLink.Plant = ProductionModel.Plant
inner join I_ProdnModBOOVersBOMAssgmt as BOOBOMAssignment on BOOBOMAssignment.BillOfOperationsType = ProductionModel.BillOfOperationsType
and BOOBOMAssignment.BillOfOperationsGroup = ProductionModel.BillOfOperationsGroup
and BOOBOMAssignment.BillOfOperationsVariant = ProductionModel.BillOfOperationsVariant
and ValidItem.BillOfMaterialVersion = BOOBOMAssignment.BillOfMaterialVersion
left outer to one join I_MatlProcurementProfile as t460a on t460a.MaterialProcurementProfile = BOMItem.SpecialProcurementType
and t460a.Plant = ProductionModel.Plant
left outer to one join I_Supplier as Supplier on BOMItem.Creditor = Supplier.Supplier
and( Supplier.IsBusinessPurposeCompleted is null
or Supplier.IsBusinessPurposeCompleted = '' )
left outer to one join I_MaterialText as _MaterialText on BOMItem.BillOfMaterialComponent = _MaterialText.Material
and _MaterialText.Language = $session.system_language
left outer to one join I_BillOfMaterialItemCategory as _BOMItemCategory on _BOMItemCategory.BillOfMaterialItemCategory = BOMItem.BillOfMaterialItemCategory
association [0..1] to I_MaterialText as _MaterialTextEN on $projection.BillOfMaterialComponent = _MaterialTextEN.Material
and _MaterialTextEN.Language = 'E'
{
key ProductionModel.ProductionModelUUID as ProductionModelUUID,
key BOMItem.BillOfMaterialItemUUID as ProductionModelComponentUUID,
key BOOBOMAssignment.BillOfOperationsVersion as BillOfOperationsVersion,
ProductionModel.BillOfMaterialCategory as BillOfMaterialCategory,
ProductionModel.BillOfMaterial as BillOfMaterial,
ProductionModel.Material as Material,
ProductionModel.Plant as Plant,
ProductionModel.BillOfMaterialVariant as BillOfMaterialVariant,
ProductionModel.BillOfMaterialVariantUsage as BillOfMaterialVariantUsage,
ProductionModel.BillOfOperationsGroup as BillOfOperationsGroup,
ProductionModel.BillOfOperationsType as BillOfOperationsType,
ProductionModel.BillOfOperationsVariant as BillOfOperationsVariant,
BOOBOMAssignment.BillOfMaterialVersion as BillOfMaterialVersion,
ValidItem.InheritedNodeNumberForBOMItem as InheritedNodeNumberForBOMItem,
BOMItem.BillOfMaterialItemNodeNumber as BillOfMaterialItemNodeNumber,
BOMItem.BOMItemInternalChangeCount as BOMItemInternalChangeCount,
BOMItem.InheritedNodeNumberVersionBOM as InheritedNodeNumberVersionBOM,
@Semantics.businessDate.from: true
BOMItem.ValidityStartDate as ValidityStartDate,
@Semantics.businessDate.to: true
cast('99991231' as datub ) as ValidityEndDate,
BOMItem.EngineeringChangeDocument as EngineeringChangeDocument,
cast( BOMItem.EngineeringChangeDocument as aenra preserving type ) as ChgToEngineeringChgDocument,
BOMItem.BOMItemRecordCreationDate as BOMItemRecordCreationDate,
BOMItem.BOMItemCreatedByUser as BOMItemCreatedByUser,
BOMItem.BOMItemLastChangeDate as BOMItemLastChangeDate,
BOMItem.BOMItemLastChangedByUser as BOMItemLastChangedByUser,
BOMItem.BillOfMaterialComponent as BillOfMaterialComponent,
BOMItem.BillOfMaterialItemCategory as BillOfMaterialItemCategory,
BOMItem.BillOfMaterialItemNumber as BillOfMaterialItemNumber,
BOMItem.BillOfMaterialItemUnit as BillOfMaterialItemUnit,
@Semantics.quantity.unitOfMeasure : 'BillOfMaterialItemUnit'
case when _BOMItemCategory.FixedItemCategory = 'R'
then BOMItem.NumberOfVariableSizeItem
else BOMItem.BillOfMaterialItemQuantity
end as BillOfMaterialItemQuantity,
BOMItem.IsSubItem as IsSubItem,
BOMItem.BOMItemSorter as BOMItemSorter,
BOMItem.FixedQuantity as BOMItemHasFixedQuantity,
BOMItem.PurchasingGroup as PurchasingGroup,
BOMItem.Currency as Currency,
@Semantics.amount.currencyCode : 'Currency'
BOMItem.MaterialComponentPrice as MaterialComponentPrice,
case when
( BOMItem.IdentifierBOMItem is null or BOMItem.IdentifierBOMItem = '')
then BOMItem.InheritedNodeNumberForBOMItem
else
BOMItem.IdentifierBOMItem
end as IdentifierBOMItem,
BOMItem.ComponentScrapInPercent as ComponentScrapInPercent,
BOMItem.OperationScrapInPercent as OperationScrapInPercent,
BOMItem.IsNetScrap as IsNetScrap,
@Semantics.quantity.unitOfMeasure : 'VariableSizeCompUnitOfMeasure'
BOMItem.NumberOfVariableSizeItem as NumberOfVariableSizeItem,
case when _BOMItemCategory.BillOfMaterialItemCategory = 'R'
then BOMItem.BillOfMaterialItemUnit
else ValidItem.VariableSizeItemUnit
end as VariableSizeCompUnitOfMeasure,
@Semantics.quantity.unitOfMeasure : 'UnitOfMeasureForVarSizeItem'
BOMItem.QuantityVariableSizeItem as QuantityVariableSizeItem,
BOMItem.FormulaKey as FormulaKey,
//tcs03.roame as UnitOfMeasureForVarSizeItem,
ValidItem.VariableSizeItemUnit as UnitOfMeasureForVarSizeItem,
case
when _BOMItemCategory.FixedItemCategory = 'L'
then
case when _MaterialText.MaterialName is not null or _MaterialText.MaterialName <> ''
then _MaterialText.MaterialName
else _MaterialTextEN.MaterialName
end
when _BOMItemCategory.FixedItemCategory = 'R' and (BOMItem.BillOfMaterialComponent is not null)
then
case when _MaterialText.MaterialName is not null or _MaterialText.MaterialName <> ''
then _MaterialText.MaterialName
else _MaterialTextEN.MaterialName
end
when _BOMItemCategory.FixedItemCategory = 'R' and (BOMItem.BillOfMaterialComponent = '')
then BOMItem.BOMItemText1
when _BOMItemCategory.FixedItemCategory = 'N' and (BOMItem.BillOfMaterialComponent <> '')
then
case when _MaterialText.MaterialName is not null or _MaterialText.MaterialName <> ''
then _MaterialText.MaterialName
else _MaterialTextEN.MaterialName
end
when _BOMItemCategory.FixedItemCategory = 'N' and (BOMItem.BillOfMaterialComponent = '')
then BOMItem.BOMItemText1
else
BOMItem.BOMItemText1
end as ComponentDescription,
BOMItem.BOMItemText1 as BOMItemDescription,
BOMItem.BOMItemText2 as BOMItemText2,
BOMItem.MaterialGroup as MaterialGroup,
BOMItem.DocumentType as DocumentType,
BOMItem.DocNumber as DocNumber,
BOMItem.DocumentVersion as DocumentVersion,
BOMItem.DocumentPart as DocumentPart,
BOMItem.DependencyObjectNumber as DependencyObjectNumber,
BOMItem.IsBulkMaterial as IsBulkMaterial,
BOMItem.BOMItemIsSparePart as BOMItemIsSparePart,
BOMItem.BOMItemIsSalesRelevant as BOMItemIsSalesRelevant,
BOMItem.IsProductionRelevant as IsProductionRelevant,
BOMItem.BOMItemIsPlantMaintRelevant as BOMItemIsPlantMaintRelevant,
BOMItem.BOMItemIsCostingRelevant as BOMItemIsCostingRelevant,
BOMItem.IsEngineeringRelevant as IsEngineeringRelevant,
BOMItem.SpecialProcurementType as SpecialProcurementType,
BOMItem.IsBOMRecursiveAllowed as IsBOMRecursiveAllowed,
BOMItem.OperationLeadTimeOffset as OperationLeadTimeOffset,
BOMItem.OpsLeadTimeOffsetUnit as OpsLeadTimeOffsetUnit,
BOMItem.IsMaterialProvision as IsMaterialProvision,
BOMItem.BOMIsRecursive as BOMIsRecursive,
BOMItem.DocumentIsCreatedByCAD as DocumentIsCreatedByCAD,
BOMItem.DistrKeyCompConsumption as DistrKeyCompConsumption,
BOMItem.DeliveryDurationInDays as DeliveryDurationInDays,
case when Supplier.IsBusinessPurposeCompleted is null or Supplier.IsBusinessPurposeCompleted = ''
then BOMItem.Creditor else
cast (' ' as lifnr preserving type)
end as Creditor,
BOMItem.CostElement as CostElement,
BOMItem.Size1 as Size1,
BOMItem.Size2 as Size2,
BOMItem.Size3 as Size3,
BOMItem.UnitOfMeasureForSize1To3 as UnitOfMeasureForSize1To3,
BOMItem.ProdOrderIssueLocation as ProdOrderIssueLocation,
BOMItem.MaterialIsCoProduct as MaterialIsCoProduct,
BOMItem.ExplosionType as ExplosionType,
BOMItem.FollowUpGroup as FollowUpGroup,
BOMItem.DiscontinuationGroup as DiscontinuationGroup,
BOMItem.ReferencePoint as ReferencePoint,
BOMItem.LeadTimeOffset as LeadTimeOffset,
BOMItem.ProductionSupplyArea as ProductionSupplyArea,
BOMItem.IsALE as IsALE,
BOMItem.GoodsReceiptDuration as GoodsReceiptDuration,
BOMItem.PurchasingOrganization as PurchasingOrganization,
BOMItem.IsDeleted as IsDeleted,
//Alternative Item Fields
BOMItem.AlternativeItemGroup as AlternativeItemGroup,
BOMItem.AlternativeItemPriority as AlternativeItemPriority,
BOMItem.AlternativeItemStrategy as AlternativeItemStrategy,
BOMItem.UsageProbabilityPercent as UsageProbabilityPercent,
cast(' ' as stkkz preserving type) as IsPMAssemblyRelevant,
cast(' ' as xfeld preserving type) as IsAssembly,
case
when t460a.IsPhantomItem = 'X'
then cast('X' as xfeld preserving type)
else
cast('' as xfeld preserving type)
end as IsPhantomItem,
//t460a.SpclProcmtTypeIsConsistent,
cast(BOMItem.BOMItemText1 as maktx preserving type ) as PreliminaryMaterial,
BOMItem.ObjectType as BillOfMaterialItemObjectType
}
where
BOMItem.BillOfMaterialCategory = 'K'
or BOMItem.BillOfMaterialCategory = 'M'