R_ENTERPRISEPROJECTROOT

CDS View

Project header table

R_ENTERPRISEPROJECTROOT is a CDS View in S/4HANA. Project header table. It contains 4 fields. 1 CDS views read from this table.

CDS Views using this table (1)

ViewTypeJoinVDMDescription
I_EnterpriseProjectForUser view_entity from COMPOSITE Enterprise Project with user involvement

Fields (4)

KeyField CDS FieldsUsed in Views
KEY ProjectUUID ProjectUUID 1
EnterpriseProjectServiceOrg EnterpriseProjectServiceOrg 1
EntProjectIsConfidential EntProjectIsConfidential 1
ProjectCategory ProjectCategory 1
@AccessControl: {
    authorizationCheck:      #MANDATORY,   
    personalData.blocking:   #BLOCKED_DATA_EXCLUDED
}

@ObjectModel: {
   usageType: {
       serviceQuality:  #A,
       dataClass:       #TRANSACTIONAL,
       sizeCategory:    #L
   }
}
@VDM: {
  viewType: #BASIC,
  lifecycle.contract.type: #SAP_INTERNAL_API
}
@EndUserText.label: 'Project header table'
@Metadata.ignorePropagatedAnnotations: true
define view entity R_EnterpriseProjectRoot as select from /s4ppm/project as Project

  association [1]    to R_EnterpriseProjectElement    as _ProjectSummaryTask          on  $projection.ProjectSummaryTaskUUID      = _ProjectSummaryTask.ProjectElementUUID
  association [1]    to R_EnterpriseProject           as _Project                     on  $projection.ProjectUUID                 = _Project.ProjectUUID
  -- foreign key associations
  association [0..1] to I_ProjectProfileCode          as _ProjectProfileCode          on  $projection.ProjectProfileCode          = _ProjectProfileCode.ProjectProfileCode

  association [0..1] to I_AvailabilityCtrlProfile     as _AvailabilityCtrlProfile     on  $projection.AvailabilityControlProfile  = _AvailabilityCtrlProfile.AvailabilityControlProfile

  association [0..1] to I_EnterpriseServiceOrg        as _EnterpriseServiceOrg        on  $projection.EnterpriseProjectServiceOrg = _EnterpriseServiceOrg.EnterpriseServiceOrganization

//  association [0..1] to I_User                        as _ProjectLastChangedByUser    on  $projection.ProjectLastChangedByUser    = _ProjectLastChangedByUser.UserID


  association [0..1] to I_Projecttype                 as _EnterpriseProjectType       on  $projection.EnterpriseProjectType       = _EnterpriseProjectType.ProjectType

  association [0..1] to I_EntProjectSettlementType    as _EntProjectSettlementType    on  $projection.EntProjectSettlementType    = _EntProjectSettlementType.EntProjectSettlementType

  association [0..1] to I_Currency                    as _Currency                    on  $projection.Currency                    = _Currency.Currency

  ---Extension Association
  association [1..1] to E_PPM_Project                 as _ProjectExtension             on  $projection.ProjectUUID                = _ProjectExtension.ProjectUUID
{
  key Project.guid                                                                  as ProjectUUID,
      @Consumption.hidden: true
      Project.pro_category                                                          as ProjectCategory,
      cast ( Project.pspnr as ps_s4_proj_pspnr preserving type )                    as ProjectInternalID,
      Project.customer                                                              as CustomerUUID,

      @ObjectModel.foreignKey.association: '_Currency'
      cast ( Project.currency as /s4ppm/tv_project_currency preserving type )       as Currency,
      
//      @ObjectModel.foreignKey.association: '_ProjectLastChangedByUser'      

      @Semantics.user.lastChangedBy: true
      Project.last_changed_by                                                       as ProjectLastChangedByUser,
      @Semantics.systemDateTime.lastChangedAt: true
      cast ( Project.last_changed_on as /s4ppm/tv_proj_changed_on preserving type ) as ProjectLastChangedDateTime,
//      project.cause as Cause,

//      project.master_language as MasterLanguage,

//      project.template_admin as TemplateAdmin,

//      project.template_guid as TemplateGuid,

//      project.schedule_type as ScheduleType,

//      project.summary_tasks as SummaryTasks,

//      project.periodtype as Periodtype,

//      project.allocation_unit as AllocationUnit,

//      project.location as Location,

//      project.sold_to_party as SoldToParty,

//      project.sort_overall as SortOverall,

//      project.plvar as PlanVersion,

//      project.otype as ObjectType,

//      project.resp_org_unit as RespOrgUnit,

//      project.actual2plan as Actual2plan,

//      project.rstr_vis as RestrictedVisibility,

//      project.nonseq_phases as NonseqPhases,

//      project.earliest_latest_dates as EarliestLatestDates,

      Project.projectsummarytaskuuid                                                as ProjectSummaryTaskUUID,
      Project.availabilitycontrolisactive                                           as AvailabilityControlIsActive,
      @ObjectModel.foreignKey.association: '_AvailabilityCtrlProfile'
      Project.availabilitycontrolprofile                                            as AvailabilityControlProfile,
      Project.enterpriseprojecttype                                                 as EnterpriseProjectType,
      Project.entprojectsettlementelement                                           as EntProjectSettlementElement,
      @ObjectModel.foreignKey.association: '_EntProjectSettlementType'
      Project.entprojectsettlementtype                                              as EntProjectSettlementType,
      Project.entprojhasprojectstockenabled                                         as EntProjHasProjectStockEnabled,
      Project.isbillingrelevant                                                     as IsBillingRelevant,
      Project.projectobject                                                         as ProjectObject,
      @ObjectModel.foreignKey.association: '_ProjectProfileCode'
      Project.projectprofilecode                                                    as ProjectProfileCode,
//      project.wbselementobject                                                      as Wbselementobject,

//      Project.inventoryspecialstockvalntype                                         as Inventoryspecialstockvalntype,

//      project.dummy_project_incl_eew_ps as DummyProjectInclEewPs,


      @ObjectModel.foreignKey.association: '_EnterpriseServiceOrg'
      Project.org_id                                                                as EnterpriseProjectServiceOrg,

      @Semantics.booleanIndicator
      Project.confidential                                                          as EntProjectIsConfidential,

      Project.restrict_time_posting                                                 as RestrictedTimePosting,
      
      Project.template_guid                                                         as ProjectTemplateUUID,
      Project.data_model_version                                                    as EntProjectDataModelVersion,
      Project.entprojchangedocobject                                                as EntProjectChangeDocument,

      _AvailabilityCtrlProfile,
      _Currency,
      _EnterpriseProjectType,
      _EnterpriseServiceOrg,
      _EntProjectSettlementType,
      _Project,
//      _ProjectLastChangedByUser,      

      _ProjectProfileCode,
      _ProjectSummaryTask      
  
}