P_SA_CompanyCode_Address

DDL: P_SA_COMPANYCODE_ADDRESS SQL: PSACOMPCODEADDRS Type: view COMPOSITE

P_SA_CompanyCode_Address is a Composite CDS View in SAP S/4HANA. It reads from 3 data sources (I_CompanyCode, I_CountryText, I_OrganizationAddress) and exposes 12 fields with key field CompanyCode.

Data Sources (3)

SourceAliasJoin Type
I_CompanyCode I_CompanyCode from
I_CountryText I_CountryText inner
I_OrganizationAddress I_OrganizationAddress inner

Annotations (9)

NameValueLevelField
AbapCatalog.sqlViewName PSACOMPCODEADDRS view
VDM.viewType #COMPOSITE view
VDM.private true view
AccessControl.authorizationCheck #NOT_REQUIRED view
ClientHandling.algorithm #SESSION_VARIABLE view
ObjectModel.usageType.sizeCategory #S view
ObjectModel.usageType.serviceQuality #D view
ObjectModel.usageType.dataClass #CUSTOMIZING view
AccessControl.personalData.blocking #NOT_REQUIRED view

Fields (12)

KeyFieldSource TableSource FieldDescription
KEY CompanyCode CompanyCode
CompanyCodeName CompanyCodeName
VATRegistration VATRegistration
HouseNumber I_OrganizationAddress HouseNumber
StreetName I_OrganizationAddress StreetName
CityName I_OrganizationAddress CityName
POBox I_OrganizationAddress POBox
Country I_OrganizationAddress Country
EmailAddress
PhoneNumber
CompanyName
CountryName1asCompanyCodeAddress
@AbapCatalog.sqlViewName: 'PSACOMPCODEADDRS'
@VDM.viewType: #COMPOSITE
@VDM.private: true
@AccessControl.authorizationCheck:#NOT_REQUIRED
@ClientHandling.algorithm: #SESSION_VARIABLE
@ObjectModel.usageType.sizeCategory: #S
@ObjectModel.usageType.serviceQuality: #D
@ObjectModel.usageType.dataClass:#CUSTOMIZING
@AccessControl.personalData.blocking: #NOT_REQUIRED
define view P_SA_CompanyCode_Address as select from I_CompanyCode 
inner join I_OrganizationAddress on I_OrganizationAddress.AddressID = I_CompanyCode.AddressID 
                                    and I_OrganizationAddress.AddressPersonID is initial
                                    and I_OrganizationAddress.AddressRepresentationCode is initial
inner join I_CountryText on I_CountryText.Country = 'SA'
                         and I_CountryText.Language =  $session.system_language
{ 
 @ObjectModel.text.element: 'CompanyCodeName'
 key CompanyCode,
 @Semantics.text
    CompanyCodeName, 
    VATRegistration,
    I_OrganizationAddress.HouseNumber,
    I_OrganizationAddress.StreetName,
    I_OrganizationAddress.CityName,
    I_OrganizationAddress.POBox,
    I_OrganizationAddress.Country,
    I_OrganizationAddress._EmailAddress[EmailAddressIsCurrentDefault = 'X'].EmailAddress,
    I_OrganizationAddress._PhoneNumber[PhoneNumberType = '1'].PhoneAreaCodeSubscriberNumber as PhoneNumber,
    concat_with_space(concat(CompanyCode,'-'), CompanyCodeName , 1) as CompanyName,    
    concat_with_space(concat_with_space( (concat_with_space(concat(I_OrganizationAddress.HouseNumber, ','),concat(I_OrganizationAddress.StreetName, ','),1)),
                                         (concat_with_space(concat(I_OrganizationAddress.CityName, ','), concat(I_OrganizationAddress.POBox, ','),1)), 1),
                                         I_CountryText.CountryName,1) as CompanyCodeAddress
                                         
   
       
}

where I_OrganizationAddress.CorrespondenceLanguage = $session.system_language
/*+[internal] {
"BASEINFO":
{
"FROM":
[
"I_ADDRESSEMAILADDRESS_2",
"I_ADDRESSPHONENUMBER_2",
"I_COMPANYCODE",
"I_COUNTRYTEXT",
"I_ORGANIZATIONADDRESS"
],
"ASSOCIATED":
[],
"BASE":
[],
"ANNO_REF":
[],
"SCALAR_FUNCTION":
[],
"VERSION":0,
"ANNOREF_EVALUATION_ERROR":""
}
}*/