C_EntProjCtrlProfnlSrvcTP
Project Control Profnl Services Projects
C_EntProjCtrlProfnlSrvcTP is a Consumption CDS View that provides data about "Project Control Profnl Services Projects" in SAP S/4HANA. It reads from 1 data source (I_EnterpriseProjectTP_2) and exposes 56 fields with key field ProjectUUID. It has 15 associations to related views. It is exposed through 1 OData service (UI_ENTPROJCTRLPROFNLSRVC). Part of development package ODATA_PPM_PRO_CTRL_PROFNL_SRVC.
Data Sources (1)
| Source | Alias | Join Type |
|---|---|---|
| I_EnterpriseProjectTP_2 | I_EnterpriseProjectTP_2 | projection |
Associations (15)
| Cardinality | Target | Alias | Condition |
|---|---|---|---|
| [0..1] | C_EntProjMemberContactCard | _ProjectManager | _ProjectManager.BusinessPartnerUUID = $projection.businesspartneruuid |
| [0..1] | C_EntProjCustomerContactCard | _Customer | _Customer.CustomerUUID = $projection.CustomerUUID |
| [1..1] | C_EntProjCostCtrCntctCard | _CostCenter | _CostCenter.CostCenter = $projection.CostCenter |
| [1..1] | C_EntProjSrvcOrgCntctCard | _ServiceOrganization | _ServiceOrganization.EnterpriseProjectServiceOrg = $projection.EnterpriseProjectServiceOrg |
| [1..1] | C_EntProjPrftCtrCntctCard | _ProfitCenterContactCard | _ProfitCenterContactCard.ProfitCenter = $projection.ProfitCenter |
| [1..*] | C_EnterpriseProjectEntitlement | _EnterpriseProjectEntitlement | _EnterpriseProjectEntitlement.ProjectUUID = $projection.ProjectUUID |
| [0..*] | C_EntProjProfnlSrvcBillgElmnt | _EntProjProfnlSrvcBillgElmnt | _EntProjProfnlSrvcBillgElmnt.ProjectUUID = $projection.ProjectUUID |
| [0..*] | C_EntProjProfnlSrvcBillgDoc | _EntProjProfnlSrvcBillgDoc | _EntProjProfnlSrvcBillgDoc.ProjectUUID = $projection.ProjectUUID |
| [1..*] | C_EntProjChgLgForProcgSts | _EntProjChgLgForProcgSts | _EntProjChgLgForProcgSts.ProjectUUID = $projection.ProjectUUID |
| [0..*] | C_EntPrjProfnlSrvcDmndStaffing | _EntPrjProfnlSrvcDmndStaffing | _EntPrjProfnlSrvcDmndStaffing.ProjectUUID = $projection.ProjectUUID |
| [0..*] | C_EntProjProfnlSrvcTimeRecg | _EntProjProfnlSrvcTimeRecg | _EntProjProfnlSrvcTimeRecg.ProjectUUID = $projection.ProjectUUID |
| [1..1] | C_EntProjProfnlSrvcProjKPIs | _EntProjProfnlSrvcProjKPIs | _EntProjProfnlSrvcProjKPIs.ProjectUUID = $projection.ProjectUUID |
| [0..*] | C_EntProjElmntPurOrdItem | _EntProjElmntPurOrdItem | _EntProjElmntPurOrdItem.ProjectUUID = $projection.ProjectUUID |
| [0..*] | C_EntPrjElmntProfnlSrvcDet | _EntPrjElmntProfnlSrvcDet | _EntPrjElmntProfnlSrvcDet.ProjectUUID = $projection.ProjectUUID |
| [0..*] | C_EntProjElmntPurReqnItem | _EntProjElmntPurReqnItem | _EntProjElmntPurReqnItem.ProjectUUID = $projection.ProjectUUID |
Annotations (9)
| Name | Value | Level | Field |
|---|---|---|---|
| AccessControl.authorizationCheck | #MANDATORY | view | |
| AccessControl.personalData.blocking | #BLOCKED_DATA_EXCLUDED | view | |
| ObjectModel.usageType.dataClass | #TRANSACTIONAL | view | |
| ObjectModel.usageType.serviceQuality | #C | view | |
| ObjectModel.usageType.sizeCategory | #XL | view | |
| VDM.viewType | #CONSUMPTION | view | |
| EndUserText.label | Project Control Profnl Services Projects | view | |
| Metadata.allowExtensions | true | view | |
| Metadata.ignorePropagatedAnnotations | true | view |
OData Services (1)
| Service | Binding | Version | Contract | Release |
|---|---|---|---|---|
| UI_ENTPROJCTRLPROFNLSRVC | UI_ENTPROJCTRLPROFNLSRVC | V4 | C1 | NOT_TO_BE_RELEASED_STABLE |
Fields (56)
| Key | Field | Source Table | Source Field | Description |
|---|---|---|---|---|
| KEY | ProjectUUID | ProjectUUID | ||
| Project | Project | |||
| ProjectDescription | ProjectDescription | |||
| ProjectInternalID | ProjectInternalID | |||
| EnterpriseProjectServiceOrg | EnterpriseProjectServiceOrg | |||
| EngmtProjectServiceOrgName | ||||
| CostCenter | ResponsibleCostCenter | |||
| CostCenterName | ||||
| ProfitCenter | ProfitCenter | |||
| ProfitCenterName | ||||
| ProjectStartDate | ProjectStartDate | |||
| ProjectEndDate | ProjectEndDate | |||
| ProjectCurrency | ProjectCurrency | |||
| ProcessingStatus | ProcessingStatus | |||
| ProjectProfileCode | ProjectProfileCode | |||
| EntProjectIsConfidential | EntProjectIsConfidential | |||
| CompanyCode | CompanyCode | |||
| ControllingArea | ControllingArea | |||
| ProjectCategory | ProjectCategory | |||
| ProjectLastChangedDateTime | ProjectLastChangedDateTime | |||
| Plant | Plant | |||
| EnterpriseProjectType | EnterpriseProjectType | |||
| FunctionalArea | FunctionalArea | |||
| BusinessSolutionOrder | ||||
| BusinessSolutionOrderItem | ||||
| BusinessPartnerUUID | ||||
| BusinessPartner | ||||
| CustomerUUID | CustomerUUID | |||
| Customer | _CustomerToBusinessPartner | Customer | ||
| ProjectProfileCodeTextlocalized | ||||
| ProcessingStatusTextlocalized | ||||
| char40 | ||||
| char10 | ||||
| virtualPersonFullNamebu_name1tx | ||||
| virtualPersonExternalIDbu_id_number | ||||
| virtualCustomerNamemd_customer_name | ||||
| UserID | _EnterpriseProjectForUser | UserID | ||
| virtualIsMyProjectboolean | ||||
| virtualProjectIsInternalboolean | ||||
| virtualIsCustomerProjectboolean | ||||
| _ProjectManager | _ProjectManager | |||
| _Customer | _Customer | |||
| _EnterpriseProjectForUser | _EnterpriseProjectForUser | |||
| _CostCenter | _CostCenter | |||
| _ServiceOrganization | _ServiceOrganization | |||
| _ProfitCenterContactCard | _ProfitCenterContactCard | |||
| _EnterpriseProjectEntitlement | _EnterpriseProjectEntitlement | |||
| _EntProjProfnlSrvcBillgElmnt | _EntProjProfnlSrvcBillgElmnt | |||
| _EntProjProfnlSrvcBillgDoc | _EntProjProfnlSrvcBillgDoc | |||
| _EntProjChgLgForProcgSts | _EntProjChgLgForProcgSts | |||
| _EntPrjProfnlSrvcDmndStaffing | _EntPrjProfnlSrvcDmndStaffing | |||
| _EntProjProfnlSrvcTimeRecg | _EntProjProfnlSrvcTimeRecg | |||
| _EntProjProfnlSrvcProjKPIs | _EntProjProfnlSrvcProjKPIs | |||
| _EntProjElmntPurOrdItem | _EntProjElmntPurOrdItem | |||
| _EntPrjElmntProfnlSrvcDet | _EntPrjElmntProfnlSrvcDet | |||
| _EntProjElmntPurReqnItem | _EntProjElmntPurReqnItem |
@AccessControl: {
authorizationCheck: #MANDATORY,
personalData.blocking: #BLOCKED_DATA_EXCLUDED
}
@ObjectModel: {
usageType: {
dataClass: #TRANSACTIONAL,
serviceQuality: #C,
sizeCategory: #XL
},
semanticKey: ['Project']
}
@VDM.viewType: #CONSUMPTION
@EndUserText.label: 'Project Control Profnl Services Projects'
@Metadata : {
allowExtensions: true,
ignorePropagatedAnnotations: true
}
define root view entity C_EntProjCtrlProfnlSrvcTP
provider contract transactional_query
as projection on I_EnterpriseProjectTP_2 as Project
association [0..1] to C_EntProjMemberContactCard as _ProjectManager on _ProjectManager.BusinessPartnerUUID = $projection.businesspartneruuid
association [0..1] to C_EntProjCustomerContactCard as _Customer on _Customer.CustomerUUID = $projection.CustomerUUID
association [1..1] to C_EntProjCostCtrCntctCard as _CostCenter on _CostCenter.CostCenter = $projection.CostCenter
association [1..1] to C_EntProjSrvcOrgCntctCard as _ServiceOrganization on _ServiceOrganization.EnterpriseProjectServiceOrg = $projection.EnterpriseProjectServiceOrg
association [1..1] to C_EntProjPrftCtrCntctCard as _ProfitCenterContactCard on _ProfitCenterContactCard.ProfitCenter = $projection.ProfitCenter
association [1..*] to C_EnterpriseProjectEntitlement as _EnterpriseProjectEntitlement on _EnterpriseProjectEntitlement.ProjectUUID = $projection.ProjectUUID
association [0..*] to C_EntProjProfnlSrvcBillgElmnt as _EntProjProfnlSrvcBillgElmnt on _EntProjProfnlSrvcBillgElmnt.ProjectUUID = $projection.ProjectUUID
association [0..*] to C_EntProjProfnlSrvcBillgDoc as _EntProjProfnlSrvcBillgDoc on _EntProjProfnlSrvcBillgDoc.ProjectUUID = $projection.ProjectUUID
association [1..*] to C_EntProjChgLgForProcgSts as _EntProjChgLgForProcgSts on _EntProjChgLgForProcgSts.ProjectUUID = $projection.ProjectUUID
association [0..*] to C_EntPrjProfnlSrvcDmndStaffing as _EntPrjProfnlSrvcDmndStaffing on _EntPrjProfnlSrvcDmndStaffing.ProjectUUID = $projection.ProjectUUID
association [0..*] to C_EntProjProfnlSrvcTimeRecg as _EntProjProfnlSrvcTimeRecg on _EntProjProfnlSrvcTimeRecg.ProjectUUID = $projection.ProjectUUID
association [1..1] to C_EntProjProfnlSrvcProjKPIs as _EntProjProfnlSrvcProjKPIs on _EntProjProfnlSrvcProjKPIs.ProjectUUID = $projection.ProjectUUID
association [0..*] to C_EntProjElmntPurOrdItem as _EntProjElmntPurOrdItem on _EntProjElmntPurOrdItem.ProjectUUID = $projection.ProjectUUID
association [0..*] to C_EntPrjElmntProfnlSrvcDet as _EntPrjElmntProfnlSrvcDet on _EntPrjElmntProfnlSrvcDet.ProjectUUID = $projection.ProjectUUID
association [0..*] to C_EntProjElmntPurReqnItem as _EntProjElmntPurReqnItem on _EntProjElmntPurReqnItem.ProjectUUID = $projection.ProjectUUID
{
key ProjectUUID as ProjectUUID,
@ObjectModel:{
text.element: ['ProjectDescription']
}
Project,
ProjectDescription,
ProjectInternalID,
@ObjectModel :{
foreignKey.association: '_ServiceOrganization',
text.element: [ 'EngmtProjectServiceOrgName' ]
}
EnterpriseProjectServiceOrg,
_EnterpriseProjectSrvcOrgText[1:Language = $session.system_language].EngmtProjectServiceOrgName,
@ObjectModel :{
foreignKey.association: '_CostCenter',
text.element: [ 'CostCenterName' ]
}
ResponsibleCostCenter as CostCenter,
_ResponsibleCostCenter[1: ValidityEndDate >= $session.system_date
and ValidityStartDate <= $session.system_date ]._Text[1: Language = $session.system_language ].CostCenterName,
@ObjectModel: {
foreignKey:{association: '_ProfitCenterContactCard'},
text.element: [ 'ProfitCenterName' ]
}
ProfitCenter,
_ProfitCenter[1: ValidityEndDate >= $session.system_date
and ValidityStartDate <= $session.system_date ]._Text[1: Language = $session.system_language ].ProfitCenterName,
ProjectStartDate,
ProjectEndDate,
ProjectCurrency,
@ObjectModel:{
text:{element: ['ProcessingStatusText']}
}
ProcessingStatus,
@ObjectModel:{
text:{element: ['ProjectProfileCodeText']}
}
ProjectProfileCode,
EntProjectIsConfidential,
CompanyCode,
ControllingArea,
ProjectCategory,
ProjectLastChangedDateTime,
@UI.hidden: true
@Consumption.hidden: true
Plant,
@UI.hidden: true
@Consumption.hidden: true
EnterpriseProjectType,
@UI.hidden: true
@Consumption.hidden: true
FunctionalArea,
@ObjectModel.sort.enabled: false
_EntProjProjectObjectLink[1: EntProjectObjectLinkType = 'SOLO']._EntProjBusSolnOrderLinkTP
[1: ProjectUUID = $projection.projectuuid].BusinessSolutionOrder,
@ObjectModel:{
text:{element: ['BusinessSolutionOrder']}
}
_EntProjProjectObjectLink[1: EntProjectObjectLinkType = 'SOLO']._EntProjBusSolnOrderLinkTP
[1: ProjectUUID = $projection.projectuuid].BusinessSolutionOrderItem,
@ObjectModel: {
foreignKey.association: '_ProjectManager',
text.element: [ 'PersonFullName' ]
}
_EntProjRoleStaffing[1: ProjectRoleType = 'YP_RL_0001'].BusinessPartnerUUID,
@ObjectModel: {
text.element: [ 'PersonFullName' ]
}
_EntProjRoleStaffing[1: ProjectRoleType = 'YP_RL_0001'].BusinessPartner,
@ObjectModel:{
foreignKey.association: '_Customer',
text.element: [ 'CustomerName' ]
}
CustomerUUID,
@ObjectModel:{
text.element: [ 'CustomerName' ]
}
_CustomerToBusinessPartner.Customer,
_ProjectProfileText.ProjectProfileCodeText : localized,
_EntProjProfnlSrvcProjStgeTxt.ProcessingStatusText : localized,
@ObjectModel.virtualElementCalculatedBy:'ABAP:CL_EPPM_PROJ_CTRL_PROFNL_SRVC'
virtual SemanticObject : abap.char(40),
@ObjectModel.virtualElementCalculatedBy:'ABAP:CL_EPPM_PROJ_CTRL_PROFNL_SRVC'
virtual SalesOrder : abap.char(10),
@ObjectModel.virtualElementCalculatedBy:'ABAP:CL_EPPM_PROJ_CTRL_PROFNL_SRVC'
virtual PersonFullName : bu_name1tx,
@ObjectModel.virtualElementCalculatedBy:'ABAP:CL_EPPM_PROJ_CTRL_PROFNL_SRVC'
virtual PersonExternalID : bu_id_number,
@ObjectModel.virtualElementCalculatedBy:'ABAP:CL_EPPM_PROJ_CTRL_PROFNL_SRVC'
virtual CustomerName : md_customer_name,
_EnterpriseProjectForUser.UserID,
@ObjectModel:{
filter: {
enabled: true,
transformedBy: 'ABAP:CL_EPPM_PROJ_CTRL_PROFNL_SRVC'
}
}
@Consumption :{
filter : {
selectionType: #SINGLE,
multipleSelections: false
}
}
@ObjectModel.sort.enabled: false
virtual IsMyProject : boolean,
@ObjectModel.virtualElementCalculatedBy:'ABAP:CL_EPPM_PROJ_CTRL_PROFNL_SRVC'
virtual ProjectIsInternal : boolean,
@ObjectModel.virtualElementCalculatedBy:'ABAP:CL_EPPM_PROJ_CTRL_PROFNL_SRVC'
virtual IsCustomerProject : boolean,
@ObjectModel.virtualElementCalculatedBy:'ABAP:CL_EPPM_PROJ_CTRL_PROFNL_SRVC'
virtual ProjectHasOldBillingProcess : boolean,
@Semantics.nullValueIndicatorFor: 'Customer'
@ObjectModel.virtualElementCalculatedBy:'ABAP:CL_EPPM_PROJ_CTRL_PROFNL_SRVC'
virtual CustomerIsNull : boolean,
@Semantics.nullValueIndicatorFor: 'BusinessSolutionOrder'
@ObjectModel.virtualElementCalculatedBy:'ABAP:CL_EPPM_PROJ_CTRL_PROFNL_SRVC'
virtual SolutionOrderIsNull : boolean,
@ObjectModel.virtualElementCalculatedBy:'ABAP:CL_EPPM_PROJ_CTRL_PROFNL_SRVC'
virtual ProjectIsNotInExecutionStage : boolean,
@ObjectModel.virtualElementCalculatedBy:'ABAP:CL_EPPM_PROJ_CTRL_PROFNL_SRVC'
virtual ProjectIsNotRevenueRelevant : boolean,
@ObjectModel.virtualElementCalculatedBy:'ABAP:CL_EPPM_PROJ_CTRL_PROFNL_SRVC'
virtual ProjectForecastIsNotSet : boolean,
_ProjectManager,
_Customer,
_EnterpriseProjectForUser,
_CostCenter,
_ServiceOrganization,
_ProfitCenterContactCard,
_EnterpriseProjectEntitlement,
_EntProjProfnlSrvcBillgElmnt,
_EntProjProfnlSrvcBillgDoc,
_EntProjChgLgForProcgSts,
_EntPrjProfnlSrvcDmndStaffing,
_EntProjProfnlSrvcTimeRecg,
_EntProjProfnlSrvcProjKPIs,
_EntProjElmntPurOrdItem,
_EntPrjElmntProfnlSrvcDet,
_EntProjElmntPurReqnItem
}
where
ProjectCategory = '7'
Learn More
- What Is a CDS View in SAP S/4HANA?
- Types of CDS Views: Basic, Composite, Consumption, and Transactional
- SAP Tables vs CDS Views — Key Differences
- Understanding Data Lineage in SAP S/4HANA
- VDM (Virtual Data Model) in SAP S/4HANA Explained
- CDS View Annotations — A Complete Guide
- CDS View Field Mapping and Associations
- Understanding the SAP S/4HANA Data Model
- CDS View Extensions and Custom Fields in SAP S/4HANA
- Released APIs and Stability Contracts in SAP S/4HANA