P_MfgProcgExecOperation

DDL: P_MFGPROCGEXECOPERATION SQL: PMPEOPER Type: view CONSUMPTION

P_MfgProcgExecOperation is a Consumption CDS View in SAP S/4HANA. It reads from 2 data sources (I_MfgOrderOperationDelayBasic, I_OrderItem) and exposes 67 fields with key fields OrderInternalBillOfOperations, OrderIntBillOfOperationsItem.

Data Sources (2)

SourceAliasJoin Type
I_MfgOrderOperationDelayBasic MfgOrderOperationDelayBasic from
I_OrderItem OrderItem inner

Annotations (6)

NameValueLevelField
AbapCatalog.sqlViewName PMPEOPER view
AbapCatalog.compiler.compareFilter true view
AccessControl.authorizationCheck #NOT_REQUIRED view
ClientHandling.algorithm #SESSION_VARIABLE view
VDM.viewType #CONSUMPTION view
VDM.private true view

Fields (67)

KeyFieldSource TableSource FieldDescription
KEY OrderInternalBillOfOperations I_MfgOrderOperationDelayBasic OrderInternalBillOfOperations
KEY OrderIntBillOfOperationsItem I_MfgOrderOperationDelayBasic OrderIntBillOfOperationsItem
ManufacturingOrder I_MfgOrderOperationDelayBasic ManufacturingOrder
ManufacturingOrderCategory I_MfgOrderOperationDelayBasic ManufacturingOrderCategory
ManufacturingOrderType I_MfgOrderOperationDelayBasic ManufacturingOrderType
Reservation I_MfgOrderOperationDelayBasic Reservation
ProdnProcgIsFlexible I_MfgOrderOperationDelayBasic ProdnProcgIsFlexible
ManufacturingOrderSequence I_MfgOrderOperationDelayBasic ManufacturingOrderSequence
ProductionPlant I_MfgOrderOperationDelayBasic ProductionPlant
ManufacturingOrderOperation I_MfgOrderOperationDelayBasic ManufacturingOrderOperation
MfgOrderOperationText I_MfgOrderOperationDelayBasic MfgOrderOperationText
ProduceOpActyNtwkInstance I_MfgOrderOperationDelayBasic ProduceOpActyNtwkInstance
Material I_OrderItem Material
WBSElementInternalID I_OrderItem WBSElementInternalID_2
WorkCenterInternalID I_MfgOrderOperationDelayBasic WorkCenterInternalID
WorkCenterTypeCode I_MfgOrderOperationDelayBasic WorkCenterTypeCode
PlantTimeZone I_MfgOrderOperationDelayBasic PlantTimeZone
OpLtstSchedldExecStrtDte I_MfgOrderOperationDelayBasic OpLtstSchedldExecStrtDte
OpLtstSchedldExecStrtTme I_MfgOrderOperationDelayBasic OpLtstSchedldExecStrtTme
OpLtstSchedldExecStrtDteTme I_MfgOrderOperationDelayBasic OpLtstSchedldExecStrtDteTme
OpLtstSchedldExecEndDte I_MfgOrderOperationDelayBasic OpLtstSchedldExecEndDte
OpLtstSchedldExecEndTme I_MfgOrderOperationDelayBasic OpLtstSchedldExecEndTme
OpLtstSchedldExecEndDteTme I_MfgOrderOperationDelayBasic OpLtstSchedldExecEndDteTme
OpActualExecutionStartDate I_MfgOrderOperationDelayBasic OpActualExecutionStartDate
OpActualExecutionStartTime I_MfgOrderOperationDelayBasic OpActualExecutionStartTime
OpActualExecutionStartDateTime I_MfgOrderOperationDelayBasic OpActualExecutionStartDateTime
OpActualExecutionEndDate I_MfgOrderOperationDelayBasic OpActualExecutionEndDate
OpActualExecutionEndTime I_MfgOrderOperationDelayBasic OpActualExecutionEndTime
OpActualExecutionEndDateTime I_MfgOrderOperationDelayBasic OpActualExecutionEndDateTime
OpPlannedScrapQuantity
OpPlannedTotalQuantity I_MfgOrderOperationDelayBasic OpPlannedTotalQuantity
OpTotalConfirmedYieldQty I_MfgOrderOperationDelayBasic OpTotalConfirmedYieldQty
OpTotalConfirmedScrapQty I_MfgOrderOperationDelayBasic OpTotalConfirmedScrapQty
OpExecutionCompletedQuantity
OperationUnit I_MfgOrderOperationDelayBasic OperationUnit
OperationExecutionStartIsLate I_MfgOrderOperationDelayBasic OperationExecutionStartIsLate
OpActyNtwkInstance OpActyNtwkInstance OpActyNtwkInstance
OperationActivityNetwork OpActyNtwkInstance OperationActivityNetwork
OpActyNtwkVersionCounter OpActyNtwkInstance OpActyNtwkVersionCounter
OpActyConfIsSFIBased OpActyNtwkInstance OpActyConfIsSFIBased
OperationIsClosed
OperationIsTechlyCompleted I_MfgOrderOperationDelayBasic OperationIsTechlyCompleted
OperationIsDelivered I_MfgOrderOperationDelayBasic OperationIsDelivered
OperationIsPartiallyDelivered I_MfgOrderOperationDelayBasic OperationIsPartiallyDelivered
OperationIsPartiallyConfirmed I_MfgOrderOperationDelayBasic OperationIsPartiallyConfirmed
OperationIsPrinted I_MfgOrderOperationDelayBasic OperationIsPrinted
OperationIsReleased I_MfgOrderOperationDelayBasic OperationIsReleased
OperationIsCreated I_MfgOrderOperationDelayBasic OperationIsCreated
OperationIsScheduled I_MfgOrderOperationDelayBasic OperationIsScheduled
OperationIsConfirmed I_MfgOrderOperationDelayBasic OperationIsConfirmed
OperationIsDeleted I_MfgOrderOperationDelayBasic OperationIsDeleted
OperationExecutionEndIsLate I_MfgOrderOperationDelayBasic OperationExecutionEndIsLate
OperationYieldDeviationQty I_MfgOrderOperationDelayBasic OperationYieldDeviationQty
OperationStartDeviationDays
PlannedEndDateDvtnInDays
EffectivityParameterVariant I_OrderItem EffectivityParameterVariant
NumberOfWorkCenterHolds
NumberOfOrderHolds
NumberOfOperationHolds
NumberOfOperationActivityHolds
_Material I_OrderItem _Material
_WorkCenter I_MfgOrderOperationDelayBasic _WorkCenter
_ProductionPlant I_MfgOrderOperationDelayBasic _ProductionPlant
_OpActyNtwkInternalId OpActyNtwkInstance _OpActyNtwkInternalId
_OperationActivityNetwork OpActyNtwkInstance _OperationActivityNetwork
OrderIsShopFloorOrder
_WBSElementBasicData I_OrderItem _WBSElementBasicData2
@AbapCatalog.sqlViewName: 'PMPEOPER'
@AbapCatalog.compiler.compareFilter: true
@AccessControl.authorizationCheck: #NOT_REQUIRED
@ClientHandling.algorithm: #SESSION_VARIABLE
@VDM.viewType: #CONSUMPTION
@VDM.private: true
define view P_MfgProcgExecOperation
  as select from           I_MfgOrderOperationDelayBasic  as MfgOrderOperationDelayBasic
    left outer to one join I_OpActyNtwkInstanceBasic      as OpActyNtwkInstance           on OpActyNtwkInstance.OpActyNtwkInstance = MfgOrderOperationDelayBasic.ProduceOpActyNtwkInstance
    inner join             I_OrderItem                    as OrderItem                    on  OrderItem.OrderID   = MfgOrderOperationDelayBasic.ManufacturingOrder
                                                                                          and OrderItem.OrderItem = '0001'
  -- Joins for holds: For performance reasons each hold type is joined separetly here
    left outer to one join P_MatlNmbrOfProdnHolds         as MatlNmbrOfProdnHolds         on MatlNmbrOfProdnHolds.Material = OrderItem.Material
    left outer to one join P_WrkCtrNmbrOfProdnHolds       as WrkCtrNmbrOfProdnHolds       on  WrkCtrNmbrOfProdnHolds.WorkCenterInternalID = MfgOrderOperationDelayBasic.WorkCenterInternalID
                                                                                          and WrkCtrNmbrOfProdnHolds.WorkCenterTypeCode   = MfgOrderOperationDelayBasic.WorkCenterTypeCode
    left outer to one join P_OrderNmbrOfProdnHolds        as OrderNmbrOfProdnHolds        on OrderNmbrOfProdnHolds.ManufacturingOrder = MfgOrderOperationDelayBasic.ManufacturingOrder
    left outer to one join P_OperNmbrOfProdnHolds         as OperNmbrOfProdnHolds         on  OperNmbrOfProdnHolds.OrderInternalID          = MfgOrderOperationDelayBasic.OrderInternalBillOfOperations
                                                                                          and OperNmbrOfProdnHolds.OrderOperationInternalID = MfgOrderOperationDelayBasic.OrderIntBillOfOperationsItem
    left outer to one join P_MfgOrderOpNmbrOfOpActyOnHold as MfgOrderOpNmbrOfOpActyOnHold on  MfgOrderOpNmbrOfOpActyOnHold.OrderInternalID          = MfgOrderOperationDelayBasic.OrderInternalBillOfOperations
                                                                                          and MfgOrderOpNmbrOfOpActyOnHold.OrderOperationInternalID = MfgOrderOperationDelayBasic.OrderIntBillOfOperationsItem
{
  key MfgOrderOperationDelayBasic.OrderInternalBillOfOperations,
  key MfgOrderOperationDelayBasic.OrderIntBillOfOperationsItem,
      MfgOrderOperationDelayBasic.ManufacturingOrder,
      MfgOrderOperationDelayBasic.ManufacturingOrderCategory,
      MfgOrderOperationDelayBasic.ManufacturingOrderType,
      MfgOrderOperationDelayBasic.Reservation,
      MfgOrderOperationDelayBasic.ProdnProcgIsFlexible,
      MfgOrderOperationDelayBasic.ManufacturingOrderSequence,
      MfgOrderOperationDelayBasic.ProductionPlant,
      MfgOrderOperationDelayBasic.ManufacturingOrderOperation,
      MfgOrderOperationDelayBasic.MfgOrderOperationText,
      MfgOrderOperationDelayBasic.ProduceOpActyNtwkInstance,
      OrderItem.Material,
      OrderItem.WBSElementInternalID_2                                                        as WBSElementInternalID,
      MfgOrderOperationDelayBasic.WorkCenterInternalID,
      MfgOrderOperationDelayBasic.WorkCenterTypeCode,
      MfgOrderOperationDelayBasic.PlantTimeZone,
      MfgOrderOperationDelayBasic.OpLtstSchedldExecStrtDte,
      MfgOrderOperationDelayBasic.OpLtstSchedldExecStrtTme,
      MfgOrderOperationDelayBasic.OpLtstSchedldExecStrtDteTme,
      MfgOrderOperationDelayBasic.OpLtstSchedldExecEndDte,
      MfgOrderOperationDelayBasic.OpLtstSchedldExecEndTme,
      MfgOrderOperationDelayBasic.OpLtstSchedldExecEndDteTme,
      MfgOrderOperationDelayBasic.OpActualExecutionStartDate,
      MfgOrderOperationDelayBasic.OpActualExecutionStartTime,
      MfgOrderOperationDelayBasic.OpActualExecutionStartDateTime,
      MfgOrderOperationDelayBasic.OpActualExecutionEndDate,
      MfgOrderOperationDelayBasic.OpActualExecutionEndTime,
      MfgOrderOperationDelayBasic.OpActualExecutionEndDateTime,
      -- Quantities
      MfgOrderOperationDelayBasic.OpPlannedScrapQuantity,
      MfgOrderOperationDelayBasic.OpPlannedTotalQuantity,
      MfgOrderOperationDelayBasic.OpTotalConfirmedYieldQty,
      MfgOrderOperationDelayBasic.OpTotalConfirmedScrapQty,
      cast(0 as lmnga)                                                                        as OpExecutionCompletedQuantity,

      MfgOrderOperationDelayBasic.OperationUnit,
      MfgOrderOperationDelayBasic.OperationExecutionStartIsLate,
      OpActyNtwkInstance.OpActyNtwkInstance,
      OpActyNtwkInstance.OperationActivityNetwork,
      OpActyNtwkInstance.OpActyNtwkVersionCounter,
      OpActyNtwkInstance.OpActyConfIsSFIBased,
      -- Status fields
      MfgOrderOperationDelayBasic.OperationIsClosed,
      MfgOrderOperationDelayBasic.OperationIsTechlyCompleted,
      MfgOrderOperationDelayBasic.OperationIsDelivered,
      MfgOrderOperationDelayBasic.OperationIsPartiallyDelivered,
      MfgOrderOperationDelayBasic.OperationIsPartiallyConfirmed,
      MfgOrderOperationDelayBasic.OperationIsPrinted,
      MfgOrderOperationDelayBasic.OperationIsReleased,
      MfgOrderOperationDelayBasic.OperationIsCreated,
      MfgOrderOperationDelayBasic.OperationIsScheduled,
      MfgOrderOperationDelayBasic.OperationIsConfirmed,
      MfgOrderOperationDelayBasic.OperationIsDeleted,
      MfgOrderOperationDelayBasic.OperationExecutionEndIsLate,
      MfgOrderOperationDelayBasic.OperationYieldDeviationQty,
      case  MfgOrderOperationDelayBasic.OperationExecutionStartIsLate
         when 'X' then
         case when (MfgOrderOperationDelayBasic.OperationIsPartiallyConfirmed = ' ' and MfgOrderOperationDelayBasic.OperationIsReleased = 'X'  and MfgOrderOperationDelayBasic.OperationIsConfirmed = '' and (MfgOrderOperationDelayBasic.PlannedCurrentStrtDateDvtnDurn > 0 ))
         then (cast(MfgOrderOperationDelayBasic.PlannedCurrentStrtDateDvtnDurn as abap.fltp) / 3600.00)
         else (cast(MfgOrderOperationDelayBasic.PlannedActualStartDateDvtnDurn as abap.fltp) / 3600.00)
         end
         else 0
      end                                                                                     as ExecutionStartLatenessInHours,
      case MfgOrderOperationDelayBasic.OperationExecutionEndIsLate
       when 'X' then
           case when (MfgOrderOperationDelayBasic.OperationIsConfirmed = ' ' and MfgOrderOperationDelayBasic.OperationIsPartiallyConfirmed = 'X' and MfgOrderOperationDelayBasic.OperationIsConfirmed = '' and (MfgOrderOperationDelayBasic.PlannedCurrentEndDateDvtnDurn > 0  ) )
           then (cast(MfgOrderOperationDelayBasic.PlannedCurrentEndDateDvtnDurn as abap.fltp) / 3600.00)
           else (cast(MfgOrderOperationDelayBasic.PlannedActualEndDateDvtnDurn as abap.fltp) / 3600.00)
            end
       else 0
      end                                                                                     as ExecutionEndLatenessInHours,
      case  MfgOrderOperationDelayBasic.OperationExecutionStartIsLate
         when 'X' then
         case when (MfgOrderOperationDelayBasic.OperationIsPartiallyConfirmed = ' ' and MfgOrderOperationDelayBasic.OperationIsReleased = 'X'  and MfgOrderOperationDelayBasic.OperationIsConfirmed = '' and (MfgOrderOperationDelayBasic.PlannedCurrentStrtDateDvtnDurn > 0 ))
         then (cast(MfgOrderOperationDelayBasic.PlannedCurrentStrtDateDvtnDurn as abap.fltp) / 60.00)
         else (cast(MfgOrderOperationDelayBasic.PlannedActualStartDateDvtnDurn as abap.fltp) / 60.00)
         end
         else 0
      end                                                                                     as ExecutionStartLatenessInMins,
      case MfgOrderOperationDelayBasic.OperationExecutionEndIsLate
       when 'X' then
           case when (MfgOrderOperationDelayBasic.OperationIsConfirmed = ' ' and MfgOrderOperationDelayBasic.OperationIsPartiallyConfirmed = 'X' and MfgOrderOperationDelayBasic.OperationIsConfirmed = '' and (MfgOrderOperationDelayBasic.PlannedCurrentEndDateDvtnDurn > 0  ) )
           then (cast(MfgOrderOperationDelayBasic.PlannedCurrentEndDateDvtnDurn as abap.fltp) / 60.00)
           else (cast(MfgOrderOperationDelayBasic.PlannedActualEndDateDvtnDurn as abap.fltp) / 60.00)
            end
       else 0
      end                                                                                     as ExecutionEndLatenessInMinutes,
      cast(MfgOrderOperationDelayBasic.PlannedCurrentStrtDateDvtnDurn as abap.fltp)/ 86400.00 as OperationStartDeviationDays,
      cast(MfgOrderOperationDelayBasic.PlannedCurrentEndDateDvtnDurn as abap.fltp)/ 86400.00  as PlannedEndDateDvtnInDays,
      OrderItem.EffectivityParameterVariant,

      --Hold Info
      cast(coalesce(MatlNmbrOfProdnHolds.NumberOfHolds, 0) as mpe_number_of_holds preserving type)   as NumberOfMaterialHolds,
      cast(coalesce(WrkCtrNmbrOfProdnHolds.NumberOfHolds, 0) as mpe_number_of_holds preserving type) as NumberOfWorkCenterHolds,
      cast(coalesce(OrderNmbrOfProdnHolds.NumberOfHolds, 0) as mpe_number_of_holds preserving type)  as NumberOfOrderHolds,
      cast(coalesce(OperNmbrOfProdnHolds.NumberOfHolds, 0) as mpe_number_of_holds preserving type)   as NumberOfOperationHolds,
      cast(coalesce(MfgOrderOpNmbrOfOpActyOnHold.OpActyWithoutHold, 0) as mpe_number_of_holds)       as NumberOfOperationActivityHolds,

      OrderItem._Material,
      MfgOrderOperationDelayBasic._WorkCenter,
      MfgOrderOperationDelayBasic._ProductionPlant,
      OpActyNtwkInstance._OpActyNtwkInternalId,
      OpActyNtwkInstance._OperationActivityNetwork,
      case when OpActyNtwkInstance.OpActyNtwkInstance is null then '' else 'X' end            as OrderIsShopFloorOrder,

      OrderItem._WBSElementBasicData2                                                         as _WBSElementBasicData
}
where
  MfgOrderOperationDelayBasic.ManufacturingOrderCategory = '10'
/*+[internal] {
"BASEINFO":
{
"FROM":
[
"I_MFGORDEROPERATIONDELAYBASIC",
"I_OPACTYNTWKINSTANCEBASIC",
"I_ORDERITEM",
"P_MATLNMBROFPRODNHOLDS",
"P_MFGORDEROPNMBROFOPACTYONHOLD",
"P_OPERNMBROFPRODNHOLDS",
"P_ORDERNMBROFPRODNHOLDS",
"P_WRKCTRNMBROFPRODNHOLDS"
],
"ASSOCIATED":
[
"I_MATERIAL",
"I_OPACTYNTWKINTERNALID",
"I_OPERATIONACTIVITYNETWORK",
"I_PLANT",
"I_WBSELEMENTBASICDATA",
"I_WORKCENTER"
],
"BASE":
[
"I_MFGORDEROPERATIONDELAYBASIC",
"I_OPACTYNTWKINSTANCEBASIC",
"I_ORDERITEM"
],
"ANNO_REF":
[],
"SCALAR_FUNCTION":
[],
"VERSION":0,
"ANNOREF_EVALUATION_ERROR":""
}
}*/