I_WorkplaceAddress

DDL: I_WORKPLACEADDRESS SQL: IEMPWPADDR Type: view BASIC

Employee Workplace Address

I_WorkplaceAddress is a Basic CDS View (Dimension) that provides data about "Employee Workplace Address" in SAP S/4HANA. It reads from 3 data sources (but000, mom052, adcp) and exposes 29 fields with key field BusinessPartnerUUID. It has 6 associations to related views.

Data Sources (3)

SourceAliasJoin Type
but000 bp inner
mom052 Mom from
adcp root inner

Associations (6)

CardinalityTargetAliasCondition
[0..1] adr6 _mail root.addrnumber = _mail.addrnumber and root.persnumber = _mail.persnumber
[0..1] adr2 _phone root.addrnumber = _phone.addrnumber and root.persnumber = _phone.persnumber
[0..1] adr3 _CurrentDefaultFaxNumber root.addrnumber = _CurrentDefaultFaxNumber.addrnumber and root.persnumber = _CurrentDefaultFaxNumber.persnumber and _CurrentDefaultFaxNumber.flgdefault = 'X'
[0..1] I_Country _DestinationLocationCountry $projection.DestinationLocationCountry = _DestinationLocationCountry.Country
[0..1] I_Country _MblPhoneDestinationLocCountry $projection.MblPhoneDestinationLocCountry = _MblPhoneDestinationLocCountry.Country
[0..1] I_Country _FaxNumberCountry $projection.FaxNumberCountry = _FaxNumberCountry.Country

Annotations (12)

NameValueLevelField
AbapCatalog.sqlViewName IEMPWPADDR view
AbapCatalog.compiler.compareFilter true view
AccessControl.authorizationCheck #CHECK view
AccessControl.personalData.blocking #REQUIRED view
Analytics.dataCategory #DIMENSION view
Analytics.dataExtraction.enabled true view
ClientHandling.algorithm #SESSION_VARIABLE view
EndUserText.label Employee Workplace Address view
VDM.viewType #BASIC view
ObjectModel.usageType.dataClass #MASTER view
ObjectModel.usageType.serviceQuality #B view
ObjectModel.usageType.sizeCategory #XXL view

Fields (29)

KeyFieldSource TableSource FieldDescription
KEY BusinessPartnerUUID mom052 partner_guid
AddressID adcp addrnumber
DestinationLocationCountry
PhoneNumber
PhoneNumberExtension
NormalizedPhoneNumber
MblPhoneDestinationLocCountry
MobilePhoneNumber
MblNormalizedPhoneNumber
FaxNumberCountry _CurrentDefaultFaxNumber country
FaxAreaCodeSubscriberNumber _CurrentDefaultFaxNumber fax_number
FaxExtensionNumber _CurrentDefaultFaxNumber fax_extens
InternationalFaxNumber _CurrentDefaultFaxNumber faxnr_long
DefaultEmailAddress
ValidityStartDate
ValidityEndDate
Building adcp building
RoomNumber adcp roomnumber
Floor adcp floor
FunctionalTitlename adcp function
Department adcp department
CommunicationMediumType adcp deflt_comm
PersonNumber adcp persnumber
AddressPersonID adcp persnumber
IsBusinessPurposeCompleted but000 xpcpt
AuthorizationGroup but000 augrp
_DestinationLocationCountry _DestinationLocationCountry
_MblPhoneDestinationLocCountry _MblPhoneDestinationLocCountry
_FaxNumberCountry _FaxNumberCountry
@AbapCatalog.sqlViewName: 'IEMPWPADDR'
@AbapCatalog.compiler.compareFilter: true
@AbapCatalog.preserveKey
@AccessControl.authorizationCheck: #CHECK
@AccessControl.personalData.blocking: #REQUIRED
@Analytics : {dataCategory: #DIMENSION, dataExtraction.enabled : true}
@ClientHandling.algorithm: #SESSION_VARIABLE
@EndUserText.label: 'Employee Workplace Address'
@VDM.viewType: #BASIC
@ObjectModel.usageType.dataClass: #MASTER
@ObjectModel.usageType.serviceQuality: #B
@ObjectModel.usageType.sizeCategory: #XXL

define view I_WorkplaceAddress

  as select from mom052 as Mom

    inner join   but000 as bp   on bp.partner_guid = Mom.partner_guid
    inner join   adcp   as root on root.addrnumber = Mom.org_addr_number
  //and root.persnumber = bp.persnumber //Commented because of Internal Incident: 2280158276, Performance Issue with I_WorkplaceAddress due to Cyclic join


  association [0..1] to adr6      as _mail                          on  root.addrnumber = _mail.addrnumber
                                                                    and root.persnumber = _mail.persnumber

  association [0..1] to adr2      as _phone                         on  root.addrnumber = _phone.addrnumber
                                                                    and root.persnumber = _phone.persnumber

  association [0..1] to adr3      as _CurrentDefaultFaxNumber       on  root.addrnumber                     = _CurrentDefaultFaxNumber.addrnumber
                                                                    and root.persnumber                     = _CurrentDefaultFaxNumber.persnumber
                                                                    and _CurrentDefaultFaxNumber.flgdefault = 'X'

  association [0..1] to I_Country as _DestinationLocationCountry    on  $projection.DestinationLocationCountry = _DestinationLocationCountry.Country

  association [0..1] to I_Country as _MblPhoneDestinationLocCountry on  $projection.MblPhoneDestinationLocCountry = _MblPhoneDestinationLocCountry.Country

  association [0..1] to I_Country as _FaxNumberCountry              on  $projection.FaxNumberCountry = _FaxNumberCountry.Country

{
  key  Mom.partner_guid                                                  as BusinessPartnerUUID,
       root.addrnumber                                                   as AddressID,
       @ObjectModel.foreignKey.association: '_DestinationLocationCountry'
       _phone[1: r3_user = '1' ].country                                 as DestinationLocationCountry,
       _phone[1: r3_user = '1' ].tel_number                              as PhoneNumber,
       _phone[1: r3_user = '1' ].tel_extens                              as PhoneNumberExtension,
       _phone[1: r3_user = '1' ].telnr_long                              as NormalizedPhoneNumber,

       @ObjectModel.foreignKey.association: '_MblPhoneDestinationLocCountry'
       _phone[1: r3_user = '3' ].country                                 as MblPhoneDestinationLocCountry,
       _phone[1: r3_user = '3' ].tel_number                              as MobilePhoneNumber,
       _phone[1: r3_user = '3' ].telnr_long                              as MblNormalizedPhoneNumber,

       @ObjectModel.foreignKey.association: '_FaxNumberCountry'
       _CurrentDefaultFaxNumber.country                                  as FaxNumberCountry,
       _CurrentDefaultFaxNumber.fax_number                               as FaxAreaCodeSubscriberNumber,
       _CurrentDefaultFaxNumber.fax_extens                               as FaxExtensionNumber,
       _CurrentDefaultFaxNumber.faxnr_long                               as InternationalFaxNumber,

       _mail[1: flgdefault = 'X'].smtp_addr                              as DefaultEmailAddress,

       tstmp_to_dats(Mom.from_timestamp,'UTC',  $session.client, 'NULL') as ValidityStartDate,
       tstmp_to_dats(Mom.to_timestamp,'UTC',  $session.client, 'NULL')   as ValidityEndDate,

       //Addition of Building Code and Room Number

       root.building                                                     as Building,
       root.roomnumber                                                   as RoomNumber,
       root.floor                                                        as Floor,

       //Adding Function and Department fields

       root.function                                                     as FunctionalTitlename,
       root.department                                                   as Department,

       root.deflt_comm                                                   as CommunicationMediumType,

       //root.persnumber as AddressPersonID,//Internal Incident: 2280158276, Performance Issue with I_WorkplaceAddress due to Cyclic join

       @API.element.releaseState: #DEPRECATED
       @API.element.successor: 'AddressPersonID'
       root.persnumber                                                   as PersonNumber,
       root.persnumber                                                   as AddressPersonID,


       bp.xpcpt                                                          as IsBusinessPurposeCompleted,
       bp.augrp                                                          as AuthorizationGroup,

       _DestinationLocationCountry,
       _MblPhoneDestinationLocCountry,
       _FaxNumberCountry
}
/*+[internal] {
"BASEINFO":
{
"FROM":
[
"ADCP",
"ADR2",
"ADR3",
"ADR6",
"BUT000",
"MOM052"
],
"ASSOCIATED":
[
"I_COUNTRY",
"ADR2",
"ADR3",
"ADR6"
],
"BASE":
[],
"ANNO_REF":
[],
"SCALAR_FUNCTION":
[],
"VERSION":0,
"ANNOREF_EVALUATION_ERROR":""
}
}*/