I_MstrProjManager

DDL: I_MSTRPROJMANAGER SQL: IMPMNGR Type: view COMPOSITE Package: VDM_CPM_WS

Get Project managers

I_MstrProjManager is a Composite CDS View that provides data about "Get Project managers" in SAP S/4HANA. It reads from 5 data sources (I_BusinessPartner, I_EngagementProjectTeamRole, I_EngagementProjectTeam, I_MstrProjMember, I_EngmtProjTeamMember) and exposes 16 fields with key field MasterProject. It has 1 association to related views. Part of development package VDM_CPM_WS.

Data Sources (5)

SourceAliasJoin Type
I_BusinessPartner BPartner inner
I_EngagementProjectTeamRole ProjectRoles left_outer
I_EngagementProjectTeam ProjectTeam inner
I_MstrProjMember ProjMembers left_outer
I_EngmtProjTeamMember TeamMembers left_outer

Associations (1)

CardinalityTargetAliasCondition
[0..1] I_MstrProjRoleID _ProjectRole $projection.MasterProjectTeamRole = _ProjectRole.ProjectRole

Annotations (11)

NameValueLevelField
AbapCatalog.sqlViewName IMPMNGR view
AbapCatalog.compiler.compareFilter true view
AccessControl.authorizationCheck #CHECK view
AccessControl.personalData.blocking #REQUIRED view
Search.searchable true view
EndUserText.label Get Project managers view
VDM.viewType #COMPOSITE view
ClientHandling.algorithm #SESSION_VARIABLE view
ObjectModel.usageType.serviceQuality #C view
ObjectModel.usageType.sizeCategory #L view
ObjectModel.usageType.dataClass #TRANSACTIONAL view

Fields (16)

KeyFieldSource TableSource FieldDescription
KEY MasterProject Project MasterProject
MasterProjectUUID Project MasterProjectUUID
ProjectUUID Project ProjectUUID
MasterProjectTeamRole I_EngagementProjectTeamRole EngagementProjectTeamRole
ProjectManagerName
EmailAddress
InternationalMobilePhoneNumber
InternationalPhoneNumber
StartDate Project StartDate
EndDate Project EndDate
MstrProjTeamMemberUUID I_EngmtProjTeamMember EngmtProjTeamMemberUUID
MstrProjMemberUUID I_EngmtProjTeamMember EngagementProjectMemberUUID
BusinessPartner I_MstrProjMember BusinessPartner
BusinessPartnerType I_MstrProjMember BusinessPartnerType
_Text _ProjectRole _Text
ProjectRole _ProjectRole ProjectRole
@AbapCatalog.sqlViewName: 'IMPMNGR'
@AbapCatalog.compiler.compareFilter: true
@AccessControl.authorizationCheck: #CHECK
@AccessControl.personalData.blocking: #REQUIRED
@Search.searchable: true
@EndUserText.label: 'Get Project managers'
@VDM.viewType: #COMPOSITE

@ClientHandling.algorithm: #SESSION_VARIABLE
@ObjectModel.usageType.serviceQuality: #C
@ObjectModel.usageType.sizeCategory: #L
@ObjectModel.usageType.dataClass: #TRANSACTIONAL 

define view I_MstrProjManager
  as select distinct from I_MasterProject             as Project

    inner join            I_EngagementProjectTeam     as ProjectTeam  on Project.MasterProjectUUID = ProjectTeam.EngagementProjectUUID

    left outer join       I_EngagementProjectTeamRole as ProjectRoles on ProjectTeam.EngagementProjectTeamUUID = ProjectRoles.EngagementProjectTeamUUID
    left outer join       I_EngmtProjTeamMember       as TeamMembers  on ProjectRoles.EngagementProjectTeamRoleUUID = TeamMembers.EngagementProjectTeamRoleUUID
    left outer join       I_MstrProjMember            as ProjMembers  on TeamMembers.EngagementProjectMemberUUID = ProjMembers.MstrProjMemberUUID
    inner join            I_BusinessPartner           as BPartner     on ProjMembers.BusinessPartner = BPartner.BusinessPartner

  association [0..1] to I_MstrProjRoleID as _ProjectRole on $projection.MasterProjectTeamRole = _ProjectRole.ProjectRole

{
      @Search.defaultSearchElement: true
  key Project.MasterProject,
      Project.MasterProjectUUID,
//      Project.MasterProjectUUID_E,

      Project.ProjectUUID,
      ProjectRoles.EngagementProjectTeamRole                                      as MasterProjectTeamRole,
      concat_with_space(BPartner.FirstName,BPartner.LastName,1)                   as ProjectManagerName,
      BPartner._AddressIndependentEmail.EmailAddress,
      BPartner._AddressIndependentMobile.InternationalMobilePhoneNumber,
      BPartner._AddressIndependentPhone.InternationalPhoneNumber,
      Project.StartDate,
      Project.EndDate,
      TeamMembers.EngmtProjTeamMemberUUID                                         as MstrProjTeamMemberUUID,
      TeamMembers.EngagementProjectMemberUUID                                     as MstrProjMemberUUID,
      ProjMembers.BusinessPartner,
      ProjMembers.BusinessPartnerType,
      _ProjectRole._Text,
      _ProjectRole.ProjectRole


}

where
  ProjectRoles.EngagementProjectTeamRole = '0001'