I_BPAddlCustCompanyCodeTP

DDL: I_BPADDLCUSTCOMPANYCODETP SQL: IBPADDCCCTP Type: view TRANSACTIONAL

BO view for Company Code of Customers

I_BPAddlCustCompanyCodeTP is a Transactional CDS View that provides data about "BO view for Company Code of Customers" in SAP S/4HANA. It reads from 3 data sources (I_BPMultipleAssignment, I_CustomerCompany, t047) and exposes 44 fields with key fields BusinessPartner, Customer, CompanyCode. It has 5 associations to related views.

Data Sources (3)

SourceAliasJoin Type
I_BPMultipleAssignment BPMultipleAssignment inner
I_CustomerCompany BusinessPartnerCustomerCo from
t047 CompanyCodeDunningControl left_outer

Associations (5)

CardinalityTargetAliasCondition
[1..1] I_BusinessPartnerTP _BusinessPartner $projection.BusinessPartner = _BusinessPartner.BusinessPartner
[1..1] I_BPAdditionalCustomerTP _BPAdditionalCustomer $projection.BusinessPartner = _BPAdditionalCustomer.BusinessPartner and $projection.Customer = _BPAdditionalCustomer.Customer
[1..*] I_BPAddlCustWhldgTaxTP _BusinessPartnerCustWhdgTax $projection.BusinessPartner = _BusinessPartnerCustWhdgTax.BusinessPartner and $projection.Customer = _BusinessPartnerCustWhdgTax.Customer and $projection.CompanyCode = _BusinessPartnerCustWhdgTax.CompanyCode
[1..*] I_BPAddlCustDunningTP _BPAddlCustDunning $projection.BusinessPartner = _BPAddlCustDunning.BusinessPartner and $projection.Customer = _BPAddlCustDunning.Customer and $projection.CompanyCode = _BPAddlCustDunning.CompanyCode
[1..1] I_CompanyCode _Country $projection.CompanyCode = _Country.CompanyCode

Annotations (14)

NameValueLevelField
AbapCatalog.sqlViewName IBPADDCCCTP view
AbapCatalog.compiler.compareFilter true view
AccessControl.authorizationCheck #CHECK view
AccessControl.personalData.blocking #REQUIRED view
EndUserText.label BO view for Company Code of Customers view
ObjectModel.writeEnabled true view
ObjectModel.deleteEnabled EXTERNAL_CALCULATION view
ObjectModel.writeDraftPersistence BPADDCCC_D view
ObjectModel.draftEnabled true view
ObjectModel.usageType.serviceQuality #D view
ObjectModel.usageType.sizeCategory #XXL view
ObjectModel.usageType.dataClass #MASTER view
Search.searchable true view
VDM.viewType #TRANSACTIONAL view

Fields (44)

KeyFieldSource TableSource FieldDescription
KEY BusinessPartner I_BPMultipleAssignment BusinessPartner
KEY Customer I_CustomerCompany Customer
KEY CompanyCode I_CustomerCompany CompanyCode
CompanyCodeForEdit I_CustomerCompany CompanyCode
CustomerForEdit I_CustomerCompany Customer
BusinessPartnerForEdit I_BPMultipleAssignment BusinessPartner
AccountingClerk I_CustomerCompany AccountingClerk
ReconciliationAccount I_CustomerCompany ReconciliationAccount
AuthorizationGroup I_CustomerCompany AuthorizationGroup
CustomerHeadOffice I_CustomerCompany CustomerHeadOffice
AlternativePayerAccount I_CustomerCompany AlternativePayerAccount
PaymentBlockingReason I_CustomerCompany PaymentBlockingReason
InterestCalculationCode I_CustomerCompany InterestCalculationCode
InterestCalculationDate I_CustomerCompany InterestCalculationDate
IntrstCalcFrequencyInMonths I_CustomerCompany IntrstCalcFrequencyInMonths
LastInterestCalcRunDate I_CustomerCompany LastInterestCalcRunDate
CustomerAccountNote I_CustomerCompany CustomerAccountNote
APARToleranceGroup I_CustomerCompany APARToleranceGroup
HouseBank I_CustomerCompany HouseBank
ItemIsToBePaidSeparately I_CustomerCompany ItemIsToBePaidSeparately
PaytAdviceIsSentbyEDI I_CustomerCompany PaytAdviceIsSentbyEDI
PhysicalInventoryBlockInd I_CustomerCompany PhysicalInventoryBlockInd
UserAtCustomer I_CustomerCompany UserAtCustomer
AccountingClerkPhoneNumber I_CustomerCompany AccountingClerkPhoneNumber
AccountingClerkFaxNumber I_CustomerCompany AccountingClerkFaxNumber
AccountingClerkInternetAddress I_CustomerCompany AccountingClerkInternetAddress
AccountByCustomer I_CustomerCompany AccountByCustomer
IsToBeLocallyProcessed I_CustomerCompany IsToBeLocallyProcessed
CollectiveInvoiceVariant I_CustomerCompany CollectiveInvoiceVariant
LayoutSortingRule I_CustomerCompany LayoutSortingRule
PaymentTerms I_CustomerCompany PaymentTerms
CustomerSupplierClearingIsUsed I_CustomerCompany CustomerSupplierClearingIsUsed
RecordPaymentHistoryIndicator I_CustomerCompany RecordPaymentHistoryIndicator
PaymentMethodsList I_CustomerCompany PaymentMethodsList
CashPlanningGroup I_CustomerCompany CashPlanningGroup
ValueAdjustmentKey I_CustomerCompany ValueAdjustmentKey
KnownOrNegotiatedLeave I_CustomerCompany KnownOrNegotiatedLeave
Country _Country Country
CompanyCodeName _Country CompanyCodeName
CompanyCodeDunningIsByDunArea t047 xmabe
_BusinessPartner _BusinessPartner
_BPAdditionalCustomer _BPAdditionalCustomer
_BusinessPartnerCustWhdgTax _BusinessPartnerCustWhdgTax
_BPAddlCustDunning _BPAddlCustDunning
@AbapCatalog.sqlViewName: 'IBPADDCCCTP'
@AbapCatalog.compiler.compareFilter: true
@AccessControl.authorizationCheck: #CHECK
@AccessControl.personalData.blocking: #REQUIRED
@EndUserText.label: 'BO view for Company Code of Customers'
@ObjectModel.writeEnabled: true
@ObjectModel.createEnabled
@ObjectModel.deleteEnabled: 'EXTERNAL_CALCULATION'
@ObjectModel.updateEnabled
@ObjectModel.semanticKey: ['BusinessPartner', 'Customer', 'CompanyCode']
@ObjectModel.writeDraftPersistence: 'BPADDCCC_D'
@ObjectModel.draftEnabled:true
@ObjectModel.usageType.serviceQuality: #D
@ObjectModel.usageType.sizeCategory: #XXL
@ObjectModel.usageType.dataClass: #MASTER
@Search.searchable: true
@VDM.viewType: #TRANSACTIONAL

define view I_BPAddlCustCompanyCodeTP
  as select from I_CustomerCompany as BusinessPartnerCustomerCo 
                 inner join I_BPMultipleAssignment as BPMultipleAssignment on BusinessPartnerCustomerCo.Customer = BPMultipleAssignment.BPObjectID
                 left outer join t047 as CompanyCodeDunningControl on BusinessPartnerCustomerCo.CompanyCode = CompanyCodeDunningControl.bukrs

  association [1..1] to I_BusinessPartnerTP as _BusinessPartner on  $projection.BusinessPartner = _BusinessPartner.BusinessPartner

  association [1..1] to I_BPAdditionalCustomerTP as _BPAdditionalCustomer on $projection.BusinessPartner = _BPAdditionalCustomer.BusinessPartner
                                                                         and $projection.Customer = _BPAdditionalCustomer.Customer
                                                                         
  association [1..*] to I_BPAddlCustWhldgTaxTP as _BusinessPartnerCustWhdgTax on $projection.BusinessPartner = _BusinessPartnerCustWhdgTax.BusinessPartner
                                                                         and $projection.Customer = _BusinessPartnerCustWhdgTax.Customer
                                                                         and $projection.CompanyCode = _BusinessPartnerCustWhdgTax.CompanyCode
                                                                         
  association [1..*] to I_BPAddlCustDunningTP as _BPAddlCustDunning on $projection.BusinessPartner = _BPAddlCustDunning.BusinessPartner
                                                                         and $projection.Customer = _BPAddlCustDunning.Customer
                                                                         and $projection.CompanyCode = _BPAddlCustDunning.CompanyCode
  
  association [1..1] to I_CompanyCode                 as _Country                   on  $projection.CompanyCode = _Country.CompanyCode
  
{
      key BPMultipleAssignment.BusinessPartner,
      key BusinessPartnerCustomerCo.Customer,
      key BusinessPartnerCustomerCo.CompanyCode,
      @Search.defaultSearchElement: true
      @Search.fuzzinessThreshold: 0.8
      @Search.ranking: #HIGH
      @ObjectModel.readOnly: 'EXTERNAL_CALCULATION'
      BusinessPartnerCustomerCo.CompanyCode     as CompanyCodeForEdit,
      BusinessPartnerCustomerCo.Customer as CustomerForEdit,
      BPMultipleAssignment.BusinessPartner as BusinessPartnerForEdit,
      @ObjectModel.readOnly: 'EXTERNAL_CALCULATION'
      BusinessPartnerCustomerCo.AccountingClerk,
      @ObjectModel.readOnly: 'EXTERNAL_CALCULATION'
      BusinessPartnerCustomerCo.ReconciliationAccount,
      BusinessPartnerCustomerCo.AuthorizationGroup,
      @ObjectModel.readOnly: 'EXTERNAL_CALCULATION'
      BusinessPartnerCustomerCo.CustomerHeadOffice,
      @ObjectModel.readOnly: 'EXTERNAL_CALCULATION'
      BusinessPartnerCustomerCo.AlternativePayerAccount,
      @ObjectModel.readOnly: 'EXTERNAL_CALCULATION'
      BusinessPartnerCustomerCo.PaymentBlockingReason,
      @ObjectModel.readOnly: 'EXTERNAL_CALCULATION'
      BusinessPartnerCustomerCo.InterestCalculationCode,
      @ObjectModel.readOnly: 'EXTERNAL_CALCULATION'
      BusinessPartnerCustomerCo.InterestCalculationDate,
      BusinessPartnerCustomerCo.IntrstCalcFrequencyInMonths,
      BusinessPartnerCustomerCo.LastInterestCalcRunDate,
      @ObjectModel.readOnly: 'EXTERNAL_CALCULATION'
      BusinessPartnerCustomerCo.CustomerAccountNote,
      @ObjectModel.readOnly: 'EXTERNAL_CALCULATION'
      BusinessPartnerCustomerCo.APARToleranceGroup,
      @ObjectModel.readOnly: 'EXTERNAL_CALCULATION'
      BusinessPartnerCustomerCo.HouseBank,
      @ObjectModel.readOnly: 'EXTERNAL_CALCULATION'
      BusinessPartnerCustomerCo.ItemIsToBePaidSeparately,
      @ObjectModel.readOnly: 'EXTERNAL_CALCULATION'
      BusinessPartnerCustomerCo.PaytAdviceIsSentbyEDI,
      BusinessPartnerCustomerCo.PhysicalInventoryBlockInd,
      @ObjectModel.readOnly: 'EXTERNAL_CALCULATION'
      BusinessPartnerCustomerCo.UserAtCustomer,
      @ObjectModel.readOnly: 'EXTERNAL_CALCULATION'
      BusinessPartnerCustomerCo.AccountingClerkPhoneNumber,
      @ObjectModel.readOnly: 'EXTERNAL_CALCULATION'
      BusinessPartnerCustomerCo.AccountingClerkFaxNumber,
      @ObjectModel.readOnly: 'EXTERNAL_CALCULATION'
      BusinessPartnerCustomerCo.AccountingClerkInternetAddress,
      @ObjectModel.readOnly: 'EXTERNAL_CALCULATION'
      BusinessPartnerCustomerCo.AccountByCustomer,
      @ObjectModel.readOnly: 'EXTERNAL_CALCULATION'
      BusinessPartnerCustomerCo.IsToBeLocallyProcessed,
      @ObjectModel.readOnly: 'EXTERNAL_CALCULATION'
      BusinessPartnerCustomerCo.CollectiveInvoiceVariant,
      @ObjectModel.readOnly: 'EXTERNAL_CALCULATION'
      BusinessPartnerCustomerCo.LayoutSortingRule,
      @ObjectModel.readOnly: 'EXTERNAL_CALCULATION'
      BusinessPartnerCustomerCo.PaymentTerms,
      @ObjectModel.readOnly: 'EXTERNAL_CALCULATION'
      BusinessPartnerCustomerCo.CustomerSupplierClearingIsUsed,
      @ObjectModel.readOnly: 'EXTERNAL_CALCULATION'
      BusinessPartnerCustomerCo.RecordPaymentHistoryIndicator,
      @ObjectModel.readOnly: 'EXTERNAL_CALCULATION'
      BusinessPartnerCustomerCo.PaymentMethodsList,
      @ObjectModel.readOnly: 'EXTERNAL_CALCULATION'
      BusinessPartnerCustomerCo.CashPlanningGroup,
      @ObjectModel.readOnly: 'EXTERNAL_CALCULATION'
      BusinessPartnerCustomerCo.ValueAdjustmentKey,
      @ObjectModel.readOnly: 'EXTERNAL_CALCULATION'
      BusinessPartnerCustomerCo.KnownOrNegotiatedLeave,     
      _Country.Country, // country field to filter payment methods based on company code

      _Country.CompanyCodeName,
      CompanyCodeDunningControl.xmabe as CompanyCodeDunningIsByDunArea,
      
      @ObjectModel.association.type: [#TO_COMPOSITION_ROOT]
      _BusinessPartner,     
      @ObjectModel.association.type: [#TO_COMPOSITION_PARENT]
      _BPAdditionalCustomer,      
      @ObjectModel.association.type: [#TO_COMPOSITION_CHILD]
      _BusinessPartnerCustWhdgTax,
      @ObjectModel.association.type: [#TO_COMPOSITION_CHILD]
      _BPAddlCustDunning
      
}

where BPMultipleAssignment.IsStandardAssignment <> 'X' and BPMultipleAssignment.BPAssignmentCategory = 'CUST'
/*+[internal] {
"BASEINFO":
{
"FROM":
[
"I_BPMULTIPLEASSIGNMENT",
"I_COMPANYCODE",
"I_CUSTOMERCOMPANY",
"T047"
],
"ASSOCIATED":
[
"I_BPADDITIONALCUSTOMERTP",
"I_BPADDLCUSTDUNNINGTP",
"I_BPADDLCUSTWHLDGTAXTP",
"I_BUSINESSPARTNERTP",
"I_COMPANYCODE"
],
"BASE":
[],
"ANNO_REF":
[],
"SCALAR_FUNCTION":
[],
"VERSION":0,
"ANNOREF_EVALUATION_ERROR":""
}
}*/