I_MakeBankTransferTemplateTP
BOPF View for Repetitive Code
I_MakeBankTransferTemplateTP is a Transactional CDS View that provides data about "BOPF View for Repetitive Code" in SAP S/4HANA. It reads from 2 data sources (P_MakeBankTransferTemplate, I_CompanyCode) and exposes 27 fields with key field RepetitiveCodeFlowID. It has 3 associations to related views. Part of development package ODATA_BANKTRANSFER.
Data Sources (2)
| Source | Alias | Join Type |
|---|---|---|
| P_MakeBankTransferTemplate | a | from |
| I_CompanyCode | c | inner |
Associations (3)
| Cardinality | Target | Alias | Condition |
|---|---|---|---|
| [1..1] | I_CompanyCode | _PayingCompanyCode | $projection.PayingCompanyCode = _PayingCompanyCode.CompanyCode |
| [1..1] | I_CompanyCode | _PayeeCompanyCode | $projection.PayeeCompanyCode = _PayeeCompanyCode.CompanyCode |
| [0..1] | I_PaymentMethod | _PaymentMethod | $projection.Country = _PaymentMethod.Country and $projection.PaymentMethod = _PaymentMethod.PaymentMethod |
Annotations (21)
| Name | Value | Level | Field |
|---|---|---|---|
| AbapCatalog.sqlViewName | IMBKWITHTMPL | view | |
| AbapCatalog.compiler.compareFilter | true | view | |
| VDM.viewType | #TRANSACTIONAL | view | |
| AccessControl.personalData.blocking | #REQUIRED | view | |
| ObjectModel.compositionRoot | true | view | |
| ObjectModel.modelCategory | #BUSINESS_OBJECT | view | |
| ObjectModel.transactionalProcessingEnabled | true | view | |
| ObjectModel.writeDraftPersistence | IMBKWITHTMPLDF | view | |
| ObjectModel.draftEnabled | true | view | |
| ObjectModel.createEnabled | true | view | |
| ObjectModel.updateEnabled | EXTERNAL_CALCULATION | view | |
| ObjectModel.deleteEnabled | EXTERNAL_CALCULATION | view | |
| ObjectModel.representativeKey | RepetitiveCodeFlowID | view | |
| ObjectModel.usageType.sizeCategory | #M | view | |
| ObjectModel.usageType.serviceQuality | #C | view | |
| ObjectModel.usageType.dataClass | #ORGANIZATIONAL | view | |
| Search.searchable | true | view | |
| ClientHandling.algorithm | #SESSION_VARIABLE | view | |
| AccessControl.authorizationCheck | #NOT_REQUIRED | view | |
| Metadata.allowExtensions | true | view | |
| EndUserText.label | BOPF View for Repetitive Code | view |
Fields (27)
| Key | Field | Source Table | Source Field | Description |
|---|---|---|---|---|
| KEY | RepetitiveCodeFlowID | RepetitiveCodeFlowID | ||
| RepetitiveCode | P_MakeBankTransferTemplate | RepetitiveCode | ||
| PayingCompanyCode | P_MakeBankTransferTemplate | PayingCompanyCode | ||
| PayingBankAccount | _PayingBankAccount | BankAccountNumber | ||
| PayingBankAccountInternalID | _PayingHouseBank | BankAccountInternalID | ||
| PayingBankAccountDescription | _PayingHouseBank | BankAccountDescription | ||
| PayeeCompanyCode | P_MakeBankTransferTemplate | PayeeCompanyCode | ||
| PayeeBankAccount | _PayeeBankAccount | BankAccountNumber | ||
| PayeeBankAccountInternalID | _PayeeHouseBank | BankAccountInternalID | ||
| PayeeBankAccountDescription | _PayeeHouseBank | BankAccountDescription | ||
| PaymentMethod | P_MakeBankTransferTemplate | PaymentMethod | ||
| Currency | P_MakeBankTransferTemplate | Currency | ||
| RepetitiveCodeReferenceText | P_MakeBankTransferTemplate | RepetitiveCodeReferenceText | ||
| HouseBank | P_MakeBankTransferTemplate | HouseBank | ||
| PayingHouseBank | P_MakeBankTransferTemplate | PayingHouseBank | ||
| PayingHouseBankAccount | P_MakeBankTransferTemplate | PayingHouseBankAccount | ||
| BankCountry | _PayingBankAccount | BankCountry | ||
| PayingBankKey | _PayingBankAccount | Bank | ||
| PayeeBankKey | _PayeeBankAccount | Bank | ||
| PayeeBankCountry | _PayeeBankAccount | BankCountry | ||
| PayeeHouseBank | P_MakeBankTransferTemplate | PayeeHouseBank | ||
| PayeeHouseBankAccount | P_MakeBankTransferTemplate | PayeeHouseBankAccount | ||
| HouseBankAccount | P_MakeBankTransferTemplate | HouseBankAccount | ||
| Country | I_CompanyCode | Country | ||
| _PayingCompanyCode | _PayingCompanyCode | |||
| _PayeeCompanyCode | _PayeeCompanyCode | |||
| _PaymentMethod | _PaymentMethod |
@AbapCatalog.sqlViewName: 'IMBKWITHTMPL'
@AbapCatalog.compiler.compareFilter: true
@VDM.viewType: #TRANSACTIONAL
@AccessControl.personalData.blocking: #REQUIRED
@ObjectModel: {
compositionRoot: true,
modelCategory: #BUSINESS_OBJECT,
transactionalProcessingEnabled: true,
writeDraftPersistence: 'IMBKWITHTMPLDF',
draftEnabled: true,
createEnabled: true,
updateEnabled: 'EXTERNAL_CALCULATION',
deleteEnabled: 'EXTERNAL_CALCULATION',
semanticKey: [ 'RepetitiveCodeFlowID'],
representativeKey: 'RepetitiveCodeFlowID',
usageType: {
sizeCategory: #M,
serviceQuality: #C,
dataClass: #ORGANIZATIONAL
}
}
@Search.searchable: true
@ClientHandling.algorithm: #SESSION_VARIABLE
@AccessControl.authorizationCheck: #NOT_REQUIRED
@Metadata.allowExtensions: true
@EndUserText.label: 'BOPF View for Repetitive Code'
define view I_MakeBankTransferTemplateTP as select from P_MakeBankTransferTemplate as a
inner join I_CompanyCode as c on a.PayingCompanyCode = c.CompanyCode
left outer to one join I_HouseBankAccountLinkage as _PayingHouseBank on a.PayingCompanyCode = _PayingHouseBank.CompanyCode
and a.PayingHouseBank = _PayingHouseBank.HouseBank
and a.PayingHouseBankAccount = _PayingHouseBank.HouseBankAccount
left outer to one join I_BankAccount as _PayingBankAccount on _PayingHouseBank.BankAccountInternalID = _PayingBankAccount.BankAccountInternalID
left outer to one join I_HouseBankAccountLinkage as _PayeeHouseBank on a.PayeeCompanyCode = _PayeeHouseBank.CompanyCode
and a.HouseBank = _PayeeHouseBank.HouseBank
and a.HouseBankAccount = _PayeeHouseBank.HouseBankAccount
left outer to one join I_BankAccount as _PayeeBankAccount on _PayeeHouseBank.BankAccountInternalID = _PayeeBankAccount.BankAccountInternalID
association [1..1] to I_CompanyCode as _PayingCompanyCode on $projection.PayingCompanyCode = _PayingCompanyCode.CompanyCode
association [1..1] to I_CompanyCode as _PayeeCompanyCode on $projection.PayeeCompanyCode = _PayeeCompanyCode.CompanyCode
association [0..1] to I_PaymentMethod as _PaymentMethod on $projection.Country = _PaymentMethod.Country
and $projection.PaymentMethod = _PaymentMethod.PaymentMethod
{
key RepetitiveCodeFlowID,
@Search.defaultSearchElement: true
a.RepetitiveCode,
@ObjectModel: {
enabled: 'EXTERNAL_CALCULATION',
readOnly: 'EXTERNAL_CALCULATION',
mandatory: 'EXTERNAL_CALCULATION'
}
@Search.defaultSearchElement: true
a.PayingCompanyCode,
@ObjectModel: {
enabled: 'EXTERNAL_CALCULATION',
readOnly: 'EXTERNAL_CALCULATION',
mandatory: 'EXTERNAL_CALCULATION'
}
@Search.defaultSearchElement: true
_PayingBankAccount.BankAccountNumber as PayingBankAccount,
@ObjectModel: {
enabled: 'EXTERNAL_CALCULATION',
readOnly: 'EXTERNAL_CALCULATION',
mandatory: 'EXTERNAL_CALCULATION'
}
@Search.defaultSearchElement: true
_PayingHouseBank.BankAccountInternalID as PayingBankAccountInternalID,
@ObjectModel: {
enabled: 'EXTERNAL_CALCULATION',
readOnly: 'EXTERNAL_CALCULATION',
mandatory: 'EXTERNAL_CALCULATION'
}
// _PayingAccount.description as PayingBankAccountDescription,
_PayingHouseBank.BankAccountDescription as PayingBankAccountDescription,
@ObjectModel: {
enabled: 'EXTERNAL_CALCULATION',
readOnly: 'EXTERNAL_CALCULATION',
mandatory: 'EXTERNAL_CALCULATION'
}
@Search.defaultSearchElement: true
a.PayeeCompanyCode,
@ObjectModel: {
enabled: 'EXTERNAL_CALCULATION',
readOnly: 'EXTERNAL_CALCULATION',
mandatory: 'EXTERNAL_CALCULATION'
}
@Search.defaultSearchElement: true
_PayeeBankAccount.BankAccountNumber as PayeeBankAccount,
@ObjectModel: {
enabled: 'EXTERNAL_CALCULATION',
readOnly: 'EXTERNAL_CALCULATION',
mandatory: 'EXTERNAL_CALCULATION'
}
_PayeeHouseBank.BankAccountInternalID as PayeeBankAccountInternalID,
@ObjectModel: {
enabled: 'EXTERNAL_CALCULATION',
readOnly: 'EXTERNAL_CALCULATION',
mandatory: 'EXTERNAL_CALCULATION'
}
_PayeeHouseBank.BankAccountDescription as PayeeBankAccountDescription,
@ObjectModel.mandatory: true
@Search.defaultSearchElement: true
a.PaymentMethod,
@ObjectModel.mandatory: true
@Search.defaultSearchElement: true
a.Currency,
a.RepetitiveCodeReferenceText,
a.HouseBank,
@ObjectModel: {
enabled: 'EXTERNAL_CALCULATION',
readOnly: 'EXTERNAL_CALCULATION',
mandatory: 'EXTERNAL_CALCULATION'
}
a.PayingHouseBank as PayingHouseBank,
@ObjectModel: {
enabled: 'EXTERNAL_CALCULATION',
readOnly: 'EXTERNAL_CALCULATION',
mandatory: 'EXTERNAL_CALCULATION'
}
a.PayingHouseBankAccount,
_PayingBankAccount.BankCountry as BankCountry,
_PayingBankAccount.Bank as PayingBankKey,
_PayeeBankAccount.Bank as PayeeBankKey,
_PayeeBankAccount.BankCountry as PayeeBankCountry,
a.PayeeHouseBank,
a.PayeeHouseBankAccount,
a.HouseBankAccount,
c.Country,
_PayingCompanyCode,
_PayeeCompanyCode,
_PaymentMethod
}
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