C_EntProjectHierHeaderTP

DDL: C_ENTPROJECTHIERHEADERTP Type: view_entity CONSUMPTION

Enterprise Project Hierarchy Header

C_EntProjectHierHeaderTP is a Consumption CDS View that provides data about "Enterprise Project Hierarchy Header" in SAP S/4HANA. It reads from 1 data source (I_EnterpriseProjectTP_2) and exposes 26 fields with key field ProjectUUID. It has 2 associations to related views. It is exposed through 1 OData service (UI_ENTPROJECTHIERARCHY).

Data Sources (1)

SourceAliasJoin Type
I_EnterpriseProjectTP_2 I_EnterpriseProjectTP_2 projection

Associations (2)

CardinalityTargetAliasCondition
[0..1] C_EntProjWrkPckgProjectStatus _QuickViewStatus _QuickViewStatus.TaskUUID = $projection.ProjectSummaryTaskUUID
[0..1] C_PPM_ProjectMemberContactCard _Manager _Manager.BusinessPartnerUUID = $projection.ProjectManagerUUID

Annotations (9)

NameValueLevelField
EndUserText.label Enterprise Project Hierarchy Header view
AccessControl.authorizationCheck #CHECK view
ObjectModel.representativeKey ProjectUUID view
ObjectModel.usageType.serviceQuality #D view
ObjectModel.usageType.dataClass #MIXED view
ObjectModel.usageType.sizeCategory #L view
Search.searchable true view
Metadata.allowExtensions true view
VDM.viewType #CONSUMPTION view

OData Services (1)

ServiceBindingVersionContractRelease
UI_ENTPROJECTHIERARCHY UI_ENTPROJECTHIERARCHY V2 C1 NOT_RELEASED

Fields (26)

KeyFieldSource TableSource FieldDescription
KEY ProjectUUID ProjectUUID
ProjectSummaryTaskUUID ProjectSummaryTaskUUID
ProjectInternalID ProjectInternalID
WBSElementInternalID WBSElementInternalID
Project Project
ProjectName ProjectDescription
ProjectProfileCode ProjectProfileCode
WBSElementObject WBSElementObject
ProcessingStatus ProcessingStatus
ProjectStartDate ProjectStartDate
ProjectEndDate ProjectEndDate
char2
ProfitCenter ProfitCenter
ControllingArea ControllingArea
ProjectCategory ProjectCategory
EnterpriseProjectServiceOrg EnterpriseProjectServiceOrg
CompanyCode CompanyCode
EntProjectIsConfidential EntProjectIsConfidential
ResponsibleCostCenter ResponsibleCostCenter
Plant Plant
EnterpriseProjectType EnterpriseProjectType
FunctionalArea FunctionalArea
ProjectManagerUUID
PersonFullName
_Manager _Manager
_QuickViewStatus _QuickViewStatus
@EndUserText.label: 'Enterprise Project Hierarchy Header'
@AccessControl.authorizationCheck: #CHECK

@ObjectModel: {
   representativeKey: 'ProjectUUID',
   alternativeKey: [ { id : 'ProjectSummaryTaskUUID', uniqueness: #UNIQUE } ],
   usageType: {
       serviceQuality:  #D,
       dataClass:       #MIXED,
       sizeCategory:    #L
   }
}

@UI.presentationVariant:[ { 
    requestAtLeast:  [ 'EntProjectIsDraftMigrated' ] 
 } ]
 
@Search.searchable: true
@Metadata.allowExtensions: true
@VDM: {
    viewType: #CONSUMPTION
}
@VDM.usage.type:[#TRANSACTIONAL_PROCESSING_SERVICE]

define root view entity C_EntProjectHierHeaderTP
  provider contract transactional_query
  as projection on I_EnterpriseProjectTP_2 as PROJECT
  association [0..1] to C_EntProjWrkPckgProjectStatus  as _QuickViewStatus on _QuickViewStatus.TaskUUID = $projection.ProjectSummaryTaskUUID
  association [0..1] to C_PPM_ProjectMemberContactCard as _Manager         on _Manager.BusinessPartnerUUID = $projection.ProjectManagerUUID

{
          @UI.hidden: true
  key     ProjectUUID,
          ProjectSummaryTaskUUID,
          ProjectInternalID,
          WBSElementInternalID,
          @Search.defaultSearchElement: true
          @Consumption.valueHelpDefinition: [{ entity : {name: 'C_EnterpriseProjectVH', element: 'Project'  }}]
          Project,
          ProjectDescription                                                         as ProjectName,
          @Consumption.valueHelpDefinition: [{ entity : {name: 'C_PPM_ProjectProfileVH', element: 'ProjectProfileCode'  }
          ,additionalBinding: [{ localElement: 'ProjectProfileCode', element: 'ProjectProfileCode' }

            ] }]
          ProjectProfileCode,
          @UI.hidden: true
          _ProjectProfileText.ProjectProfileCodeText                                 as ProjectProfileCodeText : localized,

          WBSElementObject,
          @Consumption.valueHelpDefinition: [{ entity : {name: 'I_PPM_ProcessingStatusText', element: 'ProcessingStatus'  } }]
          ProcessingStatus,
          @UI.hidden: true
          _ProcessingStatusText.ProcessingStatusText                                 as ProcessingStatusText   : localized,

          ProjectStartDate,
          ProjectEndDate,
          @ObjectModel.virtualElement: true
          @ObjectModel.virtualElementCalculatedBy: 'ABAP:CL_S4PPM_PRO_CON_DATAMODEL'
          //          @UI.hidden: true

  virtual EntProjectDataModelVersion     : abap.char(2),
          ProfitCenter,
          ControllingArea,

          @ObjectModel.virtualElement: true
          @ObjectModel.virtualElementCalculatedBy: 'ABAP:CL_EPPM_PROJECT_HIER_VM'
  virtual EntProjectObjectWorkflowStatus : /s4ppm/tv_wf_status,

          @ObjectModel.virtualElement: true
          @ObjectModel.virtualElementCalculatedBy: 'ABAP:CL_EPPM_PROJECT_HIER_VM'
  virtual EntProjObjWorkflowStatusText   : /s4ppm/tv_wf_status_tx,

          @UI.hidden: true
          @ObjectModel.virtualElement: true
          @ObjectModel.virtualElementCalculatedBy: 'ABAP:CL_EPPM_PROJECT_HIER_VM'
  virtual EarliestStartDate              : /s4ppm/tv_plan_start_date,

          @UI.hidden: true
          @ObjectModel.virtualElement: true
          @ObjectModel.virtualElementCalculatedBy: 'ABAP:CL_EPPM_PROJECT_HIER_VM'
  virtual LatestFinishDate               : /s4ppm/tv_plan_end_date,
      
          @UI.hidden: true    
          @ObjectModel.virtualElement: true 
          @ObjectModel.virtualElementCalculatedBy: 'ABAP:CL_EPPM_BRIEF_ISDRAFTMIGRATED'
  virtual EntProjectIsDraftMigrated : abap_boolean,
      
          ProjectCategory,
          EnterpriseProjectServiceOrg,
          CompanyCode,
          EntProjectIsConfidential,
          ResponsibleCostCenter,
          Plant,
          EnterpriseProjectType,
          FunctionalArea,
          _EntProjRoleStaffing[1:ProjectRoleType = 'YP_RL_0001'].BusinessPartnerUUID as ProjectManagerUUID,
          _EntProjRoleStaffing[1:ProjectRoleType = 'YP_RL_0001']._BusinessPartner.PersonFullName,
          @ObjectModel.filter.enabled: false
          _EnterpriseProjectElement : redirected to composition child C_EntProjectHierElementTP,

          _Manager,
          _QuickViewStatus
}