I_PPM_ProjectElementProgress

DDL: I_PPM_PROJECTELEMENTPROGRESS SQL: IPPMPROJELEMPROG Type: view COMPOSITE

Project Elements Progress

I_PPM_ProjectElementProgress is a Composite CDS View that provides data about "Project Elements Progress" in SAP S/4HANA. It reads from 5 data sources (I_EPPMGlobalSetting, I_EnterpriseProjElmntHier, I_PPM_Task, I_PPM_TaskText, I_PPM_Tasktype) and exposes 48 fields with key field TaskUUID. It has 3 associations to related views.

Data Sources (5)

SourceAliasJoin Type
I_EPPMGlobalSetting _GlobalSetting left_outer
I_EnterpriseProjElmntHier Hierarchy left_outer
I_PPM_Task Task from
I_PPM_TaskText TaskText left_outer
I_PPM_Tasktype Tasktype left_outer

Associations (3)

CardinalityTargetAliasCondition
[0..1] I_PPM_SingleResponsibleForObj _ResponsibleBP _ResponsibleBP.ReferencedObjectUUID = $projection.TaskUUID
[0..1] I_WBSElementBasicData _ProjObjRoot ( _ProjObjRoot.WBSElementInternalID = $projection.WBSElementInternalID )
[0..1] I_PPM_Project _Project _Project.ProjectUUID = Task.ProjectUUID

Annotations (12)

NameValueLevelField
EndUserText.label Project Elements Progress view
AbapCatalog.sqlViewName IPPMPROJELEMPROG view
VDM.viewType #COMPOSITE view
AbapCatalog.compiler.compareFilter true view
ClientHandling.algorithm #SESSION_VARIABLE view
AccessControl.authorizationCheck #CHECK view
AccessControl.personalData.blocking #REQUIRED view
ObjectModel.usageType.serviceQuality #D view
ObjectModel.usageType.sizeCategory #XL view
ObjectModel.usageType.dataClass #MIXED view
ObjectModel.representativeKey TaskUUID view
VDM.lifecycle.contract.type #SAP_INTERNAL_API view

Fields (48)

KeyFieldSource TableSource FieldDescription
KEY TaskUUID I_PPM_Task TaskUUID UUID 22 char.
ProjectUUID I_PPM_Task ProjectUUID Project UUID
ObjectType I_PPM_Task ObjectType Type
TaskType I_PPM_Task TaskType Task Type
ParentObjectUUID I_EnterpriseProjElmntHier ParentObjectUUID UUID Parent GO
OrdinalNumber I_EnterpriseProjElmntHier OrdinalNumber Sequence Number
HierarchyNodeLevel I_EnterpriseProjElmntHier HierarchyNodeLevel Hierarchy Node Level
ObjectName I_PPM_TaskText ObjectName Object name
IsProjectMilestone
IsSummaryTask
FactoryCalendar I_PPM_Task FactoryCalendar Factory Calendar
ProcessingStatus I_PPM_Task TaskProcessingStatus Proc. Status
ProcessingStatusText
StartConstraintType I_PPM_Task StartConstraintType Restriction
FinishConstraintType I_PPM_Task FinishConstraintType Restriction
LatestStartDateTime I_PPM_Task LatestStartDate Latest Planned Start
LatestFinishDateTime I_PPM_Task LatestFinishDate Ltst Planned Finish
ActualFinishDateTime I_PPM_Task ActualFinishDate Actual Finish
IsMainMilestone I_PPM_Tasktype IsEssentialMilestone Main Milestone
ProjectElementDuration I_PPM_Task ProjectElementDuration Tot.Duration in Days
DurationUnit I_PPM_Task DurationUnit Unit
PercentageOfCompletion I_PPM_Task PercentageOfCompletion Percent Completion
RemainingWorkQuantityInSeconds I_PPM_Task RemainingWorkQuantityInSeconds Remaining Work
dec152endasRemainingWorkQuantity
RemainingWorkExtQuantityUnit I_PPM_Task RemainingWorkExtQuantityUnit Unit
RemainingWorkQuantityUnitName
CreatedByUser I_PPM_Task CreatedByUser User Name
CreationDateTime I_PPM_Task CreationDateTime Timestamp
LastChangedByUser I_PPM_Task LastChangedByUser User Name
LastChangeDateTime I_PPM_Task LastChangeDateTime Timestamp
CriticalityCode
SeverityText
WBSElementInternalID I_PPM_Task WBSElementInternalID WBS Internal ID
BusinessPartnerUUID _ResponsibleBP BusinessPartnerUUID UUID
BusinessPartnerName _ResponsibleBP BusinessPartnerName Extracted Customer Name
ProjectRoleUUID _ResponsibleBP ProjectRoleUUID Role
EmailAddress _ResponsibleBP EmailAddress E-Mail Address
MobilePhoneNumber _ResponsibleBP MobilePhoneNumber Telephone
AddressPhoneNumber _ResponsibleBP AddressPhoneNumber
ProjectRoleName _ResponsibleBP ProjectRoleName
EPPMSettingsDefaultValue I_EPPMGlobalSetting EPPMSettingsDefaultValue Settings Value
_BusinessUser _ResponsibleBP _BusinessUser
_AuthUser _AuthUser
_AuthSubst _AuthSubst
_AuthRole _AuthRole
_AuthGroup _AuthGroup
_ProjObjRoot _ProjObjRoot
_Project _Project

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 I_PPM_ProjectElementProgress.
-- 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.
-- SQL view name: IPPMPROJELEMPROG

CREATE VIEW I_PPM_ProjectElementProgress AS
SELECT
  Task.TaskUUID AS TaskUUID,
  Task.ProjectUUID AS ProjectUUID,
  Task.ObjectType AS ObjectType,
  Task.TaskType AS TaskType,
  Hierarchy.ParentObjectUUID AS ParentObjectUUID,
  Hierarchy.OrdinalNumber AS OrdinalNumber,
  Hierarchy.HierarchyNodeLevel AS HierarchyNodeLevel,
  TaskText.ObjectName AS ObjectName,
  cast(Task.IsProjectMilestone as boolean) AS IsProjectMilestone,
  cast(Task.IsSummaryTask as boolean) AS IsSummaryTask,
  Task.FactoryCalendar AS FactoryCalendar,
  Task.TaskProcessingStatus AS ProcessingStatus,
  Task._ProcessingStatus._Text[1:Language=$session.system_language].ProcessingStatusText AS ProcessingStatusText,
  Task.StartConstraintType AS StartConstraintType,
  Task.FinishConstraintType AS FinishConstraintType,
  Task.LatestStartDate AS LatestStartDateTime,
  Task.LatestFinishDate AS LatestFinishDateTime,
  Task.ActualFinishDate AS ActualFinishDateTime,
  Tasktype.IsEssentialMilestone AS IsMainMilestone,
  Task.ProjectElementDuration AS ProjectElementDuration,
  Task.DurationUnit AS DurationUnit,
  Task.PercentageOfCompletion AS PercentageOfCompletion,
  Task.RemainingWorkQuantityInSeconds AS RemainingWorkQuantityInSeconds,
  case when Task.ObjectType <> 'DPO' and Task.ObjectType <> 'PPO' and Task.TaskProcessingStatus <> '40' and Task.TaskProcessingStatus <> '41' and Task.TaskProcessingStatus <> '42' then cast(unit_conversion( quantity => Task.RemainingWorkQuantityInSeconds, source_unit => cast( 'S' as abap.unit(3) ), target_unit => Task.RemainingWorkExtQuantityUnit, error_handling => 'KEEP_UNCONVERTED') as abap.dec( 15, 2 ) ) else cast(0 as abap.dec( 15, 2 ) ) end as RemainingWorkQuantity AS dec152endasRemainingWorkQuantity,
  Task.RemainingWorkExtQuantityUnit AS RemainingWorkExtQuantityUnit,
  Task._RemainingWorkExtQuantityUnit._Text[1:Language=$session.system_language].UnitOfMeasureName AS RemainingWorkQuantityUnitName,
  Task.CreatedByUser AS CreatedByUser,
  Task.CreationDateTime AS CreationDateTime,
  Task.LastChangedByUser AS LastChangedByUser,
  Task.LastChangeDateTime AS LastChangeDateTime,
  Task._Severity.CriticalityCode AS CriticalityCode,
  Task._Severity.SeverityText AS SeverityText,
  Task.WBSElementInternalID AS WBSElementInternalID,
  _ResponsibleBP.BusinessPartnerUUID AS BusinessPartnerUUID,
  _ResponsibleBP.BusinessPartnerName AS BusinessPartnerName,
  _ResponsibleBP.ProjectRoleUUID AS ProjectRoleUUID,
  _ResponsibleBP.EmailAddress AS EmailAddress,
  _ResponsibleBP.MobilePhoneNumber AS MobilePhoneNumber,
  _ResponsibleBP.AddressPhoneNumber AS AddressPhoneNumber,
  _ResponsibleBP.ProjectRoleName AS ProjectRoleName,
  _GlobalSetting.EPPMSettingsDefaultValue AS EPPMSettingsDefaultValue,
  _ResponsibleBP._BusinessUser AS _BusinessUser
FROM I_PPM_Task AS Task
LEFT OUTER JOIN I_PPM_Tasktype AS Tasktype ON /* join condition not captured in parsed metadata */
LEFT OUTER JOIN I_EnterpriseProjElmntHier AS Hierarchy ON /* join condition not captured in parsed metadata */
LEFT OUTER JOIN I_PPM_TaskText AS TaskText ON /* join condition not captured in parsed metadata */
LEFT OUTER JOIN I_EPPMGlobalSetting AS _GlobalSetting ON /* join condition not captured in parsed metadata */
LEFT OUTER JOIN I_PPM_SingleResponsibleForObj AS _ResponsibleBP ON _ResponsibleBP.ReferencedObjectUUID = TaskUUID  -- association [0..1]
LEFT OUTER JOIN I_WBSElementBasicData AS _ProjObjRoot ON ( _ProjObjRoot.WBSElementInternalID = WBSElementInternalID )  -- association [0..1]
LEFT OUTER JOIN I_PPM_Project AS _Project ON _Project.ProjectUUID = Task.ProjectUUID  -- association [0..1]
;