I_SrvcDocPartnerAddress

DDL: I_SRVCDOCPARTNERADDRESS Type: view_entity COMPOSITE

Service Transaction Partner Address

I_SrvcDocPartnerAddress is a Composite CDS View that provides data about "Service Transaction Partner Address" in SAP S/4HANA. It reads from 1 data source (I_CustMgmtPartner) and exposes 40 fields with key fields ServiceDocument, ServiceDocumentItem, CustMgmtPartnerFunction, CustMgmtBusinessPartner. It has 2 associations to related views.

Data Sources (1)

SourceAliasJoin Type
I_CustMgmtPartner ServicePartner from

Associations (2)

CardinalityTargetAliasCondition
[0..1] I_Address_2 _Address $projection.AddressID = _Address.AddressID
[0..1] I_PersonWorkplaceAddress _PersonWorkplaceAddress $projection.AddressID = _PersonWorkplaceAddress.AddressID and $projection.AddressPersonID = _PersonWorkplaceAddress.AddressPersonID and $projection.AddressObjectType = '3'

Annotations (7)

NameValueLevelField
AccessControl.authorizationCheck #PRIVILEGED_ONLY view
EndUserText.label Service Transaction Partner Address view
Metadata.ignorePropagatedAnnotations true view
ObjectModel.usageType.serviceQuality #C view
ObjectModel.usageType.sizeCategory #L view
ObjectModel.usageType.dataClass #MIXED view
VDM.viewType #COMPOSITE view

Fields (40)

KeyFieldSource TableSource FieldDescription
KEY ServiceDocument I_CustMgmtPartner CustMgmtDocument
KEY ServiceDocumentItem CustMgmtDocumentItem
KEY CustMgmtPartnerFunction I_CustMgmtPartner CustMgmtPartnerFunction
KEY CustMgmtBusinessPartner I_CustMgmtPartner CustMgmtBusinessPartner
CustMgmtObjectType CustMgmtObjectType
AddressID I_CustMgmtPartner AddressID
AddressPersonID I_CustMgmtPartner AddressPersonID
AddressObjectType I_CustMgmtPartner AddressObjectType
AddresseeFullNameendasAddresseeFullName
CityName _Address CityName
Country _Address Country
DistrictName _Address DistrictName
EmailAddress
FaxAreaCodeSubscriberNumber
FaxExtensionNumber
FaxNumberCountry
FormOfAddressendasFormOfAddress
HouseNumber _Address HouseNumber
MobileNumber
MobilePhoneCountry
OrganizationName1 _Address OrganizationName1
OrganizationName2 _Address OrganizationName2
OrganizationName3 _Address OrganizationName3
OrganizationName4 _Address OrganizationName4
PersonFamilyNameendasPersonFamilyName
PersonGivenNameendasPersonGivenName
PhoneExtensionNumber
PhoneNumber
PhoneNumberCountry
POBox _Address POBox
POBoxPostalCode _Address POBoxPostalCode
PostalCode _Address PostalCode
Region _Address Region
StreetName _Address StreetName
StreetPrefixName1 _Address StreetPrefixName1
StreetPrefixName2 _Address StreetPrefixName2
StreetSuffixName1 _Address StreetSuffixName1
StreetSuffixName2 _Address StreetSuffixName2
TaxJurisdiction _Address TaxJurisdiction
TransportZone _Address TransportZone
@AccessControl.authorizationCheck: #PRIVILEGED_ONLY
@EndUserText.label: 'Service Transaction Partner Address'
@Metadata.ignorePropagatedAnnotations: true
@ObjectModel.usageType:{
  serviceQuality:#C,
  sizeCategory: #L,
  dataClass: #MIXED
}
@VDM.viewType: #COMPOSITE
define view entity I_SrvcDocPartnerAddress
  as select from I_CustMgmtPartner as ServicePartner
  association [0..1] to I_Address_2              as _Address                on  $projection.AddressID         =  _Address.AddressID
//                                                                            and $projection.AddressObjectType <> '3'

  association [0..1] to I_PersonWorkplaceAddress as _PersonWorkplaceAddress on  $projection.AddressID         = _PersonWorkplaceAddress.AddressID
                                                                            and $projection.AddressPersonID   = _PersonWorkplaceAddress.AddressPersonID
                                                                            and $projection.AddressObjectType = '3'


{
  key  ServicePartner.CustMgmtDocument                                      as ServiceDocument,
  key  CustMgmtDocumentItem                                                 as ServiceDocumentItem,
  key  ServicePartner.CustMgmtPartnerFunction,
  key  ServicePartner.CustMgmtBusinessPartner,

       CustMgmtObjectType,
       //Added for PersonWorkPlaceAddress association

       @Consumption.hidden: true
       @ObjectModel.readOnly: true
       ServicePartner.AddressID,
       @Consumption.hidden: true
       @ObjectModel.readOnly: true
       ServicePartner.AddressPersonID,

       @Consumption.hidden: true
       @ObjectModel.readOnly: true
       //Added to fetch address details based on address type

       ServicePartner.AddressObjectType,

       @ObjectModel.readOnly: true
       case
           when ServicePartner.AddressObjectType = '3'
            then _PersonWorkplaceAddress.PersonFullName
           else _Address.AddresseeFullName
       end                                                                  as AddresseeFullName,
       _Address.CityName,
       case
           when ServicePartner.AddressObjectType = '1'
            then _Address.CorrespondenceLanguage
       //            _PersonWorkplaceAddress.CorrespondenceLanguage

           else _Address.CorrespondenceLanguage
       end                                                                  as CorrespondenceLanguage,
       _Address.Country,
       _Address.DistrictName,
       _Address._CurrentDfltEmailAddress.EmailAddress,
       _Address._CurrentDfltFaxNumber.FaxAreaCodeSubscriberNumber,
       _Address._CurrentDfltFaxNumber.FaxExtensionNumber,
       _Address._CurrentDfltFaxNumber.FaxNumberCountry,
       case
           when ServicePartner.AddressObjectType = '3'
            then _PersonWorkplaceAddress.FormOfAddress
           else _Address.FormOfAddress
       end                                                                  as FormOfAddress,
       _Address.HouseNumber,
       _Address._CurrentDfltMobilePhoneNumber.PhoneAreaCodeSubscriberNumber as MobileNumber,
       _Address._CurrentDfltMobilePhoneNumber.PhoneNumberCountry            as MobilePhoneCountry,
       _Address.OrganizationName1,
       _Address.OrganizationName2,
       _Address.OrganizationName3,
       _Address.OrganizationName4,
       case
           when ServicePartner.AddressObjectType = '3'
            then _PersonWorkplaceAddress.FamilyName
           else _Address.PersonFamilyName
       end                                                                  as PersonFamilyName,
       case
           when ServicePartner.AddressObjectType = '3'
            then _PersonWorkplaceAddress.GivenName
           else _Address.PersonGivenName
       end                                                                  as PersonGivenName,

       _Address._CurrentDfltLandlinePhoneNmbr.PhoneExtensionNumber,
       _Address._CurrentDfltLandlinePhoneNmbr.PhoneAreaCodeSubscriberNumber as PhoneNumber,
       _Address._CurrentDfltLandlinePhoneNmbr.PhoneNumberCountry,
       _Address.POBox,
       _Address.POBoxPostalCode,
       _Address.PostalCode,
       _Address.Region,
       _Address.StreetName,
       _Address.StreetPrefixName1,
       _Address.StreetPrefixName2,
       _Address.StreetSuffixName1,
       _Address.StreetSuffixName2,
       _Address.TaxJurisdiction,
       _Address.TransportZone

}