fac_cds_uh_node
Universal Hierarchy Node
fac_cds_uh_node is a CDS View that provides data about "Universal Hierarchy Node" in SAP S/4HANA. It reads from 3 data sources (uhdt_node, uhdt_ntxt, uhdt_vrsn) and exposes 39 fields with key field NodeId. It has 7 associations to related views. Part of development package UH_CORE.
Data Sources (3)
Associations (7)
| Cardinality | Target | Alias | Condition |
|---|---|---|---|
| [1..*] | fac_cds_uh_clfd_value | to_clfd_value | $projection.JoinId = to_clfd_value.ObjectId |
| [1..1] | fac_cds_uh_version | to_version | $projection.VersionId = to_version.VersionId |
| [1..*] | FAC_CDS_UH_NODESEMTAG | to_semtag | $projection.JoinId = to_semtag.NodeId |
| [1..1] | FAC_CDS_UH_FUNCTBL_SEMTAG | to_merged_semtag | $projection.JoinId = to_merged_semtag.NodeId |
| [1..1] | FAC_CDS_UH_FUNCTBL_MULTIATTR | to_merged_attrvals | $projection.JoinId = to_merged_attrvals.NodeId |
| [0..*] | FAC_CDS_UH_NODE_ATTR_VALUE | to_attribute_values | $projection.JoinId = to_attribute_values.NodeId |
| [1..1] | FAC_CDS_UH_NODE_ACTION | to_node_action | $projection.JoinId = to_node_action.NodeId |
Annotations (6)
| Name | Value | Level | Field |
|---|---|---|---|
| AbapCatalog.sqlViewName | FACV_UH_EDGE | view | |
| AccessControl.authorizationCheck | #CHECK | view | |
| EndUserText.label | Universal Hierarchy Node | view | |
| ObjectModel.usageType.dataClass | #MASTER | view | |
| ObjectModel.usageType.serviceQuality | #C | view | |
| ObjectModel.usageType.sizeCategory | #S | view |
Fields (39)
| Key | Field | Source Table | Source Field | Description |
|---|---|---|---|---|
| KEY | NodeId | uhdt_node | node_id | |
| VersionId | uhdt_node | ver_id | ||
| NodeParentId | node_pid | |||
| NodeRefId | node_rid | |||
| JoinId | uhdt_node | node_id | ||
| NodeType | node_type | |||
| NodeEntity | node_entity | |||
| NodeLevel | node_level | |||
| NodeIndicator | node_ind | |||
| NodeSequence | node_seq | |||
| NodeDisplayOrder | node_order | |||
| NodeSign | node_sgn | |||
| NodeValidFrom | node_vldfm | |||
| NodeValidTo | node_vldto | |||
| NodeLowValue | node_lval | |||
| NodeHighValue | node_hval | |||
| CreatedAt | uhdt_node | created_at | ||
| CreatedBy | uhdt_node | created_by | ||
| UpdatedAt | uhdt_node | updated_at | ||
| UpdatedBy | uhdt_node | updated_by | ||
| ReferenceVersionID | ref_verid | |||
| ReferenceGroupID | ref_t_group_id | |||
| OriginVersionID | origin_verid | |||
| NodeLowText | uhdt_ntxt | lval_txt | ||
| NodeHighText | uhdt_ntxt | hval_txt | ||
| hier_hidendasRefHierarchyID | ||||
| ver_vldfmendasRefValidFromDate | ||||
| ver_vldtoendasRefValidToDate | ||||
| OriginHierarchyID | uhdt_vrsn | hier_hid | ||
| SemanticTags | to_merged_semtag | SemanticTags | ||
| SemanticTagsTextJson | to_merged_semtag | SemanticTagsTextJson | ||
| Forbid_Add_LeafendasForbidAddLeaf | ||||
| Forbid_Add_NodeendasForbidAddNode | ||||
| Forbid_DeleteendasForbidDelete | ||||
| Forbid_UpdateendasForbidUpdate | ||||
| Forbid_Add_SemtagendasForbidAddSemTag | ||||
| Forbid_MoveendasForbidMove | ||||
| to_version | to_version | |||
| to_semtag | to_semtag |
@AbapCatalog.sqlViewName: 'FACV_UH_EDGE'
//@ClientHandling.algorithm: #SESSION_VARIABLE
//@AbapCatalog.compiler.compareFilter: true
@AccessControl.authorizationCheck: #CHECK
@EndUserText.label: 'Universal Hierarchy Node'
@ObjectModel.usageType: {
dataClass: #MASTER,
serviceQuality: #C,
sizeCategory: #S
}
define view fac_cds_uh_node
as select from uhdt_node as node
left outer join uhdt_ntxt as ntxt on node.node_id = ntxt.node_id
and ntxt.lang = $session.system_language
left outer join uhdt_vrsn as r on node.origin_verid = r.ver_id
association [1..*] to fac_cds_uh_clfd_value as to_clfd_value on $projection.JoinId = to_clfd_value.ObjectId
association [1..1] to fac_cds_uh_version as to_version on $projection.VersionId = to_version.VersionId
association [1..*] to FAC_CDS_UH_NODESEMTAG as to_semtag on $projection.JoinId = to_semtag.NodeId
association [1..1] to FAC_CDS_UH_FUNCTBL_SEMTAG as to_merged_semtag on $projection.JoinId = to_merged_semtag.NodeId
association [1..1] to FAC_CDS_UH_FUNCTBL_MULTIATTR as to_merged_attrvals on $projection.JoinId = to_merged_attrvals.NodeId
association [0..*] to FAC_CDS_UH_NODE_ATTR_VALUE as to_attribute_values on $projection.JoinId = to_attribute_values.NodeId
association [1..1] to FAC_CDS_UH_NODE_ACTION as to_node_action on $projection.JoinId = to_node_action.NodeId
{
key node.node_id as NodeId,
node.ver_id as VersionId,
node_pid as NodeParentId,
node_rid as NodeRefId,
node.node_id as JoinId,
node_type as NodeType,
node_entity as NodeEntity,
node_level as NodeLevel,
node_ind as NodeIndicator,
node_seq as NodeSequence,
node_order as NodeDisplayOrder,
node_sgn as NodeSign,
node_vldfm as NodeValidFrom,
node_vldto as NodeValidTo,
node_lval as NodeLowValue,
node_hval as NodeHighValue,
node.created_at as CreatedAt,
node.created_by as CreatedBy,
node.updated_at as UpdatedAt,
node.updated_by as UpdatedBy,
ref_verid as ReferenceVersionID,
ref_t_group_id as ReferenceGroupID,
origin_verid as OriginVersionID,
ntxt.lval_txt as NodeLowText,
ntxt.hval_txt as NodeHighText,
case when node_type = 'Z'
then r.hier_hid end as RefHierarchyID,
case when node_type = 'Z'
then r.ver_vldfm end as RefValidFromDate,
case when node_type = 'Z'
then r.ver_vldto end as RefValidToDate,
r.hier_hid as OriginHierarchyID,
case when ref_t_group_id <> ''
then 'R'
else '' end as VirtualFlag,
to_merged_semtag.SemanticTags as SemanticTags,
to_merged_semtag.SemanticTagsTextJson as SemanticTagsTextJson,
case when ref_t_group_id <> ''
then 'X'
else to_node_action.Forbid_Add_Leaf end as ForbidAddLeaf,
case when ref_t_group_id <> ''
then 'X'
else to_node_action.Forbid_Add_Node end as ForbidAddNode,
case when ( ref_t_group_id <> '' and node_type <> 'Z' )
then 'X'
else to_node_action.Forbid_Delete end as ForbidDelete,
case when ref_t_group_id <> ''
then 'X'
else to_node_action.Forbid_Update end as ForbidUpdate,
case when ref_t_group_id <> '' or node_type = 'R'
then 'X'
else to_node_action.Forbid_Add_Semtag end as ForbidAddSemTag,
case when ( ref_t_group_id <> '' and node_type <> 'Z' )
then 'X'
else to_node_action.Forbid_Move end as ForbidMove,
case when ref_t_group_id <> ''
then 'X'
else to_node_action.Forbid_Sort_Subnode end as ForbidSortSubnode,
case
when node.node_type = 'L' then 'leaf'
when node.node_level = '000000' then 'expanded'
else 'collapsed'
end as DrillState,
to_clfd_value,
to_version,
to_semtag,
to_merged_semtag,
to_merged_attrvals,
to_attribute_values,
to_node_action
}
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