I_USERBASIC

CDS View

Benutzer

I_USERBASIC is a CDS View in S/4HANA. Benutzer. It contains 2 fields. 1 CDS views read from this table.

CDS Views using this table (1)

ViewTypeJoinVDMDescription
I_UserAddress view_entity inner COMPOSITE Benutzeradresse

Fields (2)

KeyField CDS FieldsUsed in Views
KEY UserID UserID 1
UserGroup UserGroup 1
@EndUserText:   { label: 'Benutzer' }
@AccessControl: { authorizationCheck: #PRIVILEGED_ONLY
                , privilegedAssociations: [ '_UserGroup'
                                          ]
                }
@VDM:           { viewType: #BASIC
                , lifecycle.contract.type: #PUBLIC_LOCAL_API
                }
@ObjectModel:   { compositionRoot: true
                , representativeKey: 'UserID'
                , usageType: { dataClass:      #MASTER
                             , serviceQuality: #A
                             , sizeCategory:   #L
                             }
                }
@AbapCatalog:   { 
                  viewEnhancementCategory: [ #NONE ] 
                }
@Metadata:      { allowExtensions: true }

// !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

// This view must not be exposed directly, because it exposes internal administration information.

// Therefore, it is also protected by a NULL-DCL.

// It's currently also not possible to release it for Language Version 5 ('ABAP for Cloud 

// Development') because it doesn't fulfil the content separation requirements.

// !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!


define view entity I_UserBasic
  as select from usr02

  association [0..1] to I_UserGroup  as _UserGroup     on $projection.UserGroup = _UserGroup.UserGroup
{
      //_____AccountData___________________________________________________________________________

  key cast( usr02.bname           as vdm_userid                preserving type ) as UserID,
            @ObjectModel.foreignKey.association: '_UserGroup'
      cast( usr02.class           as vdm_usergroupid           preserving type ) as UserGroup,
            usr02.ustyp                                                          as UserType,
            usr02.gltgv                                                          as UserValidFromDate,
            usr02.gltgb                                                          as UserValidToDate,
            usr02.uflag                                                          as UserLockStatus,
            usr02.locnt                                                          as UserNmbrOfFailedLogonAttempts,
            usr02.ltime                                                          as UserLastLogonTime,
      cast( usr02.tzone           as vdm_usertimezone          preserving type ) as UserTimeZone,                   // no TZone Basic view exists usable as 'foreignKey.association'

      cast( usr02.security_policy as vdm_usersecuritypolicy    preserving type ) as UserSecurityPolicy,             // no Basic view exists usable as 'foreignKey.association'

      cast( usr02.zbvmaster       as vdm_usernologoncuacentral preserving type ) as CntrlUsrAdminLogonIsNotAllowed,
            usr02.reserved                                                       as CentralUserAdministrationCode,
            usr02.erdat                                                          as UserCreationDate,
      cast( usr02.aname           as vdm_createdbyuserid       preserving type ) as CreatedByUser,
          
            _UserGroup
          
          //usr02.accnt                                                          as UserAccountNumber,         //not used anymore

          //usr02.trdat                                                          as UsersLastLoginDate,        //not used anymore

          //usr02.versn                                                          as UserVersion(???),          //not used anymore

          //_______________________________________________________________________________________

          // !!! Password related data must never be exposed:

          //usr02.bcode

          //usr02.ocod1

          //usr02.bcda1

          //usr02.codv1

          //usr02.ocod2

          //usr02.bcda2

          //usr02.codv2

          //usr02.ocod3

          //usr02.bcda3

          //usr02.codv3

          //usr02.ocod4

          //usr02.bcda4

          //usr02.codv4

          //usr02.ocod5

          //usr02.bcda5

          //usr02.codv5

          //usr02.codvn

          //usr02.passcode

          //usr02.pwdchgdate

          //usr02.pwdstate

          //usr02.pwdhistory

          //usr02.pwdlgndate

          //usr02.pwdsetdate

          //usr02.pwdinitial

          //usr02.pwdlockdate

          //usr02.pwdsaltedhash

}