C_EntProjBriefRoleStaffingTP

DDL: C_ENTPROJBRIEFROLESTAFFINGTP Type: view_entity CONSUMPTION

Enterprise Project Brief role staffing

C_EntProjBriefRoleStaffingTP is a Consumption CDS View that provides data about "Enterprise Project Brief role staffing" in SAP S/4HANA. It reads from 1 data source (R_EntProjTeamRoleStaffIntTP) and exposes 26 fields with key field ProjectEntitlementUUID.

Data Sources (1)

SourceAliasJoin Type
R_EntProjTeamRoleStaffIntTP R_EntProjTeamRoleStaffIntTP projection

Annotations (12)

NameValueLevelField
AccessControl.authorizationCheck #MANDATORY view
AccessControl.personalData.blocking #BLOCKED_DATA_EXCLUDED view
VDM.viewType #CONSUMPTION view
ObjectModel.representativeKey ProjectEntitlementUUID view
ObjectModel.usageType.dataClass #MIXED view
ObjectModel.usageType.serviceQuality #C view
ObjectModel.usageType.sizeCategory #L view
UI.headerInfo.typeName Responsibilities view
UI.headerInfo.typeNamePlural Resource Assignments view
UI.headerInfo.title.value PersonFullName view
UI.headerInfo.description.value PersonFullName view
EndUserText.label Enterprise Project Brief role staffing view

Fields (26)

KeyFieldSource TableSource FieldDescription
KEY ProjectEntitlementUUID ProjectEntitlementUUID
ProjectUUID ProjectUUID
TeamMemberUUID TeamMemberUUID
ProjectRoleUUID ProjectRoleUUID
ProjectRoleType ProjectRoleType Role
ProjectRoleTypeText _ProjectRoleTypeText ObjectName
BusinessPartner BusinessPartner
BusinessPartnerUUID BusinessPartnerUUID
PersonFullName
EmailByBusinessPartnerUUID BusinessPartnerUUID
DefaultEmailAddress _WorkplaceAddress DefaultEmailAddress
PhoneByBusinessPartnerUUID BusinessPartnerUUID
NormalizedPhoneNumber _WorkplaceAddress NormalizedPhoneNumber
BuildingByBusinessPartnerUUID BusinessPartnerUUID
WorkplaceBuilding _WorkplaceAddress Building
RoomNmbrByBusinessPartnerUUID BusinessPartnerUUID
RoomNumber _WorkplaceAddress RoomNumber
CreatedByUser CreatedByUser
CreationDateTime CreationDateTime
LastChangedByUser LastChangedByUser
LastChangeDateTime LastChangeDateTime
_TeamMember _TeamMember
_Role _Role
_ProjectRoleTypeText _ProjectRoleTypeText
_WorkplaceAddress _WorkplaceAddress
_EnterpriseProjectForUser _EnterpriseProjectForUser
@AccessControl: {
    authorizationCheck:     #MANDATORY,
    personalData.blocking:  #BLOCKED_DATA_EXCLUDED
}
@VDM: {
    viewType: #CONSUMPTION
}

@ObjectModel: {
    representativeKey: 'ProjectEntitlementUUID',
    usageType: {
      dataClass:       #MIXED,
      serviceQuality:  #C,
      sizeCategory:    #L
    }
}

@UI.headerInfo: {
 typeName:         'Responsibilities',
 typeNamePlural:   'Resource Assignments',
 title:        { value: 'PersonFullName' },
 description:  { value: 'PersonFullName' }
}


@UI.presentationVariant: [{ groupBy:  ['ProjectRoleTypeText'] ,
                            visualizations: [{type: #AS_LINEITEM }],
                            sortOrder: [ {by: 'PersonFullName',direction: #ASC} ] }]

@VDM.usage.type:[#TRANSACTIONAL_PROCESSING_SERVICE]

@EndUserText.label: 'Enterprise Project Brief role staffing'

define view entity C_EntProjBriefRoleStaffingTP
  as projection on R_EntProjTeamRoleStaffIntTP

 {
      @UI.hidden: true
  key ProjectEntitlementUUID,
      @UI.hidden: true
      ProjectUUID, 
       
      @UI.hidden: true
      TeamMemberUUID,
 
      @UI.hidden: true
      ProjectRoleUUID,
 
      @UI.lineItem: [{position: 20, importance: #HIGH}] 
      @EndUserText.label:'Role' 
      @UI.textArrangement: #TEXT_ONLY
      @Consumption.valueHelpDefinition: [{
        entity : {name: 'C_PPM_ProjectRoleValueHelp', element: 'ProjectRoleType'  }
              }] 
      @ObjectModel.text.element:['ProjectRoleTypeText']
      ProjectRoleType,
      
      @UI.hidden: true
      _ProjectRoleTypeText.ObjectName as ProjectRoleTypeText,
       
 
      @UI.lineItem: [{position: 10, importance: #HIGH}] 
      @EndUserText: {
          label: 'Resource',
          quickInfo: 'Resource'
      }
      @UI.textArrangement: #TEXT_FIRST
      @Consumption.valueHelpDefinition:
       [  { entity: {   element: 'BusinessPartner', name: 'C_PPM_TeamMemberSearchHelp'  }}]
      @ObjectModel.text.element: ['PersonFullName']
      BusinessPartner,
     
      @UI.hidden: true
      BusinessPartnerUUID,
      
  
      @UI.hidden: true
      _TeamMember._BusinessPartner.PersonFullName,
      
  
      @UI.lineItem: [{ position: 30 }]
      @Semantics:   { eMail: { address: true, type:  [ #PREF, #WORK ] } }
      @EndUserText: { label: 'E-Mail Address', quickInfo: 'E-Mail Address' }  // special request from Helga

      @UI.textArrangement: #TEXT_ONLY
      @ObjectModel: {  text.element: [ 'DefaultEmailAddress' ]  }
      BusinessPartnerUUID as EmailByBusinessPartnerUUID,
      @UI.hidden: true
      _WorkplaceAddress.DefaultEmailAddress,
      
      @UI.lineItem: [{ position: 40, label: 'Phone' }]
      @EndUserText: { label: 'Phone', quickInfo: 'Phone' }
      @UI.textArrangement: #TEXT_ONLY
      @ObjectModel: {  text.element: [ 'NormalizedPhoneNumber' ]  }
      BusinessPartnerUUID as PhoneByBusinessPartnerUUID,
      @UI.hidden: true
      _WorkplaceAddress.NormalizedPhoneNumber,
      
      @UI.lineItem: [{ position: 50, label: 'Building' }]
      @EndUserText: { label: 'Building', quickInfo: 'Building' }
      @UI.textArrangement: #TEXT_ONLY
      @ObjectModel: {  text.element: [ 'WorkplaceBuilding' ]  }
      BusinessPartnerUUID as BuildingByBusinessPartnerUUID,
      @UI.hidden: true
      _WorkplaceAddress.Building      as WorkplaceBuilding,
      
      @UI.lineItem: [{ position: 60, label: 'Room' }]
      @EndUserText: { label: 'Room', quickInfo: 'Room' }
      @ObjectModel: {  text.element: [ 'RoomNumber' ]  }
      @UI.textArrangement: #TEXT_ONLY 
      BusinessPartnerUUID as RoomNmbrByBusinessPartnerUUID,
      
      @UI.hidden: true
      _WorkplaceAddress.RoomNumber,

      @Semantics.user.createdBy: true
      @UI.hidden: true
      CreatedByUser,
      @UI.hidden: true
      @Semantics.systemDateTime.createdAt: true
      CreationDateTime,
      @UI.hidden: true
      @Semantics.user.lastChangedBy: true
      LastChangedByUser,
      @Semantics.systemDateTime.lastChangedAt: true
      @UI.hidden: true
      LastChangeDateTime,
      //Association

      _TeamMember,
      _Role, 
      _ProjectRoleTypeText,
      _WorkplaceAddress,
      _EnterpriseProject : redirected to parent C_EntProjectBriefHeaderTP,
      _EnterpriseProjectForUser
}
where
  ProjectRoleType <> 'YP_RL_0001'
/*+[internal] {
"BASEINFO":
{
"FROM":
[
"I_BUSINESSPARTNER",
"I_PPM_PROJECTROLETYPETEXT",
"I_WORKPLACEADDRESS",
"R_ENTPROJECTTEAMMEMBERTP",
"R_ENTPROJTEAMROLESTAFFINTTP"
],
"ASSOCIATED":
[
"C_ENTPROJECTBRIEFHEADERTP",
"I_ENTERPRISEPROJECTFORUSER",
"I_ENTERPRISEPROJECTTP_2",
"I_PPM_PROJECTROLETYPETEXT",
"I_WORKPLACEADDRESS",
"R_ENTERPRISEPROJECTROLETP",
"R_ENTPROJECTTEAMMEMBERTP"
],
"BASE":
[
"R_ENTPROJTEAMROLESTAFFINTTP"
],
"ANNO_REF":
[],
"SCALAR_FUNCTION":
[],
"VERSION":0,
"ANNOREF_EVALUATION_ERROR":""
}
}*/