I_GLACCOUNTHIERARCHYNODE

CDS View

G/L Account Hierarchy Node

I_GLACCOUNTHIERARCHYNODE is a CDS View in S/4HANA. G/L Account Hierarchy Node. It contains 14 fields. 9 CDS views read from this table.

CDS Views using this table (9)

ViewTypeJoinVDMDescription
C_CostCtrCmtmtGLAccountGroupVH view from CONSUMPTION GLAccount Group Value Help
C_GLAccountHierarchyGroupVH view from CONSUMPTION GLAccount Hierarchy/Group Value Help
C_GLAccountHierarchyNode view from CONSUMPTION API GL Acccount Hierarchy Node
I_AvailyCtrlProfileGLAcctGrpVH view inner BASIC G/L Account Group Value Help
I_CO_GLAccountHierarchyNode view_entity from COMPOSITE Colombia G/L Account Hierarchy Node
P_CostCenterBudget view inner COMPOSITE
P_MX_FinancialStmntStructure view from COMPOSITE
P_MX_FinancialStmntStructure view union_all COMPOSITE
P_ProjectGLAccountHierarchy view from COMPOSITE GL Account for Global Account Hierarchy

Fields (14)

KeyField CDS FieldsUsed in Views
KEY ChartOfAccounts ChartOfAccounts,OperationalChartOfAccounts 3
KEY GLAccountHierarchy FinancialStatementHierarchy,GLAccountHierarchy 3
KEY HierarchyNode HierarchyNode 4
KEY HierarchyVersion HierarchyVersion 2
KEY ValidityEndDate ValidityEndDate 4
_Hierarchy _Hierarchy 1
_Text _Text 1
GLAccount GLAccount,OperationalGLAccount 3
HierarchyNodeLevel HierarchyNodeLevel 1
HierarchyNodeSequence HierarchyNodeSequence 1
HierarchyNodeVal HierarchyNodeVal 1
NodeType FinancialStatementNodeType,NodeType 4
ParentNode ParentNode,ProjectCostComponent 3
ValidityStartDate ValidityStartDate 4
@EndUserText.label: 'G/L Account Hierarchy Node'
@ObjectModel: { dataCategory: #HIERARCHY }
@VDM.viewType: #BASIC
@AbapCatalog.sqlViewName: 'IFIGLACCOUNTHN'
@ObjectModel.representativeKey: 'HierarchyNode'
@Hierarchy.parentChild:
[{
  recurse:
    {
        parent: ['ParentNode'],
        child:  ['HierarchyNode']
     },
  siblingsOrder:
    [{
        by: 'HierarchyNodeSequence',
        direction: 'ASC'
    }],
   directory: '_Hierarchy'
  }]

@Analytics.dataExtraction: {enabled:true}

//@AccessControl.authorizationCheck: #NOT_ALLOWED

@AccessControl.authorizationCheck: #CHECK
@AbapCatalog.buffering.status: #NOT_ALLOWED
@ObjectModel.usageType.sizeCategory: #L
@ObjectModel.usageType.dataClass:  #MASTER
@ObjectModel.usageType.serviceQuality: #A
@ClientHandling.algorithm: #SESSION_VARIABLE
@Metadata.ignorePropagatedAnnotations: true
@Consumption.filter.businessDate.at: true
@ObjectModel.supportedCapabilities:[#CDS_MODELING_DATA_SOURCE,#EXTRACTION_DATA_SOURCE]
define view I_GLAccountHierarchyNode
  as select from hrrp_node_n
  association [0..*] to I_GLAccountHierarchyNodeT    as _Text                       on  $projection.GLAccountHierarchy = _Text.GLAccountHierarchy
                                                                                    and $projection.HierarchyNode      = _Text.HierarchyNode
                                                                                    and $projection.GLAccount          = '' // just to show that this association is only to be followed if GLAcount is blank


  association [0..1] to I_GLAccountInChartOfAccounts as _GLAccountInChartOfAccounts on  $projection.ChartOfAccounts = _GLAccountInChartOfAccounts.ChartOfAccounts
                                                                                    and $projection.GLAccount       = _GLAccountInChartOfAccounts.GLAccount

  association [0..1] to I_GLAccountHierarchy         as _Hierarchy                  on  $projection.GLAccountHierarchy = _Hierarchy.GLAccountHierarchy
                                                                                    and $projection.ValidityEndDate    = _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: '_Hierarchy'
  key cast ( hrrp_node_n.hryid_42 as fis_glaccthier preserving type ) as GLAccountHierarchy,
      @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,
      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: '_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,
      hrrp_node_n.nodevalue                                           as HierarchyNodeVal,
      _Text,
      _GLAccountInChartOfAccounts,
      _Hierarchy,
      _ChartOfAccounts

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