I_BPContactAddressTP

DDL: I_BPCONTACTADDRESSTP SQL: IBPCPADDTP Type: view TRANSACTIONAL

TP View for BP Contact Person Address

I_BPContactAddressTP is a Transactional CDS View that provides data about "TP View for BP Contact Person Address" in SAP S/4HANA. It reads from 1 data source (I_BpContactToAddress) and exposes 38 fields with key fields BusinessPartner1, BusinessPartner2, RelationshipNumber, ValidityEndDate, AddressID. It has 7 associations to related views.

Data Sources (1)

SourceAliasJoin Type
I_BpContactToAddress I_BpContactToAddress from

Associations (7)

CardinalityTargetAliasCondition
[1..1] I_BusinessPartnerTP _BusinessPartner $projection.BusinessPartner1 = _BusinessPartner.BusinessPartner
[1..1] I_BusinessPartnerContactTP _BPContactAddress $projection.BusinessPartner1 = _BPContactAddress.BusinessPartner and $projection.BusinessPartner2 = _BPContactAddress.BusinessPartnerPerson and $projection.RelationshipNumber = _BPContactAddress.RelationshipNumber and $projection.ValidityEndDate = _BPContactAddress.ValidityEndDate
[0..*] I_BPContactEmlAddrTP _BPContactEmlAddr $projection.BusinessPartner1 = _BPContactEmlAddr.BusinessPartner1 and $projection.BusinessPartner2 = _BPContactEmlAddr.BusinessPartner2 and $projection.RelationshipNumber = _BPContactEmlAddr.RelationshipNumber and $projection.ValidityEndDate = _BPContactEmlAddr.ValidityEndDate and $projection.AddressID = _BPContactEmlAddr.AddressID
[0..*] I_BPContactTelNmbrTP _BPContactTelNmbr $projection.BusinessPartner1 = _BPContactTelNmbr.BusinessPartner1 and $projection.BusinessPartner2 = _BPContactTelNmbr.BusinessPartner2 and $projection.RelationshipNumber = _BPContactTelNmbr.RelationshipNumber and $projection.ValidityEndDate = _BPContactTelNmbr.ValidityEndDate and $projection.AddressID = _BPContactTelNmbr.AddressID
[0..*] I_BPContactMblNmbrTP _BPContactMblNmbr $projection.BusinessPartner1 = _BPContactMblNmbr.BusinessPartner1 and $projection.BusinessPartner2 = _BPContactMblNmbr.BusinessPartner2 and $projection.RelationshipNumber = _BPContactMblNmbr.RelationshipNumber and $projection.ValidityEndDate = _BPContactMblNmbr.ValidityEndDate and $projection.AddressID = _BPContactMblNmbr.AddressID
[0..*] I_BPContactFaxNmbrTP _BPContactFaxNmbr $projection.BusinessPartner1 = _BPContactFaxNmbr.BusinessPartner1 and $projection.BusinessPartner2 = _BPContactFaxNmbr.BusinessPartner2 and $projection.RelationshipNumber = _BPContactFaxNmbr.RelationshipNumber and $projection.ValidityEndDate = _BPContactFaxNmbr.ValidityEndDate and $projection.AddressID = _BPContactFaxNmbr.AddressID
[0..*] I_BPContactWbsteURLTP _BPContactWbsteURL $projection.BusinessPartner1 = _BPContactWbsteURL.BusinessPartner1 and $projection.BusinessPartner2 = _BPContactWbsteURL.BusinessPartner2 and $projection.RelationshipNumber = _BPContactWbsteURL.RelationshipNumber and $projection.ValidityEndDate = _BPContactWbsteURL.ValidityEndDate and $projection.AddressID = _BPContactWbsteURL.AddressID

Annotations (15)

NameValueLevelField
AbapCatalog.sqlViewName IBPCPADDTP view
AbapCatalog.compiler.compareFilter true view
AbapCatalog.preserveKey true view
AccessControl.authorizationCheck #CHECK view
AccessControl.personalData.blocking #REQUIRED view
ClientHandling.algorithm #SESSION_VARIABLE view
EndUserText.label TP View for BP Contact Person Address view
ObjectModel.writeDraftPersistence BUPA_CPADR_D view
ObjectModel.draftEnabled true view
ObjectModel.writeEnabled true view
ObjectModel.usageType.serviceQuality #C view
ObjectModel.usageType.sizeCategory #XXL view
ObjectModel.usageType.dataClass #MASTER view
Search.searchable true view
VDM.viewType #TRANSACTIONAL view

Fields (38)

KeyFieldSource TableSource FieldDescription
KEY BusinessPartner1 BusinessPartnerCompany
KEY BusinessPartner2 BusinessPartnerPerson
KEY RelationshipNumber RelationshipNumber
KEY ValidityEndDate ValidityEndDate
KEY AddressID AddressID
BusinessPartner1ForEdit BusinessPartnerCompany
BusinessPartner2ForEdit BusinessPartnerPerson
ValidityEndDateForEdit ValidityEndDate
AddressIDForEdit AddressID
RelationshipNumberForEdit RelationshipNumber
IsDefaultAddress IsDefaultAddress
ContactRelationshipFunction ContactRelationshipFunction
ContactRelationshipDepartment ContactRelationshipDepartment
Floor Floor
Building Building
RoomNumber RoomNumber
PrfrdCommMediumType PrfrdCommMediumType
CorrespondenceShortName CorrespondenceShortName
InhouseMail InhouseMail
Country1111asFormattedAddress
FormOfAddress _BPCompanyPostalAddress FormOfAddress
FullName _BPCompanyPostalAddress FullName
HouseNumber _BPCompanyPostalAddress HouseNumber
StreetName _BPCompanyPostalAddress StreetName
CityName _BPCompanyPostalAddress CityName
PostalCode _BPCompanyPostalAddress PostalCode
Region _BPCompanyPostalAddress Region
Country _BPCompanyPostalAddress Country
AddressTimeZone _BPCompanyPostalAddress AddressTimeZone
_BusinessPartner1 _BusinessPartnerCompany
_BusinessPartner2 _BusinessPartnerPerson
_BPContactEmlAddr _BPContactEmlAddr
_BPContactTelNmbr _BPContactTelNmbr
_BusinessPartner _BusinessPartner
_BPContactMblNmbr _BPContactMblNmbr
_BPContactFaxNmbr _BPContactFaxNmbr
_BPContactWbsteURL _BPContactWbsteURL
_BPContactAddress _BPContactAddress
@AbapCatalog.sqlViewName: 'IBPCPADDTP'
@AbapCatalog.compiler.compareFilter: true
@AbapCatalog.preserveKey: true
@AccessControl.authorizationCheck: #CHECK
@AccessControl.personalData.blocking: #REQUIRED
@ClientHandling.algorithm : #SESSION_VARIABLE
@EndUserText.label: 'TP View for BP Contact Person Address'

@ObjectModel.writeDraftPersistence: 'BUPA_CPADR_D'
@ObjectModel.draftEnabled:true
@ObjectModel.writeEnabled: true
@ObjectModel.createEnabled
@ObjectModel.deleteEnabled
@ObjectModel.updateEnabled

@ObjectModel.usageType.serviceQuality: #C
@ObjectModel.usageType.sizeCategory: #XXL
@ObjectModel.usageType.dataClass: #MASTER
@Search.searchable: true
@VDM.viewType: #TRANSACTIONAL

define view I_BPContactAddressTP as select from I_BpContactToAddress 
  
  association [1..1] to I_BusinessPartnerTP        as _BusinessPartner         on  $projection.BusinessPartner1 = _BusinessPartner.BusinessPartner
 
  association [1..1] to I_BusinessPartnerContactTP  as _BPContactAddress on  $projection.BusinessPartner1 = _BPContactAddress.BusinessPartner
                                                                             and $projection.BusinessPartner2 = _BPContactAddress.BusinessPartnerPerson
                                                                             and $projection.RelationshipNumber = _BPContactAddress.RelationshipNumber
                                                                             and $projection.ValidityEndDate   = _BPContactAddress.ValidityEndDate
  association [0..*] to I_BPContactEmlAddrTP as _BPContactEmlAddr on  $projection.BusinessPartner1  = _BPContactEmlAddr.BusinessPartner1
                                                                      and $projection.BusinessPartner2  = _BPContactEmlAddr.BusinessPartner2                                                                    
                                                                      and $projection.RelationshipNumber    = _BPContactEmlAddr.RelationshipNumber
                                                                      and $projection.ValidityEndDate   = _BPContactEmlAddr.ValidityEndDate
                                                                      and $projection.AddressID = _BPContactEmlAddr.AddressID
 
  association [0..*] to I_BPContactTelNmbrTP as _BPContactTelNmbr on  $projection.BusinessPartner1  = _BPContactTelNmbr.BusinessPartner1
                                                                      and $projection.BusinessPartner2  = _BPContactTelNmbr.BusinessPartner2
                                                                      and $projection.RelationshipNumber    = _BPContactTelNmbr.RelationshipNumber
                                                                      and $projection.ValidityEndDate   = _BPContactTelNmbr.ValidityEndDate
                                                                      and $projection.AddressID = _BPContactTelNmbr.AddressID
  
  association [0..*] to I_BPContactMblNmbrTP as _BPContactMblNmbr on  $projection.BusinessPartner1  = _BPContactMblNmbr.BusinessPartner1
                                                                      and $projection.BusinessPartner2  = _BPContactMblNmbr.BusinessPartner2
                                                                      and $projection.RelationshipNumber    = _BPContactMblNmbr.RelationshipNumber
                                                                      and $projection.ValidityEndDate   = _BPContactMblNmbr.ValidityEndDate
                                                                      and $projection.AddressID = _BPContactMblNmbr.AddressID
  
  association [0..*] to I_BPContactFaxNmbrTP as _BPContactFaxNmbr on  $projection.BusinessPartner1  = _BPContactFaxNmbr.BusinessPartner1
                                                                      and $projection.BusinessPartner2  = _BPContactFaxNmbr.BusinessPartner2
                                                                      and $projection.RelationshipNumber    = _BPContactFaxNmbr.RelationshipNumber
                                                                      and $projection.ValidityEndDate   = _BPContactFaxNmbr.ValidityEndDate
                                                                      and $projection.AddressID = _BPContactFaxNmbr.AddressID
  
  association [0..*] to I_BPContactWbsteURLTP as _BPContactWbsteURL  on   $projection.BusinessPartner1  = _BPContactWbsteURL.BusinessPartner1
                                                                      and $projection.BusinessPartner2  = _BPContactWbsteURL.BusinessPartner2
                                                                      and $projection.RelationshipNumber    = _BPContactWbsteURL.RelationshipNumber
                                                                      and $projection.ValidityEndDate   = _BPContactWbsteURL.ValidityEndDate
                                                                      and $projection.AddressID = _BPContactWbsteURL.AddressID
  
{
    @Search.defaultSearchElement: true
    key BusinessPartnerCompany as BusinessPartner1,
    @Search.defaultSearchElement: true
    key BusinessPartnerPerson as BusinessPartner2,
    //key _BusPartRelationship.RelationshipCategory,

  
    @Search.defaultSearchElement: true
    key RelationshipNumber,
    key ValidityEndDate,
    key AddressID,
    
    BusinessPartnerCompany as BusinessPartner1ForEdit,
    BusinessPartnerPerson as BusinessPartner2ForEdit,
    ValidityEndDate as ValidityEndDateForEdit,
    @ObjectModel.readOnly: 'EXTERNAL_CALCULATION'
    AddressID as AddressIDForEdit,
    RelationshipNumber as RelationshipNumberForEdit,
    
    IsDefaultAddress,
    ContactRelationshipFunction,
    ContactRelationshipDepartment,
    Floor,
    Building,
    RoomNumber,
    PrfrdCommMediumType,
    CorrespondenceShortName,
    InhouseMail,
    
    concat_with_space(_BPCompanyPostalAddress.HouseNumber,
    concat_with_space(_BPCompanyPostalAddress.StreetName,
    concat_with_space(_BPCompanyPostalAddress.CityName,
    concat_with_space(_BPCompanyPostalAddress.PostalCode,_BPCompanyPostalAddress.Country,1),1),1),1) as FormattedAddress,
    _BPCompanyPostalAddress.FormOfAddress,
    _BPCompanyPostalAddress.FullName,
    _BPCompanyPostalAddress.HouseNumber,
    _BPCompanyPostalAddress.StreetName,
    _BPCompanyPostalAddress.CityName,
    _BPCompanyPostalAddress.PostalCode,
    _BPCompanyPostalAddress.Region,
    _BPCompanyPostalAddress.Country,
    _BPCompanyPostalAddress.AddressTimeZone,

    /* Associations */
    _BusinessPartnerCompany as _BusinessPartner1,
    _BusinessPartnerPerson as _BusinessPartner2,
   // _BPRelshpContactPerson,

   // _BusPartRelationship,

     @ObjectModel.association.type: [#TO_COMPOSITION_CHILD]
    _BPContactEmlAddr,
     @ObjectModel.association.type: [#TO_COMPOSITION_CHILD]
    _BPContactTelNmbr,
     @ObjectModel.association.type: [#TO_COMPOSITION_ROOT]
     _BusinessPartner,
     @ObjectModel.association.type: [#TO_COMPOSITION_CHILD]
     _BPContactMblNmbr,
     @ObjectModel.association.type: [#TO_COMPOSITION_CHILD]
     _BPContactFaxNmbr,
     @ObjectModel.association.type: [#TO_COMPOSITION_CHILD]
    _BPContactWbsteURL,
    @ObjectModel.association.type: [#TO_COMPOSITION_PARENT]
    _BPContactAddress
      
}
where AddressRepresentationCode = ' '
/*+[internal] {
"BASEINFO":
{
"FROM":
[
"I_BPCONTACTTOADDRESS",
"I_BUSINESSPARTNERADDRESS"
],
"ASSOCIATED":
[
"I_BPCONTACTEMLADDRTP",
"I_BPCONTACTFAXNMBRTP",
"I_BPCONTACTMBLNMBRTP",
"I_BPCONTACTTELNMBRTP",
"I_BPCONTACTWBSTEURLTP",
"I_BUSINESSPARTNER",
"I_BUSINESSPARTNERCONTACTTP",
"I_BUSINESSPARTNERTP"
],
"BASE":
[
"I_BPCONTACTTOADDRESS"
],
"ANNO_REF":
[],
"SCALAR_FUNCTION":
[],
"VERSION":0,
"ANNOREF_EVALUATION_ERROR":""
}
}*/