P_EntProjCostDates

DDL: P_ENTPROJCOSTDATES SQL: PEPPROJCOSTDATS Type: view COMPOSITE

P_EntProjCostDates is a Composite CDS View in SAP S/4HANA. It reads from 1 data source (P_EnterpriseProjectCosts) and exposes 6 fields. It has 1 association to related views.

Data Sources (1)

SourceAliasJoin Type
P_EnterpriseProjectCosts CostItem from

Associations (1)

CardinalityTargetAliasCondition
[1..1] I_FiscalYearPeriodForCmpnyCode _FiscalPeriod CostItem.FiscalYear = _FiscalPeriod.FiscalYear and CostItem.FiscalPeriod = _FiscalPeriod.FiscalPeriod and CostItem.CompanyCode = _FiscalPeriod.CompanyCode

Annotations (11)

NameValueLevelField
AbapCatalog.sqlViewName PEPPROJCOSTDATS view
AbapCatalog.compiler.compareFilter true view
AbapCatalog.preserveKey true view
VDM.private true view
VDM.viewType #COMPOSITE view
AccessControl.authorizationCheck #CHECK view
ClientHandling.algorithm #SESSION_VARIABLE view
AccessControl.personalData.blocking #REQUIRED view
ObjectModel.usageType.serviceQuality #D view
ObjectModel.usageType.dataClass #MIXED view
ObjectModel.usageType.sizeCategory #L view

Fields (6)

KeyFieldSource TableSource FieldDescription
Project P_EnterpriseProjectCosts Project
ProjectInternalID P_EnterpriseProjectCosts ProjectInternalID
YearMonthendasActualCostStartYearMonth
YearMonthendasPlannedCostStartYearMonth
YearMonthendasActualCostEndYearMonth
YearMonthendasPlannedCostEndYearMonth
@AbapCatalog.sqlViewName: 'PEPPROJCOSTDATS'
@AbapCatalog.compiler.compareFilter: true
@AbapCatalog.preserveKey: true
@VDM.private: true
@VDM.viewType: #COMPOSITE
@AccessControl.authorizationCheck: #CHECK
@ClientHandling.algorithm: #SESSION_VARIABLE
@AccessControl.personalData.blocking: #REQUIRED

@ObjectModel: {
    usageType: {
       serviceQuality:  #D,
       dataClass:       #MIXED,
       sizeCategory:    #L
   }
}
define view P_EntProjCostDates as select from P_EnterpriseProjectCosts  as CostItem
     association [1..1] to I_FiscalYearPeriodForCmpnyCode as _FiscalPeriod on  CostItem.FiscalYear   = _FiscalPeriod.FiscalYear
                                                                        and CostItem.FiscalPeriod = _FiscalPeriod.FiscalPeriod
                                                                        and CostItem.CompanyCode  = _FiscalPeriod.CompanyCode
{   
  CostItem.Project,
  CostItem.ProjectInternalID,
  case 
  when PlanningCategory = 'ACT01' then max(_FiscalPeriod._FiscalPeriodStartDate._YearMonth.LastDayOfMonthDate)  
  end as ActualEndByLtstActualCost,
  case 
  when PlanningCategory = 'PLN' then max(_FiscalPeriod._FiscalPeriodStartDate._YearMonth.LastDayOfMonthDate)  
  end as PlannedEndByLtstPlannedCost,
  case
  when PlanningCategory = 'ACT01' then min(_FiscalPeriod._FiscalPeriodStartDate._YearMonth.FirstDayOfMonthDate)  
  end as ActualStartByErlstActualCost,
  case
  when PlanningCategory = 'PLN' then min(_FiscalPeriod._FiscalPeriodStartDate._YearMonth.FirstDayOfMonthDate)  
  end as PlannedStartByErlstPlannedCost,
  case
  when PlanningCategory = 'ACT01' then min(_FiscalPeriod._FiscalPeriodStartDate._YearMonth.YearMonth)
  end as ActualCostStartYearMonth,
  case
  when PlanningCategory = 'PLN' then  min(_FiscalPeriod._FiscalPeriodStartDate._YearMonth.YearMonth)   
  end as PlannedCostStartYearMonth,
  case
  when PlanningCategory = 'ACT01' then max(_FiscalPeriod._FiscalPeriodStartDate._YearMonth.YearMonth)
  end as ActualCostEndYearMonth,
  case
  when PlanningCategory = 'PLN' then  max(_FiscalPeriod._FiscalPeriodStartDate._YearMonth.YearMonth)   
  end as PlannedCostEndYearMonth
  }
where CostItem.FiscalYearPeriod > '1900000' and (CostItem.PlanningCategory = 'PLN' or CostItem.PlanningCategory = 'ACT01' )
group by
  CostItem.Project,
  CostItem.ProjectInternalID,
  CostItem.FiscalYear,
  CostItem.PlanningCategory,
  CostItem.FiscalPeriod,
  CostItem.FiscalYearPeriod,
  _FiscalPeriod._FiscalPeriodStartDate.CalendarYear,
  _FiscalPeriod._FiscalPeriodStartDate.CalendarMonth,  
  _FiscalPeriod._FiscalPeriodStartDate.CalendarDay,
  _FiscalPeriod._FiscalPeriodStartDate._YearMonth.YearMonth,
  _FiscalPeriod._FiscalPeriodStartDate._YearMonth.LastDayOfMonthDate,
  _FiscalPeriod._FiscalPeriodStartDate._YearMonth.FirstDayOfMonthDate
  
  
/*+[internal] {
"BASEINFO":
{
"FROM":
[
"I_CALENDARDATE",
"I_FISCALYEARPERIODFORCMPNYCODE",
"I_YEARMONTH",
"P_ENTERPRISEPROJECTCOSTS"
],
"ASSOCIATED":
[
"I_FISCALYEARPERIODFORCMPNYCODE"
],
"BASE":
[],
"ANNO_REF":
[],
"SCALAR_FUNCTION":
[],
"VERSION":0,
"ANNOREF_EVALUATION_ERROR":""
}
}*/