R_CashBankTP
Cash Transactional Bank TP
R_CashBankTP is a Transactional CDS View that provides data about "Cash Transactional Bank TP" in SAP S/4HANA. It reads from 1 data source (I_Bank_2) and exposes 38 fields with key fields BankCountry, BankInternalID. It has 15 associations to related views.
Data Sources (1)
| Source | Alias | Join Type |
|---|---|---|
| I_Bank_2 | Bank | from |
Associations (15)
| Cardinality | Target | Alias | Condition |
|---|---|---|---|
| [1..1] | R_BankTP | _Bank | $projection.BankCountry = _Bank.BankCountry and $projection.BankInternalID = _Bank.BankInternalID |
| [0..1] | I_RiskBusinessPartner | _RiskBP | $projection.BankCountry = _RiskBP.BankCountry and $projection.BankInternalID = _RiskBP.BankInternalID and _RiskBP.ValidFrom <= $session.system_date and _RiskBP.ValidTo >= $session.system_date |
| [0..1] | I_NumberOfCashBankUsage | _BankUsage | $projection.BankCountry = _BankUsage.BankCountry and $projection.BankInternalID = _BankUsage.BankInternalID |
| [0..1] | I_CashBankHierarchyRootName | _BankHierarchy | $projection.BankCountry = _BankHierarchy.BankCountry and $projection.BankInternalID = _BankHierarchy.BankInternalID |
| [0..1] | I_User | _CreatedBy | $projection.createdbyuser = _CreatedBy.UserID |
| [1..1] | I_CshBkCatWithSEPAValueHelp | _BankCategory | $projection.BankCategory = _BankCategory.BankCategory |
| [0..1] | I_Region | _Region | $projection.addressregion = _Region.Region and $projection.BankCountry = _Region.Country |
| [0..1] | I_Country | _Country | $projection.BankCountry = _Country.Country |
| [0..1] | I_UserContactCard | _UserContactCardCreation | $projection.createdbyuser = _UserContactCardCreation.ContactCardID |
| [0..*] | R_CashBankHouseBankTP | _HouseBank | |
| [0..*] | R_CashBankServiceMappingTP | _BankServiceMapping | |
| [0..*] | R_CashBankNettingPartnerTP | _NettingBusinessPartner | |
| [0..*] | R_CashBankRelatedBranchTP | _RelatedBranch | |
| [0..1] | R_BankIntradayStatementRuleTP | _BankIntradayStatementRule | |
| [0..1] | R_BankRiskBusinessPartnerTP | _RiskBusinessPartner | |
Annotations (9)
| Name | Value | Level | Field |
|---|---|---|---|
| AccessControl.authorizationCheck | #MANDATORY | view | |
| EndUserText.label | Cash Transactional Bank TP | view | |
| VDM.viewType | #TRANSACTIONAL | view | |
| VDM.lifecycle.contract.type | #SAP_INTERNAL_API | view | |
| ObjectModel.usageType.serviceQuality | #C | view | |
| ObjectModel.usageType.sizeCategory | #XL | view | |
| ObjectModel.usageType.dataClass | #MASTER | view | |
| Search.searchable | false | view | |
| ObjectModel.sapObjectNodeType.name | Bank | view |
Fields (38)
| Key | Field | Source Table | Source Field | Description |
|---|---|---|---|---|
| KEY | BankCountry | I_Bank_2 | BankCountry | |
| KEY | BankInternalID | I_Bank_2 | BankInternalID | |
| CreatedByUser | _Bank | CreatedByUser | ||
| BankNetworkGrouping | _Bank | BankNetworkGrouping | ||
| BankNumber | _Bank | BankNumber | ||
| SWIFTCode | _Bank | SWIFTCode | ||
| IsMarkedForDeletion | _Bank | IsMarkedForDeletion | ||
| BankHierarchyGroupName | _BankHierarchy | BankHierarchyGroupName | ||
| LastChangeDateTime | _Bank | LastChangeDateTime | ||
| LongBankName | _Bank | LongBankName | ||
| LongBankBranch | _Bank | LongBankBranch | ||
| StreetName | _Bank | StreetName | ||
| CityName | _Bank | CityName | ||
| AddressRegion | _Bank | AddressRegion | ||
| BankIsInternal | _Bank | BankIsInternal | ||
| CashBankKeyForDisplay | _Bank | BankInternalID | ||
| AddressID | _Bank | AddressID | ||
| BankIsStandard | _Bank | BankIsStandard | ||
| LongBankBranchIsHidden | _Bank | LongBankBranchIsHidden | ||
| BankNumberIsHidden | _Bank | BankNumberIsHidden | ||
| SWIFTCodeIsHidden | _Bank | SWIFTCodeIsHidden | ||
| BankNetworkGroupingIsHidden | _Bank | BankNetworkGroupingIsHidden | ||
| BankAddressIsHidden | _Bank | BankAddressIsHidden | ||
| BankScriptedAddressIsHidden | _Bank | BankScriptedAddressIsHidden | ||
| _BankCategory | _BankCategory | |||
| _BankUsage | _BankUsage | |||
| _Country | _Country | |||
| _Region | _Region | |||
| _CreatedBy | _CreatedBy | |||
| _BankHierarchy | _BankHierarchy | |||
| _RiskBP | _RiskBP | |||
| _HouseBank | _HouseBank | |||
| _BankServiceMapping | _BankServiceMapping | |||
| _NettingBusinessPartner | _NettingBusinessPartner | |||
| _RelatedBranch | _RelatedBranch | |||
| _UserContactCardCreation | _UserContactCardCreation | |||
| _BankIntradayStatementRule | _BankIntradayStatementRule | |||
| _RiskBusinessPartner | _RiskBusinessPartner |
@AccessControl.authorizationCheck:#MANDATORY
@EndUserText.label: 'Cash Transactional Bank TP'
@VDM.viewType:#TRANSACTIONAL
@VDM.lifecycle.contract.type:#SAP_INTERNAL_API
@ObjectModel.usageType:{
serviceQuality: #C,
sizeCategory: #XL,
dataClass: #MASTER
}
@Search.searchable: false
@ObjectModel.sapObjectNodeType.name:'Bank'
define root view entity R_CashBankTP as select from I_Bank_2 as Bank
composition [0..*] of R_CashBankHouseBankTP as _HouseBank
composition [0..*] of R_CashBankServiceMappingTP as _BankServiceMapping
composition [0..*] of R_CashBankNettingPartnerTP as _NettingBusinessPartner
composition [0..*] of R_CashBankRelatedBranchTP as _RelatedBranch
composition [0..1] of R_BankIntradayStatementRuleTP as _BankIntradayStatementRule //CE2402:change data modeling
composition [0..1] of R_BankRiskBusinessPartnerTP as _RiskBusinessPartner //CE2402:change modeling
association [1..1] to R_BankTP as _Bank on $projection.BankCountry = _Bank.BankCountry
and $projection.BankInternalID = _Bank.BankInternalID
//association [0..1] to I_BankIntraStaRule as _Rule on $projection.BankCountry = _Rule.BankCountry
// and $projection.BankInternalID = _Rule.BankInternalID
association [0..1] to I_RiskBusinessPartner as _RiskBP on $projection.BankCountry = _RiskBP.BankCountry
and $projection.BankInternalID = _RiskBP.BankInternalID
and _RiskBP.ValidFrom <= $session.system_date
and _RiskBP.ValidTo >= $session.system_date
association [0..1] to I_NumberOfCashBankUsage as _BankUsage on $projection.BankCountry = _BankUsage.BankCountry
and $projection.BankInternalID = _BankUsage.BankInternalID
association [0..1] to I_CashBankHierarchyRootName as _BankHierarchy on $projection.BankCountry = _BankHierarchy.BankCountry
and $projection.BankInternalID = _BankHierarchy.BankInternalID
association [0..1] to I_User as _CreatedBy on $projection.createdbyuser = _CreatedBy.UserID
association [1..1] to I_CshBkCatWithSEPAValueHelp as _BankCategory on $projection.BankCategory = _BankCategory.BankCategory
association [0..1] to I_Region as _Region on $projection.addressregion = _Region.Region
and $projection.BankCountry = _Region.Country
association [0..1] to I_Country as _Country on $projection.BankCountry = _Country.Country
association [0..1] to I_UserContactCard as _UserContactCardCreation on $projection.createdbyuser = _UserContactCardCreation.ContactCardID
// association [0..1] to I_BusinessPartner as _BusinessPartner on $projection.RiskPartnerNo = _BusinessPartner.BusinessPartner
// association [0..1] to I_BPCrdtWrthnssRatingText as _RatingText on $projection.BPCreditStandingRating = _RatingText.BPCreditStandingRating
// and _RatingText.Language = $session.system_language
// association [0..1] to I_IntraBkStaRuleText as _RuleText on $projection.intrabkstaruleexternalid = _RuleText.IntraBkStaRuleExternalID
// and _RuleText.Language = $session.system_language
{ @ObjectModel.foreignKey.association: '_Country'
key Bank.BankCountry,
key Bank.BankInternalID,
@Semantics.user.createdBy: true
_Bank.CreatedByUser,
case
when _Bank.BankCategory is not initial then cast( _Bank.BankCategory as bf_bank_category preserving type )
else cast( ' ' as bf_bank_category preserving type)
end as BankCategory,
_Bank.BankNetworkGrouping,
_Bank.BankNumber,
_Bank.SWIFTCode,
_Bank.IsMarkedForDeletion,
// _Rule.IntraBkStaRuleExternalID,
// case when _RiskBP._BusinessPartner._BPCreditWorthiness.BPCreditStandingRating is null then ''
// else _RiskBP._BusinessPartner._BPCreditWorthiness.BPCreditStandingRating
// end as BPCreditStandingRating, //Support the empty filter
// case when _RiskBP._BusinessPartner.BusinessPartnerGrouping is null then ''
// else _RiskBP._BusinessPartner.BusinessPartnerGrouping
// end as BusinessPartnerGrouping,
// case when _RiskBP.BusinessPartnerNumber is null then ''
// else _RiskBP.BusinessPartnerNumber
// end as RiskPartnerNo,
// _RiskBP.ValidTo as RiskPartnerValidToDate, // It is used to lock
_BankHierarchy.BankHierarchyGroupName,
cast(
case when _BankUsage.NumberOfHouseBanks = 0 then ''
else 'X'
end as xfeld preserving type ) as BankHasHouseBanks,
cast(
case when _BankUsage.NumberOfBankAccounts = 0 then ''
else 'X'
end as xfeld preserving type ) as BankHasBankAccounts,
cast(
case when _BankUsage.NumberOfHouseBanks <> 0 or
_BankUsage.NumberOfBankAccounts <> 0 or
_RiskBP.BusinessPartnerNumber is not null then 'X'
else ''
end as xfeld preserving type ) as BankIsMyBank,//MyBank,
// @Semantics.booleanIndicator:true
// case
// when BankCategory = '4' or
// BankCategory = '5' or
// BankCategory = '9'
// then cast( 'X' as xfeld preserving type)
// else cast( ' ' as xfeld preserving type)
// end as IntradayStatementsRuleIsHidden,
//local ETag field --> OData ETag
_Bank.LastChangeDateTime,
//Refer to R_BankTP
_Bank.LongBankName,
_Bank.LongBankBranch,
_Bank.StreetName,
_Bank.CityName,
_Bank.AddressRegion,
_Bank.BankIsInternal, // It is used in class CL_CA_BNK_RAP_MB_UI_FIELD_EXIT
_Bank.BankInternalID as CashBankKeyForDisplay,
_Bank.AddressID,
_Bank.BankIsStandard, // It is used in class CL_CA_BNK_RAP_MB_UI_FIELD_EXIT
_Bank.LongBankBranchIsHidden,
_Bank.BankNumberIsHidden,
_Bank.SWIFTCodeIsHidden,
_Bank.BankNetworkGroupingIsHidden,
_Bank.BankAddressIsHidden,
_Bank.BankScriptedAddressIsHidden,
_BankCategory,
_BankUsage,
// _Rule,
// _RiskBP,
_Country,
_Region,
_CreatedBy,
_BankHierarchy,
_RiskBP, //CE2402:change modeling
/* Associations */
_HouseBank,
_BankServiceMapping,
_NettingBusinessPartner,
_RelatedBranch,
_UserContactCardCreation,
// _BusinessPartner,
// _RatingText,
// _RuleText,
_BankIntradayStatementRule, //CE2402:change modeling
_RiskBusinessPartner //CE2402:change modeling
}where _Bank.BankCategory <> '2' or _Bank.BankCategory is null;
/*+[internal] {
"BASEINFO":
{
"FROM":
[
"I_BANK_2",
"I_CASHBANKHIERARCHYROOTNAME",
"I_NUMBEROFCASHBANKUSAGE",
"I_RISKBUSINESSPARTNER",
"R_BANKTP"
],
"ASSOCIATED":
[
"I_CASHBANKHIERARCHYROOTNAME",
"I_COUNTRY",
"I_CSHBKCATWITHSEPAVALUEHELP",
"I_NUMBEROFCASHBANKUSAGE",
"I_REGION",
"I_RISKBUSINESSPARTNER",
"I_USER",
"I_USERCONTACTCARD",
"R_BANKINTRADAYSTATEMENTRULETP",
"R_BANKRISKBUSINESSPARTNERTP",
"R_CASHBANKHOUSEBANKTP",
"R_CASHBANKNETTINGPARTNERTP",
"R_CASHBANKRELATEDBRANCHTP",
"R_CASHBANKSERVICEMAPPINGTP"
],
"BASE":
[],
"ANNO_REF":
[],
"SCALAR_FUNCTION":
[],
"VERSION":0,
"ANNOREF_EVALUATION_ERROR":""
}
}*/
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