I_FinancialStatementCube
Virtual Financial Statement Cube
I_FinancialStatementCube is a Composite CDS View (Cube) that provides data about "Virtual Financial Statement Cube" in SAP S/4HANA. It reads from 1 data source (I_GLAccountLineItem) and exposes 53 fields with key fields Ledger, SourceLedger, CompanyCode, FiscalYear, AccountingDocument. It has 7 associations to related views. Part of development package FINS_FIS_GL.
Data Sources (1)
| Source | Alias | Join Type |
|---|---|---|
| I_GLAccountLineItem | I_GLAccountLineItem | from |
Parameters (11)
| Name | Type | Default |
|---|---|---|
| P_FinancialStatementVersion | hryid | |
| P_FromFiscalPeriod | fis_period_from | |
| P_ToFiscalPeriod | fis_period_to | |
| P_FiscalYear | fis_gjahr_no_conv | |
| P_FromComparisonFiscalPeriod | fis_period_from_cmp | |
| P_ToComparisonFiscalPeriod | fis_period_to_cmp | |
| P_ComparisonFiscalYear | fis_gjahr_cmp_no_conv | |
| P_Ledger | fins_ledger | |
| P_ComparisonLedger | fis_ledger_cmp | |
| P_CurrencyRole | fis_curtp | |
| P_PlanningCategory | fcom_category |
Associations (7)
| Cardinality | Target | Alias | Condition |
|---|---|---|---|
| [0..1] | I_FinancialStatementLeafItem | _FinancialStatementLeafItem | $projection.FinancialStatementLeafItem = _FinancialStatementLeafItem.FinancialStatementLeafItem |
| [1..1] | I_Currency | _Currency | $projection.Currency = _Currency.Currency |
| [0..1] | I_ChartOfAccounts | _CorpGroupChartOfAccounts | $projection.corporategroupchartofaccounts = _CorpGroupChartOfAccounts.ChartOfAccounts |
| [0..1] | I_GLAccountInChartOfAccounts | _CorporateGroupAccount | $projection.corporategroupchartofaccounts = _CorporateGroupAccount.ChartOfAccounts and $projection.CorporateGroupAccount = _CorporateGroupAccount.GLAccount |
| [0..1] | I_AlternativeGLAccountIsUsed | _AlternativeGLAccountIsUsed | $projection.AlternativeGLAccountIsUsed = _AlternativeGLAccountIsUsed.AlternativeGLAccountIsUsed |
| [0..1] | I_Indicator | _ZeroBalanceAccountIsDisplayed | $projection.ZeroBalanceAccountIsDisplayed = _ZeroBalanceAccountIsDisplayed.IndicatorValue |
| [0..1] | I_Indicator | _YrEndClsgPostingIsDisplayed | $projection.YrEndClsgPostingIsDisplayed = _YrEndClsgPostingIsDisplayed.IndicatorValue |
Annotations (16)
| Name | Value | Level | Field |
|---|---|---|---|
| AbapCatalog.entityBuffer.definitionAllowed | false | view | |
| EndUserText.label | Virtual Financial Statement Cube | view | |
| Analytics.dataCategory | #CUBE | view | |
| Analytics.dataExtraction.enabled | true | view | |
| Analytics.technicalName | IFIFINSTMTCUBE | view | |
| VDM.viewType | #COMPOSITE | view | |
| AccessControl.authorizationCheck | #PRIVILEGED_ONLY | view | |
| AccessControl.personalData.blocking | #BLOCKED_DATA_EXCLUDED | view | |
| ObjectModel.representativeKey | LedgerGLLineItem | view | |
| ObjectModel.usageType.sizeCategory | #XXL | view | |
| ObjectModel.usageType.dataClass | #MIXED | view | |
| ObjectModel.usageType.serviceQuality | #D | view | |
| Metadata.ignorePropagatedAnnotations | true | view | |
| Metadata.allowExtensions | true | view | |
| Environment.sql.passValueForClient | true | view | |
| Analytics.readClassName | CL_FIS_FINS_STMNT_CDS | view |
Fields (53)
| Key | Field | Source Table | Source Field | Description |
|---|---|---|---|---|
| KEY | Ledger | I_GLAccountLineItem | Ledger | |
| _Ledger | I_GLAccountLineItem | _Ledger | ||
| KEY | SourceLedger | I_GLAccountLineItem | SourceLedger | |
| _SourceLedger | I_GLAccountLineItem | _SourceLedger | ||
| KEY | CompanyCode | I_GLAccountLineItem | CompanyCode | |
| _CompanyCode | I_GLAccountLineItem | _CompanyCode | ||
| KEY | FiscalYear | |||
| _FiscalYear | I_GLAccountLineItem | _FiscalYear | ||
| KEY | AccountingDocument | I_GLAccountLineItem | AccountingDocument | |
| _JournalEntry | I_GLAccountLineItem | _JournalEntry | ||
| KEY | LedgerGLLineItem | I_GLAccountLineItem | LedgerGLLineItem | |
| LedgerFiscalYear | I_GLAccountLineItem | LedgerFiscalYear | ||
| _LedgerFiscalYear | I_GLAccountLineItem | _LedgerFiscalYear | ||
| ControllingArea | I_GLAccountLineItem | ControllingArea | ||
| _ControllingArea | I_GLAccountLineItem | _ControllingArea | ||
| ChartOfAccounts | I_GLAccountLineItem | ChartOfAccounts | ||
| _ChartOfAccounts | I_GLAccountLineItem | _ChartOfAccounts | ||
| GLAccount | I_GLAccountLineItem | GLAccount | ||
| _GLAccountInChartOfAccounts | I_GLAccountLineItem | _GLAccountInChartOfAccounts | ||
| FinancialStatementLeafItem | Financial Statement Leaf Item | |||
| _FinancialStatementLeafItem | _FinancialStatementLeafItem | |||
| ProfitCenter | I_GLAccountLineItem | ProfitCenter | ||
| _ProfitCenter | I_GLAccountLineItem | _ProfitCenter | ||
| FunctionalArea | I_GLAccountLineItem | FunctionalArea | ||
| _FunctionalArea | I_GLAccountLineItem | _FunctionalArea | ||
| FiscalPeriod | I_GLAccountLineItem | FiscalPeriod | ||
| _FiscalPeriod | I_GLAccountLineItem | _FiscalPeriod | ||
| FiscalYearVariant | I_GLAccountLineItem | FiscalYearVariant | ||
| _FiscalYearVariant | I_GLAccountLineItem | _FiscalYearVariant | ||
| AlternativeGLAccount | I_GLAccountLineItem | AlternativeGLAccount | ||
| _AlternativeGLAccount | I_GLAccountLineItem | _AlternativeGLAccount | ||
| CountryChartOfAccounts | I_GLAccountLineItem | CountryChartOfAccounts | ||
| _CountryChartOfAccounts | I_GLAccountLineItem | _CountryChartOfAccounts | ||
| Segment | I_GLAccountLineItem | Segment | ||
| _Segment | I_GLAccountLineItem | _Segment | ||
| CorporateGroupAccount | ||||
| _CorporateGroupAccount | _CorporateGroupAccount | |||
| CorporateGroupChartOfAccounts | ||||
| _CorpGroupChartOfAccounts | _CorpGroupChartOfAccounts | |||
| AlternativeGLAccountIsUsed | ||||
| _AlternativeGLAccountIsUsed | _AlternativeGLAccountIsUsed | |||
| Currency | ||||
| _Currency | _Currency | |||
| PeriodBalanceAmount | ||||
| ComparisonPeriodBalanceAmount | ||||
| GLAccountHierarchyKeyDate | ||||
| ZeroBalanceAccountIsDisplayed | ||||
| _ZeroBalanceAccountIsDisplayed | _ZeroBalanceAccountIsDisplayed | |||
| YrEndClsgPostingIsDisplayed | ||||
| _YrEndClsgPostingIsDisplayed | _YrEndClsgPostingIsDisplayed | |||
| GLRecordType | I_GLAccountLineItem | GLRecordType | ||
| BusinessTransactionCategory | I_GLAccountLineItem | BusinessTransactionCategory | ||
| _BusinessTransactionCategory | I_GLAccountLineItem | _BusinessTransactionCategory |
@AbapCatalog.entityBuffer.definitionAllowed: false
@EndUserText.label: 'Virtual Financial Statement Cube'
@Analytics: { dataCategory: #CUBE, dataExtraction.enabled: true }
@Analytics.technicalName: 'IFIFINSTMTCUBE'
@VDM.viewType: #COMPOSITE
@AccessControl.authorizationCheck: #PRIVILEGED_ONLY
@AccessControl.personalData.blocking:#BLOCKED_DATA_EXCLUDED
@ObjectModel.representativeKey: 'LedgerGLLineItem'
@ObjectModel.usageType.sizeCategory: #XXL
@ObjectModel.usageType.dataClass: #MIXED
@ObjectModel.usageType.serviceQuality: #D
@Metadata.ignorePropagatedAnnotations: true
@Metadata.allowExtensions:true
@Environment.sql.passValueForClient: true
@Analytics.readClassName: 'CL_FIS_FINS_STMNT_CDS'
define view entity I_FinancialStatementCube
with parameters
P_FinancialStatementVersion : hryid,
P_FromFiscalPeriod : fis_period_from,
P_ToFiscalPeriod : fis_period_to,
P_FiscalYear : fis_gjahr_no_conv,
P_FromComparisonFiscalPeriod : fis_period_from_cmp,
P_ToComparisonFiscalPeriod : fis_period_to_cmp,
P_ComparisonFiscalYear : fis_gjahr_cmp_no_conv,
P_Ledger : fins_ledger,
P_ComparisonLedger : fis_ledger_cmp,
P_CurrencyRole : fis_curtp,
P_PlanningCategory : fcom_category
as select from I_GLAccountLineItem as I_GLAccountLineItem
association of exact one to exact one E_JournalEntryItem as _Extension on $projection.SourceLedger = _Extension.SourceLedger
and $projection.CompanyCode = _Extension.CompanyCode
and $projection.FiscalYear = _Extension.FiscalYear
and $projection.AccountingDocument = _Extension.AccountingDocument
and $projection.LedgerGLLineItem = _Extension.LedgerGLLineItem
association [0..1] to I_FinancialStatementLeafItem as _FinancialStatementLeafItem on $projection.FinancialStatementLeafItem = _FinancialStatementLeafItem.FinancialStatementLeafItem
association [1..1] to I_Currency as _Currency on $projection.Currency = _Currency.Currency
association [0..1] to I_ChartOfAccounts as _CorpGroupChartOfAccounts on $projection.corporategroupchartofaccounts = _CorpGroupChartOfAccounts.ChartOfAccounts
association [0..1] to I_GLAccountInChartOfAccounts as _CorporateGroupAccount on $projection.corporategroupchartofaccounts = _CorporateGroupAccount.ChartOfAccounts
and $projection.CorporateGroupAccount = _CorporateGroupAccount.GLAccount
association [0..1] to I_AlternativeGLAccountIsUsed as _AlternativeGLAccountIsUsed on $projection.AlternativeGLAccountIsUsed = _AlternativeGLAccountIsUsed.AlternativeGLAccountIsUsed
association [0..1] to I_Indicator as _ZeroBalanceAccountIsDisplayed on $projection.ZeroBalanceAccountIsDisplayed = _ZeroBalanceAccountIsDisplayed.IndicatorValue
association [0..1] to I_Indicator as _YrEndClsgPostingIsDisplayed on $projection.YrEndClsgPostingIsDisplayed = _YrEndClsgPostingIsDisplayed.IndicatorValue
{
@ObjectModel.foreignKey.association: '_Ledger'
key I_GLAccountLineItem.Ledger,
I_GLAccountLineItem._Ledger,
@ObjectModel.foreignKey.association: '_SourceLedger'
key I_GLAccountLineItem.SourceLedger,
I_GLAccountLineItem._SourceLedger,
@ObjectModel.foreignKey.association: '_CompanyCode'
key I_GLAccountLineItem.CompanyCode,
I_GLAccountLineItem._CompanyCode,
@ObjectModel.foreignKey.association: '_FiscalYear'
key cast( I_GLAccountLineItem.FiscalYear as fis_gjahr_no_conv preserving type ) as FiscalYear,
I_GLAccountLineItem._FiscalYear,
@ObjectModel.foreignKey.association: '_JournalEntry'
key I_GLAccountLineItem.AccountingDocument,
I_GLAccountLineItem._JournalEntry,
key I_GLAccountLineItem.LedgerGLLineItem,
@ObjectModel.foreignKey.association: '_LedgerFiscalYear'
@Semantics.fiscal.year: true
I_GLAccountLineItem.LedgerFiscalYear,
I_GLAccountLineItem._LedgerFiscalYear,
@ObjectModel.foreignKey.association: '_ControllingArea'
I_GLAccountLineItem.ControllingArea,
I_GLAccountLineItem._ControllingArea,
@ObjectModel.foreignKey.association: '_ChartOfAccounts'
I_GLAccountLineItem.ChartOfAccounts,
I_GLAccountLineItem._ChartOfAccounts,
@ObjectModel.foreignKey.association: '_GLAccountInChartOfAccounts'
I_GLAccountLineItem.GLAccount,
I_GLAccountLineItem._GLAccountInChartOfAccounts,
@ObjectModel.foreignKey.association:'_FinancialStatementLeafItem'
@EndUserText.label: 'Financial Statement Leaf Item'
cast(concat(I_GLAccountLineItem.ChartOfAccounts,concat(lpad(GLAccount,12,'0'),' A')) as fins_fsleaf preserving type ) as FinancialStatementLeafItem,
@ObjectModel.association.boundFields.dataMatchesSourceAndTargetTypes: true
_FinancialStatementLeafItem,
@ObjectModel.foreignKey.association: '_ProfitCenter'
I_GLAccountLineItem.ProfitCenter,
I_GLAccountLineItem._ProfitCenter,
@ObjectModel.foreignKey.association: '_FunctionalArea'
I_GLAccountLineItem.FunctionalArea,
I_GLAccountLineItem._FunctionalArea,
@ObjectModel.foreignKey.association: '_FiscalPeriod'
@Semantics.fiscal.period: true
I_GLAccountLineItem.FiscalPeriod,
I_GLAccountLineItem._FiscalPeriod,
@ObjectModel.foreignKey.association: '_FiscalYearVariant'
@Semantics.fiscal.yearVariant: true
I_GLAccountLineItem.FiscalYearVariant,
I_GLAccountLineItem._FiscalYearVariant,
@ObjectModel.foreignKey.association: '_AlternativeGLAccount'
I_GLAccountLineItem.AlternativeGLAccount,
I_GLAccountLineItem._AlternativeGLAccount,
@ObjectModel.foreignKey.association: '_CountryChartOfAccounts'
I_GLAccountLineItem.CountryChartOfAccounts,
I_GLAccountLineItem._CountryChartOfAccounts,
@ObjectModel.foreignKey.association: '_Segment'
I_GLAccountLineItem.Segment,
I_GLAccountLineItem._Segment,
@ObjectModel.foreignKey.association: '_CorporateGroupAccount'
I_GLAccountLineItem._GLAccountInChartOfAccounts.CorporateGroupAccount as CorporateGroupAccount,
_CorporateGroupAccount,
@ObjectModel.foreignKey.association: '_CorpGroupChartOfAccounts'
I_GLAccountLineItem._ChartOfAccounts.CorporateGroupChartOfAccounts,
_CorpGroupChartOfAccounts,
@ObjectModel.foreignKey.association: '_AlternativeGLAccountIsUsed'
cast (' ' as fis_disalteracct preserving type ) as AlternativeGLAccountIsUsed,
_AlternativeGLAccountIsUsed,
///////////////////////////////////////////////////////////////////////////////
// Currency and Amount Fields
///////////////////////////////////////////////////////////////////////////////
@ObjectModel.foreignKey.association: '_Currency'
cast (CompanyCodeCurrency as fis_waers preserving type ) as Currency,
_Currency,
@DefaultAggregation: #SUM
@Semantics: { amount : {currencyCode: 'Currency'} }
cast( 1 as fis_repo_amount ) as PeriodBalanceAmount,
@DefaultAggregation: #SUM
@Semantics: { amount : {currencyCode: 'Currency'} }
cast( 1 as fis_comp_amount ) as ComparisonPeriodBalanceAmount,
cast( '00000000' as fis_glaccthier_keydate ) as GLAccountHierarchyKeyDate,
@ObjectModel.foreignKey.association: '_ZeroBalanceAccountIsDisplayed'
cast( ' ' as fis_zerobalance preserving type ) as ZeroBalanceAccountIsDisplayed,
_ZeroBalanceAccountIsDisplayed,
@ObjectModel.foreignKey.association: '_YrEndClsgPostingIsDisplayed'
cast( ' ' as fis_inclyearendpostings preserving type ) as YrEndClsgPostingIsDisplayed,
_YrEndClsgPostingIsDisplayed,
I_GLAccountLineItem.GLRecordType,
@ObjectModel.foreignKey.association: '_BusinessTransactionCategory'
I_GLAccountLineItem.BusinessTransactionCategory,
I_GLAccountLineItem._BusinessTransactionCategory
//_Extension Extensions must be local
}
///////////////////////////////////////////////////////////////////////////////
// This is a virtual cube and serves only as metadata for the OLAP Engine.
// A SQL request shall never return any data.
where
I_GLAccountLineItem.Ledger = ''
Learn More
- What Is a CDS View in SAP S/4HANA?
- Types of CDS Views: Basic, Composite, Consumption, and Transactional
- SAP Tables vs CDS Views — Key Differences
- Understanding Data Lineage in SAP S/4HANA
- VDM (Virtual Data Model) in SAP S/4HANA Explained
- CDS View Annotations — A Complete Guide
- CDS View Field Mapping and Associations
- Understanding the SAP S/4HANA Data Model
- CDS View Extensions and Custom Fields in SAP S/4HANA
- Released APIs and Stability Contracts in SAP S/4HANA