P_EntProjCostLineItems
Enterprise Project Cost Line Items
P_EntProjCostLineItems is a Composite CDS View that provides data about "Enterprise Project Cost Line Items" in SAP S/4HANA. It reads from 3 data sources (I_EnterpriseProject, P_PROJCSTLINEITEMS, I_PPM_ProjTeamMembersCntNoSt) and exposes 21 fields with key fields ProjectInternalID, ProjectUUID, Ledger. It has 1 association to related views. Part of development package VDM_PPM_OBJ_ANLYTS_PROJCOST_ML.
Data Sources (3)
| Source | Alias | Join Type |
|---|---|---|
| I_EnterpriseProject | EntProj | left_outer |
| P_PROJCSTLINEITEMS | P_PROJCSTLINEITEMS | from |
| I_PPM_ProjTeamMembersCntNoSt | TeamMemberCnt | left_outer |
Parameters (1)
| Name | Type | Default |
|---|---|---|
| P_PlanningCategory | fcom_category |
Associations (1)
| Cardinality | Target | Alias | Condition |
|---|---|---|---|
| [0..1] | I_SingleResponsibleForProj | _Responsible | _Responsible.ReferencedObjectUUID = EntProj.ProjectSummaryTaskUUID |
Annotations (11)
| Name | Value | Level | Field |
|---|---|---|---|
| AbapCatalog.sqlViewName | PEPSRPRLS | view | |
| VDM.viewType | #COMPOSITE | view | |
| AbapCatalog.compiler.compareFilter | true | view | |
| AbapCatalog.preserveKey | true | view | |
| VDM.private | true | view | |
| AccessControl.authorizationCheck | #NOT_REQUIRED | 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 (21)
| Key | Field | Source Table | Source Field | Description |
|---|---|---|---|---|
| ProjectSummaryTaskUUID | ||||
| KEY | ProjectInternalID | ProjCost | ProjectInternalID | |
| KEY | ProjectUUID | I_EnterpriseProject | ProjectUUID | |
| KEY | Ledger | ProjCost | Ledger | |
| 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 | ||
| Plant | ProjCost | Plant | ||
| ProjectProfileCode | ProjCost | ProjectProfileCode | ||
| ProjectType | ProjCost | ProjectType | ||
| PlanAmountInGlobalCurrency | ||||
| GlobalCurrency | ProjCost | 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: #NOT_REQUIRED
@ClientHandling.algorithm: #SESSION_VARIABLE
@AccessControl.personalData.blocking: #REQUIRED
@ObjectModel.usageType.sizeCategory: #XXL
@ObjectModel.usageType.dataClass: #MIXED
@ObjectModel.usageType.serviceQuality: #D
define view P_EntProjCostLineItems
//Change For EPPM Release 25O2
// Prediction value inconsistency
with parameters
@Consumption.valueHelpDefinition : { entity : {name: 'C_CostCategoryVH', element: 'PlanningCategory'} }
@Consumption.defaultValue: 'PLN'
P_PlanningCategory : fcom_category
//// End of Change For EPPM Release 25O2
as select from
// Begin Change For EPPM Release 25O2
// I_ProjectCostLineItems as ProjCost
P_PROJCSTLINEITEMS(P_PlanningCategory: :P_PlanningCategory) as ProjCost
// End of Change For EPPM Release 25O2
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,
key ProjCost.Ledger, // Change For EPPM Release 25O2
EntProj.Project,
EntProj.ProjectDescription,
EntProj.ProfitCenter,
EntProj.FunctionalArea,
EntProj.ResponsibleCostCenter,
EntProj.ProjectStartDate,
EntProj.ProjectEndDate,
EntProj.CompanyCode,
EntProj.ControllingArea,
//CE2402 /S4PPM/PR1 changes - Begin
ProjCost.Plant,
ProjCost.ProjectProfileCode,
ProjCost.ProjectType,
//CE2402 /S4PPM/PR1 changes - End
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,
ProjCost.Ledger,
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,
//CE2402 /S4PPM/PR1 changes - Begin
ProjCost.Plant,
ProjCost.ProjectProfileCode,
ProjCost.ProjectType
//CE2402 /S4PPM/PR1 changes - End
Learn More
- What Is a CDS View in SAP S/4HANA?
- Types of CDS Views: Basic, Composite, Consumption, and Transactional
- SAP Tables vs CDS Views — Key Differences
- Understanding Data Lineage in SAP S/4HANA
- VDM (Virtual Data Model) in SAP S/4HANA Explained
- CDS View Annotations — A Complete Guide
- CDS View Field Mapping and Associations
- Understanding the SAP S/4HANA Data Model
- CDS View Extensions and Custom Fields in SAP S/4HANA
- Released APIs and Stability Contracts in SAP S/4HANA