@AbapCatalog.sqlViewName: 'IBUPACUSTTP'
@AbapCatalog.compiler.compareFilter: true
@AccessControl.authorizationCheck: #CHECK
@AccessControl.personalData.blocking: #REQUIRED
@EndUserText.label: 'BOPF view customer root'
@ClientDependent: true
@VDM.viewType: #TRANSACTIONAL
@ObjectModel.writeEnabled: true
@ObjectModel.writeDraftPersistence: 'CUSTOMER_D'
@ObjectModel.draftEnabled:true
@ObjectModel.createEnabled
@ObjectModel.deleteEnabled
@ObjectModel.updateEnabled
@Search.searchable: true
@ObjectModel.usageType.serviceQuality: #C
@ObjectModel.usageType.sizeCategory: #XL
@ObjectModel.usageType.dataClass: #MASTER
define view I_BusinessPartnerCustomerTP
as select from I_BusinessPartnerCustomer as BusinessPartnerCustomer
//// association [0..1] to E_CUST_DRAFT as _DraftExtension on $projection.Customer = _DraftExtension.customer
association [0..1] to E_Customer as _ActiveExtension on $projection.Customer = _ActiveExtension.Customer
association [0..1] to E_Customer as _DraftExtension on $projection.Customer = _DraftExtension.Customer
association [1..1] to I_BusinessPartnerTP as _BusinessPartner on $projection.BusinessPartner = _BusinessPartner.BusinessPartner
//// association [0..1] to I_DraftAdministrativeData as _DraftAdministrativeData on _DraftAdministrativeData.DraftUUID = $projection.DraftAdministrativeDataUUID
//// association [0..1] to i_businesspartnercustomertp as _SiblingEntity on $projection.IsActiveEntity <> _SiblingEntity.IsActiveEntity
//// and $projection.BusinessPartner = _SiblingEntity.BusinessPartner
{
// @Consumption.hidden: true
//// key BusinessPartnerCustomer.DraftUUID as DraftUUID,
//@Consumption.hidden: true
key BusinessPartnerCustomer.BusinessPartner as BusinessPartner,
//@Consumption.hidden: true
@ObjectModel.mandatory: 'EXTERNAL_CALCULATION'
@ObjectModel.readOnly: 'EXTERNAL_CALCULATION'
BusinessPartnerCustomer.Customer as Customer,
@Search.defaultSearchElement: true
BusinessPartnerCustomer.BusinessPartner as BusinessPartnerForEdit,
BusinessPartnerCustomer.BusinessPartnerUUID,
@ObjectModel.mandatory: 'EXTERNAL_CALCULATION'
@ObjectModel.readOnly: 'EXTERNAL_CALCULATION'
BusinessPartnerCustomer.CustomerAccountGroup,
@ObjectModel.mandatory: 'EXTERNAL_CALCULATION'
@ObjectModel.readOnly: 'EXTERNAL_CALCULATION'
BusinessPartnerCustomer.AlternativePayerAccount,
@ObjectModel.mandatory: 'EXTERNAL_CALCULATION'
@ObjectModel.readOnly: 'EXTERNAL_CALCULATION'
BusinessPartnerCustomer.DataMediumExchangeIndicator,
@ObjectModel.mandatory: 'EXTERNAL_CALCULATION'
@ObjectModel.readOnly: 'EXTERNAL_CALCULATION'
BusinessPartnerCustomer.Supplier,
@ObjectModel.mandatory: 'EXTERNAL_CALCULATION'
@ObjectModel.readOnly: 'EXTERNAL_CALCULATION'
BusinessPartnerCustomer.CustomerClassification,
@ObjectModel.mandatory: 'EXTERNAL_CALCULATION'
@ObjectModel.readOnly: 'EXTERNAL_CALCULATION'
BusinessPartnerCustomer.VATLiability,
@ObjectModel.mandatory: 'EXTERNAL_CALCULATION'
@ObjectModel.readOnly: 'EXTERNAL_CALCULATION'
BusinessPartnerCustomer.PostingIsBlocked,
@ObjectModel.mandatory: 'EXTERNAL_CALCULATION'
@ObjectModel.readOnly: 'EXTERNAL_CALCULATION'
BusinessPartnerCustomer.DeliveryIsBlocked,
@ObjectModel.mandatory: 'EXTERNAL_CALCULATION'
@ObjectModel.readOnly: 'EXTERNAL_CALCULATION'
BusinessPartnerCustomer.BillingIsBlockedForCustomer,
@ObjectModel.mandatory: 'EXTERNAL_CALCULATION'
@ObjectModel.readOnly: 'EXTERNAL_CALCULATION'
BusinessPartnerCustomer.OrderIsBlockedForCustomer,
BusinessPartnerCustomer.IsNaturalPerson,
//Data protection and privacy Requirement
@ObjectModel.readOnly: 'EXTERNAL_CALCULATION'
BusinessPartnerCustomer.AuthorizationGroup,
BusinessPartnerCustomer.DeliveryDateTypeRule,
@ObjectModel.readOnly: 'EXTERNAL_CALCULATION'
BusinessPartnerCustomer.ExpressTrainStationName,
BusinessPartnerCustomer.TrainStationName,
BusinessPartnerCustomer.CityLocationCoordinatesCode,
BusinessPartnerCustomer.Plant,
BusinessPartnerCustomer.CustomerCorporateGroup,
BusinessPartnerCustomer.DataExchangeInstructionKey,
@ObjectModel.mandatory: 'EXTERNAL_CALCULATION'
BusinessPartnerCustomer.IndustryCode1,
BusinessPartnerCustomer.IndustryCode2,
BusinessPartnerCustomer.IndustryCode3,
BusinessPartnerCustomer.IsCompetitor,
BusinessPartnerCustomer.IsSalesPartner,
BusinessPartnerCustomer.IsDefaultSoldToParty,
BusinessPartnerCustomer.IsConsumer,
BusinessPartnerCustomer.FiscalAddress,
@ObjectModel.readOnly: 'EXTERNAL_CALCULATION'
BusinessPartnerCustomer.CityCode,
@ObjectModel.readOnly: 'EXTERNAL_CALCULATION'
BusinessPartnerCustomer.County,
BusinessPartnerCustomer.FreeDefinedAttribute03,
BusinessPartnerCustomer.CustomerConditionGroup1,
BusinessPartnerCustomer.CustomerConditionGroup2,
BusinessPartnerCustomer.CustomerConditionGroup3,
BusinessPartnerCustomer.CustomerConditionGroup4,
BusinessPartnerCustomer.CustomerConditionGroup5,
BusinessPartnerCustomer.BPIsEqualizationTaxSubject,
cast (BusinessPartnerCustomer.SalesIsBlockedForCustomer as xfeld preserving type) as SalesIsBlockedForCustomer,
//BusinessPartnerCustomer.SalesIsBlockedForCustomer,
BusinessPartnerCustomer.Language,
BusinessPartnerCustomer.PaymentReason,
BusinessPartnerCustomer.CustomerCentralDeletionIsBlock,
cast( ' ' as regio ) as Region,
cast( ' ' as land1 ) as Country,
// _BusinessPartner._BusinessPartnerAddress.Country,
// _BusinessPartner._BusinessPartnerAddress.Region,
_BusinessPartner.TradingPartner,
@ObjectModel.readOnly: 'EXTERNAL_CALCULATION'
BusinessPartnerCustomer.DeletionIndicator,
/// BusinessPartnerCustomer.IsActiveEntity as IsActiveEntity,
//// BusinessPartnerCustomer.HasActiveEntity as HasActiveEntity,
//// BusinessPartnerCustomer.HasDraftEntity as HasDraftEntity,
//// BusinessPartnerCustomer.ParentDraftUUID,
//// BusinessPartnerCustomer.DraftAdministrativeDataUUID,
//Exposed for Text annotation
_DelivBlkRsnValueHelp,
_DeliveryBlockReasonText,
_AccountGroupValueHelp,
_CustomerAccountGroupText,
_BillingBlockReasonValueHelp,
_BillingBlockReasonText,
_CustomerClassValueHelp,
_CustomerClassificationText,
@ObjectModel.association.type: [#TO_COMPOSITION_PARENT, #TO_COMPOSITION_ROOT]
_BusinessPartner
//// _DraftAdministrativeData
//// _SiblingEntity
}
/*+[internal] {
"BASEINFO":
{
"FROM":
[
"I_BUSINESSPARTNERCUSTOMER",
"I_BUSINESSPARTNERTP"
],
"ASSOCIATED":
[
"E_CUSTOMER",
"I_BILLINGBLOCKREASON",
"I_BILLINGBLOCKREASONTEXT",
"I_BUSINESSPARTNERTP",
"I_CUSTOMERACCOUNTGROUP",
"I_CUSTOMERACCOUNTGROUPTEXT",
"I_CUSTOMERCLASSIFICATION",
"I_CUSTOMERCLASSIFICATIONTEXT",
"I_DELIVERYBLOCKREASON",
"I_DELIVERYBLOCKREASONTEXT"
],
"BASE":
[
"I_BUSINESSPARTNERCUSTOMER"
],
"ANNO_REF":
[],
"SCALAR_FUNCTION":
[],
"VERSION":0,
"ANNOREF_EVALUATION_ERROR":""
}
}*/