I_CostComponentHierarchyNode

DDL: I_COSTCOMPONENTHIERARCHYNODE Type: view_entity BASIC Package: FINS_UCB_HIER

Cost Breakdown Hierarchy Node

I_CostComponentHierarchyNode is a Basic CDS View that provides data about "Cost Breakdown Hierarchy Node" in SAP S/4HANA. It reads from 1 data source (hrrp_node_n) and exposes 15 fields with key fields CostComponentHierarchy, HierarchyNode, ValidityEndDate. It has 4 associations to related views. Part of development package FINS_UCB_HIER.

Data Sources (1)

SourceAliasJoin Type
hrrp_node_n hrrp_node_n from

Associations (4)

CardinalityTargetAliasCondition
[0..*] I_CostComponentHierNodeTxt _Text $projection.CostComponentHierarchy = _Text.CostComponentHierarchy and $projection.HierarchyNode = _Text.HierarchyNode and $projection.CostBreakdownComponent = ''
[0..1] I_CostBreakdownComponent _CostBreakdownComponent $projection.CostBreakdownStructure = _CostBreakdownComponent.CostBreakdownStructure and $projection.CostBreakdownComponent = _CostBreakdownComponent.CostBreakdownComponent
[1..1] I_CostComponentHierarchy _Hierarchy $projection.CostComponentHierarchy = _Hierarchy.CostComponentHierarchy and $projection.ValidityEndDate = _Hierarchy.ValidityEndDate
[0..1] I_CostBreakdownStructure _CostBreakdownStructure $projection.CostBreakdownStructure = _CostBreakdownStructure.CostBreakdownStructure

Annotations (11)

NameValueLevelField
EndUserText.label Cost Breakdown Hierarchy Node view
VDM.viewType #BASIC view
Metadata.ignorePropagatedAnnotations true view
AccessControl.authorizationCheck #MANDATORY view
ObjectModel.modelingPattern #ANALYTICAL_PARENT_CHILD_HIERARCHY_NODE view
ObjectModel.usageType.dataClass #MASTER view
ObjectModel.usageType.serviceQuality #A view
ObjectModel.usageType.sizeCategory #S view
ObjectModel.dataCategory #HIERARCHY view
Analytics.dataExtraction.enabled true view
ObjectModel.sapObjectNodeType.name CostComponentHierarchyNode view

Fields (15)

KeyFieldSource TableSource FieldDescription
KEY CostComponentHierarchy
KEY HierarchyNode hrrp_node_n hrynode
KEY ValidityEndDate
ValidityStartDate
ParentNode hrrp_node_n parnode
CostBreakdownComponent hrrp_node_n cost_component
CostBreakdownStructure hrrp_node_n cost_comp_struc
HierarchyNodeSequence hrrp_node_n hryseqnbr
HierarchyNodeLevel hrrp_node_n hrylevel
NodeType hrrp_node_n nodetype
HierarchyNodeVal hrrp_node_n nodevalue
_Text _Text
_Hierarchy _Hierarchy
_CostBreakdownComponent _CostBreakdownComponent
_CostBreakdownStructure _CostBreakdownStructure
@EndUserText.label: 'Cost Breakdown Hierarchy Node'
@VDM.viewType: #BASIC
@Hierarchy.parentChild:
[{ recurse:          {   parent: ['ParentNode'],   child:  ['HierarchyNode']  },
  siblingsOrder:    [{   by: 'HierarchyNodeSequence' }],
  directory:        '_Hierarchy'
  }]
@Metadata.ignorePropagatedAnnotations:true
@AccessControl.authorizationCheck: #MANDATORY
//@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 ]

@ObjectModel: {usageType: {
  dataClass: #MASTER,
  serviceQuality: #A,
  sizeCategory: #S},
  dataCategory: #HIERARCHY
}
@Analytics: { dataExtraction.enabled: true }
@ObjectModel.sapObjectNodeType.name:'CostComponentHierarchyNode'

define view entity I_CostComponentHierarchyNode
  as select from hrrp_node_n

  association [0..*] to I_CostComponentHierNodeTxt as _Text                   on  $projection.CostComponentHierarchy = _Text.CostComponentHierarchy
                                                                              and $projection.HierarchyNode          = _Text.HierarchyNode
                                                                              and $projection.CostBreakdownComponent = ''

  association [0..1] to I_CostBreakdownComponent   as _CostBreakdownComponent on  $projection.CostBreakdownStructure = _CostBreakdownComponent.CostBreakdownStructure
                                                                              and $projection.CostBreakdownComponent = _CostBreakdownComponent.CostBreakdownComponent

  association [1..1] to I_CostComponentHierarchy   as _Hierarchy              on  $projection.CostComponentHierarchy = _Hierarchy.CostComponentHierarchy
                                                                              and $projection.ValidityEndDate        = _Hierarchy.ValidityEndDate
  association [0..1] to I_CostBreakdownStructure   as _CostBreakdownStructure on  $projection.CostBreakdownStructure = _CostBreakdownStructure.CostBreakdownStructure

{
        @Consumption.filter: {mandatory : true, selectionType : #SINGLE, multipleSelections : false }
        @ObjectModel.foreignKey.association: '_Hierarchy'
  key   cast(hrrp_node_n.hryid as fucb_cost_comp_hierid preserving type ) as CostComponentHierarchy,
        @ObjectModel.text.association: '_Text'
  key   hrrp_node_n.hrynode                                               as HierarchyNode,
        @Semantics.businessDate.to: true
        @Consumption.filter: {mandatory : true, selectionType : #SINGLE, multipleSelections : false }
  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,
        @ObjectModel.foreignKey.association: '_CostBreakdownComponent'
        hrrp_node_n.cost_component                                        as CostBreakdownComponent,
        @ObjectModel.foreignKey.association: '_CostBreakdownStructure' //Inserted by VDM CDS Suite Plugin

        hrrp_node_n.cost_comp_struc                                       as CostBreakdownStructure,

        hrrp_node_n.hryseqnbr                                             as HierarchyNodeSequence,
        hrrp_node_n.hrylevel                                              as HierarchyNodeLevel,
        hrrp_node_n.nodetype                                              as NodeType,
        hrrp_node_n.nodevalue                                             as HierarchyNodeVal,

        _Text,
        _Hierarchy,
        _CostBreakdownComponent,
        _CostBreakdownStructure

}
where
      hrrp_node_n.nodetype <> 'D'
  and hrrp_node_n.hrytyp   =  'CB01';