I_PMCONTACTCARDUSER

CDS View

Contact Card User

I_PMCONTACTCARDUSER is a CDS View in S/4HANA. Contact Card User. It contains 31 fields. 6 CDS views read from this table.

CDS Views using this table (6)

ViewTypeJoinVDMDescription
C_MfgOrderObjPgContacts view_entity from CONSUMPTION Mfg Order Object Page Contacts
C_MfgOrderObjPgContacts view_entity union_all CONSUMPTION Mfg Order Object Page Contacts
C_PMWorkReqReporterVH view from CONSUMPTION Reporter of Maintenance Request
C_Pproutingobjpgcont view_entity from CONSUMPTION Routing Object Page Contacts
C_Pproutingobjpgcont view_entity union_all CONSUMPTION Routing Object Page Contacts
I_DisputeCaseContact view from COMPOSITE Dispute Case Contact

Fields (31)

KeyField CDS FieldsUsed in Views
KEY UserID UserID 2
AuthorizationGroup AuthorizationGroup 2
Building Building 1
CityName CityName 1
Company Company 1
Country Country 1
DataController1 DataController1 1
DataController10 DataController10 1
DataController2 DataController2 1
DataController3 DataController3 1
DataController4 DataController4 1
DataController5 DataController5 1
DataController6 DataController6 1
DataController7 DataController7 1
DataController8 DataController8 1
DataController9 DataController9 1
DataControllerSet DataControllerSet 1
EmailAddress EmailAddress 3
Floor Floor 1
FormOfAddress FormOfAddress 1
FullName FullName 3
FunctionalTitleName FunctionalTitleName 1
HouseNumber HouseNumber 1
InternationalMobilePhoneNumber InternationalMobilePhoneNumber 3
InternationalPhoneNumber InternationalPhoneNumber 3
IsBusinessPurposeCompleted IsBusinessPurposeCompleted 2
LastName LastName 1
OrganizationalUnit OrganizationalUnit 1
PostalCode PostalCode 1
RoomNumber RoomNumber 1
StreetName StreetName 1
@EndUserText.label: 'Contact Card User'
@VDM.viewType: #BASIC
@AbapCatalog.sqlViewName: 'IPMCONTACTCARD'
@AccessControl.authorizationCheck: #CHECK
@ObjectModel.representativeKey: 'UserID'
@AccessControl.personalData.blocking: #REQUIRED

@Search.searchable: true

@ClientHandling.algorithm: #SESSION_VARIABLE
@ObjectModel.usageType.dataClass: #MASTER
@ObjectModel.usageType.serviceQuality: #C
@ObjectModel.usageType.sizeCategory: #L

define view I_PMContactCardUser
  as
  // SAP User Detail Information

  select from              usr21              as _User
  // User Name/Address Key Assignment

    inner join             I_BusinessPartner  as _BusinessPartner on _BusinessPartner.PersonNumber = _User.persnumber
  // Persons (Business Address Services)

    left outer to one join adrp               as _UserInfo        on  _UserInfo.persnumber = _User.persnumber
                                                                  and _UserInfo.nation     = ''
  // Person/Address Assignment (Business Address Services)

    left outer to one join adcp               as _UserInfoAddress on  _UserInfoAddress.addrnumber = _User.addrnumber
                                                                  and _UserInfoAddress.persnumber = _User.persnumber
                                                                  and _UserInfoAddress.nation     = ''
  // Addresses (Business Address Services)

    left outer to one join adrc               as _UserAddress     on  _UserAddress.addrnumber = _User.addrnumber
                                                                  and _UserAddress.nation     = ''
  // E-Mail Addresses (Business Address Services)

    left outer to one join adr6               as _UserEmail       on  _UserEmail.persnumber = _User.persnumber
                                                                  and _UserEmail.addrnumber = _User.addrnumber
                                                                  and _UserEmail.flgdefault = 'X'
    left outer to one join P_MobileNumbers    as _UserMobile      on  _UserMobile.persnumber = _User.persnumber
                                                                  and _UserMobile.addrnumber = _User.addrnumber
    left outer to one join P_TelephoneNumbers as _UserTelephone   on  _UserTelephone.persnumber = _User.persnumber
                                                                  and _UserTelephone.addrnumber = _User.addrnumber
  association [0..1] to I_PMContactCardEmployee as _PMContactCardEmployee on $projection.UserID = _PMContactCardEmployee.UserID
{
      @ObjectModel.text.element:  [ 'FullName' ]
      @Search.defaultSearchElement: true
      --@UI.hidden: true
  key _User.bname                 as UserID,
      --'UserAlias': see BCP 1770321887
      @Semantics.text: true
      @Semantics.name.givenName: true
      @Search:{ranking: #HIGH, fuzzinessThreshold: 0.8, defaultSearchElement: true}
      _UserInfo.name_first        as FirstName,
      @Semantics.text: true
      @Semantics.name.familyName: true
      @Search:{ranking: #HIGH, fuzzinessThreshold: 0.8, defaultSearchElement: true}
      _UserInfo.name_last         as LastName,
      @Semantics.text: true
      @Search.defaultSearchElement: true
      @Search.ranking: #HIGH
      @Search.fuzzinessThreshold: 0.7
      @Semantics.name.fullName: true
      _UserInfo.name_text         as FullName,
      @Semantics.text: true
      @Semantics: {
      eMail.address: true,
      eMail.type:  [ #WORK ]
      }
      @Search:{ranking: #HIGH, fuzzinessThreshold: 0.8, defaultSearchElement: true}
      _UserEmail.smtp_addr        as EmailAddress,
      @Semantics.organization.name: true
      _UserInfoAddress.department as OrganizationalUnit,
      @Semantics.name.jobTitle: true
      _UserInfoAddress.function   as FunctionalTitleName,

      _UserAddress.name1          as Company,
      @Semantics.telephone.type:  [ #WORK  ]
      _UserTelephone.telnr_long   as InternationalPhoneNumber,
      @Semantics.telephone.type:  [ #CELL  ]
      _UserMobile.telnr_long      as InternationalMobilePhoneNumber,
      _UserInfo.title_aca1        as FormOfAddress,
      _UserAddress.street         as StreetName,
      _UserAddress.house_num1     as HouseNumber,
      _UserAddress.country        as Country,
      _UserAddress.post_code1     as PostalCode,
      _UserAddress.city1          as CityName,
      _UserAddress.building       as Building,
      _UserAddress.floor          as Floor,
      _UserAddress.roomnumber     as RoomNumber,
      _UserAddress.region         as Region,

      //_PMContactCardEmployee.PersonnelNumber,

      @Consumption.hidden: true
      _BusinessPartner.AuthorizationGroup,
      @Consumption.hidden: true
      _BusinessPartner.IsBusinessPurposeCompleted,

       /////// Start of Datacontroller 10+1 fields -  Not to be consumed by any other views//////////


      @Consumption.hidden:true
      @UI.hidden:true
      _BusinessPartner.DataControllerSet,
      @Consumption.hidden:true
      @UI.hidden:true
      _BusinessPartner.DataController1,
      @Consumption.hidden:true
      @UI.hidden:true
      _BusinessPartner.DataController2,
      @Consumption.hidden:true
      @UI.hidden:true
      _BusinessPartner.DataController3,
      @Consumption.hidden:true
      @UI.hidden:true
      _BusinessPartner.DataController4,
      @Consumption.hidden:true
      @UI.hidden:true
      _BusinessPartner.DataController5,
      @Consumption.hidden:true
      @UI.hidden:true
      _BusinessPartner.DataController6,
      @Consumption.hidden:true
      @UI.hidden:true
      _BusinessPartner.DataController7,
      @Consumption.hidden:true
      @UI.hidden:true
      _BusinessPartner.DataController8,
      @Consumption.hidden:true
      @UI.hidden:true
      _BusinessPartner.DataController9,
      @Consumption.hidden:true
      @UI.hidden:true
      _BusinessPartner.DataController10,

 ////////////// End of Datacontroller 10+1 fields//////////


      _PMContactCardEmployee
}
where
      _User.idadtype   >= '02' // actual identities, i.e. with business user

  and _User.persnumber <> ''