I_PPM_SUBSTITUTE

CDS View

Object Responsible as Substitute

I_PPM_SUBSTITUTE is a CDS View in S/4HANA. Object Responsible as Substitute. 1 CDS views read from this table.

CDS Views using this table (1)

ViewTypeJoinVDMDescription
I_PPM_IsMyProjectAsSubstitute view from COMPOSITE All prjs a usr is rsp for as a subst
@EndUserText.label: 'Object Responsible as Substitute'

@VDM.viewType: #BASIC
@VDM.lifecycle.contract.type:  #SAP_INTERNAL_API

@ClientHandling.algorithm: #SESSION_VARIABLE   
@AccessControl.authorizationCheck: #CHECK 

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

@ObjectModel: {
   representativeKey: 'ReferencedObjectUUID',
   usageType: {
     serviceQuality:  #C,
     dataClass:       #TRANSACTIONAL,
     sizeCategory:    #L
    }
} 


define view I_PPM_Substitute as select from aco_substitute as substitute     
    association [0..1] to I_PPM_User as _SubstituteUser 
            on      $projection.SubstituteUser = _SubstituteUser.UserID
    // associations to authorization views

    association [0..*] to I_PPM_AuthznByUsrH        as _AuthUser
            on      _AuthUser.ReferencedObjectUUID   = $projection.ReferencedObjectUUID
             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.ReferencedObjectUUID
             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.ReferencedObjectUUID
             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.ReferencedObjectUUID
             and    _AuthGroup.UserID                = $session.user
             and (  _AuthGroup.Activity = 'Admin'    or _AuthGroup.Activity = 'Write'     or _AuthGroup.Activity = 'Read' )                          
{
      key substitute.object_id as ReferencedObjectUUID, //

       substitute.type as ObjectType,      
       substitute.user_id_subst as SubstituteUser,
       _SubstituteUser,
       
// Association for ACL Authorization

       _AuthUser,
       _AuthSubst,
       _AuthRole,
       _AuthGroup          
}                                     
  
  
 /*+[internal] {
"BASEINFO":
{
"FROM":
[
"ACO_SUBSTITUTE"
],
"ASSOCIATED":
[
"I_PPM_AUTHZNBYSUBSTITH",
"I_PPM_AUTHZNBYUSERROLEH",
"I_PPM_AUTHZNBYUSRGRPH",
"I_PPM_AUTHZNBYUSRH",
"I_PPM_USER"
],
"BASE":
[],
"ANNO_REF":
[],
"SCALAR_FUNCTION":
[],
"VERSION":0,
"ANNOREF_EVALUATION_ERROR":""
}
}*/