I_ProdUnivHierNodeText_2
Product Hierarchy Node - Text
I_ProdUnivHierNodeText_2 is a Basic CDS View that provides data about "Product Hierarchy Node - Text" in SAP S/4HANA. It reads from 2 data sources (hrrp_directory, hrrp_nodet) and exposes 8 fields with key fields Language, ProdUnivHierarchy, HierarchyNode, ProdHierarchyValidityEndDate. It has 2 associations to related views.
Data Sources (2)
| Source | Alias | Join Type |
|---|---|---|
| hrrp_directory | dir | inner |
| hrrp_nodet | nodet | from |
Associations (2)
| Cardinality | Target | Alias | Condition |
|---|---|---|---|
| [1..*] | I_ProdUnivHierarchyBasic | _ProductHierarchy | $projection.ProdUnivHierarchy = _ProductHierarchy.ProdUnivHierarchy |
| [1..*] | I_ProdUnivHierarchyNodeBasic | _ProductHierarchyNode | $projection.ProdUnivHierarchy = _ProductHierarchyNode.ProdUnivHierarchy and $projection.HierarchyNode = _ProductHierarchyNode.HierarchyNode |
Annotations (15)
| Name | Value | Level | Field |
|---|---|---|---|
| AbapCatalog.sqlViewName | IPRDUNIVHIERNDT2 | view | |
| AbapCatalog.compiler.compareFilter | true | view | |
| AbapCatalog.preserveKey | true | view | |
| AccessControl.authorizationCheck | #CHECK | view | |
| VDM.viewType | #BASIC | view | |
| EndUserText.label | Product Hierarchy Node - Text | view | |
| ClientHandling.algorithm | #SESSION_VARIABLE | view | |
| ObjectModel.representativeKey | HierarchyNode | view | |
| ObjectModel.usageType.dataClass | #MASTER | view | |
| ObjectModel.usageType.serviceQuality | #A | view | |
| ObjectModel.usageType.sizeCategory | #XL | view | |
| ObjectModel.dataCategory | #TEXT | view | |
| Metadata.ignorePropagatedAnnotations | true | view | |
| Analytics.internalName | #LOCAL | view | |
| Analytics.dataExtraction.enabled | true | view |
Fields (8)
| Key | Field | Source Table | Source Field | Description |
|---|---|---|---|---|
| KEY | Language | spras | ||
| KEY | ProdUnivHierarchy | |||
| KEY | HierarchyNode | hrrp_nodet | hrynode | |
| KEY | ProdHierarchyValidityEndDate | |||
| ProdHierarchyValidityStartDate | ||||
| ProdUnivHierarchyNodeText | ||||
| _ProductHierarchy | _ProductHierarchy | |||
| _ProductHierarchyNode | _ProductHierarchyNode |
@AbapCatalog: {
sqlViewName: 'IPRDUNIVHIERNDT2',
compiler.compareFilter: true,
preserveKey: true
}
@AccessControl.authorizationCheck: #CHECK
@VDM.viewType: #BASIC
@EndUserText.label: 'Product Hierarchy Node - Text'
@ClientHandling.algorithm: #SESSION_VARIABLE
@ObjectModel: {
representativeKey: 'HierarchyNode',
usageType: {
dataClass: #MASTER,
serviceQuality: #A,
sizeCategory: #XL
},
dataCategory: #TEXT
}
@Metadata.ignorePropagatedAnnotations: true
@ObjectModel.supportedCapabilities: [ #SQL_DATA_SOURCE,
#CDS_MODELING_DATA_SOURCE,
#CDS_MODELING_ASSOCIATION_TARGET,
#LANGUAGE_DEPENDENT_TEXT,
#EXTRACTION_DATA_SOURCE
]
@Analytics:{
internalName: #LOCAL,
dataExtraction: {
enabled: true
}
}
define view I_ProdUnivHierNodeText_2
as select from hrrp_nodet as nodet
inner join hrrp_directory as dir on dir.hryid = nodet.hryid
and dir.hryvalto = nodet.hryvalto
and dir.hryver = nodet.hryver
// and dir.hrytyp = 'MD01'
//[1..*] as they are temporal assoc
association [1..*] to I_ProdUnivHierarchyBasic as _ProductHierarchy on $projection.ProdUnivHierarchy = _ProductHierarchy.ProdUnivHierarchy
association [1..*] to I_ProdUnivHierarchyNodeBasic as _ProductHierarchyNode on $projection.ProdUnivHierarchy = _ProductHierarchyNode.ProdUnivHierarchy
and $projection.HierarchyNode = _ProductHierarchyNode.HierarchyNode
{
@Semantics.language: true
key spras as Language,
@ObjectModel.foreignKey.association: '_ProductHierarchy'
key cast(substring( nodet.hryid, 6, 26 ) as prod_hier_id ) as ProdUnivHierarchy,
@ObjectModel.foreignKey.association: '_ProductHierarchyNode'
key nodet.hrynode as HierarchyNode,
@Semantics.businessDate.to: true
key cast(nodet.hryvalto as prodhierarchyvalidityenddate preserving type ) as ProdHierarchyValidityEndDate,
@Semantics.businessDate.from: true
cast(nodet.hryvalfrom as prodhierarchyvaliditystartdate preserving type ) as ProdHierarchyValidityStartDate,
@Semantics.text: true
cast(nodetxt as prod_hier_node_value_text) as ProdUnivHierarchyNodeText,
_ProductHierarchy,
_ProductHierarchyNode // Make association public
}
where
dir.hrytyp = 'MD01'
or dir.hrytyp = 'MD02'
/*+[internal] {
"BASEINFO":
{
"FROM":
[
"HRRP_DIRECTORY",
"HRRP_NODET"
],
"ASSOCIATED":
[
"I_PRODUNIVHIERARCHYBASIC",
"I_PRODUNIVHIERARCHYNODEBASIC"
],
"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