I_GR_GLAccountHierarchyNode

DDL: I_GR_GLACCOUNTHIERARCHYNODE Type: view_entity BASIC

Greece G/L Account Hierachy Node

I_GR_GLAccountHierarchyNode is a Basic CDS View that provides data about "Greece G/L Account Hierachy Node" in SAP S/4HANA. It reads from 1 data source (hrrp_node_n) and exposes 18 fields with key fields GLAccountHierarchy, HierarchyNode, ValidityEndDate. It has 4 associations to related views.

Data Sources (1)

SourceAliasJoin Type
hrrp_node_n hrrp_node_n from

Associations (4)

CardinalityTargetAliasCondition
[0..*] I_GR_GLAccountHierarchyNodeT _GR_GLAccountHierarchyNodeT $projection.GLAccountHierarchy = _GR_GLAccountHierarchyNodeT.GLAccountHierarchy and $projection.HierarchyNode = _GR_GLAccountHierarchyNodeT.HierarchyNode and $projection.GLAccount = ''
[0..1] I_GR_GLAcctChartOfAccount _GR_GLAccountInChartOfAccounts $projection.ChartOfAccounts = _GR_GLAccountInChartOfAccounts.ChartOfAccounts and $projection.GLAccount = _GR_GLAccountInChartOfAccounts.GLAccount
[0..1] I_GR_GLAccountHierarchy _GR_Hierarchy $projection.GLAccountHierarchy = _GR_Hierarchy.GLAccountHierarchy and $projection.ValidityEndDate = _GR_Hierarchy.ValidityEndDate
[0..1] I_ChartOfAccounts _ChartOfAccounts $projection.ChartOfAccounts = _ChartOfAccounts.ChartOfAccounts

Annotations (11)

NameValueLevelField
ObjectModel.dataCategory #HIERARCHY view
VDM.viewType #BASIC view
ObjectModel.representativeKey HierarchyNode view
Analytics.dataExtraction.enabled true view
AccessControl.authorizationCheck #MANDATORY view
ObjectModel.usageType.sizeCategory #L view
ObjectModel.usageType.dataClass #MASTER view
ObjectModel.usageType.serviceQuality #D view
Metadata.ignorePropagatedAnnotations true view
Consumption.filter.businessDate.at true view
EndUserText.label Greece G/L Account Hierachy Node view

Fields (18)

KeyFieldSource TableSource FieldDescription
KEY GLAccountHierarchy
KEY HierarchyNode hrrp_node_n hrynode
KEY ValidityEndDate
ParentNode hrrp_node_n parnode
HierarchyVersion
ValidityStartDate
ChartOfAccounts hrrp_node_n ktopl
GLAccount
SequenceNumber
HierarchyNodeSequence hrrp_node_n hryseqnbr
HierarchyNodeLevel hrrp_node_n hrylevel
NodeType hrrp_node_n nodetype
SignIsInverted
HierarchyNodeVal hrrp_node_n nodevalue
_GR_GLAccountHierarchyNodeT _GR_GLAccountHierarchyNodeT
_GR_GLAccountInChartOfAccounts _GR_GLAccountInChartOfAccounts
_GR_Hierarchy _GR_Hierarchy
_ChartOfAccounts _ChartOfAccounts
@ObjectModel: { dataCategory: #HIERARCHY }
@VDM.viewType: #BASIC
@ObjectModel.representativeKey: 'HierarchyNode'
@Hierarchy.parentChild:
[{
  recurse:
    {
        parent: ['ParentNode'],
        child:  ['HierarchyNode']
     },
  siblingsOrder:
    [{
        by: 'HierarchyNodeSequence',
        direction: #ASC
    }],
   directory: '_GR_Hierarchy'
  }]


@Analytics.dataExtraction: {enabled:true}

//@AccessControl.authorizationCheck: #NOT_ALLOWED

@AccessControl.authorizationCheck: #MANDATORY
@ObjectModel.usageType.sizeCategory: #L
@ObjectModel.usageType.dataClass:  #MASTER
@ObjectModel.usageType.serviceQuality: #D
@Metadata.ignorePropagatedAnnotations: true
@Consumption.filter.businessDate.at: true
@ObjectModel.supportedCapabilities:[#CDS_MODELING_DATA_SOURCE,#EXTRACTION_DATA_SOURCE]
@EndUserText.label: 'Greece G/L Account Hierachy Node'
define view entity I_GR_GLAccountHierarchyNode
  as select from hrrp_node_n

  association [0..*] to I_GR_GLAccountHierarchyNodeT as _GR_GLAccountHierarchyNodeT    on  $projection.GLAccountHierarchy = _GR_GLAccountHierarchyNodeT.GLAccountHierarchy
                                                                                       and $projection.HierarchyNode      = _GR_GLAccountHierarchyNodeT.HierarchyNode
                                                                                       and $projection.GLAccount          = '' // just to show that this association is only to be followed if GLAcount is blank


  association [0..1] to I_GR_GLAcctChartOfAccount    as _GR_GLAccountInChartOfAccounts on  $projection.ChartOfAccounts = _GR_GLAccountInChartOfAccounts.ChartOfAccounts
                                                                                       and $projection.GLAccount       = _GR_GLAccountInChartOfAccounts.GLAccount

  association [0..1] to I_GR_GLAccountHierarchy      as _GR_Hierarchy                  on  $projection.GLAccountHierarchy = _GR_Hierarchy.GLAccountHierarchy
                                                                                       and $projection.ValidityEndDate    = _GR_Hierarchy.ValidityEndDate // Hierarchy directory and hierarchy nodes have the same time slice


  association [0..1] to I_ChartOfAccounts            as _ChartOfAccounts               on  $projection.ChartOfAccounts = _ChartOfAccounts.ChartOfAccounts

{

      @Consumption.filter: {mandatory : true, selectionType : #SINGLE, multipleSelections : false }
      @ObjectModel.foreignKey.association: '_GR_Hierarchy'
  key cast ( hrrp_node_n.hryid_42 as fis_glaccthier preserving type ) as GLAccountHierarchy,
      @ObjectModel.text.association: '_GR_GLAccountHierarchyNodeT'
  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,
      hrrp_node_n.parnode                                             as ParentNode,
      @VDM.lifecycle.status:    #DEPRECATED
      cast( '000000000000001' as hryversn )                           as HierarchyVersion,
      @Semantics.businessDate.from: true
      cast(hrrp_node_n.hryvalfrom as fis_datab preserving type )      as ValidityStartDate,
      @ObjectModel.foreignKey.association: '_ChartOfAccounts'
      hrrp_node_n.ktopl                                               as ChartOfAccounts,
      @ObjectModel.foreignKey.association: '_GR_GLAccountInChartOfAccounts'
      cast(hrrp_node_n.saknr as fis_saknr preserving type )           as GLAccount,

      @VDM.lifecycle.status:    #DEPRECATED
      @VDM.lifecycle.successor: 'HierarchyNodeSequence'
      concat(hrrp_node_n.hryseqnbr, hrrp_node_n.hrynode)              as SequenceNumber, // do not use any longer, use HierarchyNodeSequence

      hrrp_node_n.hryseqnbr                                           as HierarchyNodeSequence,
      hrrp_node_n.hrylevel                                            as HierarchyNodeLevel,
      hrrp_node_n.nodetype                                            as NodeType,
      @Semantics.signReversalIndicator: true
      //      cast(hrrp_node_n.sign   as hryattrvalue )                       as SignIsInverted,

      cast( hrrp_node_n.sign as rr_rsign )                            as SignIsInverted,
      hrrp_node_n.nodevalue                                           as HierarchyNodeVal,
      _GR_GLAccountHierarchyNodeT,
      _GR_GLAccountInChartOfAccounts,
      _GR_Hierarchy,
      _ChartOfAccounts

}
where
  (
          hrrp_node_n.hrytyp   =  '0109'
    or    hrrp_node_n.hrytyp   =  'FSVN'
  )
  and(
          hrrp_node_n.balind   =  'S'
    or    hrrp_node_n.balind   =  ' '
  )
  and(
    (
          hrrp_node_n.nodetype <> 'D'
      and hrrp_node_n.nodetype <> 'L'
    )
    or(
          hrrp_node_n.nodetype =  'L'
      and hrrp_node_n.nodecls  <> ''
    )
  )
  and(
          hrrp_node_n.nodetype =  'R'
    or    hrrp_node_n.nodetype =  'L'
    or    hrrp_node_n.nodetype =  'N'
    or    hrrp_node_n.nodetype =  'O'
  )
/*+[internal] {
"BASEINFO":
{
"FROM":
[
"HRRP_NODE_N"
],
"ASSOCIATED":
[
"I_CHARTOFACCOUNTS",
"I_GR_GLACCOUNTHIERARCHY",
"I_GR_GLACCOUNTHIERARCHYNODET",
"I_GR_GLACCTCHARTOFACCOUNT"
],
"BASE":
[],
"ANNO_REF":
[],
"SCALAR_FUNCTION":
[],
"VERSION":0,
"ANNOREF_EVALUATION_ERROR":""
}
}*/