R_ENTERPRISEPROJECT

CDS View

Enterprise Project Internal

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

CDS Views using this table (14)

ViewTypeJoinVDMDescription
C_EnterpriseProjectBriefCost view_entity from CONSUMPTION Project Brief Cost line chart
C_PPM_ProjectBriefCostHeader view from CONSUMPTION Source of Cost Chart
I_AccountAssignmentWBSElmntVH view inner COMPOSITE Account Assignment WBS Elmnt Value Help
I_BlockFuncForEntProject view from COMPOSITE Basic view for block function calculation
I_EnterpriseProjectTP_2 view_entity from TRANSACTIONAL Appl. Interface for Enterprise Project
I_EnterpriseProjectVH view from COMPOSITE Enterprise Project value help
I_EntProjProfnlSrvcBillgDoc view_entity from COMPOSITE Billing Documents of Projects
I_EntProjProfnlSrvcBillgElmnt view_entity from COMPOSITE Billing Elements of Projects
I_PPM_MyActvProjCostOvrlPerd view from COMPOSITE My Actv Projects Overall Cost in Fiscal Periods (continuous)
P_ActvPROJECTSWITHPROJCAT6 view inner COMPOSITE Enterprise Proj and Project with Project Category 6
P_EntProjSdm242 view_entity from BASIC SDM: Private CDS View
P_ProjectsWithProjCat6 view inner COMPOSITE Enterprise Proj and Project with Project Category 7
P_PROJWITHPROJCAT6 view from COMPOSITE Enterprise Proj and Project with Project Category 7
R_EnterpriseProjectForRead view from COMPOSITE Lists all projects that a user is permitted to read

Fields (31)

KeyField CDS FieldsUsed in Views
KEY ProjectInternalID ProjectInternalID 5
KEY ProjectUUID ProjectUUID 11
_ControllingArea _ControllingArea 1
_EnterpriseProjectForUser _EnterpriseProjectForUser 1
_ProfitCenter _ProfitCenter 1
AvailabilityControlIsActive AvailabilityControlIsActive 1
AvailabilityControlProfile AvailabilityControlProfile 1
CompanyCode CompanyCode 1
ControllingArea ControllingArea 2
Currency Currency 1
EnterpriseProjectServiceOrg EnterpriseProjectServiceOrg 1
EnterpriseProjectType EnterpriseProjectType,ProjectType 5
EntProjectDataModelVersion EntProjectDataModelVersion 1
EntProjectIsConfidential EntProjectIsConfidential 1
EntProjectSettlementElement EntProjectSettlementElement 1
EntProjectSettlementType EntProjectSettlementType 1
EntProjHasProjectStockEnabled EntProjHasProjectStockEnabled 1
FunctionalArea FunctionalArea 3
IsBillingRelevant IsBillingRelevant 1
Plant Plant 2
ProcessingStatus ProcessingStatus 2
ProfitCenter ProfitCenter 2
Project Project 4
ProjectCategory ProjectCategory 5
ProjectDescription ProjectName 1
ProjectObject ProjectObject 1
ProjectProfileCode ProjectProfileCode 6
ProjectSummaryTaskUUID ParentObjectUUID,ProjectSummaryTaskUUID 9
ResponsibleCostCenter ResponsibleCostCenter 3
WBSElementInternalID WBSElementInternalID 3
WBSElementObject WBSElementObject 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..*] to I_EntProjResultAnalysisKeyText as _RsltAnlysKeyText             on  $projection.ResultAnalysisInternalID = _RsltAnlysKeyText.ResultAnalysisInternalID

  association [0..1] to I_EnterpriseProjectForUser     as _EnterpriseProjectForUser     on  _EnterpriseProjectForUser.ProjectUUID = $projection.ProjectUUID

  association [0..*] to I_CurrencyText                 as _ProjectCurrencyText          on  $projection.Currency = _ProjectCurrencyText.Currency

  -- 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,
      // CE2602 Profitability Segment

      task.entprojprofitabilitysegment                                              as EntProjProfitabilitySegment,
      //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,
      cast ( proj.cpcurr as /s4ppm/tv_project_currency preserving type )            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,
      project.data_model_version                                                    as EntProjectDataModelVersion,
      project.entprojchangedocobject                                                as EntProjectChangeDocument,

      project.inventoryspecialstockvalntype                                         as InventorySpecialStockValnType,
//      task.entprojsettlementrulecontrol                                             as EntProjSettlementRuleControl,


      _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,
      _RsltAnlysKeyText,
      _EnterpriseProjectForUser,
      _ProjectCurrencyText
}