I_SegmentHierNode

DDL: I_SEGMENTHIERNODE SQL: IFISEGMENTHN Type: view BASIC

Segment Hierarchy Node

I_SegmentHierNode is a Basic CDS View that provides data about "Segment Hierarchy Node" in SAP S/4HANA. It reads from 1 data source (hrrp_node_n) and exposes 14 fields with key fields SegmentHierarchy, HierarchyNode, ValidityEndDate. It has 3 associations to related views.

Data Sources (1)

SourceAliasJoin Type
hrrp_node_n hrrp_node_n from

Associations (3)

CardinalityTargetAliasCondition
[0..*] I_SegmentHierNodeT _Text $projection.SegmentHierarchy = _Text.SegmentHierarchy and $projection.HierarchyNode = _Text.HierarchyNode and $projection.Segment = ''
[0..1] I_Segment _Segment $projection.Segment = _Segment.Segment
[1..1] I_SegmentHierarchy _Hierarchy $projection.SegmentHierarchy = _Hierarchy.SegmentHierarchy and $projection.ValidityEndDate = _Hierarchy.ValidityEndDate

Annotations (20)

NameValueLevelField
EndUserText.label Segment Hierarchy Node view
VDM.viewType #BASIC view
AbapCatalog.sqlViewName IFISEGMENTHN view
Hierarchy.parentChild.recurse.parent ParentNode view
Hierarchy.parentChild.recurse.child HierarchyNode view
Hierarchy.parentChild.siblingsOrder.by HierarchyNodeSequence view
Hierarchy.parentChild.siblingsOrder.direction ASC view
Hierarchy.parentChild.directory _Hierarchy view
AccessControl.authorizationCheck #CHECK view
ClientHandling.algorithm #SESSION_VARIABLE view
ObjectModel.representativeKey HierarchyNode view
ObjectModel.modelingPattern #ANALYTICAL_PARENT_CHILD_HIERARCHY_NODE view
AbapCatalog.compiler.compareFilter true view
AbapCatalog.preserveKey true view
Metadata.ignorePropagatedAnnotations true 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

Fields (14)

KeyFieldSource TableSource FieldDescription
KEY SegmentHierarchy
KEY HierarchyNode hrrp_node_n hrynode
KEY ValidityEndDate
ValidityStartDate
ParentNode hrrp_node_n parnode
HierarchyVersion
Segment hrrp_node_n segment
SequenceNumber
HierarchyNodeSequence hrrp_node_n hryseqnbr
HierarchyNodeLevel hrrp_node_n hrylevel
NodeType hrrp_node_n nodetype
_Text _Text
_Segment _Segment
_Hierarchy _Hierarchy
@EndUserText.label: 'Segment Hierarchy Node'
@VDM.viewType: #BASIC
@AbapCatalog.sqlViewName: 'IFISEGMENTHN'
@Hierarchy.parentChild:
{ recurse:          {   parent: 'ParentNode',   child:  'HierarchyNode'   },
  siblingsOrder:    {   by: 'HierarchyNodeSequence',    direction: 'ASC'   },
  directory:        '_Hierarchy'
  }
@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 ]
@AbapCatalog.compiler.compareFilter:true
@AbapCatalog.preserveKey:true
@Metadata.ignorePropagatedAnnotations:true
@ObjectModel: {usageType: {
  dataClass: #MASTER,
  serviceQuality: #A,
  sizeCategory: #XL},
  dataCategory: #HIERARCHY
}
@Analytics.dataExtraction.enabled: true

define view I_SegmentHierNode
  as select from hrrp_node_n

  association [0..*] to I_SegmentHierNodeT as _Text      on  $projection.SegmentHierarchy = _Text.SegmentHierarchy
                                                         and $projection.HierarchyNode    = _Text.HierarchyNode
                                                         and $projection.Segment          = '' // just to show that this association is only to be followed if FunctionalArea is blank

  //                                                               and $projection.ValidityEndDate  = _Text.ValidityEndDate


  association [0..1] to I_Segment          as _Segment   on  $projection.Segment = _Segment.Segment

  association [1..1] to I_SegmentHierarchy as _Hierarchy on  $projection.SegmentHierarchy = _Hierarchy.SegmentHierarchy
                                                         and $projection.ValidityEndDate  = _Hierarchy.ValidityEndDate


{
      @Consumption.filter: {mandatory : true, selectionType : #SINGLE, multipleSelections : false }
      @ObjectModel.foreignKey.association: '_Hierarchy'
  key cast(hrrp_node_n.hryid as fis_hryid_segment preserving type )               as SegmentHierarchy,
      @ObjectModel.text.association: '_Text'
  key hrrp_node_n.hrynode                                        as HierarchyNode,
      @Consumption.filter: {mandatory : true, selectionType : #SINGLE, multipleSelections : false }
      @Semantics.businessDate.to: true
  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,
      @Consumption.valueHelpDefinition: [
        { entity:  { name:    'I_SegmentStdVH',
                     element: 'Segment' }
        }]
      @ObjectModel.foreignKey.association: '_Segment'
      hrrp_node_n.segment               as Segment,
      @VDM.lifecycle.status:    #DEPRECATED
      @VDM.lifecycle.successor: 'HierarchyNodeSequence'
      concat(hrrp_node_n.hryseqnbr, hrrp_node_n.hrynode)           as SequenceNumber,
      hrrp_node_n.hryseqnbr                                      as HierarchyNodeSequence,
      hrrp_node_n.hrylevel                                       as HierarchyNodeLevel,
      hrrp_node_n.nodetype                                       as NodeType,

      _Text,
      _Segment,
      _Hierarchy

}
where
      hrrp_node_n.nodetype          <> 'D'
  and hrrp_node_n.hrytyp =  'GL01';
/*+[internal] {
"BASEINFO":
{
"FROM":
[
"HRRP_NODE_N"
],
"ASSOCIATED":
[
"I_SEGMENT",
"I_SEGMENTHIERARCHY",
"I_SEGMENTHIERNODET"
],
"BASE":
[],
"ANNO_REF":
[],
"SCALAR_FUNCTION":
[],
"VERSION":0,
"ANNOREF_EVALUATION_ERROR":""
}
}*/