I_BankAccountUniversalHierNode
Node of Bank Account Universal Hierarchy
I_BankAccountUniversalHierNode is a Basic CDS View that provides data about "Node of Bank Account Universal Hierarchy" in SAP S/4HANA. It reads from 1 data source (hrrp_node) and exposes 12 fields with key fields BankAccountHierarchy, HierarchyNode, ValidityEndDate, ParentNode. It has 3 associations to related views.
Data Sources (1)
| Source | Alias | Join Type |
|---|---|---|
| hrrp_node | hrrp_node | from |
Associations (3)
| Cardinality | Target | Alias | Condition |
|---|---|---|---|
| [1..1] | I_BankAccountUniversalHier | _Hierarchy | $projection.BankAccountHierarchy = _Hierarchy.BankAccountHierarchy and $projection.ValidityEndDate = _Hierarchy.ValidityEndDate |
| [0..1] | I_BankAccount | _Account | $projection.BankAccountInternalID = _Account.BankAccountInternalID |
| [1..*] | I_BkAcctUniversalHierNodeTxt | _Text | $projection.BankAccountHierarchy = _Text.BankAccountHierarchy and $projection.HierarchyNode = _Text.HierarchyNode and $projection.ValidityEndDate = _Text.ValidityEndDate and $projection.ParentNode = _Text.ParentNode and $projection.BankAccountInternalID = '0000000000' |
Annotations (17)
| Name | Value | Level | Field |
|---|---|---|---|
| AbapCatalog.sqlViewName | IBANKACCTUHND | view | |
| AbapCatalog.compiler.compareFilter | true | view | |
| AbapCatalog.preserveKey | true | view | |
| EndUserText.label | Node of Bank Account Universal Hierarchy | view | |
| AccessControl.authorizationCheck | #PRIVILEGED_ONLY | view | |
| VDM.viewType | #BASIC | view | |
| ObjectModel.dataCategory | #HIERARCHY | view | |
| ObjectModel.representativeKey | HierarchyNode | view | |
| ObjectModel.usageType.dataClass | #MASTER | view | |
| ObjectModel.usageType.sizeCategory | #M | view | |
| ObjectModel.usageType.serviceQuality | #C | view | |
| ClientHandling.algorithm | #SESSION_VARIABLE | view | |
| Hierarchy.parentChild.recurse.parent | ParentNode | view | |
| Hierarchy.parentChild.recurse.child | HierarchyNode | view | |
| Hierarchy.parentChild.siblingsOrder.by | HierarchyNode | view | |
| Hierarchy.parentChild.siblingsOrder.direction | ASC | view | |
| Hierarchy.parentChild.directory | _Hierarchy | view |
Fields (12)
| Key | Field | Source Table | Source Field | Description |
|---|---|---|---|---|
| KEY | BankAccountHierarchy | hrrp_node | hryid | |
| KEY | HierarchyNode | hrrp_node | hrynode | |
| KEY | ValidityEndDate | hrrp_node | hryvalto | |
| KEY | ParentNode | hrrp_node | parnode | |
| ValidityStartDate | hrrp_node | hryvalfrom | ||
| SequenceNumber | ||||
| HierarchyNodeLevel | hrrp_node | hrylevel | ||
| NodeType | hrrp_node | nodetype | ||
| IsPublicHierarchy | _Hierarchy | IsPublicHierarchy | ||
| _Account | _Account | |||
| _Text | _Text | |||
| _Hierarchy | _Hierarchy |
@AbapCatalog.sqlViewName: 'IBANKACCTUHND'
@AbapCatalog.compiler.compareFilter: true
@AbapCatalog.preserveKey: true
@EndUserText.label: 'Node of Bank Account Universal Hierarchy'
@AccessControl.authorizationCheck:#PRIVILEGED_ONLY
@VDM.viewType: #BASIC
@ObjectModel: { dataCategory: #HIERARCHY }
@ObjectModel.representativeKey: 'HierarchyNode'
@ObjectModel.usageType.dataClass: #MASTER
@ObjectModel.usageType.sizeCategory: #M
@ObjectModel.usageType.serviceQuality: #C
@ClientHandling.algorithm: #SESSION_VARIABLE
@Hierarchy.parentChild:
{
recurse:
{
parent: 'ParentNode',
child: 'HierarchyNode'
},
siblingsOrder:
{
by: 'HierarchyNode',
direction: 'ASC'
},
directory : '_Hierarchy'
}
@AccessControl.privilegedAssociations: ['_Text']
define view I_BankAccountUniversalHierNode as select from hrrp_node
association [1..1] to I_BankAccountUniversalHier as _Hierarchy on $projection.BankAccountHierarchy = _Hierarchy.BankAccountHierarchy
and $projection.ValidityEndDate = _Hierarchy.ValidityEndDate
association [0..1] to I_BankAccount as _Account on $projection.BankAccountInternalID = _Account.BankAccountInternalID
association [1..*] to I_BkAcctUniversalHierNodeTxt as _Text on $projection.BankAccountHierarchy = _Text.BankAccountHierarchy
and $projection.HierarchyNode = _Text.HierarchyNode
and $projection.ValidityEndDate = _Text.ValidityEndDate
and $projection.ParentNode = _Text.ParentNode
and $projection.BankAccountInternalID = '0000000000'// just to show that this association is only to be followed if bank account is blank
{
@ObjectModel.foreignKey.association: '_Hierarchy'
key hrrp_node.hryid as BankAccountHierarchy,
@ObjectModel.text.association: '_Text'
key hrrp_node.hrynode as HierarchyNode,
@Semantics.businessDate.to: true
key hrrp_node.hryvalto as ValidityEndDate,
key hrrp_node.parnode as ParentNode,
@Semantics.businessDate.from: true
hrrp_node.hryvalfrom as ValidityStartDate,
concat(hrrp_node.hryseqnbr, hrrp_node.hrynode) as SequenceNumber,
hrrp_node.hrylevel as HierarchyNodeLevel,
hrrp_node.nodetype as NodeType,
cast(case when hrrp_node.nodetype = 'L' then hrrp_node.nodevalue
else ' ' end as fclm_bam_acc_id) as BankAccountInternalID,
@Consumption.hidden: true
_Hierarchy.IsPublicHierarchy,
_Account,
_Text,
_Hierarchy
}
where _Hierarchy.HierarchyType = 'CM01' and nodetype <> 'D'
/*+[internal] {
"BASEINFO":
{
"FROM":
[
"I_BANKACCOUNTUNIVERSALHIER",
"HRRP_NODE"
],
"ASSOCIATED":
[
"I_BANKACCOUNT",
"I_BANKACCOUNTUNIVERSALHIER",
"I_BKACCTUNIVERSALHIERNODETXT"
],
"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