---
id: object/page/408
type: object
title: Page 408 "G/L Balance by Dimension"
summary: Page 408 "G/L Balance by Dimension" in Base Application (Microsoft.Finance.Analysis). 1 public procedures, 11 events. Present since at least BC23, still in BC30, changed in BC24.
tier: official
language: en
tags:
  - page
  - base application
versions:
  introduced: null
  last_changed: "24"
  deprecated: null
review:
  state: derived
  by: null
  at: null
  flags: []
generated:
  at: "2026-10-11T00:31:51.816Z"
  pipeline: 0.2.0
  prompts: {}
  input_hash: 32859e61482b5c32e030c169c830eb4f6a12af9d7b33a7fcee948c78c2108086
evidence:
  - kind: code
    url: https://github.com/microsoft/BCApps/blob/ea08af5ef2d6a9b5c5af4a029288abbe2c883220/src/Layers/W1/BaseApp/Finance/Analysis/GLBalancebyDimension.Page.al
    title: src/Layers/W1/BaseApp/Finance/Analysis/GLBalancebyDimension.Page.al (releases/29.x)
    date: null
    commit: ea08af5ef2d6a9b5c5af4a029288abbe2c883220
    t: null
    quote: null
  - kind: learn
    url: https://learn.microsoft.com/dynamics365/business-central/finance-dimensions
    title: Work with dimensions to track and analyze data
    date: null
    commit: null
    t: null
    quote: null
links:
  learn:
    - https://learn.microsoft.com/dynamics365/business-central/finance-dimensions
  objects: []
  features: []
  topics:
    - topic/business-central/business-functionality/finance/working-with-dimensions
  localizations: []
  videos: []
  posts: []
  guidelines: []
object_type: page
object_id: 408
name: G/L Balance by Dimension
namespace: Microsoft.Finance.Analysis
app: Base Application
extends: null
first_version: "23"
last_version: "30"
present_in:
  - "23"
  - "24"
  - "25"
  - "26"
  - "27"
  - "28"
  - "29"
  - "30"
changed_in:
  - "24"
source_major: "29"
obsolete: null
countries: []
ms_search_form_ids:
  - docs/learn-smb-docs/business-central/finance-dimensions.md
counts:
  fields: 0
  procedures: 34
  events: 11
  subscribers: 0
  controls: 17
  actions: 4
relations:
  out: 1
  referenced_by: 0
  pages: 0
  extended_by: 0
  event_subscribers: 0
  calls: 2
  called_by: 0
  implements: 0
---

# Page 408 "G/L Balance by Dimension"

> Page 408 "G/L Balance by Dimension" in Base Application (Microsoft.Finance.Analysis). 1 public procedures, 11 events. Present since at least BC23, still in BC30, changed in BC24.

Base Application · Microsoft.Finance.Analysis · BC23-30 · [source at ea08af5e](https://github.com/microsoft/BCApps/blob/ea08af5ef2d6a9b5c5af4a029288abbe2c883220/src/Layers/W1/BaseApp/Finance/Analysis/GLBalancebyDimension.Page.al) · facts from BC29

## Properties

| Property | Value |
|---|---|
| Caption | G/L Balance by Dimension |
| SourceTable | Analysis by Dim. Parameters |
| PageType | Card |

## Fields on this page

Layout controls in source order, grouped by the container they sit in. Shows: the table field a control is bound to (or its expression as written); ToolTip: the control's own, else the bound field's (marked).

| Group | Control | Shows | ToolTip |
|---|---|---|---|
| General | Show as Lines | `LineDimCode` | Specifies which values you want to show as lines in the window. This allows you to see the same matrix window from various perspectives, especially when you use both the Show as Lines field and the Show as Columns field. |
|  | Show as Columns | `ColumnDimCode` | Specifies which values you want to show as columns in the window. This allows you to see the same matrix window from various perspectives, especially when you use both the Show as Lines field and the Show as Columns field. |
| Filters | Date Filter | [Date Filter](../table/361.md#fields) | Specifies the dates that will be used to filter the amounts in the window. <small>from the table field</small> |
|  | G/L Account Filter | [Account Filter](../table/361.md#fields) | Specifies the G/L accounts for which you will see information in the window. |
|  | Budget Filter | [Budget Filter](../table/361.md#fields) | Specifies the budget that information in the matrix is shown for. <small>from the table field</small> |
|  | BusUnitFilter | [Bus. Unit Filter](../table/361.md#fields) | — |
|  | Dim1Filter | [Dimension 1 Filter](../table/361.md#fields) | Specifies a filter for the Dimension 1 for which entries will be shown in the matrix window. <small>from the table field</small> |
|  | Dim2Filter | [Dimension 2 Filter](../table/361.md#fields) | Specifies a filter for the Dimension 2 for which entries will be shown in the matrix window. <small>from the table field</small> |
| Options | ShowActualBudg | [Show Actual/Budgets](../table/361.md#fields) | Specifies if the selected value is shown in the window. <small>from the table field</small> |
|  | AmountField | [Show Amount Field](../table/361.md#fields) | Specifies the type of entries that will be included in the matrix window. The Amount options means that amounts that are the sum of debit and credit amounts are shown. <small>from the table field</small> |
|  | Closing Entries | [Closing Entries](../table/361.md#fields) | Specifies whether the balance shown will include closing entries. If you want to see the amounts on income statement accounts in closed years, you must exclude closing entries. <small>from the table field</small> |
|  | Rounding Factor | [Rounding Factor](../table/361.md#fields) | Specifies the factor that is used to round the amounts. <small>from the table field</small> |
|  | Show Amounts in Add. Reporting Currency | [Show In Add. Currency](../table/361.md#fields) | Specifies whether to show the reported amounts in the additional reporting currency. <small>from the table field</small> |
|  | Show Column Name | [Show Column Name](../table/361.md#fields) | Specifies that the names of columns are shown in the matrix window. <small>from the table field</small> |
| Matrix Options | PeriodType | [Period Type](../table/361.md#fields) | Specifies by which period amounts are displayed. <small>from the table field</small> |
|  | View as | [Amount Type](../table/361.md#fields) | Specifies how amounts are displayed. Net Change: The net change in the balance for the selected period. Balance at Date: The balance as of the last day in the selected period. <small>from the table field</small> |
|  | MATRIX_ColumnSet | [Column Set](../table/361.md#fields) | Specifies the range of values that are displayed in the matrix window, for example, the total period. To change the contents of the field, choose Next Set or Previous Set. <small>from the table field</small> |

## Actions

| Group | Action | ToolTip | Runs |
|---|---|---|---|
| Actions | Reverse Lines and Columns | Change the display of the matrix by inverting the values in the Show as Lines and Show as Columns fields. |  |
| Processing | Show Matrix | View the data overview according to the selected filters and options. |  |
|  | Previous Set | Go to the previous set of data. |  |
|  | Next Set | Go to the next set of data. |  |

## Events published

- `OnAfterOnInit()` (integration): Integration event raised after page initialization for custom setup logic. Enables additional initialization steps for G/L Balance by Dimension analysis.
- `OnAfterDimCodeToOption(DimCode: Text[30]; GeneralLedgerSetup: Record "General Ledger Setup"; var Result: Integer)` (integration): Integration event raised after dimension code to option conversion for custom dimension handling. Enables extension of dimension code conversion logic beyond standard dimensions.
- `OnAfterIsNotValidDefinition(GeneralLedgerSetup: Record "General Ledger Setup"; var DimCode: Text[30]; var Result: Boolean)` (integration): Integration event raised after dimension definition validation for custom validation logic. Enables custom validation of dimension definitions beyond standard checks.
- `OnBeforeGLAccFilter(var GLAccount: Record "G/L Account"; var GLAccFilter: Text; LineDimOption: Option "G/L Account",Period,"Business Unit","Dimension 1","Dimension 2","Dimension 3","Dimension 4"; ColumnDimOption: Option "G/L Account",Period,"Business Unit","Dimension 1","Dimension 2","Dimension 3","Dimension 4")` (integration): Integration event raised before G/L Account filtering for custom filter logic. Enables modification of G/L Account filters based on dimension options.
- `OnBeforeFindRec(DimOption: Option; var DimensionValue: Record "Dimension Value"; var GLAccount: Record "G/L Account")` (integration): Integration event raised before finding records for custom record finding logic. Enables custom record navigation behavior in dimensional analysis.
- `OnBeforeNextRec(DimOption: Option; var DimensionValue: Record "Dimension Value"; var GLAccount: Record "G/L Account")` (integration): Integration event raised before record navigation for custom navigation logic. Enables custom record stepping behavior in dimensional analysis.
- `OnFindRecCaseElse(AnalysisByDimParameters: Record "Analysis by Dim. Parameters"; DimOption: Integer; GeneralLedgerSetup: Record "General Ledger Setup"; var Found: Boolean; var DimensionCodeBuffer: Record "Dimension Code Buffer"; Which: Text[250])` (integration): Integration event raised for custom dimension handling in find record operations. Enables extension of record finding logic beyond standard dimensions.
- `OnGetDimSelectionOnBeforeDimSelectionLookup(GeneralLedgerSetup: Record "General Ledger Setup"; var DimensionSelection: Page "Dimension Selection")` (integration): Integration event raised before dimension selection lookup for custom selection behavior. Enables modification of dimension selection page before display.
- `OnNextRecCaseElse(AnalysisByDimParameters: Record "Analysis by Dim. Parameters"; DimOption: Integer; GeneralLedgerSetup: Record "General Ledger Setup"; var ResultSteps: Integer; var DimensionCodeBuffer: Record "Dimension Code Buffer"; Steps: Integer)` (integration): Integration event raised for custom dimension handling in next record operations. Enables extension of record navigation logic beyond standard dimensions.
- `OnShowMatrixActionOnBeforeRunModal(var GLBalancebyDimMatrix: Page "G/L Balance by Dim. Matrix")` (integration): Integration event raised before running the G/L Balance by Dimension Matrix page. Enables customization of matrix page before display.
- `OnOnOpenPageOnBeforeFindPeriod(GeneralLedgerSetup: Record "General Ledger Setup"; var GLAccount: Record "G/L Account")` (integration): Integration event raised on page open before finding period for custom initialization logic. Enables custom setup behavior during page opening.

## Procedures

- `GenerateColumnCaptions(StepType: Enum "Matrix Page Step Type")` (protected)

Plus 22 local procedures.

## Triggers

OnInit, OnOpenPage, OnQueryClosePage

## Relations

- source table [Table 361 "Analysis by Dim. Parameters"](../table/361.md)

## Calls

From the extracted call graph of BC29 (graphify-al on the snapshot checkout): calls whose target is known from a declared type or an `Object::"Name"` argument. Interface dispatch and calls through events are not counted, so the list is not complete.

- [Codeunit 362 "PeriodPageManagement"](../codeunit/362.md) (3 calls: `FindPeriod → FindDate`, `FindRec → FindDate`, `NextRec → NextDate`)
- [Codeunit 41 "Filter Tokens"](../codeunit/41.md) (1 call: `SetDateFilter → MakeDateFilter`)

## Across versions

- Present in: BC23-30
- Changed (declaration) in: BC24

## Documented on Microsoft Learn

- [Work with dimensions to track and analyze data](https://learn.microsoft.com/dynamics365/business-central/finance-dimensions)

Source: AL metadata extracted from the code (names, ids, signatures, properties); no code bodies (D10).

## Ask your agent

Procedure bodies are not stored here (D10). The call sections above are our own, per object, from the BC29 call graph. For a procedure body or the calls of one procedure, ask bc-code-atlas (external, by Stefan Maron, MIT; default corpus w1-28), which the bc-observatory plugin connects: `bcatlas_resolve_node(object_type: "page", object_name: "G/L Balance by Dimension")`, then `bcatlas_get_procedure_body` or `bcatlas_get_neighbors` on the returned id.
