P_EntProjCostLineItems

DDL: P_ENTPROJCOSTLINEITEMS SQL: PEPSRPRLS Type: view COMPOSITE

P_EntProjCostLineItems is a Composite CDS View in SAP S/4HANA. It reads from 3 data sources (I_EnterpriseProject, I_ProjectCostLineItems, I_PPM_ProjTeamMembersCntNoSt) and exposes 17 fields with key fields ProjectSummaryTaskUUID, ProjectInternalID, ProjectUUID. It has 1 association to related views.

Data Sources (3)

SourceAliasJoin Type
I_EnterpriseProject EntProj left_outer
I_ProjectCostLineItems ProjCost from
I_PPM_ProjTeamMembersCntNoSt TeamMemberCnt left_outer

Associations (1)

CardinalityTargetAliasCondition
[0..1] I_SingleResponsibleForProj _Responsible _Responsible.ReferencedObjectUUID = EntProj.ProjectSummaryTaskUUID

Annotations (11)

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

Fields (17)

KeyFieldSource TableSource FieldDescription
KEY ProjectSummaryTaskUUID I_EnterpriseProject ProjectSummaryTaskUUID
KEY ProjectInternalID I_ProjectCostLineItems ProjectInternalID
KEY ProjectUUID I_EnterpriseProject ProjectUUID
Project I_EnterpriseProject Project
ProjectDescription I_EnterpriseProject ProjectDescription
ProfitCenter I_EnterpriseProject ProfitCenter
FunctionalArea I_EnterpriseProject FunctionalArea
ResponsibleCostCenter I_EnterpriseProject ResponsibleCostCenter
ProjectStartDate I_EnterpriseProject ProjectStartDate
ProjectEndDate I_EnterpriseProject ProjectEndDate
CompanyCode I_EnterpriseProject CompanyCode
ControllingArea I_EnterpriseProject ControllingArea
PlanAmountInGlobalCurrency
GlobalCurrency I_ProjectCostLineItems GlobalCurrency
BusinessPartnerUUID _Responsible BusinessPartnerUUID
BusinessPartnerFullName _Responsible BusinessPartnerFullName
TeamMemberCount
@AbapCatalog.sqlViewName: 'PEPSRPRLS'
@VDM.viewType: #COMPOSITE
@AbapCatalog.compiler.compareFilter: true
@AbapCatalog.preserveKey: true
@VDM.private: true
@AccessControl.authorizationCheck: #CHECK
@ClientHandling.algorithm: #SESSION_VARIABLE
@AccessControl.personalData.blocking: #REQUIRED
@ObjectModel.usageType.sizeCategory: #XXL
@ObjectModel.usageType.dataClass:  #MIXED
@ObjectModel.usageType.serviceQuality: #D
define view P_EntProjCostLineItems
  as select from    I_ProjectCostLineItems       as ProjCost
    left outer join I_EnterpriseProject          as EntProj       on ProjCost.ProjectInternalID = EntProj.ProjectInternalID
    left outer join I_PPM_ProjTeamMembersCntNoSt as TeamMemberCnt on TeamMemberCnt.ProjectSummaryTaskUUID = EntProj.ProjectSummaryTaskUUID

  association [0..1] to I_SingleResponsibleForProj as _Responsible on _Responsible.ReferencedObjectUUID = EntProj.ProjectSummaryTaskUUID
{

  key  EntProj.ProjectSummaryTaskUUID,
  key  ProjCost.ProjectInternalID,
  key  EntProj.ProjectUUID,
       EntProj.Project,
       EntProj.ProjectDescription,
       EntProj.ProfitCenter,
       EntProj.FunctionalArea,
       EntProj.ResponsibleCostCenter,
       EntProj.ProjectStartDate,
       EntProj.ProjectEndDate,
       EntProj.CompanyCode,
       EntProj.ControllingArea,
       case
          when EntProj.ProjectStartDate > '19000101'
            and EntProj.ProjectEndDate > '19000101'
          then cast ((dats_days_between(EntProj.ProjectStartDate, EntProj.ProjectEndDate) + 1) as numberofdays )
          else 0
       end                                           as PlannedDuration,
       // Actual Costs Excluding Settlements

       sum(case
       when ProjCost.IsSettled = 'X'
       then  ProjCost.ActualAmountInGlobalCurrency
       else 0  end)                                  as ActualAmountInGlobalCurrency,
       sum(ProjCost.PlanAmountInGlobalCurrency)      as PlanAmountInGlobalCurrency,
       ProjCost.GlobalCurrency,
       _Responsible.BusinessPartnerUUID,
       _Responsible.BusinessPartnerFullName,
       cast( TeamMemberCnt.TeamMemberCount as int4 ) as TeamMemberCount
}

group by
  EntProj.ProjectSummaryTaskUUID,
  ProjCost.ProjectInternalID,
  EntProj.Project,
  EntProj.ProjectUUID,
  EntProj.ProjectDescription,
  EntProj.ProfitCenter,
  EntProj.FunctionalArea,
  EntProj.ResponsibleCostCenter,
  EntProj.ProjectStartDate,
  EntProj.ProjectEndDate,
  EntProj.CompanyCode,
  EntProj.ControllingArea,
  ProjCost.GlobalCurrency,
  _Responsible.BusinessPartnerUUID,
  _Responsible.BusinessPartnerFullName,
  TeamMemberCnt.TeamMemberCount
/*+[internal] {
"BASEINFO":
{
"FROM":
[
"I_ENTERPRISEPROJECT",
"I_PPM_PROJTEAMMEMBERSCNTNOST",
"I_PROJECTCOSTLINEITEMS",
"I_SINGLERESPONSIBLEFORPROJ"
],
"ASSOCIATED":
[
"I_SINGLERESPONSIBLEFORPROJ"
],
"BASE":
[],
"ANNO_REF":
[],
"SCALAR_FUNCTION":
[],
"VERSION":0,
"ANNOREF_EVALUATION_ERROR":""
}
}*/