P_OrdFirstOper

DDL: P_ORDFIRSTOPER Type: view_entity CONSUMPTION

P_OrdFirstOper is a Consumption CDS View in SAP S/4HANA. It reads from 4 data sources (P_MfgOrderAORList, I_ProductionOrdOpBasic, P_OrdFirstOperAggr, I_StatusObjectStatusBasic) and exposes 10 fields with key field OrderInternalBillOfOperations.

Data Sources (4)

SourceAliasJoin Type
P_MfgOrderAORList _AORList inner
I_ProductionOrdOpBasic _firstOp left_outer
P_OrdFirstOperAggr _FirstOper from
I_StatusObjectStatusBasic _isConfirmed left_outer

Annotations (6)

NameValueLevelField
AccessControl.authorizationCheck #NOT_REQUIRED view
ObjectModel.usageType.serviceQuality #C view
ObjectModel.usageType.sizeCategory #XL view
ObjectModel.usageType.dataClass #MIXED view
VDM.viewType #CONSUMPTION view
VDM.private true view

Fields (10)

KeyFieldSource TableSource FieldDescription
KEY OrderInternalBillOfOperations P_OrdFirstOperAggr OrderInternalBillOfOperations
FirstOperation P_OrdFirstOperAggr FirstOperation
ManufacturingOrder P_OrdFirstOperAggr ManufacturingOrder
ManufacturingOrderCategory I_ProductionOrdOpBasic ManufacturingOrderCategory
FirstOperationText I_ProductionOrdOpBasic OperationText
FirstOperDet
OpFirstConfirmedYieldQty I_ProductionOrdOpBasic OpTotalConfirmedYieldQty
OpFirstPlannedTotalQty I_ProductionOrdOpBasic OpPlannedTotalQuantity
OperationIsConfirmed
OperationUnit I_ProductionOrdOpBasic OperationUnit
@AccessControl.authorizationCheck: #NOT_REQUIRED
//@EndUserText.label: 'Order First Operation Details'

@ObjectModel.usageType: {serviceQuality: #C, sizeCategory: #XL, dataClass: #MIXED}
@VDM.viewType:   #CONSUMPTION
@VDM.private: true

define view entity P_OrdFirstOper
  as select from P_OrdFirstOperAggr as _FirstOper
  inner join P_MfgOrderAORList as _AORList on _AORList.OrderID = _FirstOper.ManufacturingOrder
  left outer join I_ProductionOrdOpBasic as _firstOp on  _FirstOper.OrderInternalBillOfOperations = _firstOp.OrderInternalID
                                                              and _FirstOper.FirstOperation    = _firstOp.Operation
                                                              and _FirstOper.ManufacturingOrder = _firstOp.ManufacturingOrder
  left outer join I_StatusObjectStatusBasic as _isConfirmed on _isConfirmed.StatusObject = _firstOp.ObjectInternalID and _isConfirmed.StatusCode = 'I0009' and _isConfirmed.StatusIsInactive = '' // OperationIsConfirmed

{
  key _FirstOper.OrderInternalBillOfOperations,
      _FirstOper.FirstOperation,
      _FirstOper.ManufacturingOrder,
      _firstOp.ManufacturingOrderCategory,
      _firstOp.OperationText                                                    as FirstOperationText,
      concat( concat (_firstOp.OperationText, concat('(',_FirstOper.FirstOperation)),')')  as FirstOperDet,
      _firstOp.OpTotalConfirmedYieldQty                                                 as OpFirstConfirmedYieldQty,
      _firstOp.OpPlannedTotalQuantity                                                   as OpFirstPlannedTotalQty,
      case when _isConfirmed.StatusCode is null then '' else 'X' end as OperationIsConfirmed,
      _firstOp.OperationUnit
}
where
      _firstOp.SuperiorOperationInternalID is initial
  and _firstOp.Sequence     = '000000'
  and _firstOp.ManufacturingOrderCategory     = '10'