I_InvgCsMEmployee

DDL: I_INVGCSMEMPLOYEE SQL: IINVGEMPLOYEE Type: view COMPOSITE

ICM Employee

I_InvgCsMEmployee is a Composite CDS View that provides data about "ICM Employee" in SAP S/4HANA. It reads from 2 data sources (I_BusinessPartner_to_BP_Role, I_BusinessUserBasic) and exposes 15 fields with key field BusinessPartner. It has 1 association to related views.

Data Sources (2)

SourceAliasJoin Type
I_BusinessPartner_to_BP_Role _bp100 from
I_BusinessUserBasic _person inner

Associations (1)

CardinalityTargetAliasCondition
[1..1] I_BusinessPartner _BusinessPartner $projection.BusinessPartner = _BusinessPartner.BusinessPartner

Annotations (12)

NameValueLevelField
AbapCatalog.sqlViewName IINVGEMPLOYEE view
AbapCatalog.compiler.compareFilter true view
AbapCatalog.preserveKey true view
AccessControl.authorizationCheck #CHECK view
EndUserText.label ICM Employee view
VDM.viewType #COMPOSITE view
AccessControl.personalData.blocking #REQUIRED view
ObjectModel.usageType.serviceQuality #C view
ObjectModel.usageType.sizeCategory #XL view
ObjectModel.usageType.dataClass #MASTER view
ClientHandling.type #CLIENT_DEPENDENT view
ClientHandling.algorithm #SESSION_VARIABLE view

Fields (15)

KeyFieldSource TableSource FieldDescription
KEY BusinessPartner I_BusinessUserBasic BusinessPartner
BusinessPartnerRole I_BusinessPartner_to_BP_Role BusinessPartnerRole
LastName I_BusinessUserBasic LastName
FirstName I_BusinessUserBasic FirstName
BusinessPartnerFullName _BusinessPartner BusinessPartnerFullName
PersonNumber _BusinessPartner PersonNumber
BusinessPartnerUUID I_BusinessUserBasic BusinessPartnerUUID
IndependentAddressID _BusinessPartner IndependentAddressID
BusinessUser I_BusinessUserBasic UserID
AuthorizationGroup I_BusinessUserBasic AuthorizationGroup
IsBusinessPurposeCompleted I_BusinessUserBasic IsBusinessPurposeCompleted
ValidFrom I_BusinessPartner_to_BP_Role ValidFrom
ValidTo I_BusinessPartner_to_BP_Role ValidTo
PersonFullName I_BusinessUserBasic PersonFullName
_BusinessPartner _BusinessPartner
@AbapCatalog.sqlViewName: 'IINVGEMPLOYEE'
@AbapCatalog.compiler.compareFilter: true
@AbapCatalog.preserveKey:true
@AccessControl.authorizationCheck: #CHECK
@EndUserText.label: 'ICM Employee'
@VDM.viewType: #COMPOSITE
@AccessControl.personalData.blocking:#REQUIRED
@ObjectModel.usageType.serviceQuality: #C
@ObjectModel.usageType.sizeCategory: #XL
@ObjectModel.usageType.dataClass: #MASTER
@ClientHandling: {
  type:      #CLIENT_DEPENDENT,
  algorithm: #SESSION_VARIABLE
}


define view I_InvgCsMEmployee
  as select from I_BusinessPartner_to_BP_Role as _bp100
    inner join   I_BusinessUserBasic          as _person on _bp100.BusinessPartner = _person.BusinessPartner
  association [1..1] to I_BusinessPartner as _BusinessPartner on $projection.BusinessPartner = _BusinessPartner.BusinessPartner

{

  key    _person.BusinessPartner    as BusinessPartner,
         _bp100.BusinessPartnerRole as BusinessPartnerRole,
         _person.LastName,
         _person.FirstName,
         _BusinessPartner.BusinessPartnerFullName,
         _BusinessPartner.PersonNumber,
         _person.BusinessPartnerUUID,
         _BusinessPartner.IndependentAddressID,
         //personal data blocking

         _person.UserID             as BusinessUser,
         _person.AuthorizationGroup,
         _person.IsBusinessPurposeCompleted,
         _bp100.ValidFrom           as ValidFrom,
         _bp100.ValidTo             as ValidTo,

         _person.PersonFullName,
         _BusinessPartner
}
where
      _bp100.BusinessPartner     = _person.BusinessPartner
  and _bp100.BusinessPartnerRole = 'BUP003'

//  as select from pa0105            as _person

//    inner join   hrp1001           as _hrper on  _hrper.otype = 'P'

//                                             and _hrper.objid = _person.pernr

//    inner join   hrp1001           as _hrbp  on  _hrbp.otype = 'CP'

//                                             and _hrbp.objid = _hrper.sobid

//    inner join   but100            as _bp100 on  _bp100.partner = _hrbp.sobid

//                                             and _bp100.rltyp   = 'BUP003'

//    inner join   I_BusinessPartner as _bp    on _bp.BusinessPartner = _bp100.partner

//

//{

//

//  key    _bp.BusinessPartner                         as BusinessPartner,

//         _bp100.rltyp                                as BusinessPartnerRole,

//         _bp.LastName,

//         _bp.FirstName,

//         _bp.BusinessPartnerFullName,

//         _bp.PersonNumber,

//         _bp.BusinessPartnerUUID,

//         _bp.IndependentAddressID,

//         //personal data blocking

//         _bp.AuthorizationGroup,

//         _bp.IsBusinessPurposeCompleted,

//         usrid                                       as BusinessUser,

//         _bp100.valid_from                           as ValidFrom,

//         _bp100.valid_to                             as ValidTo,

//         _bp.PersonFullName

//

//

//}

//where

//      _person.subty = '0001'

//  and _person.begda <= $session.system_date

//  and _person.endda >= $session.system_date

/*+[internal] {
"BASEINFO":
{
"FROM":
[
"I_BUSINESSPARTNER",
"I_BUSINESSPARTNER_TO_BP_ROLE",
"I_BUSINESSUSERBASIC"
],
"ASSOCIATED":
[
"I_BUSINESSPARTNER"
],
"BASE":
[],
"ANNO_REF":
[],
"SCALAR_FUNCTION":
[],
"VERSION":0,
"ANNOREF_EVALUATION_ERROR":""
}
}*/