I_FinWBSElementHierarchyNode

DDL: I_FINWBSELEMENTHIERARCHYNODE Type: view_entity COMPOSITE

Fin WBS Element Hierarchy Node

I_FinWBSElementHierarchyNode is a Composite CDS View that provides data about "Fin WBS Element Hierarchy Node" in SAP S/4HANA. It reads from 2 data sources (I_WBSElementStructure, R_FinWBSElementHierarchyNode) and exposes 28 fields with key fields WBSElementHierarchy, HierarchyNode, ValidityEndDate, HierarchyNode, ValidityEndDate. It has 6 associations to related views.

Data Sources (2)

SourceAliasJoin Type
I_WBSElementStructure I_WBSElementStructure union_all
R_FinWBSElementHierarchyNode R_FinWBSElementHierarchyNode from

Associations (6)

CardinalityTargetAliasCondition
[0..1] I_WBSElementBasicData _WBSElementBasicData R_FinWBSElementHierarchyNode.WBSElement = _WBSElementBasicData.WBSElement
[1..1] I_FinWBSElementHierarchy _Hierarchy $projection.WBSElementHierarchy = _Hierarchy.WBSElementHierarchy and $projection.ValidityEndDate = _Hierarchy.ValidityEndDate
[0..*] I_FinWBSElementHierarchyNodeT _Text $projection.WBSElementHierarchy = _Text.WBSElementHierarchy and $projection.HierarchyNode = _Text.HierarchyNode and $projection.WBSElementExternalID = ''
[0..1] I_WBSElementByExternalID _WBSElementByExternalID $projection.WBSElementExternalID = _WBSElementByExternalID.WBSElementExternalID
[0..1] I_WBSElementBasicData _WBSElement I_WBSElementStructure.WBSElementInternalID = _WBSElement.WBSElementInternalID
[0..1] I_WBSElementBasicData _Parent I_WBSElementStructure.WBSElementParentInternalID = _Parent.WBSElementInternalID

Annotations (13)

NameValueLevelField
EndUserText.label Fin WBS Element Hierarchy Node view
VDM.viewType #COMPOSITE view
VDM.lifecycle.contract.type #PUBLIC_LOCAL_API view
AccessControl.authorizationCheck #MANDATORY view
ObjectModel.dataCategory #HIERARCHY view
ObjectModel.usageType.serviceQuality #D view
ObjectModel.usageType.sizeCategory #XL view
ObjectModel.usageType.dataClass #MASTER view
Analytics.technicalName IFIWBSELEMENTHN view
Analytics.dataExtraction.enabled true view
Metadata.ignorePropagatedAnnotations true view
ObjectModel.modelingPattern #ANALYTICAL_PARENT_CHILD_HIERARCHY_NODE view
AccessControl.personalData.blocking #NOT_REQUIRED view

Fields (28)

KeyFieldSource TableSource FieldDescription
KEY WBSElementHierarchy R_FinWBSElementHierarchyNode WBSElementHierarchy
KEY HierarchyNode R_FinWBSElementHierarchyNode HierarchyNode
KEY ValidityEndDate R_FinWBSElementHierarchyNode ValidityEndDate
ParentNode R_FinWBSElementHierarchyNode ParentNode
HierarchyVersion R_FinWBSElementHierarchyNode HierarchyVersion
ValidityStartDate R_FinWBSElementHierarchyNode ValidityStartDate
WBSElementExternalID R_FinWBSElementHierarchyNode WBSElementExternalID
WBSElement R_FinWBSElementHierarchyNode WBSElement
ParentWBSElementExternalID R_FinWBSElementHierarchyNode ParentWBSElementExternalID
NodeType R_FinWBSElementHierarchyNode NodeType
HierarchyNodeSequence R_FinWBSElementHierarchyNode HierarchyNodeSequence
HierarchyNodeLevel R_FinWBSElementHierarchyNode HierarchyNodeLevel
_Hierarchy _Hierarchy
_WBSElementByExternalID _WBSElementByExternalID
KEY HierarchyNode _WBSElement WBSElement
KEY ValidityEndDate
ParentNode _Parent WBSElement
HierarchyVersion
ValidityStartDate
WBSElementExternalID
WBSElement _WBSElement WBSElement
ParentWBSElementExternalID
NodeType
HierarchyNodeSequence
HierarchyNodeLevel
_Hierarchy _Hierarchy
_WBSElementByExternalID _WBSElementByExternalID
_Text _Text
@EndUserText.label: 'Fin WBS Element Hierarchy Node'
@VDM.viewType: #COMPOSITE
@VDM.lifecycle.contract.type: #PUBLIC_LOCAL_API
@AccessControl.authorizationCheck: #MANDATORY
@ObjectModel: { dataCategory: #HIERARCHY }
@ObjectModel.usageType.serviceQuality: #D
@ObjectModel.usageType.sizeCategory: #XL
@ObjectModel.usageType.dataClass: #MASTER
//hierarchy Annotation

//@ObjectModel.representativeKey: 'HierarchyNode'

@Analytics.technicalName: 'IFIWBSELEMENTHN'
@Analytics: { dataExtraction.enabled: true }
@Hierarchy.parentChild:
[{ recurse:          {   parent: ['ParentNode'],   child:  ['HierarchyNode']  },
  siblingsOrder:    [{   by: 'HierarchyNodeSequence',    direction: #ASC   }],
  directory:        '_Hierarchy'
  }]
@Metadata.ignorePropagatedAnnotations: true 
//@Analytics.dataExtraction: {enabled:true}   

@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 ]  
@AccessControl.personalData.blocking: #NOT_REQUIRED

define view entity I_FinWBSElementHierarchyNode
  as select from    R_FinWBSElementHierarchyNode
    association [0..1] to I_WBSElementBasicData as _WBSElementBasicData on R_FinWBSElementHierarchyNode.WBSElement = _WBSElementBasicData.WBSElement
    association [1..1] to I_FinWBSElementHierarchy      as _Hierarchy      on  $projection.WBSElementHierarchy = _Hierarchy.WBSElementHierarchy                                                                           
                                                                           and $projection.ValidityEndDate     = _Hierarchy.ValidityEndDate
    association [0..*] to I_FinWBSElementHierarchyNodeT as _Text           on  $projection.WBSElementHierarchy = _Text.WBSElementHierarchy
                                                                           and $projection.HierarchyNode       = _Text.HierarchyNode 
                                                                           and $projection.WBSElementExternalID = ''
    
    association [0..1] to I_WBSElementByExternalID as _WBSElementByExternalID on $projection.WBSElementExternalID = _WBSElementByExternalID.WBSElementExternalID  
                                                                         
                                                          
{
      @Consumption.filter: {mandatory : true, selectionType : #SINGLE, multipleSelections : false }
      @ObjectModel.foreignKey.association: '_Hierarchy'
  key R_FinWBSElementHierarchyNode.WBSElementHierarchy,
      @ObjectModel.text.association: '_Text'
  key R_FinWBSElementHierarchyNode.HierarchyNode                                         as HierarchyNode,
      @Semantics.businessDate.to: true
  key R_FinWBSElementHierarchyNode.ValidityEndDate                                       as ValidityEndDate,
      R_FinWBSElementHierarchyNode.ParentNode                                            as ParentNode,
      R_FinWBSElementHierarchyNode.HierarchyVersion                                      as HierarchyVersion,
      @Semantics.businessDate.from: true
      R_FinWBSElementHierarchyNode.ValidityStartDate                                     as ValidityStartDate,
      @ObjectModel.foreignKey.association: '_WBSElementByExternalID'
      R_FinWBSElementHierarchyNode.WBSElementExternalID                                  as WBSElementExternalID,
      R_FinWBSElementHierarchyNode.WBSElement                                            as WBSElement,
      R_FinWBSElementHierarchyNode.ParentWBSElementExternalID                            as ParentWBSElementExternalID,
      R_FinWBSElementHierarchyNode.NodeType                                              as NodeType,
      R_FinWBSElementHierarchyNode.HierarchyNodeSequence                            as HierarchyNodeSequence,
      R_FinWBSElementHierarchyNode.HierarchyNodeLevel                             as HierarchyNodeLevel,
      _Hierarchy,
      _WBSElementByExternalID,
      _Text
}

union all

select from I_WBSElementStructure
association [0..1] to I_WBSElementBasicData as _WBSElement on I_WBSElementStructure.WBSElementInternalID = _WBSElement.WBSElementInternalID
association [0..1] to I_WBSElementBasicData as _Parent     on I_WBSElementStructure.WBSElementParentInternalID = _Parent.WBSElementInternalID
association [1..1] to I_FinWBSElementHierarchy      as _Hierarchy          on  $projection.WBSElementHierarchy = _Hierarchy.WBSElementHierarchy                                                                           
                                                                           and $projection.ValidityEndDate     = _Hierarchy.ValidityEndDate
association [0..*] to I_FinWBSElementHierarchyNodeT as _Text           on  $projection.WBSElementHierarchy = _Text.WBSElementHierarchy
                                                                           and $projection.HierarchyNode       = _Text.HierarchyNode  
                                                                           and $projection.WBSElementExternalID = ''
association [0..1] to I_WBSElementByExternalID as _WBSElementByExternalID on $projection.WBSElementExternalID = _WBSElementByExternalID.WBSElementExternalID    
  
                                                                              
{
  key cast('WBSELEMENTHIERARCHY                       ' as hryid preserving type)  as WBSElementHierarchy,
  key _WBSElement.WBSElement                                  as HierarchyNode,
  key cast('99991231' as fis_datbi )                          as ValidityEndDate,
      _Parent.WBSElement                                      as ParentNode,
      '000000000000001'                                       as HierarchyVersion,
      cast('19000101' as fis_datab )                          as ValidityStartDate,
      cast(coalesce(_WBSElement.WBSElementExternalID, '') as fis_wbsext_no_conv preserving type ) as WBSElementExternalID,
      _WBSElement.WBSElement                                  as WBSElement,
      cast(_Parent.WBSElementExternalID  as fis_parent_wbsext_no_conv preserving type)  as ParentWBSElementExternalID,
      'L'                                                     as NodeType,
      cast ('000000' as hryseqnbr preserving type )           as HierarchyNodeSequence,
      cast ('000000' as hrylevel preserving type )            as HierarchyNodeLevel,
      _Hierarchy,
      _WBSElementByExternalID,
      _Text
}
where
  I_WBSElementStructure.WBSElementParentInternalID is not null
/*+[internal] {
"BASEINFO":
{
"FROM":
[
"I_WBSELEMENTBASICDATA",
"I_WBSELEMENTSTRUCTURE",
"R_FINWBSELEMENTHIERARCHYNODE"
],
"ASSOCIATED":
[
"I_FINWBSELEMENTHIERARCHY",
"I_FINWBSELEMENTHIERARCHYNODET",
"I_WBSELEMENTBYEXTERNALID"
],
"BASE":
[],
"ANNO_REF":
[],
"SCALAR_FUNCTION":
[],
"VERSION":0,
"ANNOREF_EVALUATION_ERROR":""
}
}*/