P_EngmntProjectForAuthzdUser
Engagement Projects for authorized User
P_EngmntProjectForAuthzdUser is a Composite CDS View that provides data about "Engagement Projects for authorized User" in SAP S/4HANA. It reads from 2 data sources (P_EngmntProjWthRolesAsAttrib, I_EngagementProjFinancialPlan) and exposes 28 fields. Part of development package CPD_CDS.
Data Sources (2)
| Source | Alias | Join Type |
|---|---|---|
| P_EngmntProjWthRolesAsAttrib | A | from |
| I_EngagementProjFinancialPlan | B | inner |
Annotations (12)
| Name | Value | Level | Field |
|---|---|---|---|
| ClientHandling.algorithm | #SESSION_VARIABLE | view | |
| AbapCatalog.sqlViewName | PEPFORAUTHZDUSR | view | |
| AbapCatalog.compiler.compareFilter | true | view | |
| AbapCatalog.preserveKey | true | view | |
| AccessControl.authorizationCheck | #NOT_REQUIRED | view | |
| ObjectModel.usageType.serviceQuality | #D | view | |
| ObjectModel.usageType.sizeCategory | #XL | view | |
| ObjectModel.usageType.dataClass | #MIXED | view | |
| VDM.private | true | view | |
| VDM.viewType | #COMPOSITE | view | |
| VDM.lifecycle.contract.type | #NONE | view | |
| Metadata.ignorePropagatedAnnotations | true | view |
Fields (28)
| Key | Field | Source Table | Source Field | Description |
|---|---|---|---|---|
| EngagementProjectUUID | P_EngmntProjWthRolesAsAttrib | EngagementProjectUUID | ||
| EngagementProject | P_EngmntProjWthRolesAsAttrib | EngagementProject | ||
| ProjectStartDate | P_EngmntProjWthRolesAsAttrib | ProjectStartDate | ||
| ProjectEndDate | P_EngmntProjWthRolesAsAttrib | ProjectEndDate | ||
| LastChangeDateTime | P_EngmntProjWthRolesAsAttrib | LastChangeDateTime | ||
| Customer | P_EngmntProjWthRolesAsAttrib | Customer | ||
| EngagementProjectServiceOrg | P_EngmntProjWthRolesAsAttrib | EngagementProjectServiceOrg | ||
| Currency | I_EngagementProjFinancialPlan | Currency | ||
| EngagementProjFinPlanUUID | I_EngagementProjFinancialPlan | EngagementProjFinPlanUUID | ||
| EngmntProjReviewYearPeriod | I_EngagementProjFinancialPlan | EngmntProjReviewYearPeriod | ||
| EngagementProjectReviewStatus | I_EngagementProjFinancialPlan | EngagementProjectReviewStatus | ||
| EngagementProjectType | P_EngmntProjWthRolesAsAttrib | EngagementProjectType | ||
| EngagementProjectCategory | P_EngmntProjWthRolesAsAttrib | EngagementProjectCategory | ||
| EngagementProjectStage | P_EngmntProjWthRolesAsAttrib | EngagementProjectStage | ||
| CurrentYearPeriod | ||||
| IsMyProject | P_EngmntProjWthRolesAsAttrib | IsMyProject | ||
| ProjectVisibility | P_EngmntProjWthRolesAsAttrib | ProjectVisibility | ||
| ProjectManager | P_EngmntProjWthRolesAsAttrib | ProjectManager | ||
| ProjectManagerName | P_EngmntProjWthRolesAsAttrib | ProjectManagerName | ||
| ProjectManagerExternalID | P_EngmntProjWthRolesAsAttrib | ProjectManagerExternalID | ||
| ProjectAccountant | P_EngmntProjWthRolesAsAttrib | ProjectAccountant | ||
| ProjectAccountantName | P_EngmntProjWthRolesAsAttrib | ProjectAccountantName | ||
| ProjectController | P_EngmntProjWthRolesAsAttrib | ProjectController | ||
| ProjectControllerName | P_EngmntProjWthRolesAsAttrib | ProjectControllerName | ||
| Projectpartner | P_EngmntProjWthRolesAsAttrib | Projectpartner | ||
| ProjectpartnerName | P_EngmntProjWthRolesAsAttrib | ProjectpartnerName | ||
| CompanyCode | ||||
| ControllingArea |
@ClientHandling.algorithm: #SESSION_VARIABLE
@AbapCatalog: {
sqlViewName: 'PEPFORAUTHZDUSR',
compiler.compareFilter: true,
preserveKey: true
}
@AccessControl: {
authorizationCheck: #NOT_REQUIRED
}
@ObjectModel: {
usageType.serviceQuality: #D,
usageType.sizeCategory: #XL,
usageType.dataClass: #MIXED
}
@VDM: {
private: true,
viewType: #COMPOSITE,
lifecycle.contract.type: #NONE
}
@Metadata.ignorePropagatedAnnotations: true
define view P_EngmntProjectForAuthzdUser
as select from P_EngmntProjWthRolesAsAttrib as A
inner join I_EngagementProjFinancialPlan as B on A.EngagementProjectUUID = B.EngagementProjectUUID {
A.EngagementProjectUUID,
A.EngagementProject,
//A.EngagementProjectName,
A.ProjectStartDate,
A.ProjectEndDate,
A.LastChangeDateTime,
A.Customer,
A.EngagementProjectServiceOrg,
B.Currency,
B.EngagementProjFinPlanUUID,
B.EngmntProjReviewYearPeriod,
B.EngagementProjectReviewStatus,
A.EngagementProjectType,
A.EngagementProjectCategory,
A.EngagementProjectStage,
concat(substring(CurrentDate, 1, 4), concat('0', substring(CurrentDate, 5, 2))) as CurrentYearPeriod,
A.IsMyProject,
A.ProjectVisibility,
A.ProjectManager,
A.ProjectManagerName,
// For all the records where External id for , Controller , Accountant and Partner is null or blank we are setting as 'A'.
// This is required because External id is used on join condition of the Union view. If these fields have null values,
//join condition will fail.
A.ProjectManagerExternalID,
A.ProjectAccountant,
A.ProjectAccountantName,
case
when A.ProjectAccountantExternalID is null
then 'A'
else A.ProjectAccountantExternalID
end as ProjectAccountantExternalID,
A.ProjectController,
A.ProjectControllerName,
case
when A.ProjectControllerExternalID is null
then 'A'
else A.ProjectControllerExternalID
end as ProjectControllerExternalID,
A.Projectpartner,
A.ProjectpartnerName,
case
when A.ProjectpartnerExternalID is null
then 'A'
else A.ProjectpartnerExternalID
end as ProjectpartnerExternalID,
B._EngagementProject.CompanyCode as CompanyCode,
B._EngagementProject.ControllingArea as ControllingArea
} where A.IsMyProject = 'X' or A.ProjectVisibility = 'N'
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