I_BusinessPartnerBank
Business Partner Bank
I_BusinessPartnerBank is a Basic CDS View (Dimension) that provides data about "Business Partner Bank" in SAP S/4HANA. It reads from 1 data source (but0bk) and exposes 27 fields with key fields BusinessPartner, BankIdentification. It has 4 associations to related views. It is exposed through 1 OData service (FAP_DISPLAY_SUPPLIER_LIST). It is used in 1 Fiori application: Display Supplier List. Part of development package VDM_MD_BP.
Data Sources (1)
| Source | Alias | Join Type |
|---|---|---|
| but0bk | BusinessPartnerBank | from |
Associations (4)
| Cardinality | Target | Alias | Condition |
|---|---|---|---|
| [1..1] | I_BusinessPartner | _BusinessPartner | $projection.BusinessPartner = _BusinessPartner.BusinessPartner |
| [1..1] | I_Bank | _Bank | $projection.BankNumber = _Bank.BankInternalID and $projection.BankCountryKey = _Bank.BankCountry |
| [1..1] | I_Iban | _IBAN | $projection.BankAccount = _IBAN.BankAccount and $projection.BankNumber = _IBAN.Bank and $projection.BankCountryKey = _IBAN.BankCountry and $projection.BankControlKey = _IBAN.BankControlKey |
| [1..1] | I_BusinessPartnerBankAlias | _BusinessPartnerBankAlias | $projection.BPBankUUID = _BusinessPartnerBankAlias.BPBankUUID |
Annotations (19)
| Name | Value | Level | Field |
|---|---|---|---|
| AbapCatalog.sqlViewName | IBUPABANK | view | |
| AbapCatalog.compiler.compareFilter | true | view | |
| AccessControl.authorizationCheck | #CHECK | view | |
| AccessControl.personalData.blocking | #REQUIRED | view | |
| AccessControl.personalData.blockingIndicator | _BusinessPartner.IsBusinessPurposeCompleted | view | |
| Analytics.dataCategory | #DIMENSION | view | |
| Analytics.dataExtraction.enabled | true | view | |
| ObjectModel.sapObjectNodeType.name | BusinessPartnerBank | view | |
| ObjectModel.representativeKey | BankIdentification | view | |
| VDM.viewType | #BASIC | view | |
| EndUserText.label | Business Partner Bank | view | |
| ClientHandling.algorithm | #SESSION_VARIABLE | view | |
| ObjectModel.modelingPattern | #NONE | view | |
| ObjectModel.usageType.serviceQuality | #B | view | |
| ObjectModel.usageType.sizeCategory | #L | view | |
| ObjectModel.usageType.dataClass | #MASTER | view | |
| Metadata.allowExtensions | true | view | |
| Metadata.ignorePropagatedAnnotations | true | view | |
| Search.searchable | true | view |
OData Services (1)
| Service | Binding | Version | Contract | Release |
|---|---|---|---|---|
| FAP_DISPLAY_SUPPLIER_LIST | FAP_DISPLAY_SUPPLIER_LIST | V2 | C1 | NOT_RELEASED |
Fiori Apps (1)
| App ID | App Name | Type | Description |
|---|---|---|---|
| F1861 | Display Supplier List | Transactional | Display Supplier List |
Display Supplier List
Business Role: Accounts Payable Accountant
With this app you can display and download a list of suppliers. You can use the search filters to create custom lists of suppliers to provide to stakeholders and auditors. Key FeaturesView contact details for your suppliersGenerate custom lists of obsolete suppliers, blocked suppliers, or suppliers based on payment methodAccess the bank details and payment methods for your suppliers
Fields (27)
| Key | Field | Source Table | Source Field | Description |
|---|---|---|---|---|
| KEY | BusinessPartner | but0bk | partner | |
| KEY | BankIdentification | but0bk | bkvid | |
| BankCountryKey | but0bk | banks | ||
| BankName | _Bank | BankName | ||
| BankNumber | but0bk | bankl | ||
| SWIFTCode | _Bank | SWIFTCode | ||
| BankControlKey | but0bk | bkont | ||
| BankAccountHolderName | but0bk | koinh | ||
| BankAccountName | but0bk | accname | ||
| ValidityStartDate | but0bk | bk_valid_from | ||
| ValidityEndDate | but0bk | bk_valid_to | ||
| ibanendasIBAN | ||||
| IBANValidityStartDate | _IBAN | IBANValidityStartDate | ||
| BankAccount | but0bk | bankn | ||
| BankAccountReferenceText | but0bk | bkref | ||
| CollectionAuthInd | but0bk | xezer | ||
| BusinessPartnerExternalBankID | but0bk | bkext | ||
| BPBankDetailsChangeDate | but0bk | bk_move_date | ||
| BPBankDetailsChangeTargetID | but0bk | move_bkvid | ||
| BPBankIsProtected | but0bk | protect | ||
| BPBankUUID | but0bk | bp_bank_guid | ||
| CityName | _Bank | CityName | ||
| _Bank | _Bank | |||
| _IBAN | _IBAN | |||
| _BusinessPartner | _BusinessPartner | |||
| _BusinessPartnerBankAlias | _BusinessPartnerBankAlias | |||
| AuthorizationGroup | _BusinessPartner | AuthorizationGroup |
@AbapCatalog.sqlViewName: 'IBUPABANK'
@AbapCatalog.compiler.compareFilter: true
@AccessControl.authorizationCheck: #CHECK
@AccessControl.personalData.blocking: #REQUIRED
@AccessControl.personalData.blockingIndicator: '_BusinessPartner.IsBusinessPurposeCompleted'
//@Analytics: {
// dataCategory: #DIMENSION,
// dataExtraction: {
// enabled: true,
// delta.changeDataCapture: {
// automatic: true
// }
// }
//}
@Analytics: {
dataCategory: #DIMENSION,
dataExtraction: {
enabled: true,
delta.changeDataCapture: {
mapping:[
{
table: 'BUT0BK', role: #MAIN,
viewElement: ['BusinessPartner','BankIdentification'],
tableElement: ['partner','bkvid']
},
{
table: 'BUT000', role: #LEFT_OUTER_TO_ONE_JOIN,
viewElement: ['BusinessPartner'],
tableElement: ['partner']
},
{
table: 'BNKA', role: #LEFT_OUTER_TO_ONE_JOIN,
viewElement: ['BankCountryKey','BankNumber'],
tableElement: ['banks', 'bankl']
},
{
table: 'TIBAN', role: #LEFT_OUTER_TO_ONE_JOIN,
viewElement: ['BankCountryKey','BankNumber','BankAccount','BankControlKey'],
tableElement: ['banks', 'bankl','bankn', 'bkont']
}
]
}
}
}
@ObjectModel.sapObjectNodeType.name: 'BusinessPartnerBank'
@ObjectModel.representativeKey:'BankIdentification'
@VDM.viewType: #BASIC
@EndUserText.label: 'Business Partner Bank'// data'
@ClientHandling.algorithm: #SESSION_VARIABLE
@ObjectModel.supportedCapabilities: [#SQL_DATA_SOURCE,
#CDS_MODELING_DATA_SOURCE,
#CDS_MODELING_ASSOCIATION_TARGET,
#EXTRACTION_DATA_SOURCE]
@ObjectModel.modelingPattern: #NONE
@ObjectModel.usageType.serviceQuality: #B
@ObjectModel.usageType.sizeCategory: #L
@ObjectModel.usageType.dataClass: #MASTER
@Metadata.allowExtensions: true
@Metadata.ignorePropagatedAnnotations: true
@Search.searchable: true
@Consumption.dbHints: [ 'USE_HEX_PLAN' ]
define view I_BusinessPartnerBank
as select from but0bk as BusinessPartnerBank
association [1..1] to I_BusinessPartner as _BusinessPartner on $projection.BusinessPartner = _BusinessPartner.BusinessPartner
association [1..1] to I_Bank as _Bank on $projection.BankNumber = _Bank.BankInternalID
and $projection.BankCountryKey = _Bank.BankCountry
// association [1..1] to tiban as _IBAN on $projection.BankAccount = _IBAN.bankn
// and $projection.BankNumber = _IBAN.bankl
// and $projection.BankCountryKey = _IBAN.banks
// and $projection.BankControlKey = _IBAN.bkont
association [1..1] to I_Iban as _IBAN on $projection.BankAccount = _IBAN.BankAccount
and $projection.BankNumber = _IBAN.Bank
and $projection.BankCountryKey = _IBAN.BankCountry
and $projection.BankControlKey = _IBAN.BankControlKey
association [1..1] to I_BusinessPartnerBankAlias as _BusinessPartnerBankAlias on $projection.BPBankUUID = _BusinessPartnerBankAlias.BPBankUUID
{
@Search.defaultSearchElement: true
@ObjectModel.foreignKey.association: '_BusinessPartner'
key BusinessPartnerBank.partner as BusinessPartner,
@Search.defaultSearchElement: true
key BusinessPartnerBank.bkvid as BankIdentification,
BusinessPartnerBank.banks as BankCountryKey,
_Bank.BankName as BankName,
BusinessPartnerBank.bankl as BankNumber,
_Bank.SWIFTCode as SWIFTCode,
BusinessPartnerBank.bkont as BankControlKey,
BusinessPartnerBank.koinh as BankAccountHolderName,
BusinessPartnerBank.accname as BankAccountName,
BusinessPartnerBank.bk_valid_from as ValidityStartDate,
BusinessPartnerBank.bk_valid_to as ValidityEndDate,
//_IBAN.IBAN as IBAN,
@UI.hidden: true
@API.element.releaseState: #DEPRECATED
@API.element.successor: 'BPIsActualDate'
case
when BusinessPartnerBank.bk_valid_from <= tstmp_current_utctimestamp()
and BusinessPartnerBank.bk_valid_to >= tstmp_current_utctimestamp()
then cast('X' as boole_d)
else cast(' ' as boole_d)
end as IsActualDate,
case
when BusinessPartnerBank.bk_valid_from <= tstmp_current_utctimestamp()
and BusinessPartnerBank.bk_valid_to >= tstmp_current_utctimestamp()
then cast('X' as boole_d)
else cast(' ' as boole_d)
end as BPIsActualDate,
case
when BusinessPartnerBank.bankn <> ''
then _IBAN.IBAN
else
BusinessPartnerBank.iban
end as IBAN,
_IBAN.IBANValidityStartDate as IBANValidityStartDate,
BusinessPartnerBank.bankn as BankAccount,
BusinessPartnerBank.bkref as BankAccountReferenceText,
BusinessPartnerBank.xezer as CollectionAuthInd,
BusinessPartnerBank.bkext as BusinessPartnerExternalBankID,
BusinessPartnerBank.bk_move_date as BPBankDetailsChangeDate,
BusinessPartnerBank.move_bkvid as BPBankDetailsChangeTargetID,
BusinessPartnerBank.protect as BPBankIsProtected,
BusinessPartnerBank.bp_bank_guid as BPBankUUID,
_Bank.CityName as CityName,
_Bank,
_IBAN,
_BusinessPartner,
_BusinessPartnerBankAlias,
_BusinessPartner.AuthorizationGroup
}
Learn More
- What Is a CDS View in SAP S/4HANA?
- Types of CDS Views: Basic, Composite, Consumption, and Transactional
- SAP Tables vs CDS Views — Key Differences
- Understanding Data Lineage in SAP S/4HANA
- VDM (Virtual Data Model) in SAP S/4HANA Explained
- CDS View Annotations — A Complete Guide
- CDS View Field Mapping and Associations
- Understanding the SAP S/4HANA Data Model
- CDS View Extensions and Custom Fields in SAP S/4HANA
- Released APIs and Stability Contracts in SAP S/4HANA