I_EngmntProjectWithRoleAssgmt
Engagement Project With Roles
I_EngmntProjectWithRoleAssgmt is a Composite CDS View (Dimension) that provides data about "Engagement Project With Roles" in SAP S/4HANA. It reads from 2 data sources (P_EngmntProjectRoleAssgmt, P_WFPersonIdentification) and exposes 22 fields with key fields EngagementProject, ProjectRoleType. It has 8 associations to related views.
Data Sources (2)
| Source | Alias | Join Type |
|---|---|---|
| P_EngmntProjectRoleAssgmt | B | from |
| P_WFPersonIdentification | C | inner |
Associations (8)
| Cardinality | Target | Alias | Condition |
|---|---|---|---|
| [0..1] | I_BusinessUserBasic | _BusinessUser | $projection.BusinessPartner = _BusinessUser.BusinessPartner |
| [0..1] | I_BusinessPartner | _BusinessPartner | $projection.BusinessPartner = _BusinessPartner.BusinessPartner |
| [0..1] | I_WorkplaceAddress | _WorkplaceAddress | $projection.BusinessPartnerUUID = _WorkplaceAddress.BusinessPartnerUUID |
| [0..1] | I_WorkforcePersonImageURL | _Image | _Image.Person = B.BusinessPartner |
| [0..1] | I_EnterpriseProjectRoleType | _ProjectRole | $projection.ProjectRoleType = _ProjectRole.ProjectRoleType |
| [1] | I_EngagementProject | _EngagementProject | $projection.EngagementProject = _EngagementProject.EngagementProject |
| [0..1] | I_PPM_ProjectRoleTypeText | _ProjectRoleText | _ProjectRoleText.LanguageCode = $session.system_language and _ProjectRoleText.ProjectRoleType = $projection.ProjectRoleType |
| [1..1] | I_EngmntProjWithUserInvlmnt | _MyProjects | $projection.EngagementProjectUUID = _MyProjects.ProjectUUID |
Annotations (19)
| Name | Value | Level | Field |
|---|---|---|---|
| ClientHandling.algorithm | #SESSION_VARIABLE | view | |
| AbapCatalog.sqlViewName | IENGPRJWROLASGMT | view | |
| AbapCatalog.compiler.compareFilter | true | view | |
| AbapCatalog.preserveKey | true | view | |
| AccessControl.authorizationCheck | #CHECK | view | |
| AccessControl.personalData.blocking | #BLOCKED_DATA_EXCLUDED | view | |
| AccessControl.personalData.blockingIndicator | IsBusinessPurposeCompleted | view | |
| ObjectModel.representativeKey | ProjectRoleType | view | |
| ObjectModel.usageType.serviceQuality | #D | view | |
| ObjectModel.usageType.sizeCategory | #XL | view | |
| ObjectModel.usageType.dataClass | #MIXED | view | |
| ObjectModel.modelingPattern | #ANALYTICAL_DIMENSION | view | |
| EndUserText.label | Engagement Project With Roles | view | |
| Analytics.dataCategory | #DIMENSION | view | |
| Analytics.internalName | #LOCAL | view | |
| VDM.viewType | #COMPOSITE | view | |
| VDM.lifecycle.contract.type | #PUBLIC_LOCAL_API | view | |
| Metadata.ignorePropagatedAnnotations | true | view | |
| Metadata.allowExtensions | true | view |
Fields (22)
| Key | Field | Source Table | Source Field | Description |
|---|---|---|---|---|
| KEY | EngagementProject | P_EngmntProjectRoleAssgmt | EngagementProject | Engagement Project ID |
| KEY | ProjectRoleType | P_EngmntProjectRoleAssgmt | EngagementProjectTeamRole | Project Role |
| CreationDateTime | P_EngmntProjectRoleAssgmt | CreationDateTime | Created On | |
| BusinessPartner | P_EngmntProjectRoleAssgmt | BusinessPartner | Business Partner ID | |
| ObjectName | _ProjectRoleText | ObjectName | Project Role Name | |
| EngagementProjectUUID | P_EngmntProjectRoleAssgmt | EngagementProjectUUID | ||
| EngagementProjectTeamRoleUUID | P_EngmntProjectRoleAssgmt | EngagementProjectTeamRoleUUID | ||
| EngmtProjTeamMemberUUID | P_EngmntProjectRoleAssgmt | EngmtProjTeamMemberUUID | ||
| EngagementProjectMemberUUID | P_EngmntProjectRoleAssgmt | EngagementProjectMemberUUID | ||
| BusinessPartnerUUID | P_EngmntProjectRoleAssgmt | BusinessPartnerUUID | ||
| BusinessPartnerFullName | P_EngmntProjectRoleAssgmt | BusinessPartnerFullName | Business Partner Name | |
| BusinessPartnerType | P_EngmntProjectRoleAssgmt | BusinessPartnerType | Business Partner Type | |
| UserID | _BusinessUser | UserID | Business User | |
| PersonExternalID | P_WFPersonIdentification | BPIdentificationNumber | User name | |
| _BusinessUser | _BusinessUser | |||
| _Image | _Image | |||
| _ProjectRole | _ProjectRole | |||
| _ProjectRoleText | _ProjectRoleText | |||
| _EngagementProject | _EngagementProject | |||
| _WorkplaceAddress | _WorkplaceAddress | |||
| _BusinessPartner | _BusinessPartner | |||
| _MyProjects | _MyProjects |
@ClientHandling.algorithm: #SESSION_VARIABLE
@AbapCatalog.sqlViewName: 'IENGPRJWROLASGMT'
@AbapCatalog.compiler.compareFilter: true
@AbapCatalog.preserveKey: true
@AccessControl.authorizationCheck: #CHECK
@AccessControl.personalData.blocking: #BLOCKED_DATA_EXCLUDED
@AccessControl.personalData.blockingIndicator: 'IsBusinessPurposeCompleted'
@ObjectModel.representativeKey: 'ProjectRoleType'
@ObjectModel.usageType.serviceQuality: #D
@ObjectModel.usageType.sizeCategory: #XL
@ObjectModel.usageType.dataClass: #MIXED
@ObjectModel.modelingPattern: #ANALYTICAL_DIMENSION
@ObjectModel.supportedCapabilities: [#ANALYTICAL_DIMENSION,
#CDS_MODELING_ASSOCIATION_TARGET,
#CDS_MODELING_DATA_SOURCE,
#SQL_DATA_SOURCE]
@EndUserText.label: 'Engagement Project With Roles'
@Analytics.dataCategory: #DIMENSION
@Analytics.internalName: #LOCAL
@VDM.viewType: #COMPOSITE
@VDM.lifecycle.contract.type: #PUBLIC_LOCAL_API
@Metadata.ignorePropagatedAnnotations: true
@Metadata.allowExtensions:true
define view I_EngmntProjectWithRoleAssgmt
as select from P_EngmntProjectRoleAssgmt as B
inner join P_WFPersonIdentification as C on B.BusinessPartner = C.BusinessPartner
association [0..1] to I_BusinessUserBasic as _BusinessUser on $projection.BusinessPartner = _BusinessUser.BusinessPartner
association [0..1] to I_BusinessPartner as _BusinessPartner on $projection.BusinessPartner = _BusinessPartner.BusinessPartner
association [0..1] to I_WorkplaceAddress as _WorkplaceAddress on $projection.BusinessPartnerUUID = _WorkplaceAddress.BusinessPartnerUUID
association [0..1] to I_WorkforcePersonImageURL as _Image on _Image.Person = B.BusinessPartner
association [0..1] to I_EnterpriseProjectRoleType as _ProjectRole on $projection.ProjectRoleType = _ProjectRole.ProjectRoleType
association [1] to I_EngagementProject as _EngagementProject on $projection.EngagementProject = _EngagementProject.EngagementProject
association [0..1] to I_PPM_ProjectRoleTypeText as _ProjectRoleText on _ProjectRoleText.LanguageCode = $session.system_language
and _ProjectRoleText.ProjectRoleType = $projection.ProjectRoleType
association [1..1] to I_EngmntProjWithUserInvlmnt as _MyProjects on $projection.EngagementProjectUUID = _MyProjects.ProjectUUID
{
@ObjectModel.foreignKey.association: '_EngagementProject'
@EndUserText.label: 'Engagement Project ID'
key B.EngagementProject,
@EndUserText.label: 'Project Role'
key B.EngagementProjectTeamRole as ProjectRoleType,
@EndUserText.label: 'Created On'
B.CreationDateTime,
@ObjectModel.foreignKey.association: '_BusinessPartner'
@EndUserText.label: 'Business Partner ID'
B.BusinessPartner,
@EndUserText.label: 'Project Role Name'
@Semantics.name.jobTitle: true
_ProjectRoleText.ObjectName,
@Consumption.hidden: true
B.EngagementProjectUUID,
@Consumption.hidden: true
B.EngagementProjectTeamRoleUUID,
@Consumption.hidden: true
B.EngmtProjTeamMemberUUID,
@Consumption.hidden: true
B.EngagementProjectMemberUUID,
@Consumption.hidden: true
B.BusinessPartnerUUID,
@EndUserText.label: 'Business Partner Name'
B.BusinessPartnerFullName,
@EndUserText.label: 'Business Partner Type'
B.BusinessPartnerType,
@EndUserText.label: 'Business User'
_BusinessUser.UserID, // as BusinessUser,
@EndUserText.label: 'User name'
C.BPIdentificationNumber as PersonExternalID,
_BusinessUser,
_Image,
_ProjectRole,
_ProjectRoleText,
_EngagementProject,
_WorkplaceAddress,
_BusinessPartner,
_MyProjects
}
/*+[internal] {
"BASEINFO":
{
"FROM":
[
"I_BUSINESSUSERBASIC",
"I_PPM_PROJECTROLETYPETEXT",
"P_ENGMNTPROJECTROLEASSGMT",
"P_WFPERSONIDENTIFICATION"
],
"ASSOCIATED":
[
"I_BUSINESSPARTNER",
"I_BUSINESSUSERBASIC",
"I_ENGAGEMENTPROJECT",
"I_ENGMNTPROJWITHUSERINVLMNT",
"I_ENTERPRISEPROJECTROLETYPE",
"I_PPM_PROJECTROLETYPETEXT",
"I_WORKFORCEPERSONIMAGEURL",
"I_WORKPLACEADDRESS"
],
"BASE":
[],
"ANNO_REF":
[],
"SCALAR_FUNCTION":
[],
"VERSION":0,
"ANNOREF_EVALUATION_ERROR":""
}
}*/
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