P_MfgOrderOperation

DDL: P_MFGORDEROPERATION SQL: PPPMFGORDOPER Type: view BASIC

P_MfgOrderOperation is a Basic CDS View in SAP S/4HANA. It reads from 2 data sources (P_AFVG, caufv) and exposes 20 fields with key fields OrderInternalBillOfOperations, OrderIntBillOfOperationsItem.

Data Sources (2)

SourceAliasJoin Type
P_AFVG afvg inner
caufv aufv from

Annotations (10)

NameValueLevelField
AbapCatalog.sqlViewName PPPMFGORDOPER view
AbapCatalog.compiler.compareFilter true view
AbapCatalog.preserveKey true view
AccessControl.authorizationCheck #NOT_REQUIRED view
ClientHandling.algorithm #SESSION_VARIABLE view
ObjectModel.usageType.serviceQuality #B view
ObjectModel.usageType.sizeCategory #L view
ObjectModel.usageType.dataClass #TRANSACTIONAL view
VDM.viewType #BASIC view
VDM.private true view

Fields (20)

KeyFieldSource TableSource FieldDescription
KEY OrderInternalBillOfOperations P_AFVG aufpl
KEY OrderIntBillOfOperationsItem P_AFVG aplzl
ManufacturingOrder caufv aufnr
ManufacturingOrderSequence P_AFVG aplfl
vornrendasManufacturingOrderOperation
ManufacturingOrderCategory caufv autyp
ManufacturingOrderType caufv auart
WorkCenterInternalID P_AFVG arbid
ProductionPlant P_AFVG werks
FactoryCalendar P_AFVG kalid
OpErlstSchedldExecStrtDte P_AFVG fsavd
OpErlstSchedldExecEndDte P_AFVG fsedd
OpLtstSchedldExecStrtDte P_AFVG ssavd
OpLtstSchedldExecEndDte P_AFVG ssedd
OpActualExecutionStartDate P_AFVG isdd
OpActualExecutionEndDate P_AFVG iedd
OpLtstSchedldExecStrtTme P_AFVG ssavz
OpLtstSchedldExecEndTme P_AFVG ssedz
OpActualExecutionStartTime P_AFVG isdz
OpActualExecutionEndTime P_AFVG iedz
@AbapCatalog.sqlViewName: 'PPPMFGORDOPER'
@AbapCatalog.compiler.compareFilter: true
@AbapCatalog.preserveKey: true
@AccessControl.authorizationCheck: #NOT_REQUIRED
@ClientHandling.algorithm: #SESSION_VARIABLE
@ObjectModel.usageType: {serviceQuality: #B, sizeCategory: #L, dataClass: #TRANSACTIONAL}
@VDM.viewType: #BASIC
@VDM.private: true

define view P_MfgOrderOperation
// used for AMDP factory calendar method "determine_operation_durations"

  as select from           caufv  as aufv
    inner join             P_AFVG as afvg on  afvg.aufpl = aufv.aufpl
    left outer to one join afvc   as afvc on  afvc.aufpl = afvg.aufpl //sub-operation handling

                                          and afvc.aplzl = afvg.sumnr
{
      // Technical Key

  key afvg.aufpl as OrderInternalBillOfOperations,
  key afvg.aplzl as OrderIntBillOfOperationsItem,
      
      // Semantical key

      aufv.aufnr as ManufacturingOrder,
      afvg.aplfl as ManufacturingOrderSequence,
      case
        when afvg.sumnr > '00000000' then
          afvc.vornr //superior operation ID

        else
          afvg.vornr
      end        as ManufacturingOrderOperation,
      case
        when afvg.sumnr > '00000000' then
          afvg.vornr
        else ''
      end        as ManufacturingOrderSubOperation,

      // Order header data

      aufv.autyp as ManufacturingOrderCategory,
      aufv.auart as ManufacturingOrderType,
      // Operation Data

      afvg.arbid as WorkCenterInternalID,

      // Assignments

      afvg.werks as ProductionPlant,
      afvg.kalid as FactoryCalendar,

      // Dates

      afvg.fsavd as OpErlstSchedldExecStrtDte,
      afvg.fsedd as OpErlstSchedldExecEndDte,
      afvg.ssavd as OpLtstSchedldExecStrtDte,
      afvg.ssedd as OpLtstSchedldExecEndDte,
      afvg.isdd  as OpActualExecutionStartDate,
      afvg.iedd  as OpActualExecutionEndDate,
      // Times

      afvg.ssavz as OpLtstSchedldExecStrtTme,
      afvg.ssedz as OpLtstSchedldExecEndTme,
      afvg.isdz  as OpActualExecutionStartTime,
      afvg.iedz  as OpActualExecutionEndTime
}
where
  ((    aufv.autyp = '10'
     or aufv.autyp = '40' ) //Manufacturing orders only

    and afvg.loekz = ''     //Non-deleted operations

  );
/*+[internal] {
"BASEINFO":
{
"FROM":
[
"P_AFVG",
"AFVC",
"CAUFV"
],
"ASSOCIATED":
[],
"BASE":
[],
"ANNO_REF":
[],
"SCALAR_FUNCTION":
[],
"VERSION":0,
"ANNOREF_EVALUATION_ERROR":""
}
}*/