@EndUserText.label: 'Customer by Sales Area and Multi Address'
@AccessControl: {
authorizationCheck: #MANDATORY,
personalData.blocking:#REQUIRED
}
@VDM.viewType: #CONSUMPTION
@ObjectModel: {
usageType: {
serviceQuality: #C,
sizeCategory: #XXL,
dataClass: #MASTER
},
dataCategory: #VALUE_HELP,
representativeKey:'Customer'
}
@Search.searchable: true
@Metadata.ignorePropagatedAnnotations: true
@Consumption.ranked: true
@Feature: 'SW:Q2C_MULTIPLE_BP_ADDRESSES, SW:Q2C_MULTIPLE_BP_ADDRESSES2'
define view entity C_SlsOrdReqCustomerMultiAddrVH
as select from I_CustomerSalesArea
inner join C_Q2CCustomerMultiAddrVH as _MultiAddr on I_CustomerSalesArea.Customer = _MultiAddr.Customer
//inner join I_BusinessPartnerCustomer as _BPCustomer on I_CustomerSalesArea.Customer = _BPCustomer.Customer
//inner join I_BusinessPartnerAddress as _BPAddress on _BPCustomer.BusinessPartner = _BPAddress.BusinessPartner
association [1..1] to I_Customer as _Customer on $projection.Customer = _Customer.Customer
association [0..*] to I_SalesOrganizationText as _SalesOrganizationText on $projection.SalesOrganization = _SalesOrganizationText.SalesOrganization
association [0..*] to I_DistributionChannelText as _DistributionChannelText on $projection.DistributionChannel = _DistributionChannelText.DistributionChannel
association [0..*] to I_DivisionText as _DivisionText on $projection.Division = _DivisionText.Division
{
@Search: {
defaultSearchElement: true,
ranking: #HIGH,
fuzzinessThreshold: 0.9
}
@ObjectModel.text.element: [ 'CustomerName' ]
@UI: {
lineItem: [{ position: 10, importance: #HIGH }],
selectionField: [{ position: 10 }],
textArrangement: #TEXT_FIRST }
key I_CustomerSalesArea.Customer,
@ObjectModel.text.association: '_SalesOrganizationText'
@Search.defaultSearchElement: true
@UI: {
lineItem: [{ position: 30, importance: #HIGH }],
selectionField: [{ position: 30 }],
textArrangement: #TEXT_FIRST }
// @Consumption.valueHelpDefault.binding.usage:#FILTER_AND_RESULT
key I_CustomerSalesArea.SalesOrganization,
@ObjectModel.text.association: '_DistributionChannelText'
@Search.defaultSearchElement: true
@UI: {
lineItem: [{ position: 40, importance: #HIGH }],
selectionField: [{ position: 40 }],
textArrangement: #TEXT_FIRST }
// @Consumption.valueHelpDefault.binding.usage:#RESULT
key I_CustomerSalesArea.DistributionChannel,
@ObjectModel.text.association: '_DivisionText'
@Search.defaultSearchElement: true
@UI: {
lineItem: [{ position: 50, importance: #HIGH }],
selectionField: [{ position: 50 }],
textArrangement: #TEXT_FIRST }
key I_CustomerSalesArea.Division,
@UI.hidden: true
key _MultiAddr.AddressID,
@Semantics.text: true
_Customer.CustomerName,
@UI.hidden: true
@Semantics.text: true
_SalesOrganizationText[1:Language = $session.system_language].SalesOrganizationName,
@UI.hidden: true
@Semantics.text: true
_DistributionChannelText[1:Language = $session.system_language].DistributionChannelName,
@UI.hidden: true
@Semantics.text: true
_DivisionText[1:Language = $session.system_language].DivisionName,
@UI.hidden: true
@Search: {
defaultSearchElement: true,
ranking: #LOW,
fuzzinessThreshold: 0.8
}
_Customer.OrganizationBPName1,
@UI.hidden: true
@Search: {
defaultSearchElement: true,
ranking: #LOW,
fuzzinessThreshold: 0.8
}
_Customer.OrganizationBPName2,
@UI: {
lineItem: [{ position: 80, importance: #LOW }],
selectionField: [{ position: 80 }]
}
@Semantics.address.zipCode:true
@Search.defaultSearchElement: true
_MultiAddr.PostalCode,
@Search.defaultSearchElement: true
@UI: {
lineItem: [{ position: 90, importance: #HIGH }],
selectionField: [{ position: 90 }] }
_MultiAddr.CityName,
@Search.defaultSearchElement: true
@UI: {
lineItem: [{ position: 100, importance: #HIGH }],
selectionField: [{ position: 100 }] }
_MultiAddr.Country,
@Search.defaultSearchElement: true
@UI: {
lineItem: [{ position: 60, importance: #HIGH }],
selectionField: [{ position: 60 }] }
_MultiAddr.StreetName,
@Search.defaultSearchElement: true
@UI: {
lineItem: [{ position: 70, importance: #HIGH }],
selectionField: [{ position: 70 }] }
_MultiAddr.HouseNumber,
//For DCL Purposes
@Consumption.hidden: true
I_CustomerSalesArea.AuthorizationGroup,
@Consumption.hidden: true
@Semantics.booleanIndicator: true
I_CustomerSalesArea.IsBusinessPurposeCompleted,
@Consumption.hidden: true
_Customer,
@Consumption.hidden: true
_SalesOrganizationText,
@Consumption.hidden: true
_DistributionChannelText,
@Consumption.hidden: true
_DivisionText
}
/*+[internal] {
"BASEINFO":
{
"FROM":
[
"C_Q2CCUSTOMERMULTIADDRVH",
"I_CUSTOMER",
"I_CUSTOMERSALESAREA",
"I_DISTRIBUTIONCHANNELTEXT",
"I_DIVISIONTEXT",
"I_SALESORGANIZATIONTEXT"
],
"ASSOCIATED":
[
"I_CUSTOMER",
"I_DISTRIBUTIONCHANNELTEXT",
"I_DIVISIONTEXT",
"I_SALESORGANIZATIONTEXT"
],
"BASE":
[],
"ANNO_REF":
[],
"SCALAR_FUNCTION":
[],
"VERSION":0,
"ANNOREF_EVALUATION_ERROR":""
}
}*/