C_EngagementProjectRoles

DDL: C_ENGAGEMENTPROJECTROLES SQL: CENGMTPROJROLES Type: view CONSUMPTION

Project Roles restriction in BADI

C_EngagementProjectRoles is a Consumption CDS View that provides data about "Project Roles restriction in BADI" in SAP S/4HANA. It reads from 1 data source (I_EngagementProjectRole) and exposes 12 fields with key fields EngagementProject, EngagementProjectTeamRole. It has 5 associations to related views.

Data Sources (1)

SourceAliasJoin Type
I_EngagementProjectRole EngagementProjectRole from

Associations (5)

CardinalityTargetAliasCondition
[0..1] I_EngagementProject _EngagementProject $projection.EngagementProject = _EngagementProject.EngagementProject
[0..*] I_PersnWrkAgreementDet _PersonWorkAgreementDet $projection.EmploymentInternalID = _PersonWorkAgreementDet.PersonWorkAgreement
[0..*] I_PersonWorkAgreement _PersonWorkAgreement $projection.EmploymentInternalID = _PersonWorkAgreement.PersonWorkAgreement
[0..1] I_PersonWorkAgreement_1 _PersonWorkAgreement_1 $projection.EmploymentInternalID = _PersonWorkAgreement_1.PersonWorkAgreement
[1] I_WorkforcePerson _WorkforcePerson $projection.EmployeeFullName = _WorkforcePerson.PersonFullName

Annotations (10)

NameValueLevelField
AbapCatalog.sqlViewName CENGMTPROJROLES view
VDM.viewType #CONSUMPTION view
AccessControl.authorizationCheck #CHECK view
EndUserText.label Project Roles restriction in BADI view
ObjectModel.usageType.serviceQuality #D view
ObjectModel.usageType.sizeCategory #L view
ObjectModel.usageType.dataClass #MIXED view
ClientHandling.algorithm #SESSION_VARIABLE view
AccessControl.personalData.blocking #REQUIRED view
Metadata.ignorePropagatedAnnotations true view

Fields (12)

KeyFieldSource TableSource FieldDescription
KEY EngagementProject I_EngagementProjectRole EngagementProject
KEY EngagementProjectTeamRole I_EngagementProjectRole EngagementProjectTeamRole
BusinessUser
EngagementProjectCategory
EmploymentInternalID I_EngagementProjectRole EmploymentInternalID
EmployeeFullName
_EngagementProject _EngagementProject
_Text _Text
_PersonWorkAgreementDet _PersonWorkAgreementDet
_WorkforcePerson _WorkforcePerson
_PersonWorkAgreement _PersonWorkAgreement
_PersonWorkAgreement_1 _PersonWorkAgreement_1
@AbapCatalog.sqlViewName: 'CENGMTPROJROLES'
@VDM.viewType: #CONSUMPTION
@AccessControl.authorizationCheck: #CHECK
@EndUserText.label: 'Project Roles restriction in BADI'
@ObjectModel.usageType.serviceQuality: #D
@ObjectModel.usageType.sizeCategory: #L
@ObjectModel.usageType.dataClass: #MIXED
@ClientHandling.algorithm: #SESSION_VARIABLE
@AccessControl.personalData.blocking: #REQUIRED
@Metadata.ignorePropagatedAnnotations:true
@ObjectModel.supportedCapabilities: [#CDS_MODELING_ASSOCIATION_TARGET,
                                     #CDS_MODELING_DATA_SOURCE,
                                     #SQL_DATA_SOURCE]

//CDS View released to customers

define view C_EngagementProjectRoles
  as select from I_EngagementProjectRole as EngagementProjectRole
  association [0..1] to I_EngagementProject     as _EngagementProject      on $projection.EngagementProject = _EngagementProject.EngagementProject
  association [0..*] to I_PersnWrkAgreementDet  as _PersonWorkAgreementDet on $projection.EmploymentInternalID = _PersonWorkAgreementDet.PersonWorkAgreement
  association [0..*] to I_PersonWorkAgreement   as _PersonWorkAgreement    on $projection.EmploymentInternalID = _PersonWorkAgreement.PersonWorkAgreement
  association [0..1] to I_PersonWorkAgreement_1 as _PersonWorkAgreement_1  on $projection.EmploymentInternalID = _PersonWorkAgreement_1.PersonWorkAgreement
  association [1]    to I_WorkforcePerson       as _WorkforcePerson        on $projection.EmployeeFullName = _WorkforcePerson.PersonFullName
{
  key EngagementProjectRole.EngagementProject                                    as EngagementProject,
  key EngagementProjectRole.EngagementProjectTeamRole                            as EngagementProjectTeamRole,
      EngagementProjectRole._PersonWorkAgreement._WorkforcePerson.UserID         as BusinessUser,
      EngagementProjectRole._EngagementProject.EngagementProjectCategory         as EngagementProjectCategory,
      EngagementProjectRole.EmploymentInternalID                                 as EmploymentInternalID,
      EngagementProjectRole._PersonWorkAgreement._WorkforcePerson.PersonFullName as EmployeeFullName,
      _EngagementProject,
      _Text,
      @Consumption.hidden: true
      _PersonWorkAgreementDet,
      @Consumption.hidden: true
      _WorkforcePerson,
      @API.element.releaseState: #DEPRECATED
      @API.element.successor: '_PersonWorkAgreement_1'
      _PersonWorkAgreement,
      _PersonWorkAgreement_1
         
}
/*+[internal] {
"BASEINFO":
{
"FROM":
[
"I_ENGAGEMENTPROJECT",
"I_ENGAGEMENTPROJECTROLE",
"I_PERSNWRKAGREEMENTDET",
"I_WORKFORCEPERSONDET"
],
"ASSOCIATED":
[
"I_ENGAGEMENTPROJECT",
"I_ENGMTPROJECTROLETEXT",
"I_PERSNWRKAGREEMENTDET",
"I_PERSONWORKAGREEMENT",
"I_PERSONWORKAGREEMENT_1",
"I_WORKFORCEPERSON"
],
"BASE":
[
"I_ENGAGEMENTPROJECTROLE"
],
"ANNO_REF":
[],
"SCALAR_FUNCTION":
[],
"VERSION":0,
"ANNOREF_EVALUATION_ERROR":""
}
}*/