I_PPM_ProjectTP
Transactional processing view for Enterprise Project
I_PPM_ProjectTP is a Transactional CDS View that provides data about "Transactional processing view for Enterprise Project" in SAP S/4HANA. It reads from 1 data source (I_PPM_Project) and exposes 51 fields. It has 9 associations to related views.
Data Sources (1)
| Source | Alias | Join Type |
|---|---|---|
| I_PPM_Project | Project | from |
Associations (9)
| Cardinality | Target | Alias | Condition |
|---|---|---|---|
| [0..*] | I_PPM_ProjectStatusAreaTP | _StatusArea | $projection.ProjectUUID = _StatusArea.ProjectUUID |
| [0..*] | I_PPM_ProjectTaskTP | _Task | $projection.ProjectUUID = _Task.ProjectUUID |
| [0..*] | I_PPM_ProjectObjectLinkTP | _Link | $projection.ProjectUUID = _Link.ProjectUUID |
| [0..*] | I_PPM_TeamMemberRoleStaffingTP | _TeamMemberRoleStaffing | $projection.ProjectUUID = _TeamMemberRoleStaffing.ProjectUUID |
| [0..1] | I_PPM_ProjJntVntrAccountingTP | _JointVentureAccounting | $projection.ProjectUUID = _JointVentureAccounting.ProjectUUID |
| [0..1] | I_PPM_ProjectPublicSectorTP | _PublicSectorManagement | $projection.ProjectUUID = _PublicSectorManagement.ProjectUUID |
| [0..1] | I_EntProjectLongTextTP | _LongText | $projection.ProjectUUID = _LongText.ProjectUUID |
| [0..1] | I_EntProjectBlockFunctionTP | _ElementBlockFunc | $projection.ProjectUUID = _ElementBlockFunc.ProjectUUID --- Extension |
| [1..1] | E_PPM_Project | _ProjectHeaderExtension | $projection.ProjectUUID = _ProjectHeaderExtension.ProjectUUID |
Annotations (22)
| Name | Value | Level | Field |
|---|---|---|---|
| EndUserText.label | Transactional processing view for Enterprise Project | view | |
| VDM.viewType | #TRANSACTIONAL | view | |
| VDM.lifecycle.contract.type | #SAP_INTERNAL_API | view | |
| AbapCatalog.sqlViewName | IPPMPROJECTTP | view | |
| AbapCatalog.compiler.compareFilter | true | view | |
| AbapCatalog.preserveKey | true | view | |
| AccessControl.authorizationCheck | #CHECK | view | |
| AccessControl.personalData.blocking | #BLOCKED_DATA_EXCLUDED | view | |
| ClientHandling.algorithm | #SESSION_VARIABLE | view | |
| ObjectModel.transactionalProcessingEnabled | true | view | |
| ObjectModel.compositionRoot | true | view | |
| ObjectModel.draftEnabled | true | view | |
| ObjectModel.writeDraftPersistence | PPM_PRO_PROJ_D | view | |
| ObjectModel.createEnabled | true | view | |
| ObjectModel.updateEnabled | true | view | |
| ObjectModel.deleteEnabled | true | view | |
| ObjectModel.entityChangeStateId | LastChangeDateTime | view | |
| ObjectModel.representativeKey | ProjectUUID | view | |
| ObjectModel.sapObjectNodeType.name | EnterpriseProject | view | |
| ObjectModel.usageType.serviceQuality | #X | view | |
| ObjectModel.usageType.dataClass | #MIXED | view | |
| ObjectModel.usageType.sizeCategory | #L | view |
Fields (51)
| Key | Field | Source Table | Source Field | Description |
|---|---|---|---|---|
| NextEssentialMlstnUUID | ||||
| NextEssentialMlstnName | I_PPM_Project | NextEssentialMlstnName | ||
| NextEssentialMlstnDate | I_PPM_Project | NextEssentialMlstnDate | ||
| NextRelevantMlstnUUID | I_PPM_Project | NextRelevantMlstnUUID | ||
| NextRelevantMlstnName | I_PPM_Project | NextRelevantMlstnName | ||
| NextRelevantMlstnDate | I_PPM_Project | NextRelevantMlstnDate | ||
| OverallProjectStatus | OverallProjectStatus | |||
| OverallProjectStsCriticality | OverallProjectStsCriticality | |||
| StatusTrend | StatusTrend | |||
| ProjectElementDuration | ProjectElementDuration | |||
| AvailabilityControlProfile | AvailabilityControlProfile | |||
| AvailabilityControlIsActive | AvailabilityControlIsActive | |||
| EntProjHasProjectStockEnabled | EntProjHasProjectStockEnabled | |||
| _ProjectManager | _ProjectManager | |||
| _PPMProjectManager | _PPMProjectManager | |||
| _ProjectName | _ProjectName | |||
| _ProjectType | _ProjectType | |||
| _ProcessingStatus | _ProcessingStatus | |||
| _ProcessingStatusText | _ProcessingStatusText | |||
| _AreaStatus | _AreaStatus | |||
| _AreaStatusText | _AreaStatusText | |||
| _AreaTrend | _AreaTrend | |||
| _AreaTrendText | _AreaTrendText | |||
| _ControllingArea | _ControllingArea | |||
| _CompanyCode | _CompanyCode | |||
| _CostCenter | _CostCenter | |||
| _ResponsibleCostCenter | _ResponsibleCostCenter | |||
| _Plant | _Plant | |||
| _ProjectProfileCode | _ProjectProfileCode | |||
| _FunctionalArea | _FunctionalArea | |||
| _ProfitCenter | _ProfitCenter | |||
| _CreatedByUser | _CreatedByUser | |||
| _ProjectLastChangedByUser | _ProjectLastChangedByUser | |||
| _AuthUser | _AuthUser | |||
| _AuthSubst | _AuthSubst | |||
| _AuthRole | _AuthRole | |||
| _AuthGroup | _AuthGroup | |||
| _I_Project | _I_Project | |||
| _ProjObjRoot | _ProjObjRoot | |||
| _Priority | _Priority | |||
| _PriorityText | _PriorityText | |||
| _EnterpriseProjectType | _EnterpriseProjectType | |||
| _EnterpriseProjectTypeText | _EnterpriseProjectTypeText | |||
| _EntProjectSettlementType | _EntProjectSettlementType | |||
| _StatusArea | _StatusArea | |||
| _Task | _Task | |||
| _Link | _Link | |||
| _LongText | _LongText | |||
| _TeamMemberRoleStaffing | _TeamMemberRoleStaffing | |||
| _PublicSectorManagement | _PublicSectorManagement | |||
| _ElementBlockFunc | _ElementBlockFunc |
@EndUserText.label: 'Transactional processing view for Enterprise Project'
@VDM: {
viewType: #TRANSACTIONAL,
lifecycle.contract.type: #SAP_INTERNAL_API
}
@AbapCatalog: {
sqlViewName: 'IPPMPROJECTTP',
compiler.compareFilter: true,
preserveKey:true
}
@AccessControl: {
authorizationCheck: #CHECK,
personalData.blocking: #BLOCKED_DATA_EXCLUDED,
privilegedAssociations: ['_ProjectType']
}
@ClientHandling.algorithm: #SESSION_VARIABLE
@ObjectModel: {
transactionalProcessingEnabled: true,
compositionRoot: true,
draftEnabled: true, //draft processing
writeDraftPersistence: 'PPM_PRO_PROJ_D', //draft processing
createEnabled: true,
updateEnabled: true,
deleteEnabled: true,
entityChangeStateId: 'LastChangeDateTime',
semanticKey: [ 'Project' ],
representativeKey: 'ProjectUUID',
sapObjectNodeType.name: 'EnterpriseProject',
alternativeKey: [ { id : 'ProjectSummaryTaskUUID', uniqueness: #UNIQUE, element: 'ProjectSummaryTaskUUID' },
{ id : 'ProjectInternalID' , uniqueness: #UNIQUE, element: 'ProjectInternalID' } ],
usageType: {
serviceQuality: #X,
dataClass: #MIXED,
sizeCategory: #L
}
}
define view I_PPM_ProjectTP
as select from I_PPM_Project as Project
association [0..*] to I_PPM_ProjectStatusAreaTP as _StatusArea on $projection.ProjectUUID = _StatusArea.ProjectUUID
association [0..*] to I_PPM_ProjectTaskTP as _Task on $projection.ProjectUUID = _Task.ProjectUUID
association [0..*] to I_PPM_ProjectObjectLinkTP as _Link on $projection.ProjectUUID = _Link.ProjectUUID
association [0..*] to I_PPM_TeamMemberRoleStaffingTP as _TeamMemberRoleStaffing on $projection.ProjectUUID = _TeamMemberRoleStaffing.ProjectUUID
association [0..1] to I_PPM_ProjJntVntrAccountingTP as _JointVentureAccounting on $projection.ProjectUUID = _JointVentureAccounting.ProjectUUID
association [0..1] to I_PPM_ProjectPublicSectorTP as _PublicSectorManagement on $projection.ProjectUUID = _PublicSectorManagement.ProjectUUID
association [0..1] to I_EntProjectLongTextTP as _LongText on $projection.ProjectUUID = _LongText.ProjectUUID
association [0..1] to I_EntProjectBlockFunctionTP as _ElementBlockFunc on $projection.ProjectUUID = _ElementBlockFunc.ProjectUUID
--- Extension Association for Project Header
association [1..1] to E_PPM_Project as _ProjectHeaderExtension on $projection.ProjectUUID = _ProjectHeaderExtension.ProjectUUID
{
//* Key Information
@ObjectModel.readOnly: true
key Project.ProjectUUID,
@ObjectModel.readOnly: true
ProjectSummaryTaskUUID,
ProjectTemplateUUID,
Project,
ProjectName,
ProjectType,
PriorityCode,
//2102 Ent Project Multiple SO item indicator
@ObjectModel.readOnly: 'EXTERNAL_CALCULATION'
EntProjIsMultiSlsOrdItmsEnbld,
EnterpriseProjectType,
ProjectProfileCode,
// Copy Projects Contol - flags for copying demands and settlement rules
cast ( '' as boole_d preserving type ) as EntProjDemandCopyIsRequested,
cast ( '' as boole_d preserving type ) as EntProjSettlmtRuleCpyIsReqd,
@ObjectModel.foreignKey: {
association: '_ProjectManager'
}
ProjectManagerUUID,
ProjectStartDate,
ProjectEndDate,
//CE2011: actual dates
ActualStartDate,
ActualEndDate,
//CE2011: actual dates
Location,
// Tax Jurisdiction Code
TaxJurisdiction,
//2005 Functional Location
FunctionalLocation,
@ObjectModel.readOnly: true
ProjectInternalID,
@ObjectModel.readOnly: true
WBSElementInternalID,
ResponsibleCostCenter,
ProfitCenter,
ControllingArea,
CompanyCode,
FunctionalArea,
Plant,
FactoryCalendar,
CostingSheet,
CostCenter,
IsBillingRelevant,
IsStatistical,
InvestmentProfile,
ProjectCurrency,
//hierarchical settlement changes
EntProjectSettlementType,
EntProjectSettlementElement,
//result analysis key changes
@Feature: 'PM_CIE_EPPM_MEDIA_PROJ_RAKEY'
ResultAnalysisInternalID,
@ObjectModel.readOnly: true
IsMyProject,
@ObjectModel.readOnly: true
IsProjectSteeringCommitteeMbr,
@ObjectModel.readOnly: true
IsProjectFinancialController,
@ObjectModel.readOnly: true
ProcessingStatus,
@ObjectModel.readOnly: true
StatusObject,
@ObjectModel.readOnly: true
Project.CreatedByUser,
@ObjectModel.readOnly: true
Project.CreationDateTime,
@ObjectModel.readOnly: true
Project.LastChangedByUser,
@ObjectModel.readOnly: true
Project.LastChangeDateTime,
/* Essential Milestone Name */
@ObjectModel.readOnly: true
Project.NextEssentialMlstnUUID,
@ObjectModel.readOnly: true
Project.NextEssentialMlstnName,
@ObjectModel.readOnly: true
Project.NextEssentialMlstnDate,
/* Next relevant Milestone Name */
@ObjectModel.readOnly: true
Project.NextRelevantMlstnUUID,
@ObjectModel.readOnly: true
Project.NextRelevantMlstnName,
@ObjectModel.readOnly: true
Project.NextRelevantMlstnDate,
@ObjectModel.readOnly: true
@ObjectModel.text.association: '_AreaStatusText'
OverallProjectStatus,
@ObjectModel.readOnly: true
OverallProjectStsCriticality,
@ObjectModel.readOnly: true
@ObjectModel.text.association: '_AreaTrendText'
StatusTrend,
// _Task.EntProjIsMultiSlsOrdItmsEnbld,
ProjectElementDuration,
// @ObjectModel.readOnly: true
// StartConstraintDateTime,
// @ObjectModel.readOnly: true
// FinishConstraintDateTime,
@ObjectModel.readOnly: true
ForecastedStartDate,
@ObjectModel.readOnly: true
ForecastedEndDate,
AvailabilityControlProfile,
AvailabilityControlIsActive,
//CE2208 Enabling Project Stock
EntProjHasProjectStockEnabled,
//cast( bo ) as ,
/* Associations */
_ProjectManager,
_PPMProjectManager,
_ProjectName,
_ProjectType,
_ProcessingStatus,
_ProcessingStatusText,
_AreaStatus,
_AreaStatusText,
_AreaTrend,
_AreaTrendText,
_ControllingArea,
_CompanyCode,
_CostCenter,
_ResponsibleCostCenter,
_Plant,
_ProjectProfileCode,
_FunctionalArea,
_ProfitCenter,
_CreatedByUser,
_ProjectLastChangedByUser,
_AuthUser,
_AuthSubst,
_AuthRole,
_AuthGroup,
_I_Project,
_ProjObjRoot,
_Priority,
_PriorityText,
_EnterpriseProjectType,
_EnterpriseProjectTypeText,
//hierarchical settlement changes
_EntProjectSettlementType,
@Feature: 'BF:JOINT_VENTURE_ACCOUNTING, IDEA_EPPM_JVA_ENABLEMENT'
@ObjectModel.association.type: [ #TO_COMPOSITION_CHILD ]
_JointVentureAccounting,
@ObjectModel.association.type: [ #TO_COMPOSITION_CHILD ]
_StatusArea,
@ObjectModel.association.type: [ #TO_COMPOSITION_CHILD ]
_Task,
@ObjectModel.association.type: [ #TO_COMPOSITION_CHILD ]
_Link,
@ObjectModel.association.type: [ #TO_COMPOSITION_CHILD ]
_LongText,
@ObjectModel.association.type: [ #TO_COMPOSITION_CHILD ]
_TeamMemberRoleStaffing,
// @feature: 'BF:PSM_BUDGET_ACCOUNTING_CONTROL'
@ObjectModel.association.type: [ #TO_COMPOSITION_CHILD ]
_PublicSectorManagement,
@ObjectModel.association.type: [ #TO_COMPOSITION_CHILD ]
_ElementBlockFunc
}
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