C_PPM_ProjectControlTP
Project Control - Enterprise Projects
C_PPM_ProjectControlTP is a Consumption CDS View that provides data about "Project Control - Enterprise Projects" in SAP S/4HANA. It reads from 1 data source (I_PPM_ProjectTP) and exposes 53 fields with key field ProjectUUID. It has 30 associations to related views.
Data Sources (1)
| Source | Alias | Join Type |
|---|---|---|
| I_PPM_ProjectTP | Project | from |
Associations (30)
| Cardinality | Target | Alias | Condition |
|---|---|---|---|
| [0..1] | I_PPM_TaskText | _TaskText | _TaskText.TaskUUID = Project.ProjectSummaryTaskUUID |
| [0..1] | C_PPM_ProjectProfileVH | _ProjectProfileVH | _ProjectProfileVH.ProjectProfileCode = $projection.ProjectProfileCode |
| [0..1] | I_CostCenterStdVH | _ResponsibleCostCenterVH | _ResponsibleCostCenterVH.CostCenter = $projection.ResponsibleCostCenter and _ResponsibleCostCenterVH.ControllingArea = $projection.ControllingArea and _ResponsibleCostCenterVH.ValidityEndDate > $session.system_date and _ResponsibleCostCenterVH.ValidityStartDate < $session.system_date |
| [0..1] | I_ProfitCenterStdVH | _ProfitCenterVH | _ProfitCenterVH.ProfitCenter = $projection.ProfitCenter and _ProfitCenterVH.ControllingArea = $projection.ControllingArea and _ProfitCenterVH.ValidityEndDate > $session.system_date and _ProfitCenterVH.ValidityStartDate < $session.system_date |
| [0..1] | I_CompanyCodeStdVH | _CompanyCodeVH | _CompanyCodeVH.CompanyCode = $projection.CompanyCode |
| [0..1] | C_PlantVH | _PlantVH | _PlantVH.Plant = $projection.Plant |
| [0..1] | C_PPM_ProjectElementLocationVH | _LocationVH | _LocationVH.Plant = $projection.Plant and _LocationVH.Location = $projection.Location |
| [0..1] | C_MM_FunctionalAreaValueHelp | _FunctionalAreaVH | _FunctionalAreaVH.FunctionalArea = $projection.FunctionalArea |
| [0..1] | I_InvestmentProfile | _InvestmentProfVH | _InvestmentProfVH.InvestmentProfile = $projection.InvestmentProfile |
| [0..*] | I_CostingSheetProcedure | _CostingSheetProcedureVH | _CostingSheetProcedureVH.CostingSheetProcedure = $projection.CostingSheet |
| [0..1] | I_CostCenterStdVH | _CostCenterVH | _CostCenterVH.CostCenter = $projection.CostCenter and _CostCenterVH.ControllingArea = $projection.ControllingArea and _CostCenterVH.ValidityEndDate > $session.system_date and _CostCenterVH.ValidityStartDate < $session.system_date |
| [0..1] | C_PPM_ProjectMemberContactCard | _Manager | _Manager.BusinessPartnerUUID = $projection.ProjectManagerUUID |
| [0..1] | C_FactoryCalendarValueHelp | _FactoryCalendarVH | _FactoryCalendarVH.FactoryCalendar = $projection.FactoryCalendar |
| [0..1] | I_UserContactCard | _CreatedByUser | _CreatedByUser.ContactCardID = $projection.CreatedByUser |
| [0..1] | C_EnterpriseProjectVH | _ProjectVH | _ProjectVH.Project = $projection.Project |
| [0..1] | C_PPM_ProjectManagerTP | _TeamMemberRoleStaffing | _TeamMemberRoleStaffing.ProjectUUID = $projection.ProjectUUID |
| [0..1] | I_FixedAsset | _FixedAsset | _FixedAsset.InvestmentProjectWBSElement = WBSElementInternalID and $projection.WBSElementInternalID <> '00000000' and _FixedAsset.IsMainAsset = 'X' |
| [0..1] | I_ControllingArea | _ControllingArea | _ControllingArea.ControllingArea = $projection.ControllingArea |
| [0..1] | I_ProjAvailabilityCtrlPrflVH | _ProjAvailCtrlProfileVH | _ProjAvailCtrlProfileVH.AvailabilityControlProfile = $projection.AvailabilityControlProfile |
| [0..1] | C_PPM_ProjJntVntrAccountingTP | _JointVentureAccounting | _JointVentureAccounting.ProjectUUID = $projection.ProjectUUID |
| [0..1] | I_Currency | _Currency | _Currency.Currency = $projection.ProjectCurrency |
| [1..1] | C_EntProjectLongTextTP | _LongText | $projection.ProjectUUID = _LongText.ProjectUUID |
| [0..1] | C_PPM_ProjectPublicSectorTP | _PublicSectorManagement | _PublicSectorManagement.ProjectUUID = $projection.ProjectUUID |
| [0..*] | C_EntProjectTaxJurisdictionVH | _TaxJurisdictionVH | $projection.TaxJurisdiction = _TaxJurisdictionVH.TaxJurisdiction and $projection.CompanyCode = _TaxJurisdictionVH.CompanyCode |
| [0..1] | C_PPM_ProjCtrlBlockFunctionTP | _ElementBlockFunc | _ElementBlockFunc.ProjectUUID = $projection.ProjectUUID |
| [0..1] | I_FunctionalLocationStdVH | _FunctionalLocationVH | _FunctionalLocationVH.FunctionalLocation = $projection.FunctionalLocation |
| [0..1] | I_EntProjWorkflowOverview | _EntProjWorkflowOverview | _EntProjWorkflowOverview.ProjectUUID = $projection.ProjectUUID |
| [0..*] | I_EntProjectSettlementTypeText | _EntProjectSettlementTypeText | $projection.EntProjectSettlementType = _EntProjectSettlementTypeText.EntProjectSettlementType |
| [1..1] | I_EntProjectResultAnalysisKey | _RsltAnlysKey | $projection.ResultAnalysisInternalID = _RsltAnlysKey.ResultAnalysisInternalID |
| [0..*] | I_EntProjResultAnalysisKeyText | _RsltAnlysKeyText | $projection.ResultAnalysisInternalID = _RsltAnlysKeyText.ResultAnalysisInternalID |
Annotations (19)
| Name | Value | Level | Field |
|---|---|---|---|
| AbapCatalog.sqlViewName | CPPMPROJCONTROL | view | |
| AbapCatalog.compiler.compareFilter | true | view | |
| AccessControl.authorizationCheck | #CHECK | view | |
| AccessControl.personalData.blocking | #BLOCKED_DATA_EXCLUDED | view | |
| ClientHandling.algorithm | #SESSION_VARIABLE | view | |
| EndUserText.label | Project Control - Enterprise Projects | view | |
| Metadata.allowExtensions | true | view | |
| ObjectModel.transactionalProcessingDelegated | true | view | |
| ObjectModel.compositionRoot | true | view | |
| ObjectModel.draftEnabled | true | view | |
| ObjectModel.createEnabled | EXTERNAL_CALCULATION | view | |
| ObjectModel.updateEnabled | EXTERNAL_CALCULATION | view | |
| ObjectModel.deleteEnabled | EXTERNAL_CALCULATION | view | |
| ObjectModel.representativeKey | ProjectUUID | view | |
| ObjectModel.usageType.serviceQuality | #B | view | |
| ObjectModel.usageType.dataClass | #MIXED | view | |
| ObjectModel.usageType.sizeCategory | #L | view | |
| Search.searchable | true | view | |
| VDM.viewType | #CONSUMPTION | view |
Fields (53)
| Key | Field | Source Table | Source Field | Description |
|---|---|---|---|---|
| KEY | ProjectUUID | ProjectUUID | Project UUID | |
| ProjectSummaryTaskUUID | ProjectSummaryTaskUUID | Entity GUID | ||
| ProjectInternalID | ProjectInternalID | Project Def. | ||
| WBSElementInternalID | WBSElementInternalID | WBS Internal ID | ||
| ProjectTemplateUUID | ProjectTemplateUUID | Entity GUID | ||
| Project | WBS Element | |||
| ProjectName | ProjectName | Long Text | ||
| ProjectNameMasterLanguage | _TaskText | ObjectNameMasterLanguage | ||
| ProjectProfileCode | I_PPM_ProjectTP | ProjectProfileCode | Project Profile | |
| EntProjIsMultiSlsOrdItmsEnbld | I_PPM_ProjectTP | EntProjIsMultiSlsOrdItmsEnbld | Project Assigned | |
| ProjectProfileCodeText | _ProjectProfileVH | ProjectProfileCodeText | Description | |
| ProjectObject | _I_Project | ProjectObject | Object number | |
| WBSElementObject | _ProjObjRoot | WBSElementObject | Object number | |
| LeadingSalesOrder | _ProjObjRoot | LeadingSalesOrder | Sales Document | |
| LeadingSalesOrderItem | _ProjObjRoot | LeadingSalesOrderItem | Item | |
| ResultAnalysisInternalID | ResultAnalysisInternalID | Results Analysis Key | ||
| ResultAnalysisDescription | ||||
| ProcessingStatus | ProcessingStatus | Worklist Status | ||
| ProcessingStatusText | ||||
| PriorityCodeName | ||||
| EnterpriseProjectType | EnterpriseProjectType | Proj.type | ||
| ProjectTypeName | ||||
| EntProjectSettlementType | EntProjectSettlementType | Settlement Type | ||
| SettlementTypeText | ||||
| EntProjectSettlementElement | EntProjectSettlementElement | settlementElement | ||
| ProjectStartDate | Latest Planned Start | |||
| ProjectEndDate | Ltst Planned Finish | |||
| FactoryCalendar | FactoryCalendar | Factory Calendar | ||
| FactoryCalendarName | ||||
| ActualStartDate | Actual Start | |||
| ActualEndDate | Actual Finish | |||
| EntProjectDataModelVersion | ||||
| ResponsibleCostCenter | ResponsibleCostCenter | Responsible Cost Center | ||
| ResponsibleCostCenterName | Responsible Cost Center Name | |||
| ProfitCenter | ProfitCenter | Profit Center | ||
| ProfitCenterName | ||||
| ControllingArea | ControllingArea | Controlling Area | ||
| ControllingAreaName | _ControllingArea | ControllingAreaName | Long Text | |
| ControllingAreaCurrency | _ControllingArea | ControllingAreaCurrency | ||
| CompanyCode | Receiver Company Code | |||
| CompanyCodeName | _CompanyCodeVH | CompanyCodeName | Company Name | |
| Plant | Plant | Valuation Area | ||
| PlantName | _PlantVH | PlantName | Plant Name | |
| Location | Location | Text | ||
| TaxJurisdiction | TaxJurisdiction | Tax Jurisdiction | ||
| TaxJurisdictionName | _TaxJurisdictionVH | TaxJurisdictionName | Description | |
| Country | _TaxJurisdictionVH | Country | Venue: Ctry/Reg | |
| FunctionalLocation | FunctionalLocation | Object ID | ||
| FunctionalLocationName | ||||
| LocationName | _LocationVH | LocationName | Location Name | |
| FunctionalArea | FunctionalArea | Sendr Fctl Area | ||
| ProjectCurrency | ProjectCurrency | Project Currency | ||
| FunctionalAreaName | _FunctionalAreaVH | FunctionalAreaName | Long Text |
Derived SQL interpretation, reconstructed from the parsed view metadata (data sources, associations, and field mappings). SAP annotations are omitted and the structure is reformulated as SQL — this is a functional approximation, not the verbatim SAP source.
-- Derived SQL interpretation of CDS view C_PPM_ProjectControlTP.
-- Reconstructed from parsed metadata (data sources, associations, fields).
-- SAP annotations are omitted and the structure is reformulated as SQL;
-- this is a functional approximation, not the verbatim SAP source. Some join
-- conditions may be unavailable and a few CDS constructs are kept as-is.
CREATE VIEW C_PPM_ProjectControlTP AS
SELECT
ProjectUUID,
ProjectSummaryTaskUUID,
ProjectInternalID,
WBSElementInternalID,
ProjectTemplateUUID,
cast( Project as cats_cpr_extid preserving type) AS Project,
ProjectName,
_TaskText.ObjectNameMasterLanguage AS ProjectNameMasterLanguage,
Project.ProjectProfileCode AS ProjectProfileCode,
Project.EntProjIsMultiSlsOrdItmsEnbld AS EntProjIsMultiSlsOrdItmsEnbld,
_ProjectProfileVH.ProjectProfileCodeText AS ProjectProfileCodeText,
_I_Project.ProjectObject AS ProjectObject,
_ProjObjRoot.WBSElementObject AS WBSElementObject,
_ProjObjRoot.LeadingSalesOrder AS LeadingSalesOrder,
_ProjObjRoot.LeadingSalesOrderItem AS LeadingSalesOrderItem,
ResultAnalysisInternalID,
_RsltAnlysKeyText[1:Language = $session.system_language].ResultAnalysisDescription AS ResultAnalysisDescription,
ProcessingStatus,
_ProcessingStatusText[1:Language = $session.system_language].ProcessingStatusText AS ProcessingStatusText,
_PriorityText[1:LanguageCode = $session.system_language].PriorityCodeName AS PriorityCodeName,
EnterpriseProjectType,
_EnterpriseProjectTypeText[1:Language = $session.system_language].ProjectTypeName AS ProjectTypeName,
EntProjectSettlementType,
_EntProjectSettlementTypeText[1:Language = $session.system_language].SettlementTypeText AS SettlementTypeText,
EntProjectSettlementElement,
cast(ProjectStartDate as dpr_tv_planstartdate preserving type) AS ProjectStartDate,
cast(ProjectEndDate as dpr_tv_planfinishdate preserving type) AS ProjectEndDate,
FactoryCalendar,
_FactoryCalendarVH._Text[1: Language = $session.system_language].FactoryCalendarName AS FactoryCalendarName,
cast(ActualStartDate as dpr_tv_actual_start preserving type) AS ActualStartDate,
cast(ActualEndDate as dpr_tv_actual_finish preserving type) AS ActualEndDate,
cast(' ' as abap.char(2) ) AS EntProjectDataModelVersion,
ResponsibleCostCenter,
_ResponsibleCostCenterVH._Text[1: Language = $session.system_language].CostCenterName AS ResponsibleCostCenterName,
ProfitCenter,
_ProfitCenterVH._Text[1:Language = $session.system_language].ProfitCenterName AS ProfitCenterName,
ControllingArea,
_ControllingArea.ControllingAreaName AS ControllingAreaName,
_ControllingArea.ControllingAreaCurrency AS ControllingAreaCurrency,
cast( CompanyCode as bukrs preserving type ) AS CompanyCode,
_CompanyCodeVH.CompanyCodeName AS CompanyCodeName,
Plant,
_PlantVH.PlantName AS PlantName,
Location,
TaxJurisdiction,
_TaxJurisdictionVH.TaxJurisdictionName AS TaxJurisdictionName,
_TaxJurisdictionVH.Country AS Country,
FunctionalLocation,
_FunctionalLocationVH._FunctionalLocationText[1: Language = $session.system_language].FunctionalLocationName AS FunctionalLocationName,
_LocationVH.LocationName AS LocationName,
FunctionalArea,
ProjectCurrency,
_FunctionalAreaVH.FunctionalAreaName AS FunctionalAreaName
FROM I_PPM_ProjectTP AS Project
LEFT OUTER JOIN I_PPM_TaskText AS _TaskText ON _TaskText.TaskUUID = Project.ProjectSummaryTaskUUID -- association [0..1]
LEFT OUTER JOIN C_PPM_ProjectProfileVH AS _ProjectProfileVH ON _ProjectProfileVH.ProjectProfileCode = ProjectProfileCode -- association [0..1]
LEFT OUTER JOIN I_CostCenterStdVH AS _ResponsibleCostCenterVH ON _ResponsibleCostCenterVH.CostCenter = ResponsibleCostCenter AND _ResponsibleCostCenterVH.ControllingArea = ControllingArea AND _ResponsibleCostCenterVH.ValidityEndDate > $session.system_date AND _ResponsibleCostCenterVH.ValidityStartDate < $session.system_date -- association [0..1]
LEFT OUTER JOIN I_ProfitCenterStdVH AS _ProfitCenterVH ON _ProfitCenterVH.ProfitCenter = ProfitCenter AND _ProfitCenterVH.ControllingArea = ControllingArea AND _ProfitCenterVH.ValidityEndDate > $session.system_date AND _ProfitCenterVH.ValidityStartDate < $session.system_date -- association [0..1]
LEFT OUTER JOIN I_CompanyCodeStdVH AS _CompanyCodeVH ON _CompanyCodeVH.CompanyCode = CompanyCode -- association [0..1]
LEFT OUTER JOIN C_PlantVH AS _PlantVH ON _PlantVH.Plant = Plant -- association [0..1]
LEFT OUTER JOIN C_PPM_ProjectElementLocationVH AS _LocationVH ON _LocationVH.Plant = Plant AND _LocationVH.Location = Location -- association [0..1]
LEFT OUTER JOIN C_MM_FunctionalAreaValueHelp AS _FunctionalAreaVH ON _FunctionalAreaVH.FunctionalArea = FunctionalArea -- association [0..1]
LEFT OUTER JOIN I_InvestmentProfile AS _InvestmentProfVH ON _InvestmentProfVH.InvestmentProfile = InvestmentProfile -- association [0..1]
LEFT OUTER JOIN I_CostingSheetProcedure AS _CostingSheetProcedureVH ON _CostingSheetProcedureVH.CostingSheetProcedure = CostingSheet -- association [0..*]
LEFT OUTER JOIN I_CostCenterStdVH AS _CostCenterVH ON _CostCenterVH.CostCenter = CostCenter AND _CostCenterVH.ControllingArea = ControllingArea AND _CostCenterVH.ValidityEndDate > $session.system_date AND _CostCenterVH.ValidityStartDate < $session.system_date -- association [0..1]
LEFT OUTER JOIN C_PPM_ProjectMemberContactCard AS _Manager ON _Manager.BusinessPartnerUUID = ProjectManagerUUID -- association [0..1]
LEFT OUTER JOIN C_FactoryCalendarValueHelp AS _FactoryCalendarVH ON _FactoryCalendarVH.FactoryCalendar = FactoryCalendar -- association [0..1]
LEFT OUTER JOIN I_UserContactCard AS _CreatedByUser ON _CreatedByUser.ContactCardID = CreatedByUser -- association [0..1]
LEFT OUTER JOIN C_EnterpriseProjectVH AS _ProjectVH ON _ProjectVH.Project = Project -- association [0..1]
LEFT OUTER JOIN C_PPM_ProjectManagerTP AS _TeamMemberRoleStaffing ON _TeamMemberRoleStaffing.ProjectUUID = ProjectUUID -- association [0..1]
LEFT OUTER JOIN I_FixedAsset AS _FixedAsset ON _FixedAsset.InvestmentProjectWBSElement = WBSElementInternalID AND WBSElementInternalID <> '00000000' AND _FixedAsset.IsMainAsset = 'X' -- association [0..1]
LEFT OUTER JOIN I_ControllingArea AS _ControllingArea ON _ControllingArea.ControllingArea = ControllingArea -- association [0..1]
LEFT OUTER JOIN I_ProjAvailabilityCtrlPrflVH AS _ProjAvailCtrlProfileVH ON _ProjAvailCtrlProfileVH.AvailabilityControlProfile = AvailabilityControlProfile -- association [0..1]
LEFT OUTER JOIN C_PPM_ProjJntVntrAccountingTP AS _JointVentureAccounting ON _JointVentureAccounting.ProjectUUID = ProjectUUID -- association [0..1]
LEFT OUTER JOIN I_Currency AS _Currency ON _Currency.Currency = ProjectCurrency -- association [0..1]
LEFT OUTER JOIN C_EntProjectLongTextTP AS _LongText ON ProjectUUID = _LongText.ProjectUUID -- association [1..1]
LEFT OUTER JOIN C_PPM_ProjectPublicSectorTP AS _PublicSectorManagement ON _PublicSectorManagement.ProjectUUID = ProjectUUID -- association [0..1]
LEFT OUTER JOIN C_EntProjectTaxJurisdictionVH AS _TaxJurisdictionVH ON TaxJurisdiction = _TaxJurisdictionVH.TaxJurisdiction AND CompanyCode = _TaxJurisdictionVH.CompanyCode -- association [0..*]
LEFT OUTER JOIN C_PPM_ProjCtrlBlockFunctionTP AS _ElementBlockFunc ON _ElementBlockFunc.ProjectUUID = ProjectUUID -- association [0..1]
LEFT OUTER JOIN I_FunctionalLocationStdVH AS _FunctionalLocationVH ON _FunctionalLocationVH.FunctionalLocation = FunctionalLocation -- association [0..1]
LEFT OUTER JOIN I_EntProjWorkflowOverview AS _EntProjWorkflowOverview ON _EntProjWorkflowOverview.ProjectUUID = ProjectUUID -- association [0..1]
LEFT OUTER JOIN I_EntProjectSettlementTypeText AS _EntProjectSettlementTypeText ON EntProjectSettlementType = _EntProjectSettlementTypeText.EntProjectSettlementType -- association [0..*]
LEFT OUTER JOIN I_EntProjectResultAnalysisKey AS _RsltAnlysKey ON ResultAnalysisInternalID = _RsltAnlysKey.ResultAnalysisInternalID -- association [1..1]
LEFT OUTER JOIN I_EntProjResultAnalysisKeyText AS _RsltAnlysKeyText ON ResultAnalysisInternalID = _RsltAnlysKeyText.ResultAnalysisInternalID -- association [0..*]
;
Learn More
- VDM (Virtual Data Model) in SAP S/4HANA Explained
- Types of CDS Views: Basic, Composite, Consumption, and Transactional
- CDS View Annotations — A Complete Guide
- What Is a CDS View in SAP S/4HANA?
- SAP Tables vs CDS Views — Key Differences
- Understanding Data Lineage in SAP S/4HANA
- 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
- BSEG to ACDOCA: The Universal Journal Migration
- Business Partner Migration: KNA1/LFA1 to BUT000
- Material Document Migration: MSEG/MKPF to MATDOC
- How to Find the Right CDS View for an SAP Table
- BW Extractor to CDS View Migration Guide
- S/4HANA CDS View Deprecation: What You Need to Know
- ABAP CDS View Tutorial — From Basics to Real-World Examples
- RAP and CDS Views — Building Transactional Apps in SAP S/4HANA
- Sales Document Status Migration: VBUP/VBUK Removal in S/4HANA
- CO Tables in S/4HANA: COEP, COBK, COSS, COSP to ACDOCA