I_MFGORDERITEM
Manufacturing Order Item
I_MFGORDERITEM is a CDS View in S/4HANA. Manufacturing Order Item. It contains 30 fields. 7 CDS views read from this table.
CDS Views using this table (7)
| View | Type | Join | VDM | Description |
|---|---|---|---|---|
| A_ProcessOrderItem | view_entity | from | COMPOSITE | API Process Order Items |
| A_ProductionOrderItem | view_entity | from | COMPOSITE | API Production Order Items |
| C_MfgOrderObjPgItem | view_entity | from | CONSUMPTION | Manufacturing Order Items : Object Page |
| C_ProcessOrderObjPgItem | view_entity | from | CONSUMPTION | Process Order Items |
| I_MRPMfgOrder | view | inner | COMPOSITE | MRP Manufacturing Order |
| P_DemandDrivenOrders | view | from | COMPOSITE | |
| P_ProductionOrderQuickView | view | from | BASIC | P view for Production Order |
Fields (30)
| Key | Field | CDS Fields | Used in Views |
|---|---|---|---|
| KEY | ManufacturingOrder | ManufacturingOrder,OrderID | 3 |
| KEY | ManufacturingOrderItem | ManufacturingOrderItem | 2 |
| KEY | Material | Material,TopLevelOrderMaterial | 4 |
| KEY | MRPArea | MRPArea | 2 |
| KEY | ProductionPlant | ProductionPlant | 3 |
| _Material | _Material | 2 | |
| _MfgOrder | _MfgOrder | 1 | |
| _MRPArea | _MRPArea | 1 | |
| _MRPPlant | _MRPPlant | 1 | |
| _ProductionPlant | _ProductionPlant | 1 | |
| _StorageLocation | _StorageLocation | 1 | |
| BaseUnit | BaseUnit | 1 | |
| ManufacturingOrderCategory | ManufacturingOrderCategory | 1 | |
| ManufacturingOrderType | ManufacturingOrderType | 1 | |
| MaterialGoodsReceiptDuration | MaterialGoodsReceiptDuration | 1 | |
| MfgOrderConfirmedEndDate | Enddate | 1 | |
| MfgOrderConfirmedEndTime | EndTime | 1 | |
| MfgOrderItemActualDeliveryDate | MfgOrderItemActualDeliveryDate | 1 | |
| MfgOrderItemActualDeviationQty | MfgOrderItemActualDeviationQty | 1 | |
| MfgOrderItemGoodsReceiptQty | MfgOrderItemGoodsReceiptQty | 1 | |
| MfgOrderItemPlannedScrapQty | MfgOrderItemPlannedScrapQty | 1 | |
| MfgOrderItemPlannedTotalQty | MfgOrderItemPlannedTotalQty | 1 | |
| MfgOrderItemPlndDeliveryDate | MfgOrderItemPlndDeliveryDate | 1 | |
| MRPPlant | MRPPlant | 2 | |
| ProductionUnit | ProductionUnit | 1 | |
| ProductionVersion | ProductionVersion | 1 | |
| SalesOrder | SalesOrder | 1 | |
| SalesOrderItem | SalesOrderItem | 1 | |
| StorageLocation | StorageLocation | 1 | |
| WBSElementInternalID | WBSElementInternalID | 1 |
@AbapCatalog.sqlViewName: 'IPPMFGORDITEM'
@AbapCatalog.compiler.compareFilter: true
@AccessControl.authorizationCheck: #MANDATORY
@AccessControl.personalData.blocking: #NOT_REQUIRED
@AccessControl.privilegedAssociations: ['_MRPController', '_ProductionSupervisor']
@Analytics.dataCategory: #DIMENSION
@ClientHandling.algorithm: #SESSION_VARIABLE
@ClientHandling.type: #CLIENT_DEPENDENT
@Metadata.allowExtensions: true
@ObjectModel.representativeKey: 'ManufacturingOrderItem'
@ObjectModel.semanticKey: ['ManufacturingOrder', 'ManufacturingOrderItem']
@ObjectModel.usageType: {serviceQuality: #B, sizeCategory: #L, dataClass: #TRANSACTIONAL}
@VDM.lifecycle.status: #DEPRECATED
@VDM.lifecycle.successor: 'I_ManufacturingOrderItem'
@VDM.viewType: #BASIC
@EndUserText.label: 'Manufacturing Order Item'
/*+[hideWarning] { "IDS" : [ "CALCULATED_FIELD_CHECK" ] } */
define view I_MfgOrderItem
as select from I_OrderItem as item
inner join I_LogisticsOrderBasic as head on head.OrderID = item.OrderID
association [1..1] to I_MfgOrder as _MfgOrder on $projection.ManufacturingOrder = _MfgOrder.ManufacturingOrder
association [1..1] to I_MfgOrderCategory as _MfgOrderCategory on $projection.ManufacturingOrderCategory = _MfgOrderCategory.ManufacturingOrderCategory
association [1..1] to I_MfgOrderType as _MfgOrderType on $projection.ManufacturingOrderType = _MfgOrderType.ManufacturingOrderType
association [0..1] to I_MRPController as _MRPController on $projection.MRPPlant = _MRPController.Plant
and $projection.MRPController = _MRPController.MRPController
association [0..1] to I_ProductionSupervisor as _ProductionSupervisor on $projection.ProductionPlant = _ProductionSupervisor.Plant
and $projection.ProductionSupervisor = _ProductionSupervisor.ProductionSupervisor
{
// Key
@ObjectModel.foreignKey.association: '_MfgOrder'
key cast(item.OrderID as manufacturingorder preserving type) as ManufacturingOrder,
key cast(item.OrderItem as manufacturingorderitem preserving type) as ManufacturingOrderItem,
// Category and Type
@ObjectModel.foreignKey.association: '_MfgOrderCategory'
cast(item.OrderCategory as manufacturingordercategory preserving type) as ManufacturingOrderCategory,
@ObjectModel.foreignKey.association: '_MfgOrderType'
cast(item.OrderType as manufacturingordertype preserving type) as ManufacturingOrderType,
// Attributes
case item.OrderIsReleased
when 'X' then '1'
else ''
end as MfgOrderReleasedCode,
item.IsMarkedForDeletion as MfgOrderIsToBeDeleted,
item.IsCompletelyDelivered as MfgOrderItemIsFinallyDelivered,
item.OrderItemIsNotRelevantForMRP,
// Assignments
@ObjectModel.foreignKey.association: '_Material'
item.Material,
@ObjectModel.foreignKey.association: '_ProductionPlant'
item.ProductionPlant,
@ObjectModel.foreignKey.association: '_MRPPlant'
item.MRPPlant,
@ObjectModel.foreignKey.association: '_MRPController'
head.MRPController,
@ObjectModel.foreignKey.association: '_ProductionSupervisor'
head.ProductionSupervisor,
@ObjectModel.foreignKey.association: '_Reservation'
head.Reservation,
@ObjectModel.foreignKey.association: '_ProductionVersion'
item.ProductionVersion,
@ObjectModel.foreignKey.association: '_MRPArea'
item.MRPArea,
@ObjectModel.foreignKey.association: '_SalesOrder'
item.SalesOrder,
@ObjectModel.foreignKey.association: '_SalesOrderItem'
item.SalesOrderItem,
@ObjectModel.foreignKey.association: '_WBSElement'
item.WBSElementInternalID,
-- @ObjectModel.foreignKey.association: '_QuotaArrangement'
item.QuotaArrangement,
-- @ObjectModel.foreignKey.association: '_QuotaArrangementItem'
item.QuotaArrangementItem,
@ObjectModel.foreignKey.association: '_SettlementReservation'
item.SettlementReservation,
-- @ObjectModel.foreignKey.association: '_SettlementReservationItem'
item.SettlementReservationItem,
@ObjectModel.foreignKey.association: '_CoProductReservation'
item.CoProductReservation,
-- @ObjectModel.foreignKey.association: '_CoProductReservationItem'
item.CoProductReservationItem,
@ObjectModel.foreignKey.association: '_MatlProcurementCategory'
item.MaterialProcurementCategory,
@ObjectModel.foreignKey.association: '_MatlProcurementType'
item.MaterialProcurementType,
item.SerialNumberAssgmtProfile,
item.NumberOfSerialNumbers,
item.MfgOrderItemReplnmtElmntType,
//Changes for AVC
item.ProductConfiguration,
cast('' as vchclf_side_effect_data) as ConfigurationSideEffect,
cast(item.ObjectInternalID as pph_objnr preserving type) as ManufacturingObject,
item.QuantityDistributionKey,
item.EffectivityParameterVariant,
// Goods Receipt data
item.GoodsReceiptIsExpected as MfgOrderItemGdsRcptIsAllowed,
item.GoodsReceiptIsNonValuated as MfgOrderItemGdsRcptIsNonVltd,
item.MaterialGoodsReceiptDuration as MaterialGoodsReceiptDuration,
item.UnderdelivTolrtdLmtRatioInPct as MfgOrderItmAllowedUnderdelyPct,
item.OverdelivTolrtdLmtRatioInPct as MfgOrderItemAllowedOverdelyPct,
item.UnlimitedOverdeliveryIsAllowed as MfgOrdItmHasUnlmtdOverdelivery,
@ObjectModel.foreignKey.association: '_StorageLocation'
item.StorageLocation,
@ObjectModel.foreignKey.association: '_Batch'
item.Batch,
@ObjectModel.foreignKey.association: '_InventoryValuationType'
item.InventoryValuationType,
item.InventoryValuationCategory,
@ObjectModel.foreignKey.association: '_InventoryUsabilityCode'
item.InventoryUsabilityCode,
@ObjectModel.foreignKey.association: '_InventorySpecialStockType'
item.InventorySpecialStockType,
@ObjectModel.foreignKey.association: '_InventorySpecialStockValnType'
item.InventorySpecialStockValnType,
@ObjectModel.foreignKey.association: '_ConsumptionPosting'
item.ConsumptionPosting,
@Semantics.text: true
item.GoodsRecipientName,
@Semantics.text: true
item.UnloadingPointName,
item.StockSegment,
// Order Header Dates and Times
cast(head.PlannedStartDate as mfgorderplannedstartdate preserving type) as MfgOrderPlannedStartDate,
cast(head.PlannedStartTime as mfgorderplannedstarttime preserving type) as MfgOrderPlannedStartTime,
cast(head.ScheduledBasicStartDate as mfgorderscheduledstartdate preserving type) as MfgOrderScheduledStartDate,
cast(head.ScheduledBasicStartTime as mfgorderscheduledstarttime preserving type) as MfgOrderScheduledStartTime,
cast(head.ActualStartDate as mfgorderactualstartdate preserving type) as MfgOrderActualStartDate,
cast(head.ActualStartTime as mfgorderactualstarttime preserving type) as MfgOrderActualStartTime,
cast(head.PlannedEndDate as mfgorderplannedenddate preserving type) as MfgOrderPlannedEndDate,
cast(head.PlannedEndTime as mfgorderplannedendtime preserving type) as MfgOrderPlannedEndTime,
cast(head.ScheduledBasicEndDate as mfgorderscheduledenddate preserving type) as MfgOrderScheduledEndDate,
cast(head.ScheduledBasicEndTime as mfgorderscheduledendtime preserving type) as MfgOrderScheduledEndTime,
cast(head.ConfirmedEndDate as mfgorderconfirmedenddate preserving type) as MfgOrderConfirmedEndDate,
cast(head.ConfirmedEndTime as mfgorderconfirmedendtime preserving type) as MfgOrderConfirmedEndTime,
cast(head.ActualEndDate as mfgorderactualenddate preserving type) as MfgOrderActualEndDate,
cast(head.ScheduledReleaseDate as mfgorderscheduledreleasedate preserving type) as MfgOrderScheduledReleaseDate,
cast(head.ActualReleasedDate as mfgorderactualreleasedate preserving type) as MfgOrderActualReleaseDate,
// Order Item Dates
cast(item.PlannedEndDate as mfgorderitemplannedenddate preserving type) as MfgOrderItemPlannedEndDate,
cast(item.ScheduledBasicEndDate as mfgorderitemscheduledenddate preserving type) as MfgOrderItemScheduledEndDate,
item.PlannedDeliveryDate as MfgOrderItemPlndDeliveryDate,
item.ActualDeliveryDate as MfgOrderItemActualDeliveryDate,
item.TotalCommitmentDate as MfgOrderItemTotalCmtmtDate,
// Item Quantities and UoM
@Semantics.unitOfMeasure: true
item.ProductionUnit,
@Semantics.quantity.unitOfMeasure: 'ProductionUnit'
@DefaultAggregation: #SUM
cast(item.ItemQuantity as co_psmng preserving type) as MfgOrderItemPlannedTotalQty,
@Semantics.quantity.unitOfMeasure: 'ProductionUnit'
@DefaultAggregation: #SUM
cast(item.MfgOrderItemPlannedScrapQty as co_psamg preserving type) as MfgOrderItemPlannedScrapQty,
@Semantics.quantity.unitOfMeasure: 'ProductionUnit'
@DefaultAggregation: #SUM
cast(item.ItemQuantity - item.MfgOrderItemPlannedScrapQty as plannedyieldquantity) as MfgOrderItemPlannedYieldQty,
@Semantics.quantity.unitOfMeasure: 'ProductionUnit'
@DefaultAggregation: #SUM
cast(item.MfgOrderItemGoodsReceiptQty as co_wemng preserving type) as MfgOrderItemGoodsReceiptQty,
@Semantics.quantity.unitOfMeasure: 'ProductionUnit'
@DefaultAggregation: #SUM
cast(item.MfgOrderItemActualDeviationQty as co_iamng preserving type) as MfgOrderItemActualDeviationQty,
@Semantics.quantity.unitOfMeasure: 'ProductionUnit'
@DefaultAggregation: #SUM
cast(item.MfgOrderItemOpenYieldQty as openyieldquantity preserving type) as MfgOrderItemOpenYieldQty,
// Header Quantities and UoM
@Semantics.quantity.unitOfMeasure: 'ProductionUnit'
@DefaultAggregation: #SUM
cast(head.OrderConfirmedYieldQty as co_igmng preserving type) as MfgOrderConfirmedYieldQty,
@Semantics.quantity.unitOfMeasure: 'ProductionUnit'
@DefaultAggregation: #SUM
cast(head.OrderConfirmedScrapQty as co_iasmg preserving type) as MfgOrderConfirmedScrapQty,
@Semantics.quantity.unitOfMeasure: 'ProductionUnit'
@DefaultAggregation: #SUM
cast(head.MfgOrderConfirmedReworkQty as rmnga preserving type) as MfgOrderConfirmedReworkQty,
@Semantics.quantity.unitOfMeasure: 'ProductionUnit'
@DefaultAggregation: #SUM
cast(head.TotalConfirmedQuantity as pph_tmnga) as MfgOrderConfirmedTotalQty,
@Semantics.quantity.unitOfMeasure: 'ProductionUnit'
@DefaultAggregation: #SUM
cast(head.OrderPlannedTotalQty as gamng preserving type) as MfgOrderPlannedTotalQty,
@Semantics.quantity.unitOfMeasure: 'ProductionUnit'
@DefaultAggregation: #SUM
cast(head.OrderPlannedScrapQty as gasmg preserving type) as MfgOrderPlannedScrapQty,
// Planned Order data
@ObjectModel.foreignKey.association: '_PlannedOrder'
item.PlannedOrder,
item.PlndOrderPlannedStartDate,
item.PlannedOrderOpeningDate,
@Semantics.unitOfMeasure: true
item.BaseUnit,
@Semantics.quantity.unitOfMeasure: 'BaseUnit'
@DefaultAggregation: #SUM
item.OrderPlannedTotalQty as PlndOrderPlannedTotalQty,
@Semantics.quantity.unitOfMeasure: 'BaseUnit'
@DefaultAggregation: #SUM
item.OrderPlannedScrapQty as PlndOrderPlannedScrapQty,
// Assignments FI/CO
@ObjectModel.foreignKey.association: '_BusinessArea'
item.BusinessArea,
@ObjectModel.foreignKey.association: '_AccountAssignmentCategory'
item.AccountAssignmentCategory,
// Fashion Maufacturing Fields
item.ProductSeasonYear as ProductSeasonYear,
item.ProductSeason as ProductSeason,
item.ProductCollection as ProductCollection,
item.ProductTheme as ProductTheme,
// Associations
_MfgOrder,
_MfgOrderCategory,
_MfgOrderType,
item._ProductionPlant,
_ProductionSupervisor,
_MRPController,
item._MRPPlant,
item._MRPArea,
item._PlannedOrder,
item._Material,
item._Product,
item._BaseUnit,
item._ProductionUnit,
item._ProductionVersion,
head._Reservation,
item._MatlProcurementCategory,
item._MatlProcurementType,
item._Batch,
item._StorageLocation,
item._InventorySpecialStockType,
item._InventorySpecialStockValnType,
item._InventoryValuationType,
item._InventoryUsabilityCode,
item._ConsumptionPosting,
item._SalesOrder,
item._SalesOrderItem,
item._WBSElement,
item._QuotaArrangement,
item._QuotaArrangementItem,
item._SettlementReservation,
item._SettlementReservationItem,
item._CoProductReservation,
item._CoProductReservationItem,
item._SerialNumberProfile,
item._BusinessArea,
item._AccountAssignmentCategory
}
where
( item.OrderCategory = '10'
or item.OrderCategory = '40' ); //Manufacturing orders only
/*+[internal] {
"BASEINFO":
{
"FROM":
[
"I_LOGISTICSORDERBASIC",
"I_ORDERITEM"
],
"ASSOCIATED":
[
"I_ACCOUNTASSIGNMENTCATEGORY",
"I_BATCH",
"I_BUSINESSAREA",
"I_CONSUMPTIONPOSTING",
"I_INVENTORYSPECIALSTOCKTYPE",
"I_INVENTORYVALUATIONTYPE",
"I_INVTRYSPECIALSTOCKVALNTYPE",
"I_MATERIAL",
"I_MATLPROCUREMENTCATEGORY",
"I_MATLPROCUREMENTTYPE",
"I_MFGORDER",
"I_MFGORDERCATEGORY",
"I_MFGORDERTYPE",
"I_MRPAREA",
"I_MRPCONTROLLER",
"I_PLANNEDORDER",
"I_PLANT",
"I_PRODUCT",
"I_PRODUCTIONSUPERVISOR",
"I_PRODUCTIONVERSION",
"I_PURGQUOTAARRGMT",
"I_PURGQUOTAARRGMTITEM",
"I_RESERVATIONDOCUMENTHEADER",
"I_RESERVATIONDOCUMENTITEM",
"I_SALESORDER",
"I_SALESORDERITEM",
"I_SERIALNUMBERPROFILE",
"I_STOCKTYPE_2",
"I_STORAGELOCATION",
"I_UNITOFMEASURE",
"I_WBSELEMENTBYINTERNALKEY"
],
"BASE":
[
"I_LOGISTICSORDERBASIC",
"I_ORDERITEM"
],
"ANNO_REF":
[],
"SCALAR_FUNCTION":
[],
"VERSION":0,
"ANNOREF_EVALUATION_ERROR":""
}
}*/