A_EngagementProject
Engagement Project
A_EngagementProject is a Consumption CDS View that provides data about "Engagement Project" in SAP S/4HANA. It reads from 1 data source (I_EngagementProject) and exposes 24 fields with key field EngagementProject. It has 3 associations to related views. Part of development package CPD_CDS.
Data Sources (1)
| Source | Alias | Join Type |
|---|---|---|
| I_EngagementProject | A | from |
Associations (3)
| Cardinality | Target | Alias | Condition |
|---|---|---|---|
| [0..*] | A_EngmntProjWrkPckg | _WorkPackage | $projection.EngagementProject = _WorkPackage.EngagementProject |
| [0..*] | A_EngagementProjectRoles | _EngagementProjectRoles | $projection.EngagementProject = _EngagementProjectRoles.EngagementProject |
| [1..1] | E_CustomerProject | _Extension | $projection.EngagementProject = _Extension.CustomerProject |
Annotations (16)
| Name | Value | Level | Field |
|---|---|---|---|
| AbapCatalog.sqlViewName | AENGPROJECT | view | |
| AbapCatalog.compiler.compareFilter | true | view | |
| AbapCatalog.preserveKey | true | view | |
| AccessControl.authorizationCheck | #CHECK | view | |
| AccessControl.personalData.blocking | #REQUIRED | view | |
| EndUserText.label | Engagement Project | view | |
| VDM.viewType | #CONSUMPTION | view | |
| ClientHandling.algorithm | #SESSION_VARIABLE | view | |
| ObjectModel.createEnabled | true | view | |
| ObjectModel.updateEnabled | true | view | |
| ObjectModel.deleteEnabled | true | view | |
| ObjectModel.usageType.dataClass | #MIXED | view | |
| ObjectModel.usageType.serviceQuality | #C | view | |
| ObjectModel.usageType.sizeCategory | #M | view | |
| Metadata.ignorePropagatedAnnotations | true | view | |
| VDM.lifecycle.contract.type | #PUBLIC_REMOTE_API | view |
Fields (24)
| Key | Field | Source Table | Source Field | Description |
|---|---|---|---|---|
| KEY | EngagementProject | I_EngagementProject | EngagementProject | |
| EngagementProjectName | I_EngagementProject | EngagementProjectName | ||
| EngagementProjectType | I_EngagementProject | EngagementProjectType | ||
| EngagementProjectStage | I_EngagementProject | EngagementProjectStage | ||
| EngagementProjectServiceOrg | I_EngagementProject | EngagementProjectServiceOrg | ||
| EngagementProjectCategory | I_EngagementProject | EngagementProjectCategory | ||
| Currency | ||||
| ProjectStartDate | I_EngagementProject | ProjectStartDate | ||
| ProjectEndDate | I_EngagementProject | ProjectEndDate | ||
| ProjectVisibility | I_EngagementProject | ProjectVisibility | ||
| ProjectManager | ||||
| LastChangeDateTime | I_EngagementProject | LastChangeDateTime | ||
| CreationDateTime | I_EngagementProject | CreationDateTime | ||
| CostCenter | I_EngagementProject | CostCenter | ||
| ProfitCenter | I_EngagementProject | ProfitCenter | ||
| Customer | I_EngagementProject | Customer | ||
| ControllingArea | I_EngagementProject | ControllingArea | ||
| ProjectProfileCode | I_EngagementProject | ProjectProfileCode | ||
| CompanyCode | I_EngagementProject | CompanyCode | ||
| TimePostingIsRestricted | I_EngagementProject | RestrictedTimePosting | ||
| ProjectBillingIsUsed | I_EngagementProject | ProjectBillingIsUsed | ||
| _WorkPackage | _WorkPackage | |||
| _EngagementProjectRoles | _EngagementProjectRoles | |||
| _Customer | I_EngagementProject | _Customer |
@AbapCatalog.sqlViewName: 'AENGPROJECT'
@AbapCatalog.compiler.compareFilter: true
@AbapCatalog.preserveKey: true
@AccessControl:{
authorizationCheck: #CHECK,
personalData.blocking: #REQUIRED
}
@EndUserText.label: 'Engagement Project'
@VDM.viewType: #CONSUMPTION
@ClientHandling.algorithm : #SESSION_VARIABLE
@ObjectModel: {
createEnabled: true,
updateEnabled: true,
deleteEnabled:true,
usageType: {
dataClass: #MIXED,
serviceQuality: #C,
sizeCategory: #M
}
}
// A-view annotations
@Metadata.ignorePropagatedAnnotations: true
@VDM.lifecycle.contract.type: #PUBLIC_REMOTE_API
define view A_EngagementProject
as select from I_EngagementProject as A
association [0..*] to A_EngmntProjWrkPckg as _WorkPackage on $projection.EngagementProject = _WorkPackage.EngagementProject
association [0..*] to A_EngagementProjectRoles as _EngagementProjectRoles on $projection.EngagementProject = _EngagementProjectRoles.EngagementProject
association [1..1] to E_CustomerProject as _Extension on $projection.EngagementProject = _Extension.CustomerProject
{
@ObjectModel.mandatory: true
key A.EngagementProject,
@Semantics.text: true
A.EngagementProjectName,
A.EngagementProjectType,
@ObjectModel.sapObjectNodeTypeReference:'EngagementProjectStage'
@ObjectModel.mandatory: true
A.EngagementProjectStage,
@ObjectModel.sapObjectNodeTypeReference:'EngagementProjectServiceOrg'
@ObjectModel.mandatory: true
A.EngagementProjectServiceOrg,
@ObjectModel.mandatory: true
A.EngagementProjectCategory,
@ObjectModel.mandatory: true
A._EngagementProjFinancialPlan.Currency,
@ObjectModel.mandatory: true
A.ProjectStartDate,
@ObjectModel.mandatory: true
A.ProjectEndDate,
A.ProjectVisibility,
A._PersonWorkAgreementDet.PersonWorkAgreement as ProjectManager,
@Semantics.dateTime:true
@ObjectModel.readOnly: true
A.LastChangeDateTime,
@Semantics.dateTime:true
@ObjectModel.readOnly: true
A.CreationDateTime,
@ObjectModel.mandatory: true
A.CostCenter,
@ObjectModel.mandatory: true
A.ProfitCenter,
@ObjectModel.mandatory: true
A.Customer,
//This field is added to have join on A_CostCenter and A_ProfitCenter
@Consumption.hidden: true
A.ControllingArea,
@Consumption.hidden: true
A.ProjectProfileCode,
@Consumption.hidden: true
A.CompanyCode,
// @VDM.lifecycle.status: #DEPRECATED
// @VDM.lifecycle.successor: 'RestrictedTimePosting'
// A.TimePostingIsRestricted,
// A.RestrictedTimePosting,
A.RestrictedTimePosting as TimePostingIsRestricted,
A.ProjectBillingIsUsed,
_WorkPackage,
_EngagementProjectRoles,
@Consumption.hidden: true
A._Customer
}
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