R_ENTERPRISEPROJECT

CDS View

Enterprise Project Internal

R_ENTERPRISEPROJECT is a CDS View in S/4HANA. Enterprise Project Internal. It contains 15 fields. 5 CDS views read from this table.

CDS Views using this table (5)

ViewTypeJoinVDMDescription
C_EnterpriseProjectBriefCost view_entity from CONSUMPTION Project Brief Cost line chart
C_PPM_ProjectBriefCostHeader view from CONSUMPTION Source of Cost Chart
I_EnterpriseProjectTP_2 view_entity from TRANSACTIONAL Appl. Interface for Enterprise Project
I_PPM_MyActvProjCostOvrlPerd view from COMPOSITE My Actv Projects Overall Cost in Fiscal Periods (continuous)
R_EnterpriseProjectForRead view from COMPOSITE Lists all projects that a user is permitted to read

Fields (15)

KeyField CDS FieldsUsed in Views
KEY ProjectInternalID ProjectInternalID 3
KEY ProjectUUID ProjectUUID 3
_ControllingArea _ControllingArea 1
_ProfitCenter _ProfitCenter 1
ControllingArea ControllingArea 2
EnterpriseProjectType EnterpriseProjectType 1
FunctionalArea FunctionalArea 1
Plant Plant 1
ProfitCenter ProfitCenter 2
Project Project 2
ProjectDescription ProjectName 1
ProjectProfileCode ProjectProfileCode 1
ProjectSummaryTaskUUID ProjectSummaryTaskUUID 2
ResponsibleCostCenter ResponsibleCostCenter 1
WBSElementInternalID WBSElementInternalID 1
@VDM.viewType: #BASIC
@EndUserText.label: 'Enterprise Project Internal'
@AccessControl.authorizationCheck: #CHECK
@AccessControl.personalData.blocking: #BLOCKED_DATA_EXCLUDED

@ObjectModel: {
   semanticKey:       [ 'Project' ],
   representativeKey: 'ProjectUUID',
   supportedCapabilities: [ #SQL_DATA_SOURCE, #CDS_MODELING_DATA_SOURCE, #CDS_MODELING_ASSOCIATION_TARGET ],
   usageType: {
     serviceQuality:  #B,
     dataClass:       #MASTER,
     sizeCategory:    #L
   }
}

@UI.headerInfo: {
  typeName:       'Project',
  typeNamePlural: 'Projects'
}

//@Metadata.ignorePropagatedAnnotations: true


//@Analytics.dataExtraction: {

//        enabled: true

//}

//@Analytics.internalName:#LOCAL

//@Analytics.dataCategory: #DIMENSION

@Metadata.allowExtensions:true

@VDM.lifecycle.contract.type:  #SAP_INTERNAL_API

define view entity R_EnterpriseProject
  as select from /s4ppm/project as project
    inner join   /s4ppm/task    as task on  task.project_guid = project.guid
                                        and task.object_type  = 'DPO'
    inner join   proj           as proj on proj.pspnr = project.pspnr
    inner join   prps           as prps on prps.pspnr = task.pspnr

  -- foreign key associations
  association [0..1] to I_ProjectProfileCode           as _ProjectProfileCode           on  $projection.ProjectProfileCode = _ProjectProfileCode.ProjectProfileCode

  association [0..1] to I_CompanyCode                  as _CompanyCode                  on  $projection.CompanyCode = _CompanyCode.CompanyCode
  association [0..1] to I_ControllingArea              as _ControllingArea              on  $projection.ControllingArea = _ControllingArea.ControllingArea
  association [0..*] to I_CostCenter                   as _ResponsibleCostCenter        on  $projection.ControllingArea       = _ResponsibleCostCenter.ControllingArea
                                                                                        and $projection.ResponsibleCostCenter = _ResponsibleCostCenter.CostCenter

  association [0..*] to I_ProfitCenter                 as _ProfitCenter                 on  $projection.ControllingArea = _ProfitCenter.ControllingArea
                                                                                        and $projection.ProfitCenter    = _ProfitCenter.ProfitCenter
                                                                                        
  association [0..1] to I_FunctionalArea               as _FunctionalArea               on  $projection.FunctionalArea = _FunctionalArea.FunctionalArea                                                                                                                                                                              

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

  association [0..1] to I_Plant                        as _Plant                        on  $projection.Plant = _Plant.Plant

  association [0..*] to I_InvestmentProfileText        as _InvestmentProfileText        on  $projection.InvestmentProfile = _InvestmentProfileText.InvestmentProfile

  association [0..1] to I_Location                     as _Location                     on  $projection.Location = _Location.Location
                                                                                        and $projection.Plant    = _Location.Plant
                                                                                        
  association [0..1] to I_CostingSheetProcedure        as _CostingSheetProcedure        on  _CostingSheetProcedure.CostingSheetProcedure = $projection.CostingSheet                                                                                      

  -- text associations
  association [0..*] to I_PPM_ProcessingStatusText     as _ProcessingStatusText         on  $projection.ProcessingStatus = _ProcessingStatusText.ProcessingStatus
  association [0..*] to I_ProjectProfileCodeText       as _ProjectProfileText           on  $projection.ProjectProfileCode = _ProjectProfileText.ProjectProfileCode
  association [0..*] to I_EngagementProjectSrvcOrgText as _EnterpriseProjectSrvcOrgText on  $projection.EnterpriseProjectServiceOrg = _EnterpriseProjectSrvcOrgText.EngagementProjectServiceOrg
  association [0..*] to I_EntProjProfnlSrvcProjStgeTxt as _EntProjProfnlSrvcProjStgeTxt on  $projection.ProcessingStatus = _EntProjProfnlSrvcProjStgeTxt.ProcessingStatus
  association [0..*] to I_CostCenter                   as _CostCenter                   on  $projection.CostCenter      = _CostCenter.CostCenter
                                                                                        and $projection.ControllingArea = _CostCenter.ControllingArea

  association [0..*] to I_FunctionalLocationText       as _FunctionalLocationText       on  $projection.FunctionalLocation = _FunctionalLocationText.FunctionalLocation

  association [0..*] to I_PPM_PriorityText             as _PriorityText                 on  $projection.PriorityCode = _PriorityText.PriorityCode

  association [0..1] to I_UserContactCard              as _CreatedByUser                on  $projection.CreatedByUser = _CreatedByUser.ContactCardID

  association [0..*] to I_AvailabilityCtrlProfileText  as _AvailabilityCtrlProfileText  on  $projection.AvailabilityControlProfile = _AvailabilityCtrlProfileText.AvailabilityControlProfile

  association [0..*] to I_Projecttypetext              as _EnterpriseProjectTypeText    on  _EnterpriseProjectTypeText.ProjectType = $projection.EnterpriseProjectType

  association [0..*] to I_FunctionalAreaText           as _FunctionalAreaText           on  $projection.FunctionalArea = _FunctionalAreaText.FunctionalArea

  association [0..*] to I_EntProjectSettlementTypeText as _EntProjectSettlementTypeText on  $projection.EntProjectSettlementType = _EntProjectSettlementTypeText.EntProjectSettlementType

  association [0..1] to I_EnterpriseProjectForUser     as _EnterpriseProjectForUser on _EnterpriseProjectForUser.ProjectUUID = $projection.ProjectUUID
   
  -- workflow association
  association [0..1] to I_EntProjWorkflowOverview      as _EntProjWorkflowOverview      on  _EntProjWorkflowOverview.ProjectUUID = $projection.ProjectUUID

  association [0..1] to I_CustomerToBusinessPartner    as _CustomerToBusinessPartner    on  $projection.CustomerUUID = _CustomerToBusinessPartner.BusinessPartnerUUID
  ---Extension Association
  association [1..1] to E_PPM_Project                  as _ProjectExtension             on  $projection.ProjectUUID = _ProjectExtension.ProjectUUID

{
  key project.guid                                                                  as ProjectUUID,
      cast ( project.pspnr as ps_s4_proj_pspnr preserving type )                    as ProjectInternalID,
      //2008 C4P Harmonization Start

      project.customer                                                              as CustomerUUID,
      project.org_id                                                                as EnterpriseProjectServiceOrg,      
      @Semantics.booleanIndicator
      project.confidential                                                          as EntProjectIsConfidential,
       
      project.restrict_time_posting                                                 as RestrictedTimePosting,
      @Consumption.hidden: true
      project.pro_category                                                          as ProjectCategory,
      //2008 C4P Harmonization End

      task.guid                                                                     as ProjectSummaryTaskUUID,
      @ObjectModel.text.element: ['ProjectDescription']
      cast ( task.external_id as /s4ppm/project_id preserving type )                as Project,
      @Semantics.text: true
      task.name                                                                     as ProjectDescription,
      task.proc_status_own                                                          as ProcessingStatus,
      @EndUserText:
         { quickInfo : 'Earliest Planned Start',
           label     : 'Earliest Planned Start'}
      task.planstart_date                                                           as PlannedStartDate,
      @EndUserText:
         { quickInfo : 'Earliest Planned Finish',
           label     : 'Earliest Planned Finish' }
      task.planfinish_date                                                          as PlannedEndDate,
      task.actualstart_date                                                         as ActualStartDate,
      task.actualfinish_date                                                        as ActualFinishDate,
      task.priority                                                                 as PriorityCode,
      //2102 SD eppm N:1 indicator

      task.multi_soi_enabled                                                        as EntProjIsMultiSlsOrdItmsEnbld,
      //2008 C4P Harmonization Start

      @EndUserText:
         { quickInfo : 'Latest Planned Start',
           label     : 'Latest Planned Start' }
      task.latest_start_date                                                        as ProjectStartDate,
      @EndUserText:
         { quickInfo : 'Latest Planned Finish',
           label     : 'Latest Planned Finish' }
      task.latest_finish_date                                                       as ProjectEndDate,
      //2105 EPPM-BW integration

      cast ( prps.pspnr as ps_s4_pspnr preserving type )                            as WBSElementInternalID,
      // prps.pspnr                                                                  as ProjectObjectReferenceElement,

      //2008 C4P Harmonization End

      @ObjectModel.foreignKey.association: '_ProjectProfileCode'
      proj.profl                                                                    as ProjectProfileCode,

      @Consumption.valueHelpDefinition: [
        { entity:  { name:    'I_ProfitCenterStdVH',
                     element: 'ProfitCenter' },
          additionalBinding: [{ localElement: 'ControllingArea',
                                element: 'ControllingArea' }]
        }]
      @ObjectModel.foreignKey.association: '_ProfitCenter'
      proj.prctr                                                                    as ProfitCenter,

      @Consumption.valueHelpDefinition: [
        { entity:  { name:    'I_CompanyCodeStdVH',
                     element: 'CompanyCode' }
        }]
      @ObjectModel.foreignKey.association: '_CompanyCode'
      proj.vbukr                                                                    as CompanyCode,

      @Consumption.valueHelpDefinition: [
        { entity:  { name:    'I_ControllingAreaStdVH',
                     element: 'ControllingArea' }
        }]
      @ObjectModel.foreignKey.association: '_ControllingArea'
      proj.vkokr                                                                    as ControllingArea,
      @ObjectModel.foreignKey.association: '_FunctionalArea'
      proj.func_area                                                                as FunctionalArea,
      proj.stort                                                                    as Location,
      proj.werks                                                                    as Plant,
      proj.cpcurr                                                                   as Currency,
      //2008 C4P Harmonization Start

      proj.avc_profile                                                              as AvailabilityControlProfile,
      proj.avc_active                                                               as AvailabilityControlIsActive,
      proj.imprf                                                                    as InvestmentProfile,
      proj.txjcd                                                                    as TaxJurisdiction,
      //2008 C4P Harmonization End

      prps.prart                                                                    as EnterpriseProjectType,

      @ObjectModel.foreignKey.association: '_ResponsibleCostCenter'
      prps.fkstl                                                                    as ResponsibleCostCenter,

      prps.tplnr                                                                    as FunctionalLocation,

      prps.fakkz                                                                    as IsBillingRelevant,
      //SO Integration

      prps.abgsl                                                                    as ResultAnalysisInternalID,
      prps.vbeln_prps                                                               as LeadingSalesOrder,
      prps.posnr_prps                                                               as LeadingSalesOrderItem,
      @Semantics.user.createdBy: true
      task.created_by                                                               as CreatedByUser,
      @Semantics.systemDateTime.createdAt: true
      task.created_on                                                               as CreationDateTime,
      @Semantics.user.localInstanceLastChangedBy: true
      task.changed_by                                                               as LastChangedByUser,
      @Semantics.systemDateTime.localInstanceLastChangedAt: true
      task.changed_on                                                               as LastChangeDateTime,
      project.last_changed_by                                                       as ProjectLastChangedByUser,
      cast ( project.last_changed_on as /s4ppm/tv_proj_changed_on preserving type ) as ProjectLastChangedDateTime,

      cast ( prps.fabkl as stkal preserving type )                                  as FactoryCalendar,
      prps.objnr                                                                    as WBSElementObject,
      proj.objnr                                                                    as ProjectObject,
      prps.kalsm                                                                    as CostingSheet,
      cast ( prps.kostl as ps_kostl preserving type )                               as CostCenter,
      prps.xstat                                                                    as WBSIsStatisticalWBSElement,
      project.template_guid                                                         as ProjectTemplateUUID,
      proj.besta                                                                    as EntProjHasProjectStockEnabled,
      proj.settlementtype                                                           as EntProjectSettlementType,
      prps.settlementelement                                                        as EntProjectSettlementElement,

      _ProcessingStatusText,
      _ProjectProfileText,
      _AvailabilityCtrlProfileText,
      _FunctionalLocationText,
      _PriorityText,
      _EnterpriseProjectTypeText,
      _InvestmentProfileText,
      _FunctionalAreaText,
      _EntProjectSettlementTypeText,
      _ProjectProfileCode,
      _CompanyCode,
      _ControllingArea,
      _FunctionalArea,
      @Consumption.filter.businessDate.at : true
      _ProfitCenter,
      _CostCenter,
      _Plant,
      _Location,
      _CreatedByUser,
      _ResponsibleCostCenter,
      _EntProjWorkflowOverview,
      _CostingSheetProcedure,
      _CustomerToBusinessPartner,
      _EnterpriseProjectSrvcOrgText,
      _EntProjProfnlSrvcProjStgeTxt,
      _EnterpriseProjectForUser
}
/*+[internal] {
"BASEINFO":
{
"FROM":
[
"/S4PPM/PROJECT",
"/S4PPM/TASK",
"PROJ",
"PRPS"
],
"ASSOCIATED":
[
"I_AVAILABILITYCTRLPROFILETEXT",
"I_COMPANYCODE",
"I_CONTROLLINGAREA",
"I_COSTCENTER",
"I_COSTINGSHEETPROCEDURE",
"I_CUSTOMERTOBUSINESSPARTNER",
"I_ENGAGEMENTPROJECTSRVCORGTEXT",
"I_ENTERPRISEPROJECTFORUSER",
"I_ENTPROJECTSETTLEMENTTYPETEXT",
"I_ENTPROJPROFNLSRVCPROJSTGETXT",
"I_ENTPROJWORKFLOWOVERVIEW",
"I_FUNCTIONALAREA",
"I_FUNCTIONALAREATEXT",
"I_FUNCTIONALLOCATIONTEXT",
"I_INVESTMENTPROFILETEXT",
"I_LOCATION",
"I_PLANT",
"I_PPM_PRIORITYTEXT",
"I_PPM_PROCESSINGSTATUSTEXT",
"I_PROFITCENTER",
"I_PROJECTPROFILECODE",
"I_PROJECTPROFILECODETEXT",
"I_PROJECTTYPETEXT",
"I_USERCONTACTCARD"
],
"BASE":
[],
"ANNO_REF":
[],
"SCALAR_FUNCTION":
[],
"VERSION":0,
"ANNOREF_EVALUATION_ERROR":""
}
}*/