I_WBSElementHierarchyNode

DDL: I_WBSELEMENTHIERARCHYNODE SQL: IWBSHIERNODE Type: view BASIC

WBS Element Hierarchy Node

I_WBSElementHierarchyNode is a Basic CDS View that provides data about "WBS Element Hierarchy Node" in SAP S/4HANA. It reads from 3 data sources (hrrp_node, prhi, prps) and exposes 18 fields with key fields WBSElementHierarchy, HierarchyNode, ValidityEndDate, HierarchyNode, ValidityEndDate. It has 3 associations to related views.

Data Sources (3)

SourceAliasJoin Type
hrrp_node hrrp_node from
prhi prhi inner
prps prps union_all

Associations (3)

CardinalityTargetAliasCondition
[0..*] I_WBSElementHierarchyNodeText _Text $projection.WBSElementHierarchy = _Text.WBSElementHierarchy and $projection.HierarchyNode = _Text.HierarchyNode and $projection.WBSElement = ''
[0..1] I_WBSElement _WBSElement $projection.WBSElement = _WBSElement.WBSElement
[1..1] I_WBSElementHierarchy _Hierarchy $projection.WBSElementHierarchy = _Hierarchy.WBSElementHierarchy and $projection.ValidityEndDate = _Hierarchy.ValidityEndDate

Annotations (12)

NameValueLevelField
AbapCatalog.sqlViewName IWBSHIERNODE view
AbapCatalog.compiler.compareFilter true view
AccessControl.authorizationCheck #CHECK view
AccessControl.personalData.blocking #BLOCKED_DATA_EXCLUDED view
ObjectModel.dataCategory #HIERARCHY view
VDM.viewType #BASIC view
ObjectModel.usageType.sizeCategory #L view
ObjectModel.usageType.dataClass #MASTER view
ObjectModel.usageType.serviceQuality #A view
ClientHandling.algorithm #SESSION_VARIABLE view
EndUserText.label WBS Element Hierarchy Node view
VDM.lifecycle.status #DEPRECATED view

Fields (18)

KeyFieldSource TableSource FieldDescription
KEY WBSElementHierarchy
KEY HierarchyNode hrrp_node hrynode
KEY ValidityEndDate
ParentNode hrrp_node parnode
HierarchyVersion hrrp_node hryver
WBSElement
HierarchyNodeSequence hrrp_node hryseqnbr
_Text _Text
_WBSElement _WBSElement
KEY HierarchyNode prhi posnr
KEY ValidityEndDate
ParentNode prhi up
HierarchyVersion
WBSElement prps posid
HierarchyNodeSequence
_Text _Text
_WBSElement _WBSElement
_Hierarchy _Hierarchy
@AbapCatalog.sqlViewName: 'IWBSHIERNODE'
@AbapCatalog.compiler.compareFilter: true
@AccessControl.authorizationCheck: #CHECK
@AccessControl.personalData.blocking: #BLOCKED_DATA_EXCLUDED
@AccessControl.privilegedAssociations:  ['_Hierarchy' ]
@ObjectModel: { dataCategory: #HIERARCHY }
@VDM.viewType: #BASIC
@Hierarchy.parentChild:
[{ recurse:          {   parent: ['ParentNode'],   child:  ['HierarchyNode']   },
  siblingsOrder:    [{   by: 'HierarchyNodeSequence',    direction: 'ASC'   }],
  directory:        '_Hierarchy'
  }]
@ObjectModel.usageType.sizeCategory: #L
@ObjectModel.usageType.dataClass:  #MASTER
@ObjectModel.usageType.serviceQuality: #A
@ClientHandling.algorithm: #SESSION_VARIABLE
@EndUserText.label: 'WBS Element Hierarchy Node'
//@ObjectModel.representativeKey: 'HierarchyNode'

//@VDM.lifecycle.contract.type:  #SAP_INTERNAL_API


//Deprecated - Do not use this view

@VDM.lifecycle : {
        status:  #DEPRECATED        
   }


define view I_WBSElementHierarchyNode
  as

  select from hrrp_node

  association [0..*] to I_WBSElementHierarchyNodeText as _Text       on  $projection.WBSElementHierarchy = _Text.WBSElementHierarchy
                                                                     and $projection.HierarchyNode       = _Text.HierarchyNode
                                                                     and $projection.WBSElement          = ''

  association [0..1] to I_WBSElement                  as _WBSElement on  $projection.WBSElement = _WBSElement.WBSElement

  association [1..1] to I_WBSElementHierarchy         as _Hierarchy  on  $projection.WBSElementHierarchy = _Hierarchy.WBSElementHierarchy
                                                                     and $projection.ValidityEndDate     = _Hierarchy.ValidityEndDate

{
      @Consumption.filter: {mandatory : true, selectionType : #SINGLE, multipleSelections : false }
      @ObjectModel.foreignKey.association: '_Hierarchy'
  //key hrrp_node.hryid                           as WBSElementHierarchy,

  key cast ( hrrp_node.hryid as wbshierarchy preserving type )  as WBSElementHierarchy,
      @ObjectModel.text.association: '_Text'
  key hrrp_node.hrynode                         as HierarchyNode,
      @Consumption.filter: {mandatory : true, selectionType : #SINGLE, multipleSelections : false }
  key cast(hrrp_node.hryvalto as fis_datbi)     as ValidityEndDate,
      hrrp_node.parnode                         as ParentNode,
      hrrp_node.hryver                          as HierarchyVersion,
//      @ObjectModel.foreignKey.association: '_WBSElement'

//      case nodetype

//        when 'L' then  substring( hrrp_node.nodevalue, 1, 24 )

//        else  ''

//      end                                       as WBSElement,

     @ObjectModel.foreignKey.association: '_WBSElement'
      substring( hrrp_node.leafvalue, 1, 24 )     as WBSElement,
      hrrp_node.hryseqnbr                         as HierarchyNodeSequence,

      _Text,
      _WBSElement,
      _Hierarchy

}
where
  nodetype <> 'D' and hrytype = '0110' 

union all

select from  prps
  inner join prhi on prhi.posnr = prps.pspnr

association [0..1] to I_WBSElement                  as _WBSElement on  $projection.WBSElement = _WBSElement.WBSElement

association [1..1] to I_WBSElementHierarchy         as _Hierarchy  on  $projection.WBSElementHierarchy = _Hierarchy.WBSElementHierarchy
                                                                   and $projection.ValidityEndDate     = _Hierarchy.ValidityEndDate

association [0..*] to I_WBSElementHierarchyNodeText as _Text       on  $projection.WBSElementHierarchy = _Text.WBSElementHierarchy
                                                                   and $projection.HierarchyNode       = _Text.HierarchyNode
                                                                   and $projection.WBSElement          = ''

{
      @Consumption.filter: {mandatory : true, selectionType : #SINGLE, multipleSelections : false }
      @ObjectModel.foreignKey.association: '_Hierarchy'
  key 'WBSELEMENTHIERARCHY                       '  as WBSElementHierarchy,
      @ObjectModel.text.association: '_Text'
  key prhi.posnr                                    as HierarchyNode,
      @Consumption.filter: {mandatory : true, selectionType : #SINGLE, multipleSelections : false }
  key '99991231'                                    as ValidityEndDate,
      prhi.up                                       as ParentNode,
      '000000000000001'                             as HierarchyVersion,
      @ObjectModel.foreignKey.association: '_WBSElement'
      prps.posid                                    as WBSElement,
      cast ('000000' as hryseqnbr preserving type ) as HierarchyNodeSequence,
      _Text,
      _WBSElement,
      _Hierarchy
}
where
  prhi.up is not null
/*+[internal] {
"BASEINFO":
{
"FROM":
[
"HRRP_NODE",
"PRHI",
"PRPS"
],
"ASSOCIATED":
[
"I_WBSELEMENT",
"I_WBSELEMENTHIERARCHY",
"I_WBSELEMENTHIERARCHYNODETEXT"
],
"BASE":
[],
"ANNO_REF":
[],
"SCALAR_FUNCTION":
[],
"VERSION":0,
"ANNOREF_EVALUATION_ERROR":""
}
}*/