P_MfgOrderOperNumberOfHolds

DDL: P_MFGORDEROPERNUMBEROFHOLDS SQL: PMPEOPNMBRHOLD Type: view CONSUMPTION

P_MfgOrderOperNumberOfHolds is a Consumption CDS View in SAP S/4HANA. It reads from 2 data sources (I_MfgOrder, I_OrderOperationBasic) and exposes 6 fields with key fields OrderInternalID, OrderOperationInternalID.

Data Sources (2)

SourceAliasJoin Type
I_MfgOrder MfgOrder inner
I_OrderOperationBasic OrderOperationBasic from

Annotations (10)

NameValueLevelField
AbapCatalog.sqlViewName PMPEOPNMBRHOLD view
AccessControl.authorizationCheck #NOT_REQUIRED view
ClientHandling.algorithm #SESSION_VARIABLE view
ObjectModel.usageType.serviceQuality #C view
ObjectModel.usageType.sizeCategory #XL view
ObjectModel.usageType.dataClass #TRANSACTIONAL view
VDM.viewType #CONSUMPTION view
VDM.private true view
AbapCatalog.compiler.compareFilter true view
AbapCatalog.preserveKey true view

Fields (6)

KeyFieldSource TableSource FieldDescription
KEY OrderInternalID I_OrderOperationBasic OrderInternalID
KEY OrderOperationInternalID I_OrderOperationBasic OrderOperationInternalID
ManufacturingOrder I_MfgOrder ManufacturingOrder
WorkCenterInternalID I_OrderOperationBasic WorkCenterInternalID
WorkCenterTypeCode I_OrderOperationBasic WorkCenterTypeCode
NumberOfHolds0asNumberOfHolds
@AbapCatalog.sqlViewName: 'PMPEOPNMBRHOLD'
@AccessControl.authorizationCheck: #NOT_REQUIRED
@ClientHandling.algorithm: #SESSION_VARIABLE
@ObjectModel.usageType: {serviceQuality: #C, sizeCategory: #XL, dataClass: #TRANSACTIONAL}
@VDM.viewType: #CONSUMPTION
@VDM.private: true
@AbapCatalog.compiler.compareFilter: true
@AbapCatalog.preserveKey:true
define view P_MfgOrderOperNumberOfHolds
  as select from           I_OrderOperationBasic    as OrderOperationBasic
    inner join             I_MfgOrder               as MfgOrder               on MfgOrder.OrderInternalBillOfOperations = OrderOperationBasic.OrderInternalID
    left outer to one join P_MatlNmbrOfProdnHolds   as MatlNmbrOfProdnHolds   on MatlNmbrOfProdnHolds.Material = MfgOrder.Material
    left outer to one join P_WrkCtrNmbrOfProdnHolds as WrkCtrNmbrOfProdnHolds on  WrkCtrNmbrOfProdnHolds.WorkCenterInternalID = OrderOperationBasic.WorkCenterInternalID
                                                                              and WrkCtrNmbrOfProdnHolds.WorkCenterTypeCode   = OrderOperationBasic.WorkCenterTypeCode
    left outer to one join P_OrderNmbrOfProdnHolds  as OrderNmbrOfProdnHolds  on OrderNmbrOfProdnHolds.ManufacturingOrder = MfgOrder.ManufacturingOrder
    left outer to one join P_OperNmbrOfProdnHolds   as OperNmbrOfProdnHolds   on  OperNmbrOfProdnHolds.OrderInternalID          = OrderOperationBasic.OrderInternalID
                                                                              and OperNmbrOfProdnHolds.OrderOperationInternalID = OrderOperationBasic.OrderOperationInternalID
{
  key OrderOperationBasic.OrderInternalID,
  key OrderOperationBasic.OrderOperationInternalID,
      MfgOrder.ManufacturingOrder,
      OrderOperationBasic.WorkCenterInternalID,
      OrderOperationBasic.WorkCenterTypeCode,
      coalesce(MatlNmbrOfProdnHolds.NumberOfHolds,0)
      + coalesce(WrkCtrNmbrOfProdnHolds.NumberOfHolds,0)
      + coalesce(OrderNmbrOfProdnHolds.NumberOfHolds,0)
      + coalesce(OperNmbrOfProdnHolds.NumberOfHolds,0) as NumberOfHolds
}
group by
  OrderOperationBasic.OrderInternalID,
  OrderOperationBasic.OrderOperationInternalID,
  MfgOrder.ManufacturingOrder,
  OrderOperationBasic.WorkCenterInternalID,
  OrderOperationBasic.WorkCenterTypeCode,
  MatlNmbrOfProdnHolds.NumberOfHolds,
  WrkCtrNmbrOfProdnHolds.NumberOfHolds,
  OrderNmbrOfProdnHolds.NumberOfHolds,
  OperNmbrOfProdnHolds.NumberOfHolds
/*+[internal] {
"BASEINFO":
{
"FROM":
[
"I_MFGORDER",
"I_ORDEROPERATIONBASIC",
"P_MATLNMBROFPRODNHOLDS",
"P_OPERNMBROFPRODNHOLDS",
"P_ORDERNMBROFPRODNHOLDS",
"P_WRKCTRNMBROFPRODNHOLDS"
],
"ASSOCIATED":
[],
"BASE":
[],
"ANNO_REF":
[],
"SCALAR_FUNCTION":
[],
"VERSION":0,
"ANNOREF_EVALUATION_ERROR":""
}
}*/