FAC_CDS_UH_GENERICNODE

DDL: FAC_CDS_UH_GENERICNODE SQL: FACV_UH_GENEDGE Type: view

Universal Hierarchy Generic Node

FAC_CDS_UH_GENERICNODE is a CDS View that provides data about "Universal Hierarchy Generic Node" in SAP S/4HANA. It reads from 3 data sources (uhdt_node, uhdt_ntxt, uhdt_vrsn) and exposes 13 fields with key field NodeId. It has 1 association to related views.

Data Sources (3)

SourceAliasJoin Type
uhdt_node node from
uhdt_ntxt ntxt left_outer
uhdt_vrsn version inner

Associations (1)

CardinalityTargetAliasCondition
[1..1] fac_cds_uh_version to_version $projection.VersionId = to_version.VersionId

Annotations (6)

NameValueLevelField
AbapCatalog.sqlViewName FACV_UH_GENEDGE view
AccessControl.authorizationCheck #CHECK view
ObjectModel.usageType.dataClass #MIXED view
ObjectModel.usageType.serviceQuality #C view
ObjectModel.usageType.sizeCategory #S view
EndUserText.label Universal Hierarchy Generic Node view

Fields (13)

KeyFieldSource TableSource FieldDescription
KEY NodeId uhdt_node node_id
NodeType uhdt_node node_type
VersionId uhdt_node ver_id
HierarchyId uhdt_vrsn hier_hid
VersionNumber uhdt_vrsn ver_nbr
VersionMessage uhdt_vrsn ver_msg
ValidFrom uhdt_vrsn ver_vldfm
ver_statusendasVersionStatus
NodeValue
NodeText uhdt_ntxt lval_txt
node_hvalasnltxtendasNodeValueText
NodeTextUpper
to_version to_version
@AbapCatalog.sqlViewName: 'FACV_UH_GENEDGE'
@AccessControl.authorizationCheck: #CHECK
//@ClientHandling.algorithm: #SESSION_VARIABLE

@ObjectModel.usageType: {
  dataClass: #MIXED,
  serviceQuality: #C,
  sizeCategory: #S
}
@EndUserText.label: 'Universal Hierarchy Generic Node'
define view FAC_CDS_UH_GENERICNODE
  as select from    uhdt_node as node
    inner join      uhdt_vrsn as version on node.ver_id = version.ver_id
    left outer join uhdt_ntxt as ntxt    on  node.node_id = ntxt.node_id
                                         and ntxt.lang    = $session.system_language
  association [1..1] to fac_cds_uh_version as to_version on $projection.VersionId = to_version.VersionId
{
  key node.node_id                                                               as NodeId,
      node.node_type                                                             as NodeType,
      node.ver_id                                                                as VersionId,
      version.hier_hid                                                           as HierarchyId,
      version.ver_nbr                                                            as VersionNumber,
      version.ver_msg                                                            as VersionMessage,
      version.ver_vldfm                                                          as ValidFrom,
      case
      when ( ver_status = 'R' or ver_status = 'A' ) and locked_by = $session.user
      then cast ( 'I' as vrsst )
      else version.ver_status end                                                as VersionStatus,
      cast(node.node_lval as ncval) as NodeValue,
      ntxt.lval_txt                                                              as NodeText,
      case
      when node.node_hval = '' then case
                   when ntxt.lval_txt is null or ntxt.lval_txt = '' then cast( node.node_lval as nltxt )
                   else cast( concat( node.node_lval, concat('(',concat( ntxt.lval_txt, ')' ) ) ) as nltxt ) end
      else cast (concat(node.node_lval,concat('~',node.node_hval)) as nltxt) end as NodeValueText,
      cast( upper(ntxt.lval_txt) as nltxt )                                      as NodeTextUpper,
      to_version
}
where
  (
       node.node_type     =  'N'
    or node.node_type     =  'R'
    or node.node_type     =  'Z'
  )
  and  version.ver_status <> 'T'
  and  version.ver_status <> 'B'
/*+[internal] {
"BASEINFO":
{
"FROM":
[
"UHDT_NODE",
"UHDT_NTXT",
"UHDT_VRSN"
],
"ASSOCIATED":
[
"FAC_CDS_UH_VERSION"
],
"BASE":
[],
"ANNO_REF":
[],
"SCALAR_FUNCTION":
[],
"VERSION":0,
"ANNOREF_EVALUATION_ERROR":""
}
}*/