I_BpContactToAddress

DDL: I_BPCONTACTTOADDRESS SQL: IBPCNTCTADDRESS Type: view BASIC

Business Partner Contact To Address

I_BpContactToAddress is a Basic CDS View that provides data about "Business Partner Contact To Address" in SAP S/4HANA. It reads from 2 data sources (but000, but052) and exposes 41 fields with key fields RelationshipNumber, BusinessPartnerCompany, BusinessPartnerPerson, ValidityEndDate, AddressID. It has 14 associations to related views.

Data Sources (2)

SourceAliasJoin Type
but000 but000 inner
but052 but052 from

Associations (14)

CardinalityTargetAliasCondition
[1..1] I_BusinessPartner _BusinessPartnerCompany $projection.BusinessPartnerCompany = _BusinessPartnerCompany.BusinessPartner
[1..1] I_BusinessPartner _BusinessPartnerPerson $projection.BusinessPartnerPerson = _BusinessPartnerPerson.BusinessPartner
[1..*] adcp _AddressDetails $projection.AddressID = _AddressDetails.addrnumber and $projection.PersonNumber = _AddressDetails.persnumber
[1..*] adrp _PersonDetails $projection.PersonNumber = _PersonDetails.persnumber
[1] I_BusinessPartnerAddress _BPCompanyPostalAddress $projection.AddressID = _BPCompanyPostalAddress.AddressNumber and $projection.BusinessPartnerCompany = _BPCompanyPostalAddress.BusinessPartner
[1] I_BusinessPartAddress_2 _BPCompanyPostalAddress_2 $projection.AddressID = _BPCompanyPostalAddress_2.AddressNumber and $projection.BusinessPartnerCompany = _BPCompanyPostalAddress_2.BusinessPartner
[0..1] I_AddressPhoneNumber _Telephone $projection.AddressID = _Telephone.AddressID and $projection.PersonNumber = _Telephone.Person and _Telephone.PhoneNumberType = '1'
[0..1] I_AddressPhoneNumber _MobilePhone $projection.AddressID = _MobilePhone.AddressID and $projection.PersonNumber = _MobilePhone.Person and _MobilePhone.PhoneNumberType = '3'
[0..1] I_AddressFaxNumber _FaxNumber $projection.AddressID = _FaxNumber.AddressID and $projection.PersonNumber = _FaxNumber.Person and _FaxNumber.IsDefaultFaxNumber = 'X'
[0..1] I_AddressPhoneNumber_2 _Telephone_2 $projection.AddressID = _Telephone_2.AddressID and $projection.PersonNumber = _Telephone_2.AddressPersonID and _Telephone_2.PhoneNumberType = '1'
[0..1] I_AddressPhoneNumber_2 _MobilePhone_2 $projection.AddressID = _MobilePhone_2.AddressID and $projection.PersonNumber = _MobilePhone_2.AddressPersonID and _MobilePhone_2.PhoneNumberType = '3'
[0..1] I_AddressFaxNumber_2 _FaxNumber_2 $projection.AddressID = _FaxNumber_2.AddressID and $projection.PersonNumber = _FaxNumber_2.AddressPersonID and _FaxNumber_2.FaxNumberIsCurrentDefault = 'X'
[0..1] I_Address_2 _AddressDefaultRepresentation $projection.AddressID = _AddressDefaultRepresentation.AddressID and $projection.PersonNumber = _AddressDefaultRepresentation.AddressPersonID and _AddressDefaultRepresentation.AddressRepresentationCode is initial
[0..*] I_Address_2 _AddressInternationalVersions $projection.AddressID = _AddressInternationalVersions.AddressID and $projection.PersonNumber = _AddressInternationalVersions.AddressPersonID and _AddressInternationalVersions.AddressRepresentationCode is not initial

Annotations (11)

NameValueLevelField
AbapCatalog.sqlViewName IBPCNTCTADDRESS view
AbapCatalog.compiler.compareFilter true view
AccessControl.authorizationCheck #CHECK view
AccessControl.personalData.blocking #REQUIRED view
VDM.viewType #BASIC view
ObjectModel.usageType.serviceQuality #D view
ObjectModel.usageType.sizeCategory #XXL view
ObjectModel.usageType.dataClass #MASTER view
ObjectModel.representativeKey RelationshipNumber view
ClientHandling.algorithm #SESSION_VARIABLE view
EndUserText.label Business Partner Contact To Address view

Fields (41)

KeyFieldSource TableSource FieldDescription
KEY RelationshipNumber but052 relnr
KEY BusinessPartnerCompany but052 partner1
KEY BusinessPartnerPerson but052 partner2
KEY ValidityEndDate but052 date_to
KEY AddressID but052 addrnumber
PersonNumber but000 persnumber
IsDefaultAddress but052 xdfadr
AddressRepresentationCode
ContactRelationshipFunction
ContactRelationshipDepartment
Floor
Building
RoomNumber
PrfrdCommMediumType
CorrespondenceShortName
InhouseMail
InternationalPhoneNumber _Telephone_2 InternationalPhoneNumber
PhoneNumberCountry _Telephone_2 PhoneNumberCountry
PhoneNumber _Telephone_2 PhoneAreaCodeSubscriberNumber
InternationalMobilePhoneNumber _MobilePhone_2 InternationalPhoneNumber
MobilePhoneCountry _MobilePhone_2 PhoneNumberCountry
MobilePhoneNumber _MobilePhone_2 PhoneAreaCodeSubscriberNumber
MobilePhoneNumberExtension _MobilePhone_2 PhoneExtensionNumber
InternationalFaxNumber _FaxNumber_2 InternationalFaxNumber
FaxCountry _FaxNumber_2 FaxNumberCountry
AuthorizationGroup _BusinessPartnerPerson AuthorizationGroup
IsBusinessPurposeCompleted _BusinessPartnerPerson IsBusinessPurposeCompleted
_AddressDetails _AddressDetails
_PersonDetails _PersonDetails
_BPCompanyPostalAddress _BPCompanyPostalAddress
_BusinessPartnerCompany _BusinessPartnerCompany
_BusinessPartnerPerson _BusinessPartnerPerson
_Telephone _Telephone
_MobilePhone _MobilePhone
_FaxNumber _FaxNumber
_Telephone_2 _Telephone_2
_MobilePhone_2 _MobilePhone_2
_FaxNumber_2 _FaxNumber_2
_BPCompanyPostalAddress_2 _BPCompanyPostalAddress_2
_AddressDefaultRepresentation _AddressDefaultRepresentation
_AddressInternationalVersions _AddressInternationalVersions
@AbapCatalog.sqlViewName: 'IBPCNTCTADDRESS'
@AbapCatalog.compiler.compareFilter: true
@AccessControl.authorizationCheck:  #CHECK //or #CHECK

@AccessControl.personalData.blocking: #REQUIRED
@VDM.viewType: #BASIC
@ObjectModel.usageType.serviceQuality: #D
@ObjectModel.usageType.sizeCategory: #XXL
@ObjectModel.usageType.dataClass: #MASTER
@ObjectModel.representativeKey:'RelationshipNumber'
@ClientHandling.algorithm: #SESSION_VARIABLE
@EndUserText.label: 'Business Partner Contact To Address'

define view I_BpContactToAddress
  as select from but052
    inner join   but000 on but052.partner2 = but000.partner

  association [1..1] to I_BusinessPartner    as _BusinessPartnerCompany on  $projection.BusinessPartnerCompany = _BusinessPartnerCompany.BusinessPartner

  association [1..1] to I_BusinessPartner    as _BusinessPartnerPerson  on  $projection.BusinessPartnerPerson = _BusinessPartnerPerson.BusinessPartner

  association [1..*] to adcp as _AddressDetails on  $projection.AddressID = _AddressDetails.addrnumber
                                                and $projection.PersonNumber = _AddressDetails.persnumber
                                                
  association [1..*] to adrp as _PersonDetails on $projection.PersonNumber = _PersonDetails.persnumber                                              
                                                                        
  association [1] to I_BusinessPartnerAddress as _BPCompanyPostalAddress on $projection.AddressID = _BPCompanyPostalAddress.AddressNumber
                                                                        and $projection.BusinessPartnerCompany = _BPCompanyPostalAddress.BusinessPartner

  association [1] to I_BusinessPartAddress_2 as _BPCompanyPostalAddress_2 on $projection.AddressID = _BPCompanyPostalAddress_2.AddressNumber
                                                                        and $projection.BusinessPartnerCompany = _BPCompanyPostalAddress_2.BusinessPartner
                                                                        
  association [0..1] to I_AddressPhoneNumber as _Telephone              on  $projection.AddressID      = _Telephone.AddressID
                                                                        and $projection.PersonNumber   = _Telephone.Person
                                                                        and _Telephone.PhoneNumberType = '1'

  association [0..1] to I_AddressPhoneNumber as _MobilePhone            on  $projection.AddressID        = _MobilePhone.AddressID
                                                                        and $projection.PersonNumber     = _MobilePhone.Person
                                                                        and _MobilePhone.PhoneNumberType = '3'

  association [0..1] to I_AddressFaxNumber   as _FaxNumber              on  $projection.AddressID         = _FaxNumber.AddressID
                                                                        and $projection.PersonNumber        = _FaxNumber.Person
                                                                        and _FaxNumber.IsDefaultFaxNumber = 'X'
  
  association [0..1] to I_AddressPhoneNumber_2 as _Telephone_2              on  $projection.AddressID      = _Telephone_2.AddressID
                                                                        and $projection.PersonNumber   = _Telephone_2.AddressPersonID
                                                                        and _Telephone_2.PhoneNumberType = '1'

  association [0..1] to I_AddressPhoneNumber_2 as _MobilePhone_2            on  $projection.AddressID        = _MobilePhone_2.AddressID
                                                                        and $projection.PersonNumber     = _MobilePhone_2.AddressPersonID
                                                                        and _MobilePhone_2.PhoneNumberType = '3'

  association [0..1] to I_AddressFaxNumber_2   as _FaxNumber_2              on  $projection.AddressID         = _FaxNumber_2.AddressID
                                                                        and $projection.PersonNumber        = _FaxNumber_2.AddressPersonID
                                                                        and _FaxNumber_2.FaxNumberIsCurrentDefault = 'X'
                                                                        
  association [0..1] to I_Address_2          as _AddressDefaultRepresentation on  $projection.AddressID  = _AddressDefaultRepresentation.AddressID
                                                                              and $projection.PersonNumber =  _AddressDefaultRepresentation.AddressPersonID     
                                                                              and _AddressDefaultRepresentation.AddressRepresentationCode is initial

  association [0..*] to I_Address_2          as _AddressInternationalVersions on  $projection.AddressID  = _AddressInternationalVersions.AddressID
                                                                              and $projection.PersonNumber = _AddressInternationalVersions.AddressPersonID 
                                                                              and _AddressInternationalVersions.AddressRepresentationCode is not initial
{
  key but052.relnr                            as RelationshipNumber,
      //--[ GENERATED:012:GlBfhyJl7kY4i6}7dD1KRG

      @Consumption.valueHelpDefinition: [
        { entity:  { name:    'I_BusinessPartnerVH',
                     element: 'BusinessPartner' }
        }]
      // ]--GENERATED

      @ObjectModel.foreignKey.association : '_BusinessPartnerCompany'
  key but052.partner1                         as BusinessPartnerCompany,
      //--[ GENERATED:012:GlBfhyJl7kY4i6}7dD1KRG

      @Consumption.valueHelpDefinition: [
        { entity:  { name:    'I_BusinessPartnerVH',
                     element: 'BusinessPartner' }
        }]
      // ]--GENERATED

      @ObjectModel.foreignKey.association : '_BusinessPartnerPerson'
  key but052.partner2                         as BusinessPartnerPerson,
  key but052.date_to                          as ValidityEndDate,
      @ObjectModel.foreignKey.association: '_AddressDetails'
  key but052.addrnumber                       as AddressID,
      but000.persnumber                       as PersonNumber,
      but052.xdfadr                           as IsDefaultAddress,
      _AddressDetails[1: nation = ' '].nation                  as AddressRepresentationCode,
      _AddressDetails[1: nation = ' '].function                as ContactRelationshipFunction,
      _AddressDetails[1: nation = ' '].department              as ContactRelationshipDepartment,
      _AddressDetails[1: nation = ' '].floor                   as Floor,
      _AddressDetails[1: nation = ' '].building                as Building,
      _AddressDetails[1: nation = ' '].roomnumber              as RoomNumber,
      _AddressDetails[1: nation = ' '].deflt_comm              as PrfrdCommMediumType,
      _AddressDetails[1: nation = ' '].id_code                 as CorrespondenceShortName,
      _AddressDetails[1: nation = ' '].ih_mail                 as InhouseMail,
      _Telephone_2.InternationalPhoneNumber,
      _Telephone_2.PhoneNumberCountry,
      _Telephone_2.PhoneAreaCodeSubscriberNumber   as PhoneNumber,
      _MobilePhone_2.InternationalPhoneNumber      as InternationalMobilePhoneNumber,
      _MobilePhone_2.PhoneNumberCountry            as MobilePhoneCountry,
      _MobilePhone_2.PhoneAreaCodeSubscriberNumber as MobilePhoneNumber,
      _MobilePhone_2.PhoneExtensionNumber          as MobilePhoneNumberExtension,
      _FaxNumber_2.InternationalFaxNumber,
      _FaxNumber_2.FaxNumberCountry                as FaxCountry,
      _BusinessPartnerPerson.AuthorizationGroup,
      _BusinessPartnerPerson.IsBusinessPurposeCompleted,

      _AddressDetails,
      _PersonDetails,
       @API.element.releaseState: #DEPRECATED  
       @API.element.successor: '_BPCompanyPostalAddress_2'        
      _BPCompanyPostalAddress,
      _BusinessPartnerCompany,
      _BusinessPartnerPerson,
       @API.element.releaseState: #DEPRECATED  
       @API.element.successor: '_Telephone_2'        
      _Telephone,
       @API.element.releaseState: #DEPRECATED  
       @API.element.successor: '_MobilePhone_2'        
      _MobilePhone,
       @API.element.releaseState: #DEPRECATED  
       @API.element.successor: '_FaxNumber_2'       
      _FaxNumber,
      _Telephone_2,
      _MobilePhone_2,
      _FaxNumber_2,
      _BPCompanyPostalAddress_2, 
      _AddressDefaultRepresentation,
      _AddressInternationalVersions      
}