P_ENGMNTPROJPLANLINEITEMKPI

CDS View

Engagement Project Plan Line Item KPI

P_ENGMNTPROJPLANLINEITEMKPI is a CDS View in S/4HANA. Engagement Project Plan Line Item KPI. It contains 6 fields. 6 CDS views read from this table.

CDS Views using this table (6)

ViewTypeJoinVDMDescription
I_EngagementProjectKPI view from COMPOSITE Engagement Project KPI
I_EngmntProjLineItemKPI view from COMPOSITE Project Plan Line Item KPI
I_WorkPackageBillingPlan view from COMPOSITE Work Package Billing Plan
I_WorkPackageKPI view from COMPOSITE WorkPackage KPI
P_EngmntProjDemandKPI view from COMPOSITE Engagement Project Demand KPI's
P_EngmtProjDmndByPerdKPI view inner COMPOSITE Engagement Project Demand By Period KPI

Fields (6)

KeyField CDS FieldsUsed in Views
EngagementProject EngagementProject 2
EngmtProjFinPlanVersion EngmtProjFinPlanVersion 2
FiscalPeriod FiscalPeriod 1
FiscalYear FiscalYear 1
ResourceDemandUUID ResourceDemandUUID 2
WorkPackage WorkPackage 2
@AbapCatalog.sqlViewName: 'PENGPRJPLNITEM'
@AbapCatalog.compiler.compareFilter: true
@VDM.private: true
@VDM.viewType: #COMPOSITE
@ClientHandling.algorithm: #SESSION_VARIABLE
@ObjectModel.usageType.serviceQuality: #D
@ObjectModel.usageType.sizeCategory: #XL
@ObjectModel.usageType.dataClass: #TRANSACTIONAL
@AccessControl.authorizationCheck: #NOT_REQUIRED
define view P_EngmntProjPlanLineItemKPI

  as select from I_EngmntProjPlnDataUnitVers
{
  EngagementProject,
  WorkPackageUUID,
  WorkPackage,
  //EngagementProjFinPlanUUID,

  EngmtProjFinPlanVersion,
  BillingControlCategory,
  ResourceDemandUUID,
  EngagementProjectServiceOrg,

  case when IsUnitBased = 'X'
  then EngagementProjectResource end                                  as WorkPackageUnit,

  case when IsUnitBased <> 'X'
  then EngagementProjectResource end                                  as EngagementProjectResource,

  case when IsUnitBased = 'X'
  then UnitOfMeasure end                                              as WorkPackageUnitUoM,

  case when IsUnitBased <> 'X'
  then UnitOfMeasure end                                              as UnitOfMeasure,

  EngagementProjectResourceType,
  WorkItem,
  EmploymentInternalID,
  EngmtProjEmployeeIsStaffed,
  FiscalYear,
  FiscalPeriod,  
  Currency,
  EngmntProjPlanLineType,

  case when ( EngmntProjPlanLineType = 'U' and EngagementProjectResourceType = '0ACT' ) or
  ( EngmntProjPlanLineType = 'D' and EngagementProjectResourceType = '0ADL' )
  then PlndEffortQty
  else cast ( cast ('0' as abap.quan( 15, 3 )) as megxxx ) end        as RemainingDemandEffortQty,


  case when EngmntProjPlanLineType = 'S' and EngagementProjectResourceType = '0ACT'
  then PlndEffortQty
  else cast ( cast ('0' as abap.quan( 15, 3 )) as megxxx ) end        as SupplyEffortQty,


  case when ( EngmntProjPlanLineType = 'U' and EngagementProjectResourceType = '0ACT' ) or
  ( EngmntProjPlanLineType = 'D' and EngagementProjectResourceType = '0ADL' )
  then PlndCostAmt
  else cast ( cast ('0' as abap.curr( 23,2)) as /cpd/pfp_curr ) end   as RemainingDemandCostAmt,


  case when EngmntProjPlanLineType = 'S' and EngagementProjectResourceType = '0ACT'
  then PlndCostAmt
    else cast ( cast ('0' as abap.curr( 23,2)) as /cpd/pfp_curr ) end as SupplyCostAmt,


  case when ( EngmntProjPlanLineType = 'U' and EngagementProjectResourceType = '0ACT' ) or
  ( EngmntProjPlanLineType = 'D' and EngagementProjectResourceType = '0ADL' )
  then PlndRevnAmt
   else cast ( cast ('0' as abap.curr( 23,2)) as /cpd/pfp_curr ) end  as RemainingDemandRevnAmt,


  case when EngmntProjPlanLineType = 'S' and EngagementProjectResourceType = '0ACT'
  then PlndRevnAmt
   else cast ( cast ('0' as abap.curr( 23,2)) as /cpd/pfp_curr ) end  as SupplyRevnAmt,


  case when EngmntProjPlanLineType = 'D' and EngagementProjectResourceType = '0EXP'
  then PlndCostAmt
   else cast ( cast ('0' as abap.curr( 23,2)) as /cpd/pfp_curr ) end  as PlannedExpenseCost,


  case when EngmntProjPlanLineType = 'D' and EngagementProjectResourceType = '0EXP'
  then PlndRevnAmt
  else cast ( cast ('0' as abap.curr( 23,2)) as /cpd/pfp_curr ) end   as PlannedExpenseRevenue,


  case when EngmntProjPlanLineType = 'D' and ( EngagementProjectResourceType = '0ACT' or EngagementProjectResourceType = '0ADL' ) and
  IsUnitBased <> 'X'
  then PlndEffortQty
  else cast ( cast ('0' as abap.quan( 15, 3 )) as megxxx ) end        as DemandEffortQty,


  case when EngmntProjPlanLineType = 'D' and ( EngagementProjectResourceType = '0ACT' or EngagementProjectResourceType = '0ADL' )
   and IsUnitBased <> 'X'
  then PlndCostAmt
  else cast ( cast ('0' as abap.curr( 23,2)) as /cpd/pfp_curr ) end   as DemandCostAmt,


  case when EngmntProjPlanLineType = 'D' and IsUnitBased = 'X'
  then PlndRevnAmt
  else cast ( cast ('0' as abap.curr( 23,2)) as /cpd/pfp_curr ) end   as PlannedUnitRevenue,


  case when EngmntProjPlanLineType = 'D' and IsUnitBased = 'X'
  then PlndEffortQty
  else cast ( cast ('0' as abap.quan( 15, 3 )) as megxxx ) end        as PlanUnitQuantity,


  case when EngmntProjPlanLineType = 'D'
  then ActualPlanDeviationEffort
  else cast ( cast ('0' as abap.curr( 23,2)) as megxxx ) end          as ActualPlanDeviationEffort,


  case when EngmntProjPlanLineType = 'D'
  then ActualPlanDeviationCost
  else cast ( cast ('0' as abap.curr( 23,2)) as /cpd/pfp_curr ) end   as ActualPlanDeviationCost,


  case when EngmntProjPlanLineType = 'U' and EngagementProjectResourceType = '0ACT'
  then PlndEffortQty
  else cast ( cast ('0' as abap.quan( 15, 3 )) as megxxx ) end        as RscePlannedQuantity,

  case when EngmntProjPlanLineType = 'U' and EngagementProjectResourceType = '0ACT'
  then PlndCostAmt
  else cast ( cast ('0' as abap.curr( 23,2)) as /cpd/pfp_curr ) end   as RemainingRoleCostAmt,

  IsUnitBased,

  _EngagementProject

}