I_PPM_ProjectStatusArea

DDL: I_PPM_PROJECTSTATUSAREA Type: view COMPOSITE

PPM Project Status Area Compositional Hierarchy View

I_PPM_ProjectStatusArea is a Composite CDS View that provides data about "PPM Project Status Area Compositional Hierarchy View" in SAP S/4HANA. It reads from 2 data sources (I_PPM_ProjectSummaryTask, I_PPM_ProjectStatusAreaData) and exposes 23 fields with key field StatusAreaUUID. It has 7 associations to related views.

Data Sources (2)

SourceAliasJoin Type
I_PPM_ProjectSummaryTask PST inner
I_PPM_ProjectStatusAreaData StatusArea from

Associations (7)

CardinalityTargetAliasCondition
[1 ] I_PPM_StatusAreaCode _Area $projection.StatusArea = _Area.StatusArea
[* ] I_PPM_StatusAreaCodeText _AreaText $projection.StatusArea = _AreaText.StatusArea
[1 ] I_PPM_StatusAreaStatus _AreaStatus $projection.Status = _AreaStatus.Status
[* ] I_PPM_StatusAreaStatusText _AreaStatusText $projection.Status = _AreaStatusText.Status
[1 ] I_PPM_StatusAreaTrend _AreaTrend $projection.StatusTrend = _AreaTrend.StatusTrend
[* ] I_PPM_StatusAreaTrendText _AreaTrendText $projection.StatusTrend = _AreaTrendText.StatusTrend
[1..1] I_PPM_Project _Root $projection.ProjectUUID = _Root.ProjectUUID

Annotations (15)

NameValueLevelField
EndUserText.label PPM Project Status Area Compositional Hierarchy View view
ClientHandling.algorithm #SESSION_VARIABLE view
VDM.viewType #COMPOSITE view
AbapCatalog.sqlViewName IPPMPROSTATAREA view
AbapCatalog.compiler.compareFilter true view
AbapCatalog.preserveKey true view
ObjectModel.representativeKey StatusAreaUUID view
ObjectModel.usageType.serviceQuality #C view
ObjectModel.usageType.dataClass #MIXED view
ObjectModel.usageType.sizeCategory #L view
AccessControl.authorizationCheck #CHECK view
AccessControl.personalData.blocking #NOT_REQUIRED view
UI.presentationVariant.sortOrder.by SortField view
UI.presentationVariant.sortOrder.direction #ASC view
VDM.lifecycle.contract.type #SAP_INTERNAL_API view

Fields (23)

KeyFieldSource TableSource FieldDescription
KEY StatusAreaUUID StatusAreaUUID
ProjectUUID I_PPM_ProjectStatusAreaData ProjectUUID
ProjectSummaryTaskUUID I_PPM_ProjectSummaryTask ProjectSummaryTaskUUID
WBSElementInternalID I_PPM_ProjectSummaryTask WBSElementInternalID
StatusArea I_PPM_ProjectStatusAreaData StatusArea
Status Status
StatusTrend StatusTrend
Comments Comments
SortField _Area SortField
IsOverallStatus _Area IsOverallStatus
Criticality _AreaStatus Criticality
_Area _Area
_AreaText _AreaText
_AreaStatus _AreaStatus
_AreaStatusText _AreaStatusText
_AreaTrend _AreaTrend
_AreaTrendText _AreaTrendText
_Root _Root
_ProjObjRoot I_PPM_ProjectSummaryTask _ProjObjRoot
_AuthUser I_PPM_ProjectSummaryTask _AuthUser
_AuthSubst I_PPM_ProjectSummaryTask _AuthSubst
_AuthRole I_PPM_ProjectSummaryTask _AuthRole
_AuthGroup I_PPM_ProjectSummaryTask _AuthGroup
@EndUserText.label: 'PPM Project Status Area Compositional Hierarchy View'

@ClientHandling.algorithm: #SESSION_VARIABLE
@VDM.viewType: #COMPOSITE

@AbapCatalog: { 
    sqlViewName: 'IPPMPROSTATAREA',
    compiler.compareFilter: true,
    preserveKey:true
}

@ObjectModel: {
   representativeKey: 'StatusAreaUUID',
   usageType: {
     serviceQuality:  #C,
     dataClass:       #MIXED,
     sizeCategory:    #L
   }
}


@AccessControl.authorizationCheck: #CHECK
@AccessControl.personalData.blocking: #NOT_REQUIRED

@UI.presentationVariant.sortOrder: { by: 'SortField', direction: #ASC } 
@VDM.lifecycle.contract.type:  #SAP_INTERNAL_API 

define view I_PPM_ProjectStatusArea as select from I_PPM_ProjectStatusAreaData as StatusArea 
  inner join I_PPM_ProjectSummaryTask as PST on StatusArea.ProjectUUID = PST.ProjectUUID //Authorization Check

  // associations for fixed values and texts

  association [1 ] to I_PPM_StatusAreaCode       as _Area           on $projection.StatusArea  = _Area.StatusArea  
  association [* ] to I_PPM_StatusAreaCodeText   as _AreaText       on $projection.StatusArea  = _AreaText.StatusArea
  association [1 ] to I_PPM_StatusAreaStatus     as _AreaStatus     on $projection.Status      = _AreaStatus.Status
  association [* ] to I_PPM_StatusAreaStatusText as _AreaStatusText on $projection.Status      = _AreaStatusText.Status
  association [1 ] to I_PPM_StatusAreaTrend      as _AreaTrend      on $projection.StatusTrend = _AreaTrend.StatusTrend
  association [* ] to I_PPM_StatusAreaTrendText  as _AreaTrendText  on $projection.StatusTrend = _AreaTrendText.StatusTrend
  // BO composition associations 

  association [1..1] to I_PPM_Project as _Root on $projection.ProjectUUID = _Root.ProjectUUID   
  
{
      @ObjectModel.readOnly: true
  key StatusAreaUUID, 
      @ObjectModel.readOnly: true
      StatusArea.ProjectUUID,
      @ObjectModel.readOnly: true
      PST.ProjectSummaryTaskUUID,    
      @ObjectModel.readOnly: true
      PST.WBSElementInternalID,
       
      @ObjectModel.readOnly: true
      @ObjectModel.foreignKey.association: '_Area'
      @ObjectModel.text.association: '_AreaText'
      StatusArea.StatusArea,
      @ObjectModel.foreignKey.association: '_AreaStatus'
      @ObjectModel.text.association: '_AreaStatusText'
      Status, 
      @ObjectModel.foreignKey.association: '_AreaTrend'
      @ObjectModel.text.association: '_AreaTrendText'
      StatusTrend,
      Comments,
      @ObjectModel.readOnly: true
      _Area.SortField as SortField,
      @ObjectModel.readOnly: true
      _Area.IsOverallStatus as IsOverallStatus,
      @ObjectModel.readOnly: true
      _AreaStatus.Criticality as Criticality,  
         
      _Area,
      _AreaText,
      _AreaStatus,
      _AreaStatusText,
      _AreaTrend,
      _AreaTrendText,
      // BO Hierarchy related associations

      @ObjectModel.association.type:  [ #TO_COMPOSITION_PARENT, #TO_COMPOSITION_ROOT ] 
      _Root,
      
      PST._ProjObjRoot,
      PST._AuthUser,
      PST._AuthSubst,
      PST._AuthRole,
      PST._AuthGroup 
}
/*+[internal] {
"BASEINFO":
{
"FROM":
[
"I_PPM_PROJECTSTATUSAREADATA",
"I_PPM_PROJECTSUMMARYTASK",
"I_PPM_STATUSAREACODE",
"I_PPM_STATUSAREASTATUS"
],
"ASSOCIATED":
[
"I_PPM_AUTHZNBYSUBSTITH",
"I_PPM_AUTHZNBYUSERROLEH",
"I_PPM_AUTHZNBYUSRGRPH",
"I_PPM_AUTHZNBYUSRH",
"I_PPM_PROJECT",
"I_PPM_STATUSAREACODE",
"I_PPM_STATUSAREACODETEXT",
"I_PPM_STATUSAREASTATUS",
"I_PPM_STATUSAREASTATUSTEXT",
"I_PPM_STATUSAREATREND",
"I_PPM_STATUSAREATRENDTEXT",
"I_WBSELEMENTBASICDATA"
],
"BASE":
[
"I_PPM_PROJECTSUMMARYTASK"
],
"ANNO_REF":
[],
"SCALAR_FUNCTION":
[],
"VERSION":0,
"ANNOREF_EVALUATION_ERROR":""
}
}*/