I_CompanyCodeHierNode
Company Code Hierarchy Node
I_CompanyCodeHierNode is a Basic CDS View that provides data about "Company Code Hierarchy Node" in SAP S/4HANA. It reads from 1 data source (hrrp_node_n) and exposes 15 fields with key fields CompanyCodeHierarchy, HierarchyNode, ValidityEndDate. It has 3 associations to related views. Part of development package FIN_COMPANY_CODE_HIER.
Data Sources (1)
| Source | Alias | Join Type |
|---|---|---|
| hrrp_node_n | hrrp_node_n | from |
Associations (3)
| Cardinality | Target | Alias | Condition |
|---|---|---|---|
| [0..*] | I_CompanyCodeHierNodeT | _Text | $projection.CompanyCodeHierarchy = _Text.CompanyCodeHierarchy and $projection.HierarchyNode = _Text.HierarchyNode and $projection.CompanyCode = '' |
| [0..1] | I_CompanyCode | _CompanyCode | $projection.CompanyCode = _CompanyCode.CompanyCode |
| [1..1] | I_CompanyCodeHierarchy | _Hierarchy | $projection.CompanyCodeHierarchy = _Hierarchy.CompanyCodeHierarchy and $projection.ValidityEndDate = _Hierarchy.ValidityEndDate |
Annotations (14)
| Name | Value | Level | Field |
|---|---|---|---|
| EndUserText.label | Company Code Hierarchy Node | view | |
| VDM.viewType | #BASIC | view | |
| AbapCatalog.sqlViewName | IFICOCODEHN | view | |
| Metadata.ignorePropagatedAnnotations | true | view | |
| AccessControl.authorizationCheck | #CHECK | view | |
| ClientHandling.algorithm | #SESSION_VARIABLE | view | |
| ObjectModel.representativeKey | HierarchyNode | view | |
| ObjectModel.modelingPattern | #ANALYTICAL_PARENT_CHILD_HIERARCHY_NODE | view | |
| ObjectModel.usageType.dataClass | #MASTER | view | |
| ObjectModel.usageType.serviceQuality | #A | view | |
| ObjectModel.usageType.sizeCategory | #XL | view | |
| ObjectModel.dataCategory | #HIERARCHY | view | |
| Analytics.dataExtraction.enabled | true | view | |
| ObjectModel.sapObjectNodeType.name | CompanyCodeHierarchyNode | view |
Fields (15)
| Key | Field | Source Table | Source Field | Description |
|---|---|---|---|---|
| KEY | CompanyCodeHierarchy | |||
| KEY | HierarchyNode | hrrp_node_n | hrynode | |
| KEY | ValidityEndDate | |||
| ValidityStartDate | ||||
| ParentNode | hrrp_node_n | parnode | ||
| HierarchyVersion | ||||
| CompanyCode | hrrp_node_n | bukrs | ||
| SequenceNumber | ||||
| HierarchyNodeSequence | hrrp_node_n | hryseqnbr | ||
| HierarchyNodeLevel | hrrp_node_n | hrylevel | ||
| NodeType | hrrp_node_n | nodetype | ||
| HierarchyNodeVal | hrrp_node_n | nodevalue | ||
| _Text | _Text | |||
| _CompanyCode | _CompanyCode | |||
| _Hierarchy | _Hierarchy |
@EndUserText.label: 'Company Code Hierarchy Node'
@VDM.viewType: #BASIC
@AbapCatalog.sqlViewName: 'IFICOCODEHN'
@Hierarchy.parentChild:
[{ recurse: { parent: ['ParentNode'], child: ['HierarchyNode'] },
siblingsOrder: [{ by: 'HierarchyNodeSequence', direction: 'ASC' }],
directory: '_Hierarchy'
}]
@Metadata.ignorePropagatedAnnotations:true
@AccessControl.authorizationCheck: #CHECK
@ClientHandling.algorithm: #SESSION_VARIABLE
@ObjectModel.representativeKey: 'HierarchyNode'
@ObjectModel.modelingPattern: #ANALYTICAL_PARENT_CHILD_HIERARCHY_NODE
@ObjectModel.supportedCapabilities: [ #CDS_MODELING_DATA_SOURCE, #CDS_MODELING_ASSOCIATION_TARGET,#ANALYTICAL_PARENT_CHILD_HIERARCHY_NODE , #EXTRACTION_DATA_SOURCE ]
@ObjectModel: {usageType: {
dataClass: #MASTER,
serviceQuality: #A,
sizeCategory: #XL},
dataCategory: #HIERARCHY
}
@Analytics: { dataExtraction.enabled: true }
@ObjectModel.sapObjectNodeType.name:'CompanyCodeHierarchyNode'
define view I_CompanyCodeHierNode
as select from hrrp_node_n
association [0..*] to I_CompanyCodeHierNodeT as _Text on $projection.CompanyCodeHierarchy = _Text.CompanyCodeHierarchy
and $projection.HierarchyNode = _Text.HierarchyNode
and $projection.CompanyCode = '' // just to show that this association is only to be followed if CompanyCode is blank
association [0..1] to I_CompanyCode as _CompanyCode on $projection.CompanyCode = _CompanyCode.CompanyCode
association [1..1] to I_CompanyCodeHierarchy as _Hierarchy on $projection.CompanyCodeHierarchy = _Hierarchy.CompanyCodeHierarchy
and $projection.ValidityEndDate = _Hierarchy.ValidityEndDate
{
@Consumption.filter: {mandatory : true, selectionType : #SINGLE, multipleSelections : false }
@ObjectModel.foreignKey.association: '_Hierarchy'
key cast(hrrp_node_n.hryid_42 as fis_hryid_ccode_42 preserving type ) as CompanyCodeHierarchy,
@ObjectModel.text.association: '_Text'
key hrrp_node_n.hrynode as HierarchyNode,
@Semantics.businessDate.to: true
@Consumption.filter: {mandatory : true, selectionType : #SINGLE, multipleSelections : false }
key cast(hrrp_node_n.hryvalto as fis_datbi preserving type ) as ValidityEndDate,
@Semantics.businessDate.from: true
cast(hrrp_node_n.hryvalfrom as fis_datab preserving type ) as ValidityStartDate,
hrrp_node_n.parnode as ParentNode,
@VDM.lifecycle.status: #DEPRECATED
cast( '000000000000001' as hryversn ) as HierarchyVersion,
//--[ GENERATED:012:29JlHNUf7jY4ioM8lnJMdG
@Consumption.valueHelpDefinition: [
{ entity: { name: 'I_CompanyCodeStdVH',
element: 'CompanyCode' }
}]
// ]--GENERATED
@ObjectModel.foreignKey.association: '_CompanyCode'
hrrp_node_n.bukrs as CompanyCode,
@VDM.lifecycle.status: #DEPRECATED
@VDM.lifecycle.successor: 'HierarchySequenceNumber'
concat(hrrp_node_n.hryseqnbr, hrrp_node_n.hrynode) as SequenceNumber, // do not use any longer, use HierarchySequenceNumber
hrrp_node_n.hryseqnbr as HierarchyNodeSequence,
hrrp_node_n.hrylevel as HierarchyNodeLevel,
hrrp_node_n.nodetype as NodeType,
hrrp_node_n.nodevalue as HierarchyNodeVal,
_Text,
_CompanyCode,
_Hierarchy
}
where
hrrp_node_n.nodetype <> 'D'
and hrrp_node_n.hrytyp = 'COCD';
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