I_PPM_IsMyProject

DDL: I_PPM_ISMYPROJECT Type: view COMPOSITE Package: VDM_PPM_OBJECTS_PROJECT

All projects a user is respsonible for

I_PPM_IsMyProject is a Composite CDS View that provides data about "All projects a user is respsonible for" in SAP S/4HANA. It reads from 2 data sources (I_PPM_TeamMemberIsInRole, I_PPM_ProjectSummaryTask) and exposes 3 fields with key fields ProjectUUID, ProjectSummaryTaskUUID. Part of development package VDM_PPM_OBJECTS_PROJECT.

Data Sources (2)

SourceAliasJoin Type
I_PPM_TeamMemberIsInRole I_PPM_TeamMemberIsInRole inner
I_PPM_ProjectSummaryTask PST from

Annotations (13)

NameValueLevelField
EndUserText.label All projects a user is respsonible for view
VDM.viewType #COMPOSITE view
AbapCatalog.sqlViewName IPPMISMYPROJECT view
AbapCatalog.compiler.compareFilter true view
AbapCatalog.preserveKey true view
ObjectModel.representativeKey ProjectUUID view
ObjectModel.usageType.serviceQuality #C view
ObjectModel.usageType.dataClass #MIXED view
ObjectModel.usageType.sizeCategory #S view
ClientHandling.algorithm #SESSION_VARIABLE view
AccessControl.authorizationCheck #PRIVILEGED_ONLY view
AccessControl.personalData.blocking #BLOCKED_DATA_EXCLUDED view
VDM.lifecycle.contract.type #SAP_INTERNAL_API view

Fields (3)

KeyFieldSource TableSource FieldDescription
KEY ProjectUUID I_PPM_ProjectSummaryTask ProjectUUID
KEY ProjectSummaryTaskUUID I_PPM_ProjectSummaryTask ProjectSummaryTaskUUID
IsMyProject IsInRole IsInRoleCategory
@EndUserText.label: 'All projects a user is respsonible for'

@VDM.viewType: #COMPOSITE

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

@ObjectModel: {
   representativeKey: 'ProjectUUID',
   alternativeKey: [ { id : 'ProjectSummaryTaskUUID', uniqueness: #UNIQUE, element: 'ProjectSummaryTaskUUID' } ],
   usageType: {
     serviceQuality:  #C,
     dataClass:       #MIXED,
     sizeCategory:    #S
   }
}

@ClientHandling.algorithm: #SESSION_VARIABLE
@AccessControl.authorizationCheck: #PRIVILEGED_ONLY
@AccessControl.personalData.blocking: #BLOCKED_DATA_EXCLUDED

@VDM.lifecycle.contract.type:  #SAP_INTERNAL_API
define view I_PPM_IsMyProject as select from I_PPM_ProjectSummaryTask as PST
    inner join I_PPM_TeamMemberIsInRole( P_ProjectRoleCategory : 'PM' )        as IsInRole
          on PST.ProjectUUID = IsInRole.ProjectUUID          
{
    key PST.ProjectUUID,
    key PST.ProjectSummaryTaskUUID,
    IsInRole.IsInRoleCategory as IsMyProject // indicator: user is in Role Project Manager

    
}