I_MstrProjTeamMember

DDL: I_MSTRPROJTEAMMEMBER SQL: IMPTMMEM Type: view COMPOSITE

Master Project Team Member

I_MstrProjTeamMember is a Composite CDS View that provides data about "Master Project Team Member" in SAP S/4HANA. It reads from 5 data sources (I_BusinessPartner, I_EngagementProjectTeamRole, I_EngagementProjectTeam, I_MstrProjMember, I_EngmtProjTeamMember) and exposes 34 fields with key field MasterProject. It has 2 associations to related views.

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 (2)

CardinalityTargetAliasCondition
[0..1] I_MstrProjRoleID _ProjectRole $projection.MasterProjectTeamRole = _ProjectRole.ProjectRole
[1..1] I_WorkforcePerson _Employee $projection.BusinessPartner = _Employee.Person

Annotations (10)

NameValueLevelField
AbapCatalog.sqlViewName IMPTMMEM view
AbapCatalog.compiler.compareFilter true view
AccessControl.authorizationCheck #CHECK view
AccessControl.personalData.blocking #REQUIRED view
VDM.viewType #COMPOSITE view
ObjectModel.usageType.sizeCategory #L view
ObjectModel.usageType.serviceQuality #C view
ObjectModel.usageType.dataClass #MIXED view
ClientHandling.algorithm #SESSION_VARIABLE view
EndUserText.label Master Project Team Member view

Fields (34)

KeyFieldSource TableSource FieldDescription
KEY MasterProject Project MasterProject
MasterProjectUUID Project MasterProjectUUID
MasterProjectTeamRole I_EngagementProjectTeamRole EngagementProjectTeamRole
ProjectResponsiblePerson
FirstName I_BusinessPartner FirstName
LastName I_BusinessPartner LastName
IndependentAddressID I_BusinessPartner IndependentAddressID
StartDate Project StartDate
EndDate Project EndDate
MstrProjTeamMemberUUID I_EngmtProjTeamMember EngmtProjTeamMemberUUID
MstrProjMemberUUID I_EngmtProjTeamMember EngagementProjectMemberUUID
BusinessPartner I_MstrProjMember BusinessPartner
BusinessPartnerType I_MstrProjMember BusinessPartnerType
EmploymentInternalID I_MstrProjMember EmploymentInternalID
EmployeePersonnelNumber I_MstrProjMember EmployeePersonnelNumber
CreationDate I_MstrProjMember CreationDate
ChangedBy I_MstrProjMember ChangedBy
ChangedDateTime I_MstrProjMember ChangedDateTime
CreatedByUser I_MstrProjMember CreatedByUser
UserID
_Text _ProjectRole _Text
ProjectRole _ProjectRole ProjectRole
IsBusinessPurposeCompleted I_BusinessPartner IsBusinessPurposeCompleted
DataControllerSet I_BusinessPartner DataControllerSet
DataController1 I_BusinessPartner DataController1
DataController2 I_BusinessPartner DataController2
DataController3 I_BusinessPartner DataController3
DataController4 I_BusinessPartner DataController4
DataController5 I_BusinessPartner DataController5
DataController6 I_BusinessPartner DataController6
DataController7 I_BusinessPartner DataController7
DataController8 I_BusinessPartner DataController8
DataController9 I_BusinessPartner DataController9
DataController10 I_BusinessPartner DataController10
@AbapCatalog.sqlViewName: 'IMPTMMEM'
@AbapCatalog.compiler.compareFilter: true
@AccessControl.authorizationCheck: #CHECK
@AccessControl.personalData.blocking: #REQUIRED
@VDM.viewType: #COMPOSITE
@ObjectModel.usageType.sizeCategory: #L
@ObjectModel.usageType.serviceQuality: #C
@ObjectModel.usageType.dataClass: #MIXED
@ClientHandling.algorithm: #SESSION_VARIABLE
@EndUserText.label: 'Master Project Team Member'
define view I_MstrProjTeamMember  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
//  association [1..1] to I_EmployeeWorkplaceAddress as _Employee on $projection.BusinessPartner = _Employee.EmployeeInternalID         //HRDecoupling

  association [1..1] to I_WorkforcePerson as _Employee on $projection.BusinessPartner = _Employee.Person                                //HRDecoupling                                             


{
     
  key Project.MasterProject,
      Project.MasterProjectUUID,
      ProjectRoles.EngagementProjectTeamRole                                      as MasterProjectTeamRole,
      concat_with_space(BPartner.FirstName, BPartner.LastName,1)                  as ProjectResponsiblePerson,
      BPartner.FirstName,
      BPartner.LastName,
     // _Text[1:Language = $session.system_language].ProjectRoleName                as ProjectRoleName,

     BPartner.IndependentAddressID,
//      BPartner._AddressIndependentEmail.EmailAddress,

//      case when BPartner._AddressIndependentMobile.PhoneNumberType = '3'

//      then

//      BPartner._AddressIndependentMobile.InternationalMobilePhoneNumber

//      end as InternationalMobilePhoneNumber,

//      case when BPartner._AddressIndependentPhone.PhoneNumberType = '1'

//      then

//      BPartner._AddressIndependentPhone.InternationalPhoneNumber

//      end as InternationalPhoneNumber,

      Project.StartDate,
      Project.EndDate,
      TeamMembers.EngmtProjTeamMemberUUID                                         as MstrProjTeamMemberUUID,
      TeamMembers.EngagementProjectMemberUUID                                     as MstrProjMemberUUID,
      ProjMembers.BusinessPartner,
      ProjMembers.BusinessPartnerType,
      ProjMembers.EmploymentInternalID,
      ProjMembers.EmployeePersonnelNumber,
      ProjMembers.CreationDate,
      ProjMembers.ChangedBy,
      ProjMembers.ChangedDateTime,
      ProjMembers.CreatedByUser,
      _Employee._BusinessUser.UserID,
      _ProjectRole._Text,
      _ProjectRole.ProjectRole,
      BPartner.IsBusinessPurposeCompleted,
      
  /////// Start of Datacontroller 10+1 fields -  Not to be consumed by any other views//////////      

        
      @Consumption.hidden:true
      @UI.hidden:true
      BPartner.DataControllerSet,
      @Consumption.hidden:true
      @UI.hidden:true
      BPartner.DataController1,
      @Consumption.hidden:true
      @UI.hidden:true
      BPartner.DataController2,
      @Consumption.hidden:true
      @UI.hidden:true
      BPartner.DataController3,
      @Consumption.hidden:true
      @UI.hidden:true
      BPartner.DataController4,
      @Consumption.hidden:true
      @UI.hidden:true
      BPartner.DataController5,
      @Consumption.hidden:true
      @UI.hidden:true
      BPartner.DataController6,
      @Consumption.hidden:true
      @UI.hidden:true
      BPartner.DataController7,
      @Consumption.hidden:true
      @UI.hidden:true
      BPartner.DataController8,
      @Consumption.hidden:true
      @UI.hidden:true
      BPartner.DataController9,
      @Consumption.hidden:true
      @UI.hidden:true
      BPartner.DataController10      


}

 
  
  
  
  
  
 /*+[internal] {
"BASEINFO":
{
"FROM":
[
"I_BUSINESSPARTNER",
"I_BUSINESSUSER",
"I_ENGAGEMENTPROJECTTEAM",
"I_ENGAGEMENTPROJECTTEAMROLE",
"I_ENGMTPROJTEAMMEMBER",
"I_MASTERPROJECT",
"I_MSTRPROJMEMBER",
"I_MSTRPROJROLEID",
"I_WORKFORCEPERSON"
],
"ASSOCIATED":
[
"I_MASTERPROJECTROLETEXT",
"I_MSTRPROJROLEID",
"I_WORKFORCEPERSON"
],
"BASE":
[
"I_MSTRPROJROLEID"
],
"ANNO_REF":
[],
"SCALAR_FUNCTION":
[],
"VERSION":0,
"ANNOREF_EVALUATION_ERROR":""
}
}*/