I_PPM_PROJECTSUMMARYTASK
Project, Projecttemplate or snapshot
I_PPM_PROJECTSUMMARYTASK is a CDS View in S/4HANA. Project, Projecttemplate or snapshot. It contains 55 fields. 35 CDS views read from this table.
CDS Views using this table (35)
| View | Type | Join | VDM | Description |
|---|---|---|---|---|
| C_PPM_MyActvProjectsCostTable | view | from | CONSUMPTION | My Projects - Cost Table (OVP) |
| C_ProjectFinCtrlrOvw | view | left_outer | CONSUMPTION | Project Financial Controller Overview |
| D_EnterpriseProjActSetProcgSts | view | from | Enterprise Proj API Actn Set Processing Status | |
| I_AccountAssignmentWBSElmntVH | view | inner | COMPOSITE | Account Assignment WBS Elmnt Value Help |
| I_BlockFuncForEntProject | view | from | COMPOSITE | Basic view for block function calculation |
| I_DfsEnterpriseProject | view | from | COMPOSITE | Defence Enterprise Projects |
| I_EnterpriseProjectElementTP | view | inner | TRANSACTIONAL | TP view for CRUD API for EPPM Workpackages and milestones |
| I_EnterpriseProjectRankingCost | view | left_outer | COMPOSITE | Costs of projects assigned to Ranking |
| I_EnterpriseProjectVH | view | from | COMPOSITE | Enterprise Project value help |
| I_PPM_IsMyProjectAsSubstitute | view | inner | COMPOSITE | All prjs a usr is rsp for as a subst |
| I_PPM_MostCriticalProject | view | from | COMPOSITE | My Projects - Critical |
| I_PPM_MyActvProjectsStsArea | view | inner | COMPOSITE | My Projects - Active: Status Area |
| I_PPM_MyChecklistItem | view | inner | COMPOSITE | Returns My Checklist Items |
| I_PPM_Myplannedprojects | view | from | COMPOSITE | My Projects – Planned |
| I_PPM_MyTask | view | inner | COMPOSITE | My Tasks |
| I_PPM_ObjectPageChecklistItem | view | left_outer | COMPOSITE | Determines Checklist Items |
| I_PPM_ProjectCostForecastData | view | from | COMPOSITE | Project Cost Forecast: ML Training Input |
| I_PPM_ProjectCostSumCurrent | view | from | COMPOSITE | Project Cost To Current Date |
| I_PPM_ProjectCostSumToDate | view | from | COMPOSITE | Project Cost To Date |
| I_PPM_ProjectElement | view | left_outer | COMPOSITE | Project Element |
| I_PPM_ProjectForUpdate | view | from | COMPOSITE | Lists all projects which can be updated |
| I_PPM_ProjectObjectLink | view | inner | COMPOSITE | PPM Project Object Link |
| I_PPM_ProjectPublicSector | view | from | COMPOSITE | Extension for Public Sector Fields |
| I_PPM_ProjectSearch | view | from | COMPOSITE | Basic Enterprise Search view for projects |
| I_PPM_ProjectStatusArea | view | inner | COMPOSITE | PPM Project Status Area Compositional Hierarchy View |
| I_PPM_ProjJntVentureAccounting | view | from | COMPOSITE | Extension for Joint Venture Accounting |
| I_PPM_SingleResponsibleForProj | view | inner | COMPOSITE | Returns the calculated single responsible for a project |
| I_PPM_UpcMilestonesProjects | view | inner | COMPOSITE | Upcoming Milestones for Projects |
| P_ActvPROJECTSWITHPROJCAT6 | view | inner | COMPOSITE | |
| P_PPM_Project | view | from | COMPOSITE | |
| P_PPM_ProjectList | view | from | COMPOSITE | |
| P_PPM_Prstcm_ProjData | view | from | CONSUMPTION | |
| P_PPM_PrStCmrProjByKeyFigures | view | from | COMPOSITE | |
| P_ProjectsWithProjCat6 | view | inner | COMPOSITE | |
| P_PROJWITHPROJCAT6 | view | from | COMPOSITE |
Fields (55)
| Key | Field | CDS Fields | Used in Views |
|---|---|---|---|
| KEY | ProjectInternalID | ProjectInternalID | 12 |
| KEY | ProjectSummaryTaskUUID | ParentObjectUUID,ProjectSummaryTaskUUID | 23 |
| KEY | ProjectUUID | ProjectUUID | 21 |
| _AuthGroup | _AuthGroup | 11 | |
| _AuthRole | _AuthRole | 11 | |
| _AuthSubst | _AuthSubst | 11 | |
| _AuthUser | _AuthUser | 11 | |
| _CreatedByUser | _CreatedByUser | 1 | |
| _I_Project | _I_Project | 2 | |
| _PriorityText | _PriorityText | 1 | |
| _ProjectLastChangedByUser | _ProjectLastChangedByUser | 1 | |
| _ProjectType | _ProjectType | 1 | |
| _ProjectTypeName | _ProjectTypeName | 1 | |
| _ProjObjRoot | _ProjObjRoot | 7 | |
| ActualFinishDate | ActualEndDate | 1 | |
| ActualFinishDateTime | ActualFinishDateTime | 1 | |
| ActualStartDate | ActualStartDate | 1 | |
| ActualStartDateTime | ActualStartDateTime | 1 | |
| CreatedByUser | CreatedByUser | 3 | |
| CreationDateTime | CreationDateTime | 3 | |
| DurationUnit | DurationUnit | 1 | |
| EarliestFinishDateTime | EarliestFinishDateTime | 1 | |
| EarliestStartDateTime | EarliestStartDateTime | 1 | |
| EntProjIsMultiSlsOrdItmsEnbld | EntProjIsMultiSlsOrdItmsEnbld | 1 | |
| FinishConstraintDateTime | FinishConstraintDateTime | 1 | |
| ForecastedFinishDateTime | ForecastedFinishDateTime | 1 | |
| ForecastedStartDate | ForecastedEndDate,ForecastedStartDate | 1 | |
| ForecastedStartDateTime | ForecastedStartDateTime | 1 | |
| IsSummaryTaskEnabled | IsSummaryTaskEnabled | 1 | |
| LastChangeDateTime | ProjectLastChangedDateTime | 1 | |
| LatestFinishDate | ProjectEndDate | 3 | |
| LatestFinishDateTime | LatestFinishDateTime | 1 | |
| LatestStartDate | ProjectStartDate | 3 | |
| LatestStartDateTime | LatestStartDateTime | 1 | |
| MasterLanguage | MasterLanguage | 6 | |
| OrganizationalUnit | OrganizationalUnit | 2 | |
| OrganizationalUnitObjectType | OrganizationalUnitObjectType | 2 | |
| PlanVersion | PlanVersion | 2 | |
| PriorityCode | PriorityCode | 5 | |
| Project | Project | 12 | |
| ProjectCategory | ProjectCategory | 6 | |
| ProjectEarliestOrLatest | ProjectEarliestOrLatest | 1 | |
| ProjectElementDuration | ProjectElementDuration | 2 | |
| ProjectLastChangedByUser | LastChangedByUser,ProjectLastChangedByUser | 3 | |
| ProjectLastChangedDateTime | LastChangeDateTime,ProjectLastChangedDateTime | 3 | |
| ProjectLocation | ProjectLocation | 1 | |
| ProjectName | ProjectName,ProjectNameMasterLanguage | 9 | |
| ProjectProcessingStatus | ProcessingStatus,ProjectProcessingStatus | 8 | |
| ProjectReasonCode | ProjectReasonCode | 1 | |
| ProjectTemplateUUID | ProjectTemplateUUID | 1 | |
| ProjectType | ProjectType | 4 | |
| ProjectVersionNumber | ProjectVersionNumber | 2 | |
| ReleaseDateTime | ReleaseDateTime | 1 | |
| StartConstraintDateTime | StartConstraintDateTime | 1 | |
| WBSElementInternalID | WBSElementInternalID | 12 |
@EndUserText.label: 'Project, Projecttemplate or snapshot'
@VDM.viewType: #COMPOSITE
@VDM.lifecycle.contract.type: #SAP_INTERNAL_API
@AccessControl: {
authorizationCheck: #CHECK,
privilegedAssociations: [ 'I_PPM_ProjectType', 'I_PPM_ProTypeText' ],
personalData.blocking: #BLOCKED_DATA_EXCLUDED
}
@ClientHandling.algorithm: #SESSION_VARIABLE
@AbapCatalog: {
sqlViewName: 'IPPMPROSUMTASK',
compiler.compareFilter: true,
preserveKey:true
}
@ObjectModel: {
semanticKey: [ 'Project' ],
representativeKey: 'ProjectUUID',
alternativeKey: [ { id : 'ProjectSummaryTaskUUID', uniqueness: #UNIQUE, element: 'ProjectSummaryTaskUUID' },
{ id : 'ProjectInternalID' , uniqueness: #UNIQUE, element: 'ProjectInternalID' } ],
usageType: {
serviceQuality: #B,
dataClass: #MASTER,
sizeCategory: #L
}
}
@UI.headerInfo: {
typeName: 'Project',
typeNamePlural: 'Projects'
}
define view I_PPM_ProjectSummaryTask
as select from I_PPM_Task as SummaryTask
inner join I_PPM_ProjectRoot as ProjectRoot on(
ProjectRoot.ProjectUUID = SummaryTask.ProjectUUID
)
// associations to authorization views
association [0..*] to I_PPM_AuthznByUsrH as _AuthUser on _AuthUser.ReferencedObjectUUID = $projection.ProjectSummaryTaskUUID
and _AuthUser.UserID = $session.user
and (
_AuthUser.Activity = 'Admin'
or _AuthUser.Activity = 'Write'
or _AuthUser.Activity = 'Read'
)
association [0..*] to I_PPM_AuthznBySubstitH as _AuthSubst on _AuthSubst.ReferencedObjectUUID = $projection.ProjectSummaryTaskUUID
and _AuthSubst.UserID = $session.user
and (
_AuthSubst.Activity = 'Admin'
or _AuthSubst.Activity = 'Write'
or _AuthSubst.Activity = 'Read'
)
association [0..*] to I_PPM_AuthznByUserRoleH as _AuthRole on _AuthRole.ReferencedObjectUUID = $projection.ProjectSummaryTaskUUID
and _AuthRole.UserID = $session.user
and (
_AuthRole.Activity = 'Admin'
or _AuthRole.Activity = 'Write'
or _AuthRole.Activity = 'Read'
)
association [0..*] to I_PPM_AuthznByUsrGrpH as _AuthGroup on _AuthGroup.ReferencedObjectUUID = $projection.ProjectSummaryTaskUUID
and _AuthGroup.UserID = $session.user
and (
_AuthGroup.Activity = 'Admin'
or _AuthGroup.Activity = 'Write'
or _AuthGroup.Activity = 'Read'
)
// PS Root WBS Element
association [0..1] to I_WBSElementBasicData as _ProjObjRoot on (
_ProjObjRoot.WBSElementInternalID = $projection.WBSElementInternalID
)
// other associations
association [0..1] to I_PPM_ProjectType as _ProjectType on (
_ProjectType.ProjectType = $projection.ProjectType
)
association [0..*] to I_PPM_ProTypeText as _ProjectTypeName on (
_ProjectTypeName.ProjectType = $projection.ProjectType
)
association [0..*] to I_PPM_Task as _Task on (
_Task.ProjectUUID = $projection.ProjectUUID
)
and (
(
_Task.ObjectType = 'TPO'
)
or(
_Task.ObjectType = 'TTO'
)
)
association [0..*] to I_PPM_Task as _Phase on (
_Phase.ProjectUUID = $projection.ProjectUUID
)
and (
_Phase.ObjectType = 'PPO'
)
association [0..1] to I_PPM_ItemInfo as _Portfolio on (
_Portfolio.ProjectUUID = $projection.ProjectUUID
)
{
key ProjectRoot.ProjectUUID,
/* CE2011 - Project is referred by Enterprise Project
@Consumption.semanticObject: 'EnterpriseProject' */
@ObjectModel.text.association: '_ProjectName'
SummaryTask.TaskUUID as ProjectSummaryTaskUUID,
ProjectRoot.ProjectCategory,
// @Semantics.user.lastChangedBy: true - This is on project level, not for this record only!
ProjectRoot.ProjectLastChangedByUser,
// @Semantics.systemDateTime.lastChangedAt: true
ProjectRoot.ProjectLastChangedDateTime,
ProjectRoot.ProjectReasonCode,
ProjectRoot.MasterLanguage,
ProjectRoot.IsSummaryTaskEnabled,
ProjectRoot.ProjectLocation,
ProjectRoot.PlanVersion,
ProjectRoot.OrganizationalUnitObjectType,
ProjectRoot.OrganizationalUnit,
ProjectRoot.ProjectEarliestOrLatest,
ProjectRoot.EntProjectIsConfidential,
ProjectRoot.EnterpriseProjectServiceOrg,
ProjectRoot.ProjectTemplateUUID, // when the project was copied,this contains the UUID of the source project
// PS Data
ProjectRoot.ProjectInternalID,
SummaryTask.WBSElementInternalID,
@ObjectModel.text.association: '_ProjectTypeName'
SummaryTask.TaskType as ProjectType,
// CE2011 - Project is referred by EnterpriseProject
@Consumption.semanticObject: 'EnterpriseProject'
SummaryTask.ExternalId as Project,
SummaryTask.TaskName as ProjectName,
SummaryTask.ReleaseDateTime,
SummaryTask.EarliestStartDateTime,
SummaryTask.EarliestStartDate,
SummaryTask.EarliestFinishDateTime,
SummaryTask.EarliestFinishDate,
SummaryTask.StartConstraintType,
SummaryTask.StartConstraintDateTime,
SummaryTask.StartConstraintDate,
SummaryTask.FinishConstraintType as ProjectFinishConstraintType,
SummaryTask.FinishConstraintDateTime,
SummaryTask.FinishConstraintDate,
SummaryTask.ActualStartDateTime,
SummaryTask.ActualStartDate,
SummaryTask.ActualFinishDateTime,
SummaryTask.ActualFinishDate,
SummaryTask.LatestStartDateTime,
SummaryTask.LatestStartDate,
SummaryTask.LatestFinishDateTime,
SummaryTask.LatestFinishDate,
SummaryTask.ForecastedStartDateTime,
SummaryTask.ForecastedStartDate,
SummaryTask.ForecastedFinishDateTime,
SummaryTask.ForecastedFinishDate,
SummaryTask.ForecastedFinishDate as ForecastedEndDate,
SummaryTask.ProjectElementDuration,
SummaryTask.DurationUnit,
SummaryTask.ProjectVersionNumber,
SummaryTask.TaskProcessingStatus as ProjectProcessingStatus,
SummaryTask.PriorityCode,
@Semantics.user.createdBy: true
SummaryTask.CreatedByUser,
//@Semantics.systemDateTime.createdAt: true
SummaryTask.CreationDateTime,
@Semantics.user.lastChangedBy: true
SummaryTask.LastChangedByUser,
//@Semantics.systemDateTime.lastChangedAt: true
SummaryTask.LastChangeDateTime,
//2102 Ent Project Multiple SO item indicator
SummaryTask.EntProjIsMultiSlsOrdItmsEnbld,
// SummaryTask.TaskTemplateUUID as TaskTemplateUUID,
@Consumption.hidden: true
_AuthUser,
@Consumption.hidden: true
_AuthSubst,
@Consumption.hidden: true
_AuthRole,
@Consumption.hidden: true
_AuthGroup,
// when using the association to _Task or _Phase via project root, we need to carry the ProjectRootUUID everywhere, for this reason, I did introduce
// a new association to I_PPM_Task
// ProjectRoot.ProjectRootUUID,
_Task,
_Phase,
SummaryTask._CreatedByUser,
SummaryTask._LastChangedByUser,
ProjectRoot._ProjectLastChangedByUser,
SummaryTask._Text as _ProjectName,
_ProjectType,
_ProjectTypeName,
_Portfolio,
ProjectRoot._I_Project,
_ProjObjRoot,
SummaryTask._Priority,
_PriorityText
}
where
SummaryTask.ObjectType = 'DPO'