@ClientHandling.algorithm: #SESSION_VARIABLE@AbapCatalog: {
sqlViewName: 'PENGPRJROLASSGMT',
compiler.compareFilter: true,
preserveKey: true
}@AccessControl.authorizationCheck: #NOT_REQUIRED@ObjectModel: {
usageType.serviceQuality: #D,
usageType.sizeCategory: #L,
usageType.dataClass: #MIXED
}@VDM: {
viewType: #COMPOSITE,
private: true
}//@EndUserText.label: 'Engagement Project Roles'
defineview P_EngmntProjectRoleAssgmt
asselectfrom I_EngagementProjectHeader as F
innerjoin I_EnterpriseProjectRole as G
on F.EngagementProjectUUID = G.ProjectUUID
leftouterjoin I_EntProjectEntitlement as H
on G.ProjectRoleUUID = H.ProjectRoleUUID
leftouterjoin I_EnterpriseProjectTeamMember as I
on H.TeamMemberUUID = I.TeamMemberUUID
leftouterjoin I_BusinessPartner as J
on J.BusinessPartnerUUID = I.BusinessPartnerUUID
and J.BusinessPartnerCategory = '1' {
keycast( G.ProjectUUID as /cpd/eng_db_key preserving type ) as EngagementProjectUUID,
key F.EngagementProject as EngagementProject,
G.ProjectRoleType as EngagementProjectTeamRole,
cast(G.ProjectRoleUUID as /cpd/eng_team_role_db_key preserving type ) as EngagementProjectTeamRoleUUID,
G.CreationDateTime as CreationDateTime,
cast(H.ProjectEntitlementUUID as /cpd/eng_team_member_db_key preserving type ) as EngmtProjTeamMemberUUID,
cast(I.TeamMemberUUID as /cpd/eng_proj_member_db_key preserving type ) as EngagementProjectMemberUUID,
J.BusinessPartnerUUID as BusinessPartnerUUID,
J.BusinessPartner as BusinessPartner,
J.PersonFullName as BusinessPartnerFullName,
J.BusinessPartnerType as BusinessPartnerType,
F.EngmntProjectDataModelVersion
}
/*+[internal] {
"BASEINFO":
{
"FROM":
[
"I_BUSINESSPARTNER",
"I_ENGAGEMENTPROJECTHEADER",
"I_ENTERPRISEPROJECTROLE",
"I_ENTERPRISEPROJECTTEAMMEMBER",
"I_ENTPROJECTENTITLEMENT"
],
"ASSOCIATED":
[],
"BASE":
[],
"ANNO_REF":
[],
"SCALAR_FUNCTION":
[],
"VERSION":0,
"ANNOREF_EVALUATION_ERROR":""
}
}*/