I_MANUFACTURINGORDERITEM

CDS View

Manufacturing Order Item

I_MANUFACTURINGORDERITEM is a CDS View in S/4HANA. Manufacturing Order Item. It contains 140 fields. 14 CDS views read from this table.

CDS Views using this table (14)

ViewTypeJoinVDMDescription
/VSCEW/C_Disposition_FE view_entity left_outer Disposition FE (Production Order)
A_ProcessOrderItem_2 view_entity from COMPOSITE Process Order Items
A_ProductionOrderItem_2 view_entity from COMPOSITE Production Order Items
I_MfgOrderItemCube view from COMPOSITE Manufacturing Order Item - Cube
I_MfgOrderItemDataList view from COMPOSITE Mfg Order Item Data List
I_MfgOrderItemDuration view from COMPOSITE Manufacturing Order Item with Durations
I_MfgOrderItemSerialNumber view_entity from COMPOSITE Manufacturing Order Item Serial Number
I_MfgOrderItemWithStatus view_entity from COMPOSITE Manufacturing Order Item with Status
I_MRPMfgOrder view inner COMPOSITE MRP Manufacturing Order
P_MfgOrderItemAmount view from COMPOSITE Manufacturing Order Item Amount
P_MPEProcOrderItemPover view_entity inner CONSUMPTION Process Order Item
P_MPEProdnOrderItemPover view_entity inner CONSUMPTION Production Order Popover
R_ProcessOrderItemTP view_entity from TRANSACTIONAL Process Order Item - TP
R_ProductionOrderItemTP view_entity from TRANSACTIONAL Production Order Item - TP

Fields (140)

KeyField CDS FieldsUsed in Views
KEY ManufacturingOrder ManufacturingOrder 7
KEY ManufacturingOrderItem ManufacturingOrderItem 9
_AccountAssignmentCategory _AccountAssignmentCategory 2
_BaseUnit _BaseUnit 2
_BusinessArea _BusinessArea 3
_CompanyCode _CompanyCode 1
_ConsumptionPosting _ConsumptionPosting 2
_CoProductReservation _CoProductReservation 2
_CoProductReservationItem _CoProductReservationItem 2
_Currency _Currency 1
_DeliveryCompletedIndicator _DeliveryCompletedIndicator 2
_InventorySpecialStockType _InventorySpecialStockType 3
_InventorySpecialStockValnType _InventorySpecialStockValnType 2
_InventoryUsabilityCode _InventoryUsabilityCode 2
_InventoryValuationType _InventoryValuationType 4
_Material _Material 5
_MatlProcurementCategory _MatlProcurementCategory 2
_MatlProcurementType _MatlProcurementType 2
_MfgOrder _MfgOrder 5
_MfgOrderCategory _MfgOrderCategory 5
_MfgOrderItemSrlNmbr _MfgOrderItemSrlNmbr 1
_MfgOrderType _MfgOrderType 5
_MRPArea _MRPArea 4
_MRPController _MRPController 6
_MRPPlant _MRPPlant 5
_PlannedOrder _PlannedOrder 2
_PlanningPlantText _PlanningPlantText 1
_Product _Product 2
_ProductionPlant _ProductionPlant 6
_ProductionPlantText _ProductionPlantText 1
_ProductionSupervisor _ProductionSupervisor 7
_ProductionUnit _ProductionUnit 4
_ProductionVersion _ProductionVersion 5
_ProductPlanningPlant2 _ProductPlanningPlant 1
_ProductPlant2 _ProductPlant 1
_ProductText _ProductText 1
_QuotaArrangement _QuotaArrangement 2
_QuotaArrangementItem _QuotaArrangementItem 2
_Reservation _Reservation 2
_SalesOrder _SalesOrder 3
_SalesOrderItem _SalesOrderItem 3
_SerialNumberProfile _SerialNumberProfile 2
_SettlementReservation _SettlementReservation 2
_SettlementReservationItem _SettlementReservationItem 2
_StorageLocation _StorageLocation 4
_WBSElement _WBSElement 2
_WBSElementBasicData2 _WBSElementBasicData,_WBSElementBasicData2 3
AccountAssignmentCategory AccountAssignmentCategory 3
BaseUnit BaseUnit 2
Batch Batch 5
BusinessArea BusinessArea 3
CompanyCodeCurrency CompanyCodeCurrency 1
ConsumptionPosting ConsumptionPosting 2
CoProductReservation CoProductReservation 3
CoProductReservationItem CoProductReservationItem 2
EffectivityParameterVariant EffectivityParameterVariant 2
GoodsReceiptAmountInCoCodeCrcy GoodsReceiptAmountInCoCodeCrcy 1
GoodsReceiptIsExpected GoodsReceiptIsExpected 3
GoodsReceiptIsNonValuated GoodsReceiptIsNonValuated 3
GoodsRecipientName GoodsRecipientName 3
InventorySpecialStockType InventorySpecialStockType 4
InventorySpecialStockValnType InventorySpecialStockValnType 2
InventoryUsabilityCode InventoryUsabilityCode 2
InventoryValuationCategory InventoryValuationCategory 3
InventoryValuationType InventoryValuationType 4
IsCompletelyDelivered IsCompletelyDelivered,MfgOrderItemIsFinallyDelivered 6
IsMarkedForDeletion IsMarkedForDeletion,MfgOrderIsToBeDeleted 2
ManufacturingObject ManufacturingObject 1
ManufacturingOrderCategory ManufacturingOrderCategory 5
ManufacturingOrderType ManufacturingOrderType 5
Material Material,TopLevelOrderMaterial 6
MaterialGoodsReceiptDuration GoodsReceiptDuration,MaterialGoodsReceiptDuration 6
MaterialProcurementCategory MaterialProcurementCategory 2
MaterialProcurementType MaterialProcurementType 2
MfgOrderActualEndDate MfgOrderActualEndDate 4
MfgOrderActualReleaseDate MfgOrderActualReleaseDate 4
MfgOrderActualStartDate MfgOrderActualStartDate 4
MfgOrderActualStartTime MfgOrderActualStartTime 4
MfgOrderConfirmedEndDate MfgOrderConfirmedEndDate 4
MfgOrderConfirmedEndTime MfgOrderConfirmedEndTime 4
MfgOrderConfirmedReworkQty MfgOrderConfirmedReworkQty 4
MfgOrderConfirmedScrapQty MfgOrderConfirmedScrapQty 4
MfgOrderConfirmedTotalQty MfgOrderConfirmedTotalQty 4
MfgOrderConfirmedYieldQty MfgOrderConfirmedYieldQty 4
MfgOrderItemActualDeliveryDate MfgOrderItemActualDeliveryDate 4
MfgOrderItemActualDeviationQty MfgOrderItemActualDeviationQty 5
MfgOrderItemGoodsReceiptQty MfgOrderItemGoodsReceiptQty 6
MfgOrderItemOpenYieldQty MfgOrderItemOpenYieldQty 1
MfgOrderItemPlannedEndDate MfgOrderItemPlannedEndDate 4
MfgOrderItemPlannedScrapQty MfgOrderItemPlannedScrapQty 6
MfgOrderItemPlannedTotalQty MfgOrderItemPlannedTotalQty 7
MfgOrderItemPlannedYieldQty MfgOrderItemPlannedYieldQty 3
MfgOrderItemPlndDeliveryDate MfgOrderItemPlndDeliveryDate 3
MfgOrderItemReplnmtElmntType MfgOrderItemReplnmtElmntType 2
MfgOrderItemScheduledEndDate MfgOrderItemScheduledEndDate 4
MfgOrderItemTotalCmtmtDate MfgOrderItemAvailabilityDate,MfgOrderItemTotalCmtmtDate 3
MfgOrderPlannedEndDate MfgOrderPlannedEndDate 4
MfgOrderPlannedEndTime MfgOrderPlannedEndTime 4
MfgOrderPlannedScrapQty MfgOrderPlannedScrapQty 3
MfgOrderPlannedStartDate MfgOrderPlannedStartDate 4
MfgOrderPlannedStartTime MfgOrderPlannedStartTime 4
MfgOrderPlannedTotalQty MfgOrderPlannedTotalQty 3
MfgOrderScheduledEndDate MfgOrderScheduledEndDate 4
MfgOrderScheduledEndTime MfgOrderScheduledEndTime 4
MfgOrderScheduledReleaseDate MfgOrderScheduledReleaseDate 4
MfgOrderScheduledStartDate MfgOrderScheduledStartDate 4
MfgOrderScheduledStartTime MfgOrderScheduledStartTime 4
MRPArea MRPArea 3
MRPController MRPController 6
NumberOfSerialNumbers NumberOfSerialNumbers 3
ObjectInternalID ManufacturingObject,ObjectInternalID 4
OrderItemIsNotRelevantForMRP OrderItemIsNotRelevantForMRP 1
OriginalEffctyParameterVariant OriginalEffctyParameterVariant 1
OverdelivTolrtdLmtRatioInPct OverdelivTolrtdLmtRatioInPct 2
PlannedOrder PlannedOrder 3
PlannedOrderOpeningDate PlannedOrderOpeningDate 1
PlanningPlant MRPPlant,PlanningPlant 7
PlndOrderPlannedScrapQty PlndOrderPlannedScrapQty 1
PlndOrderPlannedStartDate PlndOrderPlannedStartDate 1
PlndOrderPlannedTotalQty PlndOrderPlannedTotalQty 1
Product Product 3
ProductConfiguration ProductConfiguration 4
ProductionPlant ProductionPlant 9
ProductionSupervisor ProductionSupervisor 7
ProductionUnit MfgOrderItemProductionUnit,ProductionUnit 7
ProductionVersion ProductionVersion 7
QuantityDistributionKey QuantityDistributionKey 2
Reservation Reservation 2
SalesOrder SalesOrder 6
SalesOrderItem SalesOrderItem 6
SerialNumberAssgmtProfile SerialNumberAssgmtProfile 2
SettlementReservation SettlementReservation 2
SettlementReservationItem SettlementReservationItem 1
StockSegment StockSegment 2
StorageLocation StorageLocation 4
UnderdelivTolrtdLmtRatioInPct UnderdelivTolrtdLmtRatioInPct 2
UnlimitedOverdeliveryIsAllowed UnlimitedOverdeliveryIsAllowed 2
UnloadingPointName UnloadingPointName 3
WBSElementInternalID WBSElementInternalID 1
WBSElementInternalID_2 WBSElementInternalID,WBSElementInternalID_2 3
@AbapCatalog.sqlViewName: 'IMFGORDERITEM'
@AbapCatalog.compiler.compareFilter: true
@AccessControl.authorizationCheck: #MANDATORY
@AccessControl.personalData.blocking: #NOT_REQUIRED
@AccessControl.privilegedAssociations: ['_MRPController', '_ProductionSupervisor', '_StatusObjectHeader', '_StatusObjectItem']
@Analytics.dataCategory: #DIMENSION
@Analytics.dataExtraction: { enabled: true,
                             delta.changeDataCapture:
                                    { mapping:
                                      [ { role: #MAIN,
                                          table: 'afpo',
                                          tableElement: ['aufnr'             , 'posnr'],
                                          viewElement:  ['ManufacturingOrder', 'ManufacturingOrderItem']
                                        },
                                        { role: #LEFT_OUTER_TO_ONE_JOIN,
                                          table: 'afko',
                                          tableElement: ['aufnr'],
                                          viewElement:  ['ManufacturingOrder']
                                        } ] } }
@Analytics.internalName: #LOCAL
@ClientHandling.algorithm: #SESSION_VARIABLE
@ClientHandling.type: #CLIENT_DEPENDENT
@Metadata.allowExtensions: true
@Metadata.ignorePropagatedAnnotations: true
@ObjectModel.modelingPattern: #ANALYTICAL_DIMENSION
@ObjectModel.supportedCapabilities: [#ANALYTICAL_DIMENSION, #CDS_MODELING_ASSOCIATION_TARGET, #CDS_MODELING_DATA_SOURCE, #EXTRACTION_DATA_SOURCE, #SQL_DATA_SOURCE]
@ObjectModel.representativeKey: 'ManufacturingOrderItem'
@ObjectModel.sapObjectNodeType.name: 'ProductionOrderItem'
@ObjectModel.semanticKey: ['ManufacturingOrder', 'ManufacturingOrderItem']
@ObjectModel.usageType: {serviceQuality: #B, sizeCategory: #L, dataClass: #TRANSACTIONAL}
@VDM.lifecycle.contract.type: #PUBLIC_LOCAL_API
@VDM.viewType: #BASIC
@EndUserText.label: 'Manufacturing Order Item'

/*+[hideWarning] { "IDS" : [ "CALCULATED_FIELD_CHECK" ]  } */
define view I_ManufacturingOrderItem
  as select from I_OrderItem      as item
    inner join   I_LogisticsOrder as head on  head.OrderID       = item.OrderID
                                          and head.OrderCategory = item.OrderCategory  //filter push-down


  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.ProductionPlant = _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
  association [1..1] to I_ReservationDocumentHeader   as _Reservation             on  $projection.Reservation = _Reservation.Reservation
  association [0..1] to I_Product                     as _Product                 on  $projection.Product = _Product.Product
  association [0..1] to I_ProductPlant                as _ProductPlant            on  $projection.ProductionPlant = _ProductPlant.Plant
                                                                                  and $projection.Product         = _ProductPlant.Product
  association [0..1] to I_ProductPlant                as _ProductPlanningPlant    on  $projection.PlanningPlant = _ProductPlanningPlant.Plant
                                                                                  and $projection.Product       = _ProductPlanningPlant.Product
  association [0..1] to I_ProductPlantBasic           as _ProductPlant2           on  $projection.ProductionPlant = _ProductPlant2.Plant
                                                                                  and $projection.Product         = _ProductPlant2.Product
  association [0..1] to I_ProductPlantBasic           as _ProductPlanningPlant2   on  $projection.PlanningPlant = _ProductPlanningPlant2.Plant
                                                                                  and $projection.Product       = _ProductPlanningPlant2.Product                                                
  association [0..1] to I_ProductSupplyPlanning       as _ProductSupplyPlanning   on  $projection.PlanningPlant = _ProductSupplyPlanning.Plant
                                                                                  and $projection.Product       = _ProductSupplyPlanning.Product
  association [0..1] to I_ProductStorageLocation      as _ProductStorageLocation  on  $projection.Material        = _ProductStorageLocation.Product
                                                                                  and $projection.ProductionPlant = _ProductStorageLocation.Plant
                                                                                  and $projection.StorageLocation = _ProductStorageLocation.StorageLocation
  association [0..1] to I_ProductStorageLocationBasic as _ProductStorageLocation2 on  $projection.Material        = _ProductStorageLocation2.Product
                                                                                  and $projection.ProductionPlant = _ProductStorageLocation2.Plant
                                                                                  and $projection.StorageLocation = _ProductStorageLocation2.StorageLocation
  association [0..*] to I_ProductUnitsOfMeasure       as _ProductUnitsOfMeasure   on  $projection.Product = _ProductUnitsOfMeasure.Product
  association [0..1] to I_ProductMRPArea              as _ProductMRPArea          on  $projection.Product         = _ProductMRPArea.Product
                                                                                  and $projection.MRPArea         = _ProductMRPArea.MRPArea
  association [0..1] to I_ProductPlantMRP             as _ProductPlantMRPArea     on  $projection.Product         = _ProductPlantMRPArea.Product
                                                                                  and $projection.ProductionPlant = _ProductPlantMRPArea.Plant
                                                                                  and $projection.MRPArea         = _ProductPlantMRPArea.MRPArea
  association [0..1] to I_Batch                       as _Batch                   on  $projection.ProductionPlant = _Batch.Plant
                                                                                  and $projection.Product         = _Batch.Material
                                                                                  and $projection.Batch           = _Batch.Batch
  association [0..1] to I_Currency                    as _Currency                on  $projection.CompanyCodeCurrency = _Currency.Currency
 -- to root:  Header
  association [1..1] to I_ManufacturingOrder          as _MfgOrder                on  $projection.ManufacturingOrder = _MfgOrder.ManufacturingOrder
  -- to child: Serial numbers
  association [0..*] to I_MfgOrderItemSerialNumber    as _MfgOrderItemSrlNmbr     on  $projection.ManufacturingOrder     = _MfgOrderItemSrlNmbr.ManufacturingOrder
                                                                                  and $projection.ManufacturingOrderItem = _MfgOrderItemSrlNmbr.ManufacturingOrderItem
  -- to child: Longtext
  association [0..*] to I_MfgOrderItemLongText        as _MfgOrderItemLongText    on  $projection.ManufacturingOrder     = _MfgOrderItemLongText.ManufacturingOrder
                                                                                  and $projection.ManufacturingOrderItem = _MfgOrderItemLongText.ManufacturingOrderItem
-- start new associations for full coverage of text relations
  association [1..1] to I_Plant                       as _ProductionPlantText     on  $projection.ProductionPlant = _ProductionPlantText.Plant
  association [0..1] to I_Plant                       as _PlanningPlantText       on  $projection.PlanningPlant = _PlanningPlantText.Plant
  association [0..*] to I_MaterialText                as _MaterialText            on  $projection.Material = _MaterialText.Material
  association [0..*] to I_ProductText                 as _ProductText             on  $projection.Product = _ProductText.Product
  association [0..1] to I_ProductionVersion           as _ProductionVersionText   on  $projection.Material          = _ProductionVersionText.Material
                                                                                  and $projection.ProductionPlant   = _ProductionVersionText.Plant
                                                                                  and $projection.ProductionVersion = _ProductionVersionText.ProductionVersion
  association [0..1] to I_MRPArea                     as _MRPAreaText             on  $projection.MRPArea = _MRPAreaText.MRPArea
  association [0..1] to I_WBSElementBasicData         as _WBSElementText          on  $projection.WBSElementInternalID_2 = _WBSElementText.WBSElementInternalID
  association [0..1] to I_StorageLocation             as _StorageLocationText     on  $projection.ProductionPlant = _StorageLocationText.Plant
                                                                                  and $projection.StorageLocation = _StorageLocationText.StorageLocation
  association [1..1] to I_StatusObject                as _StatusObjectHeader      on  $projection.ManufacturingObject = _StatusObjectHeader.StatusObject
  association [1..1] to I_StatusObject                as _StatusObjectItem        on  $projection.ObjectInternalID = _StatusObjectItem.StatusObject   
  association [0..*] to I_BusinessAreaText            as _BusinessAreaText        on  $projection.BusinessArea = _BusinessAreaText.BusinessArea
  association [0..1] to I_CompanyCode                 as _CompanyCodeText         on  $projection.CompanyCode = _CompanyCodeText.CompanyCode
-- end new associations for full coverage of text relations
{
      // Key

      @Consumption.valueHelpDefinition: [ { entity: { name: 'I_MfgOrderStdVH', element: 'ManufacturingOrder' } } ]
      @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

      cast(item.OrderIsReleased as orderisreleased preserving type)          as OrderIsReleased,
      item.IsMarkedForDeletion,
      cast(item.OrderItemIsNotRelevantForMRP as vdm_dnrel preserving type)   as OrderItemIsNotRelevantForMRP,

      // Assignments

      @ObjectModel.foreignKey.association: '_Material'
      @ObjectModel.text.association: '_MaterialText'      
      item.Material,
      @Consumption.valueHelpDefinition: [ { entity: { name: 'I_ProductStdVH', element: 'Product' } } ]
      @ObjectModel.foreignKey.association: '_Product'
      @ObjectModel.text.association: '_ProductText'
      cast(item.Material as productnumber preserving type)                   as Product,
      @Consumption.valueHelpDefinition: [ { entity: { name: 'I_PlantStdVH', element: 'Plant' } } ]
      @ObjectModel.foreignKey.association: '_ProductionPlant'
--    @ObjectModel.text.association: '_ProductionPlantText'
      item.ProductionPlant,
      @Consumption.valueHelpDefinition: [ { entity: { name: 'I_PlantStdVH', element: 'Plant' } } ]
      @ObjectModel.foreignKey.association: '_MRPPlant'
--    @ObjectModel.text.association: '_PlanningPlantText'
      item.MRPPlant                                                          as PlanningPlant,
      @ObjectModel.foreignKey.association: '_MRPController'
      cast(head.MRPController        as pph_dispo preserving type)           as MRPController,
      @ObjectModel.foreignKey.association: '_ProductionSupervisor'
      cast(head.ProductionSupervisor as pph_fevor preserving type)           as ProductionSupervisor,
--    @Consumption.valueHelpDefinition: [ { entity: { name: 'I_ReservationHeaderStdVH', element: 'Reservation' } } ]
      @ObjectModel.foreignKey.association: '_Reservation'
      head.Reservation,
--    @Consumption.valueHelpDefinition: [ { entity: { name: 'I_ProductionVersionStdVH', element: 'ProductionVersion' } } ]
      @ObjectModel.foreignKey.association: '_ProductionVersion'
--    @ObjectModel.text.association: '_ProductionVersionText'
      item.ProductionVersion,
      @Consumption.valueHelpDefinition: [ { entity: { name: 'I_MRPAreaVH', element: 'MRPArea' } } ]
      @ObjectModel.foreignKey.association: '_MRPArea'
--    @ObjectModel.text.association: '_MRPAreaText'
      item.MRPArea,
      @Consumption.valueHelpDefinition: [ { entity: { name: 'I_SalesOrderStdVH', element: 'SalesOrder' } } ]
      @ObjectModel.foreignKey.association: '_SalesOrder'
      item.SalesOrder,
      @Consumption.valueHelpDefinition: [ { entity: { name: 'I_SalesOrderItemStdVH', element: 'SalesOrderItem' } } ]
      @ObjectModel.foreignKey.association: '_SalesOrderItem'
      item.SalesOrderItem,
      @ObjectModel.foreignKey.association: '_SalesOrderScheduleLine'   
      item.SalesOrderScheduleLine,     
      @API.element.releaseState: #DEPRECATED
      @API.element.successor: 'WBSElementInternalID_2'
      @ObjectModel.foreignKey.association: '_WBSElement'
      item.WBSElementInternalID,
      @Consumption.valueHelpDefinition: [ { entity: { name: 'I_WBSElementBasicDataStdVH', element: 'WBSElementInternalID' } } ]
      @ObjectModel.foreignKey.association: '_WBSElementBasicData2'
--    @ObjectModel.text.association: '_WBSElementText'
      item.WBSElementInternalID_2,
--    @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,
--    @ObjectModel.foreignKey.association: '_SerialNumberProfile'
      item.SerialNumberAssgmtProfile,
      item.NumberOfSerialNumbers,
      item.MfgOrderItemReplnmtElmntType,
      cast(item.ProductConfiguration as product_configuration preserving type) as ProductConfiguration,
      @ObjectModel.foreignKey.association: '_StatusObjectItem'
      item.ObjectInternalID,
      @ObjectModel.foreignKey.association: '_StatusObjectHeader'
      head.ObjectInternalID                                                    as ManufacturingObject,
      item.QuantityDistributionKey,
      item.EffectivityParameterVariant,
      item.OriginalEffctyParameterVariant,

      // Goods Receipt data

      item.GoodsReceiptIsExpected,
      item.GoodsReceiptIsNonValuated,
      @ObjectModel.foreignKey.association: '_DeliveryCompletedIndicator'
      item.IsCompletelyDelivered,
      item.MaterialGoodsReceiptDuration,
      item.UnderdelivTolrtdLmtRatioInPct,
      item.OverdelivTolrtdLmtRatioInPct,
      item.UnlimitedOverdeliveryIsAllowed,
      @ObjectModel.foreignKey.association: '_StorageLocation'
--    @ObjectModel.text.association: '_StorageLocationText'
      item.StorageLocation,
      @Consumption.valueHelpDefinition: [ { entity: { name: 'I_BatchStdVH', element: 'Batch' } } ]
      item.Batch,
      @ObjectModel.foreignKey.association: '_InventoryValuationType'
      item.InventoryValuationType,
      @Consumption.valueHelpDefinition: [ { entity: { name: 'I_ProductValuationCategoryVH', element: 'InventoryValuationCategory' } } ]
      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.ActualDeliveryDate 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

      @ObjectModel.foreignKey.association: '_ProductionUnit'
      @Semantics.unitOfMeasure: true
      item.ProductionUnit,
      @Semantics.quantity.unitOfMeasure: 'ProductionUnit'
      @Aggregation.default: #SUM
      cast(item.ItemQuantity as co_psmng preserving type)                                as MfgOrderItemPlannedTotalQty,
      @Semantics.quantity.unitOfMeasure: 'ProductionUnit'
      @Aggregation.default: #SUM
      cast(item.MfgOrderItemPlannedScrapQty as co_psamg preserving type)                 as MfgOrderItemPlannedScrapQty,
      @Semantics.quantity.unitOfMeasure: 'ProductionUnit'
      @Aggregation.default: #SUM
      cast(item.ItemQuantity - item.MfgOrderItemPlannedScrapQty as plannedyieldquantity) as MfgOrderItemPlannedYieldQty,
      @Semantics.quantity.unitOfMeasure: 'ProductionUnit'
      @Aggregation.default: #SUM
      cast(item.MfgOrderItemGoodsReceiptQty as co_wemng preserving type)                 as MfgOrderItemGoodsReceiptQty,
      @Semantics.quantity.unitOfMeasure: 'ProductionUnit'
      @Aggregation.default: #SUM
      cast(item.MfgOrderItemActualDeviationQty as co_iamng preserving type)              as MfgOrderItemActualDeviationQty,
      @Semantics.quantity.unitOfMeasure: 'ProductionUnit'
      @Aggregation.default: #SUM
      cast(item.MfgOrderItemOpenYieldQty as openyieldquantity preserving type)           as MfgOrderItemOpenYieldQty,

      // Header Quantities and UoM

      @Semantics.quantity.unitOfMeasure: 'ProductionUnit'
      @Aggregation.default: #SUM
      cast(head.OrderConfirmedYieldQty as co_igmng preserving type)                      as MfgOrderConfirmedYieldQty,
      @Semantics.quantity.unitOfMeasure: 'ProductionUnit'
      @Aggregation.default: #SUM
      cast(head.OrderConfirmedScrapQty as co_iasmg preserving type)                      as MfgOrderConfirmedScrapQty,
      @Semantics.quantity.unitOfMeasure: 'ProductionUnit'
      @Aggregation.default: #SUM
      cast(head.MfgOrderConfirmedReworkQty as rmnga preserving type)                     as MfgOrderConfirmedReworkQty,
      @Semantics.quantity.unitOfMeasure: 'ProductionUnit'
      @Aggregation.default: #SUM
      cast(head.OrderConfirmedYieldQty + head.OrderConfirmedScrapQty + head.MfgOrderConfirmedReworkQty as pph_tmnga)  
                                                                                         as MfgOrderConfirmedTotalQty,
      @Semantics.quantity.unitOfMeasure: 'ProductionUnit'
      @Aggregation.default: #SUM
      cast(head.OrderPlannedTotalQty as gamng preserving type)                           as MfgOrderPlannedTotalQty,
      @Semantics.quantity.unitOfMeasure: 'ProductionUnit'
      @Aggregation.default: #SUM
      cast(head.OrderPlannedScrapQty as gasmg preserving type)                           as MfgOrderPlannedScrapQty,

      // Planned Order data

      @Consumption.valueHelpDefinition: [ { entity: { name: 'I_PlannedOrderStdVH', element: 'PlannedOrder' } } ]
      @ObjectModel.foreignKey.association: '_PlannedOrder'
      item.PlannedOrder,
      cast(item.PlndOrderPlannedStartDate as vdm_strmp preserving type)                  as PlndOrderPlannedStartDate,
      cast(item.PlannedOrderOpeningDate as vdm_etrmp preserving type)                    as PlannedOrderOpeningDate,
      @ObjectModel.foreignKey.association: '_BaseUnit'
      @Semantics.unitOfMeasure: true
      item.BaseUnit,
      @Semantics.quantity.unitOfMeasure: 'BaseUnit'
      @Aggregation.default: #SUM
      cast(item.OrderPlannedTotalQty as vdm_pgmng preserving type)                       as PlndOrderPlannedTotalQty,
      @Semantics.quantity.unitOfMeasure: 'BaseUnit'
      @Aggregation.default: #SUM
      cast(item.OrderPlannedScrapQty as vdm_pamng preserving type)                       as PlndOrderPlannedScrapQty,

      // Assignments FI/CO

      @Consumption.valueHelpDefinition: [ { entity: { name: 'I_CompanyCodeStdVH', element: 'CompanyCode' } } ]
      @ObjectModel.foreignKey.association: '_CompanyCode'
      head.CompanyCode,
      @Consumption.valueHelpDefinition: [ { entity: { name: 'I_BusinessAreaStdVH', element: 'BusinessArea' } } ]
      @ObjectModel.foreignKey.association: '_BusinessArea'
      @ObjectModel.text.association: '_BusinessAreaText'
      item.BusinessArea,
      @ObjectModel.foreignKey.association: '_AccountAssignmentCategory'
      item.AccountAssignmentCategory,

      // Amount and Currency

      @ObjectModel.foreignKey.association: '_Currency'
      @Semantics.currencyCode: true
      head.Currency as CompanyCodeCurrency,
      @Semantics.amount.currencyCode: 'CompanyCodeCurrency'
      @Aggregation.default: #SUM
      item.GoodsReceiptAmountInCoCodeCrcy,

      // Fashion fields

      head.MasterProductionOrder,

      // Associations

      @ObjectModel.association.type: [#TO_COMPOSITION_ROOT, #TO_COMPOSITION_PARENT]
      _MfgOrder,
      @ObjectModel.association.type: [#TO_COMPOSITION_CHILD]
      _MfgOrderItemSrlNmbr,
      @ObjectModel.association.type: [#TO_COMPOSITION_CHILD]  // available only for co-products

      _MfgOrderItemLongText,
      _MfgOrderCategory,
      _MfgOrderType,
      item._ProductionPlant,
      _ProductionSupervisor,
      _MRPController,
      item._MRPPlant,
      item._MRPArea,
      item._PlannedOrder,
      item._Material,
      _Product,
      @API.element.releaseState: #DEPRECATED
      @API.element.successor: '_ProductPlant2'
      _ProductPlant,
      _ProductPlant2,
      @API.element.releaseState: #DEPRECATED
      @API.element.successor: '_ProductPlanningPlant2'
      _ProductPlanningPlant,
      _ProductPlanningPlant2,
      @API.element.releaseState: #DEPRECATED
      @API.element.successor: '_ProductStorageLocation2'
      _ProductStorageLocation,
      _ProductStorageLocation2,
      _ProductSupplyPlanning,
      _ProductMRPArea,
      _ProductPlantMRPArea,
      _ProductUnitsOfMeasure,
      item._BaseUnit,
      item._ProductionUnit,
      item._ProductionVersion,
      _Reservation,
      _StatusObjectHeader,
      _StatusObjectItem,
      item._MatlProcurementCategory,
      item._MatlProcurementType,
      item._DeliveryCompletedIndicator,
      item._StorageLocation,
      _Batch,
      item._InventorySpecialStockType,
      item._InventorySpecialStockValnType,
      item._InventoryValuationType,
      item._InventoryUsabilityCode,
      item._SerialNumberProfile,
      item._ConsumptionPosting,
      item._SalesOrder,
      item._SalesOrderItem,
      item._SalesOrderScheduleLine,
      @VDM.lifecycle.status: #DEPRECATED
      @VDM.lifecycle.successor: '_WBSElementBasicData2'  
      item._WBSElement,
      @VDM.lifecycle.status: #DEPRECATED
      @VDM.lifecycle.successor: '_WBSElementBasicData2'  
      item._WBSElementBasicData,
      item._WBSElementBasicData2,
      item._EnterpriseProjectElement,
      item._QuotaArrangement,
      item._QuotaArrangementItem,
      item._SettlementReservation,
      item._SettlementReservationItem,
      item._CoProductReservation,
      item._CoProductReservationItem,
      item._BusinessArea,
      item._AccountAssignmentCategory,
      head._CompanyCode,
      _Currency,
      
      // Text relations

      _MaterialText,
      _ProductText,
      _ProductionPlantText,
      _PlanningPlantText,
      _ProductionVersionText,
      _MRPAreaText,
      _WBSElementText,
      _StorageLocationText,
      _BusinessAreaText,
      _CompanyCodeText    
}
where
  (    item.OrderCategory = '10'
    or item.OrderCategory = '40'
  );