P_RSHAppUserSettingsInclDflt

DDL: P_RSHAPPUSERSETTINGSINCLDFLT SQL: PRSHAPPUSERSTGD Type: view COMPOSITE

P_RSHAppUserSettingsInclDflt is a Composite CDS View in SAP S/4HANA. It reads from 2 data sources (I_RSHAppUserSettings, I_User) and exposes 6 fields with key field AppSettingsUUID.

Data Sources (2)

SourceAliasJoin Type
I_RSHAppUserSettings _AppSetting left_outer
I_User _User from

Annotations (10)

NameValueLevelField
AbapCatalog.sqlViewName PRSHAPPUSERSTGD view
AbapCatalog.compiler.compareFilter true view
AccessControl.authorizationCheck #NOT_REQUIRED view
ClientHandling.algorithm #SESSION_VARIABLE view
VDM.private true view
VDM.viewType #COMPOSITE view
AbapCatalog.preserveKey true view
ObjectModel.usageType.dataClass #MIXED view
ObjectModel.usageType.sizeCategory #S view
ObjectModel.usageType.serviceQuality #X view

Fields (6)

KeyFieldSource TableSource FieldDescription
KEY AppSettingsUUID I_RSHAppUserSettings AppSettingsUUID
AppSettingsUserendasAppSettingsUser
DuePeriodendasDuePeriod
OverDuePeriodendasOverDuePeriod
OverBookedendasOverBooked
FreeCapacityendasFreeCapacity
@AbapCatalog.sqlViewName: 'PRSHAPPUSERSTGD'
@AbapCatalog.compiler.compareFilter: true
@AccessControl.authorizationCheck: #NOT_REQUIRED

@ClientHandling.algorithm: #SESSION_VARIABLE
@VDM.private: true
@VDM.viewType:  #COMPOSITE
@AbapCatalog.preserveKey:true
@ObjectModel.usageType.dataClass: #MIXED
@ObjectModel.usageType.sizeCategory: #S
@ObjectModel.usageType.serviceQuality: #X

/*
CONTRACT**********************************************************************************************************************

Name:                       App User settings for Filter Values
Specification:              This view returns the user settings for a particular user
Ensures:                    At most one entity is returned, if no entry found in settings table default values are returned.
Owners:                     MY
Contributors:               MY
Unit Test required Y/N:     No
Additional comments         None

END OF CONTRACT***************************************************************************************************************
*/


define view P_RSHAppUserSettingsInclDflt

  as select from    I_User                 as _User

    left outer join I_RSHAppUserSettings as _AppSetting on _User.UserID = _AppSetting.AppSettingsUser
  
{

  key _AppSetting.AppSettingsUUID,

      case
       when _AppSetting.AppSettingsUser is null
         then _User.UserID
         else _AppSetting.AppSettingsUser
      end         as AppSettingsUser,

      case
        when _AppSetting.DuePeriod is null then '4'
        else _AppSetting.DuePeriod
       end        as DuePeriod,

      case
        when _AppSetting.OverDuePeriod is null then '1'
        when _AppSetting.OverDuePeriod = '9' then '0'
        else _AppSetting.OverDuePeriod
       end        as OverDuePeriod,

      case
        when _AppSetting.OverBooked is null then 110
        else _AppSetting.OverBooked
       end        as OverBooked,

      case
       when _AppSetting.FreeCapacity is null then 70
       else _AppSetting.FreeCapacity
      end         as FreeCapacity

}

where
  _User.UserID = $session.user
/*+[internal] {
"BASEINFO":
{
"FROM":
[
"I_RSHAPPUSERSETTINGS",
"I_USER"
],
"ASSOCIATED":
[],
"BASE":
[],
"ANNO_REF":
[],
"SCALAR_FUNCTION":
[],
"VERSION":0,
"ANNOREF_EVALUATION_ERROR":""
}
}*/