---
id: object/table/15
type: object
title: Table 15 "G/L Account"
summary: Table 15 "G/L Account" in Base Application (Microsoft.Finance.GeneralLedger.Account). 72 fields, 10 public procedures, 7 events. Present since at least BC23, still in BC30, changed in BC24-29.
tier: official
language: en
tags:
  - table
  - base application
versions:
  introduced: null
  last_changed: "29"
  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: 86d8311dc25873f3375f713e2d46257ebdc02762de21b817aaf609d462d21149
evidence:
  - kind: code
    url: https://github.com/microsoft/BCApps/blob/ea08af5ef2d6a9b5c5af4a029288abbe2c883220/src/Layers/W1/BaseApp/Finance/GeneralLedger/Account/GLAccount.Table.al
    title: src/Layers/W1/BaseApp/Finance/GeneralLedger/Account/GLAccount.Table.al (releases/29.x)
    date: null
    commit: ea08af5ef2d6a9b5c5af4a029288abbe2c883220
    t: null
    quote: null
links:
  learn:
    - https://learn.microsoft.com/dynamics365/business-central/analysis-assist
    - https://learn.microsoft.com/dynamics365/business-central/analysis-mode
    - https://learn.microsoft.com/dynamics365/business-central/finance-how-setup-additional-currencies
    - https://learn.microsoft.com/dynamics365/business-central/finance-set-up-invoice-rounding
    - https://learn.microsoft.com/dynamics365/business-central/finance-setup-chart-accounts
    - https://learn.microsoft.com/dynamics365/business-central/learn-accounting-bookkeeping-guide
    - https://learn.microsoft.com/dynamics365/business-central/LocalFunctionality/France/how-to-apply-general-ledger-entries
    - https://learn.microsoft.com/dynamics365/business-central/sustainability-howto-default
    - https://learn.microsoft.com/dynamics365/business-central/finance-chart-of-accounts
    - https://learn.microsoft.com/dynamics365/business-central/finance-general-ledger
    - https://learn.microsoft.com/dynamics365/business-central/bi-how-analyze-actual-versus-budget
    - https://learn.microsoft.com/dynamics365/business-central/finance-how-create-budgets
    - https://learn.microsoft.com/dynamics365/business-central/dev-itpro/api-reference/v1.0/api/dynamics_account_get
    - https://learn.microsoft.com/dynamics365/business-central/dev-itpro/api-reference/v1.0/resources/dynamics_account
    - https://learn.microsoft.com/dynamics365/business-central/dev-itpro/api-reference/v2.0/api/dynamics_account_get
    - https://learn.microsoft.com/dynamics365/business-central/dev-itpro/api-reference/v2.0/resources/dynamics_account
  objects: []
  features: []
  topics:
    - topic/business-central/analytics-business-intelligence-and-repo/ad-hoc-data-analysis
    - topic/business-central/business-functionality/finance
    - topic/business-central/business-functionality/finance/financial-analytics/built-in-finance-analysis-tools
    - topic/business-central/business-functionality/finance/work-with-the-chart-of-accounts-and-gene
    - topic/business-central/business-functionality/local-functionality/france/core-finance
    - topic/business-central/business-functionality/set-up-business-central/set-up-finance
    - topic/business-central/business-functionality/sustainability-management/sustainability-value-chain
    - topic/business-central/copilot-and-agent-capabilities/analysis-assist
    - topic/dev-itpro/development/data-analytics-and-reporting
    - topic/dev-itpro/development/programming-in-the-al-language/tables-and-data/using-query-objects
  localizations:
    - localization/at
    - localization/au
    - localization/be
    - localization/ca
    - localization/ch
    - localization/de
    - localization/es
    - localization/fi
    - localization/fr
    - localization/is
    - localization/mx
    - localization/nl
    - localization/no
    - localization/nz
    - localization/ru
    - localization/se
    - localization/us
  videos: []
  posts: []
  guidelines: []
  changes:
    - change/bcapps/11160
    - change/bcapps/8959
object_type: table
object_id: 15
name: G/L Account
namespace: Microsoft.Finance.GeneralLedger.Account
app: Base Application
extends: null
first_version: "23"
last_version: "30"
present_in:
  - "23"
  - "24"
  - "25"
  - "26"
  - "27"
  - "28"
  - "29"
  - "30"
changed_in:
  - "24"
  - "25"
  - "26"
  - "27"
  - "28"
  - "29"
source_major: "29"
obsolete: null
countries:
  - at
  - au
  - be
  - ca
  - ch
  - de
  - es
  - fi
  - fr
  - is
  - mx
  - nl
  - "no"
  - nz
  - ru
  - se
  - us
ms_search_form_ids: []
counts:
  fields: 72
  procedures: 25
  events: 7
  subscribers: 0
relations:
  out: 39
  referenced_by: 375
  pages: 19
  extended_by: 4
  event_subscribers: 2
  calls: 6
  called_by: 0
  implements: 0
---

# Table 15 "G/L Account"

> Table 15 "G/L Account" in Base Application (Microsoft.Finance.GeneralLedger.Account). 72 fields, 10 public procedures, 7 events. Present since at least BC23, still in BC30, changed in BC24-29.

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

Learn documents this table through its pages: [Page 16 "Chart of Accounts"](../page/16.md) (8 Learn pages), [Page 18 "G/L Account List"](../page/18.md) (3), [Page 422 "G/L Balance/Budget"](../page/422.md) (2), [Page 570 "Chart of Accounts (G/L)"](../page/570.md) (2), [Page 634 "Chart of Accounts Overview"](../page/634.md) (2), [Page 791 "G/L Accounts ListPart"](../page/791.md) (2), [Page 1158 "Cash Account Balances"](../page/1158.md) (2), [Page 20014 "APIV1 - Accounts"](../page/20014.md) (2), [Page 30014 "APIV2 - Accounts"](../page/30014.md) (2), [Page 17 "G/L Account Card"](../page/17.md) (1), [Page 154 "G/L Account Balance/Budget"](../page/154.md) (1).

## Properties

| Property | Value |
|---|---|
| Caption | G/L Account |
| DataClassification | CustomerContent |

## Fields

Explanation: the field's ToolTip in the code; without one, the ToolTip of a page control bound to the field (marked via the page); without that, its Caption (marked caption) when that differs from the name.

| No. | Name | Type | Explanation | Notes |
|---|---|---|---|---|
| 1 | No. | Code[20] | Specifies the number of the involved entry or record, according to the specified number series. | NotBlank |
| 2 | Name | Text[100] | Specifies the name of the general ledger account. |  |
| 3 | Search Name | Code[100] | Specifies an alternate name that you can use to search for the record in question when you cannot remember the value in the Name field. |  |
| 4 | Account Type | Enum "G/L Account Type" | Specifies the purpose of the account. Total: Used to total a series of balances on accounts from many different account groupings. To use Total, leave this field blank. Begin-Total: A marker for the beginning of a series of accounts to be totaled that ends with an End-Total account. End-Total: A tot... | enum [Enum 16 "G/L Account Type"](../enum/16.md) |
| 6 | Global Dimension 1 Code | Code[20] | — | TableRelation [Table 349 "Dimension Value"](../table/349.md) ("Dimension Value".Code where("Global Dimension No." = const(1), Blocked = const(false))) |
| 7 | Global Dimension 2 Code | Code[20] | — | TableRelation [Table 349 "Dimension Value"](../table/349.md) ("Dimension Value".Code where("Global Dimension No." = const(2), Blocked = const(false))) |
| 8 | Account Category | Enum "G/L Account Category" | Specifies the category of the G/L account. | enum [Enum 15 "G/L Account Category"](../enum/15.md) |
| 9 | Income/Balance | Enum "G/L Account Report Type" | Specifies whether a general ledger account is an income statement account or a balance sheet account. | enum [Enum 20 "G/L Account Report Type"](../enum/20.md) |
| 10 | Debit/Credit | Option | Specifies the type of entries that will normally be posted to this general ledger account. | OptionCaption: Both,Debit,Credit |
| 11 | No. 2 | Code[20] | Specifies an alternative account number which can be used internally in the company. |  |
| 12 | Comment | Boolean | — | FlowField: exist("Comment Line" where("Table Name" = const("G/L Account"), "No." = field("No."))); not editable |
| 13 | Blocked | Boolean | Specifies that the related record is blocked from being posted in transactions, for example a customer that is declared insolvent or an item that is placed in quarantine. |  |
| 14 | Direct Posting | Boolean | Specifies whether you will be able to post directly or only indirectly to this general ledger account. To allow Direct Posting to the G/L account, place a check mark in the check box. |  |
| 16 | Reconciliation Account | Boolean | Specifies whether this general ledger account will be included in the Reconciliation window in the general journal. To have the G/L account included in the window, place a check mark in the check box. You can find the Reconciliation window by clicking Actions, Posting in the General Journal window. |  |
| 17 | New Page | Boolean | Specifies whether you want a new page to start immediately after this general ledger account when you print the chart of accounts. Select this field to start a new page after this general ledger account. |  |
| 18 | No. of Blank Lines | Integer | Specifies the number of blank lines that you want inserted before this account in the chart of accounts. |  |
| 19 | Indentation | Integer | — |  |
| 20 | Source Currency Code | Code[10] | Specifies the allowed source currency code if Source Currency Posting value is Same Currency. | TableRelation [Table 4 "Currency"](../table/4.md); DataClassification SystemMetadata |
| 21 | Source Currency Posting | Enum "G/L Source Currency Posting" | Specifies how the system will validate posting of entries containing currencies. Blank will allow all currencies to be posted to the account. Same Code will only allow the currency specified in Source Currency Code. Multiple currencies will allow only posting of currencies selected in Source currenc... | enum [Enum 590 "G/L Source Currency Posting"](../enum/590.md) |
| 22 | Source Currency Revaluation | Boolean | Specifies if source currency revaluation should be done for this account. |  |
| 23 | Unrealized Revaluation | Boolean | Specifies if revaluation should be posted to currency realized or unrealized gains and losses accounts. |  |
| 25 | Last Modified Date Time | DateTime | — | not editable |
| 26 | Last Date Modified | Date | Specifies when the G/L account was last modified. | not editable |
| 28 | Date Filter | Date | — | FlowFilter |
| 29 | Global Dimension 1 Filter | Code[20] | — | TableRelation [Table 349 "Dimension Value"](../table/349.md) ("Dimension Value".Code where("Global Dimension No." = const(1))); FlowFilter |
| 30 | Global Dimension 2 Filter | Code[20] | — | TableRelation [Table 349 "Dimension Value"](../table/349.md) ("Dimension Value".Code where("Global Dimension No." = const(2))); FlowFilter |
| 31 | Balance at Date | Decimal | Specifies the G/L account balance on the last date included in the Date Filter field. | FlowField: sum("G/L Entry".Amount where("G/L Account No." = field("No."), "G/L Account No." = field(filter(Totaling)), "Business Unit Code" = field("Business Unit Filter"), "Global Dimension 1 Code" = field("Global Dimension 1 Filter"), "Global Dimension 2 Code" = field("Global Dimension 2 Filter"), "Posting D...; not editable |
| 32 | Net Change | Decimal | Specifies the net change in the account balance during the time period in the Date Filter field. | FlowField: sum("G/L Entry".Amount where("G/L Account No." = field("No."), "G/L Account No." = field(filter(Totaling)), "Business Unit Code" = field("Business Unit Filter"), "Global Dimension 1 Code" = field("Global Dimension 1 Filter"), "Global Dimension 2 Code" = field("Global Dimension 2 Filter"), "Posting D...; not editable |
| 33 | Budgeted Amount | Decimal | Specifies either the G/L account's total budget or, if you have specified a name in the Budget Name field, a specific budget. | FlowField: sum("G/L Budget Entry".Amount where("G/L Account No." = field("No."), "G/L Account No." = field(filter(Totaling)), "Business Unit Code" = field("Business Unit Filter"), "Global Dimension 1 Code" = field("Global Dimension 1 Filter"), "Global Dimension 2 Code" = field("Global Dimension 2 Filter"), Dat... |
| 34 | Totaling | Text[250] | Specifies an account interval or a list of account numbers. The entries of the account will be totaled to give a total balance. How entries are totaled depends on the value in the Account Type field. |  |
| 35 | Budget Filter | Code[10] | — | TableRelation [Table 95 "G/L Budget Name"](../table/95.md) (G/L Budget Name); FlowFilter |
| 36 | Balance | Decimal | Specifies the balance on this account. | FlowField: sum("G/L Entry".Amount where("G/L Account No." = field("No."), "G/L Account No." = field(filter(Totaling)), "Business Unit Code" = field("Business Unit Filter"), "Global Dimension 1 Code" = field("Global Dimension 1 Filter"), "Global Dimension 2 Code" = field("Global Dimension 2 Filter"), "Dimension...; not editable |
| 37 | Budget at Date | Decimal | — | FlowField: sum("G/L Budget Entry".Amount where("G/L Account No." = field("No."), "G/L Account No." = field(filter(Totaling)), "Business Unit Code" = field("Business Unit Filter"), "Global Dimension 1 Code" = field("Global Dimension 1 Filter"), "Global Dimension 2 Code" = field("Global Dimension 2 Filter"), Dat...; not editable |
| 39 | Consol. Translation Method | Option | Specifies the consolidation translation method that will be used for the account. | OptionCaption: Average Rate (Manual),Closing Rate,Historical Rate,Composite Rate,Equity Rate |
| 40 | Consol. Debit Acc. | Code[20] | Specifies the account number in a consolidated company to transfer credit balances. |  |
| 41 | Consol. Credit Acc. | Code[20] | Specifies if amounts without any payment tolerance amount from the customer and vendor ledger entries are used. |  |
| 42 | Business Unit Filter | Code[20] | — | TableRelation [Table 220 "Business Unit"](../table/220.md) (Business Unit); FlowFilter |
| 43 | Gen. Posting Type | Enum "General Posting Type" | Specifies the general posting type to use when posting to this account. | enum [Enum 57 "General Posting Type"](../enum/57.md) |
| 44 | Gen. Bus. Posting Group | Code[20] | Specifies the vendor's or customer's trade type to link transactions made for this business partner with the appropriate general ledger account according to the general posting setup. | TableRelation [Table 250 "Gen. Business Posting Group"](../table/250.md) (Gen. Business Posting Group) |
| 45 | Gen. Prod. Posting Group | Code[20] | Specifies the item's product type to link transactions made for this item with the appropriate general ledger account according to the general posting setup. | TableRelation [Table 251 "Gen. Product Posting Group"](../table/251.md) (Gen. Product Posting Group) |
| 46 | Picture | BLOB | — |  |
| 47 | Debit Amount | Decimal | Specifies the total of the ledger entries that represent debits. | FlowField: sum("G/L Entry"."Debit Amount" where("G/L Account No." = field("No."), "G/L Account No." = field(filter(Totaling)), "Business Unit Code" = field("Business Unit Filter"), "Global Dimension 1 Code" = field("Global Dimension 1 Filter"), "Global Dimension 2 Code" = field("Global Dimension 2 Filter"), "P...; not editable |
| 48 | Credit Amount | Decimal | Specifies the total of the ledger entries that represent credits. | FlowField: sum("G/L Entry"."Credit Amount" where("G/L Account No." = field("No."), "G/L Account No." = field(filter(Totaling)), "Business Unit Code" = field("Business Unit Filter"), "Global Dimension 1 Code" = field("Global Dimension 1 Filter"), "Global Dimension 2 Code" = field("Global Dimension 2 Filter"), "...; not editable |
| 49 | Automatic Ext. Texts | Boolean | Specifies that an extended text will be added automatically to the account. |  |
| 52 | Budgeted Debit Amount | Decimal | Specifies the Budgeted Debit Amount for the account. | FlowField: sum("G/L Budget Entry".Amount where("G/L Account No." = field("No."), "G/L Account No." = field(filter(Totaling)), "Business Unit Code" = field("Business Unit Filter"), "Global Dimension 1 Code" = field("Global Dimension 1 Filter"), "Global Dimension 2 Code" = field("Global Dimension 2 Filter"), Dat... |
| 53 | Budgeted Credit Amount | Decimal | Specifies the Budgeted Credit Amount for the account. | FlowField: - sum("G/L Budget Entry".Amount where("G/L Account No." = field("No."), "G/L Account No." = field(filter(Totaling)), "Business Unit Code" = field("Business Unit Filter"), "Global Dimension 1 Code" = field("Global Dimension 1 Filter"), "Global Dimension 2 Code" = field("Global Dimension 2 Filter"), D... |
| 54 | Tax Area Code | Code[20] | — | TableRelation [Table 318 "Tax Area"](../table/318.md) (Tax Area) |
| 55 | Tax Liable | Boolean | — |  |
| 56 | Tax Group Code | Code[20] | Specifies the tax group that is used to calculate and post sales tax. | TableRelation [Table 321 "Tax Group"](../table/321.md) (Tax Group) |
| 57 | VAT Bus. Posting Group | Code[20] | Specifies the VAT specification of the involved customer or vendor to link transactions made for this record with the appropriate general ledger account according to the VAT posting setup. | TableRelation [Table 323 "VAT Business Posting Group"](../table/323.md) (VAT Business Posting Group) |
| 58 | VAT Prod. Posting Group | Code[20] | Specifies the VAT specification of the involved item or resource to link transactions made for this record with the appropriate general ledger account according to the VAT posting setup. | TableRelation [Table 324 "VAT Product Posting Group"](../table/324.md) (VAT Product Posting Group) |
| 59 | VAT Amt. | Decimal | — | FlowField: sum("G/L Entry"."VAT Amount" where("G/L Account No." = field("No."), "G/L Account No." = field(filter(Totaling)), "Business Unit Code" = field("Business Unit Filter"), "Global Dimension 1 Code" = field("Global Dimension 1 Filter"), "Global Dimension 2 Code" = field("Global Dimension 2 Filter"), "VAT...; not editable |
| 60 | Additional-Currency Net Change | Decimal | Specifies the net change in the account balance. | FlowField: sum("G/L Entry"."Additional-Currency Amount" where("G/L Account No." = field("No."), "G/L Account No." = field(filter(Totaling)), "Business Unit Code" = field("Business Unit Filter"), "Global Dimension 1 Code" = field("Global Dimension 1 Filter"), "Global Dimension 2 Code" = field("Global Dimension ...; not editable |
| 61 | Add.-Currency Balance at Date | Decimal | Specifies the G/L account balance, in the additional reporting currency, on the last date included in the Date Filter field. | FlowField: sum("G/L Entry"."Additional-Currency Amount" where("G/L Account No." = field("No."), "G/L Account No." = field(filter(Totaling)), "Business Unit Code" = field("Business Unit Filter"), "Global Dimension 1 Code" = field("Global Dimension 1 Filter"), "Global Dimension 2 Code" = field("Global Dimension ...; not editable |
| 62 | Additional-Currency Balance | Decimal | Specifies the balance on this account, in the additional reporting currency. | FlowField: sum("G/L Entry"."Additional-Currency Amount" where("G/L Account No." = field("No."), "G/L Account No." = field(filter(Totaling)), "Business Unit Code" = field("Business Unit Filter"), "Global Dimension 1 Code" = field("Global Dimension 1 Filter"), "Global Dimension 2 Code" = field("Global Dimension ...; not editable |
| 63 | Exchange Rate Adjustment | Enum "Exch. Rate Adjustment Type" | Specifies how general ledger accounts will be adjusted for exchange rate fluctuations between LCY and the additional reporting currency. | enum [Enum 595 "Exch. Rate Adjustment Type"](../enum/595.md) |
| 64 | Add.-Currency Debit Amount | Decimal | — | FlowField: sum("G/L Entry"."Add.-Currency Debit Amount" where("G/L Account No." = field("No."), "G/L Account No." = field(filter(Totaling)), "Business Unit Code" = field("Business Unit Filter"), "Global Dimension 1 Code" = field("Global Dimension 1 Filter"), "Global Dimension 2 Code" = field("Global Dimension ...; not editable |
| 65 | Add.-Currency Credit Amount | Decimal | — | FlowField: sum("G/L Entry"."Add.-Currency Credit Amount" where("G/L Account No." = field("No."), "G/L Account No." = field(filter(Totaling)), "Business Unit Code" = field("Business Unit Filter"), "Global Dimension 1 Code" = field("Global Dimension 1 Filter"), "Global Dimension 2 Code" = field("Global Dimension...; not editable |
| 66 | Default IC Partner G/L Acc. No | Code[20] | Specifies accounts that you often enter in the Bal. Account No. field on intercompany journal or document lines. | TableRelation [Table 410 "IC G/L Account"](../table/410.md) ("IC G/L Account"."No.") |
| 70 | Omit Default Descr. in Jnl. | Boolean | Specifies if the default description is automatically inserted in the Description field on journal lines created for this general ledger account. |  |
| 75 | Source Currency Net Change | Decimal | — | FlowField: sum("G/L Entry"."Source Currency Amount" where("G/L Account No." = field("No."), "G/L Account No." = field(filter(Totaling)), "Business Unit Code" = field("Business Unit Filter"), "Global Dimension 1 Code" = field("Global Dimension 1 Filter"), "Global Dimension 2 Code" = field("Global Dimension 2 Fi...; not editable |
| 76 | Source Curr. Balance at Date | Decimal | Specifies the G/L account foreign currency balance on the last date included in the Date Filter field. | FlowField: sum("G/L Entry"."Source Currency Amount" where("G/L Account No." = field("No."), "G/L Account No." = field(filter(Totaling)), "Business Unit Code" = field("Business Unit Filter"), "Global Dimension 1 Code" = field("Global Dimension 1 Filter"), "Global Dimension 2 Code" = field("Global Dimension 2 Fi...; not editable |
| 77 | Source Currency Balance | Decimal | Specifies the foreign currency balance on the G/L account. | FlowField: sum("G/L Entry"."Source Currency Amount" where("G/L Account No." = field("No."), "G/L Account No." = field(filter(Totaling)), "Business Unit Code" = field("Business Unit Filter"), "Global Dimension 1 Code" = field("Global Dimension 1 Filter"), "Global Dimension 2 Code" = field("Global Dimension 2 Fi...; not editable |
| 80 | Account Subcategory Entry No. | Integer | — | TableRelation [Table 570 "G/L Account Category"](../table/570.md) (G/L Account Category) |
| 81 | Account Subcategory Descript. | Text[80] | Specifies the subcategory of the account category of the G/L account. | FlowField: lookup("G/L Account Category".Description where("Entry No." = field("Account Subcategory Entry No."))); not editable |
| 82 | VAT Reporting Date Filter | Date | — | FlowFilter |
| 83 | Exclude From Consolidation | Boolean | Specifies whether the account is excluded from consolidation. |  |
| 90 | Spend Request Required | Enum "Spend Request Required" | Specifies whether a spend request is required before expenses can be posted to this account. | enum [Enum 6843 "Spend Request Required"](../enum/6843.md) |
| 400 | Dimension Set ID Filter | Integer | — | FlowFilter |
| 1100 | Cost Type No. | Code[20] | Specifies a cost type number to establish which cost type a general ledger account belongs to. | TableRelation [Table 1103 "Cost Type"](../table/1103.md) (Cost Type); not editable |
| 1700 | Default Deferral Template Code | Code[10] | Specifies the default deferral template that governs how to defer revenues and expenses to the periods when they occurred. | TableRelation [Table 1700 "Deferral Template"](../table/1700.md) ("Deferral Template"."Deferral Code") |
| 9000 | API Account Type | Enum "G/L Account Type" | — | enum [Enum 16 "G/L Account Type"](../enum/16.md); not editable |

## Keys

- Key1: No. (clustered)
- Key2: Search Name
- Key3: Reconciliation Account
- Key4: Gen. Bus. Posting Group
- Key5: Gen. Prod. Posting Group
- Key6: Consol. Debit Acc., Consol. Translation Method
- Key7: Consol. Credit Acc., Consol. Translation Method
- Key8: Name
- Key9: Account Type
- Key10: Account Category

## Events published

- `OnAfterCheckGLAcc(var GLAccount: Record "G/L Account")` (integration): Integration event raised after validating that a general ledger account is ready for posting. Allows extensions to add custom validation logic for account posting readiness.
- `OnAfterSetupNewGLAcc(var GLAccount: Record "G/L Account")` (integration): Integration event raised after setting up a new general ledger account with default values. Allows extensions to add custom initialization logic for new accounts.
- `OnAfterValidateShortcutDimCode(var GLAccount: Record "G/L Account"; var xGLAccount: Record "G/L Account"; FieldNumber: Integer; var ShortcutDimCode: Code[20])` (integration): Integration event raised after validating and updating shortcut dimension codes. Allows extensions to perform additional processing after dimension validation.
- `OnBeforeValidateShortcutDimCode(var GLAccount: Record "G/L Account"; var xGLAccount: Record "G/L Account"; FieldNumber: Integer; var ShortcutDimCode: Code[20])` (integration): Integration event raised before validating shortcut dimension codes. Allows extensions to modify validation logic or skip default validation.
- `OnBeforeCheckGenProdPostingGroup(var GLAccount: Record "G/L Account"; var IsHandled: Boolean)` (integration): Integration event raised before checking general product posting group requirements. Allows extensions to override or supplement posting group validation logic.
- `OnBeforeOnDelete(var GLAccount: Record "G/L Account"; var IsHandled: Boolean)` (integration): Integration event raised before deleting a general ledger account. Allows extensions to perform custom validation or cleanup before account deletion.
- `OnBeforeCheckSalesOrdersPrepmtToDeduct(var GLAccount: Record "G/L Account"; var IsHandled: Boolean)` (integration): Integration event raised before checking sales orders with prepayments to deduct. Allows extensions to override or supplement prepayment validation logic for sales orders.

## Trigger event subscribers

- OnAfterDeleteEvent: [Codeunit 7006 "Price Helper - V16"](../codeunit/7006.md) AfterDeleteGLAccount
- OnAfterRenameEvent: [Codeunit 7006 "Price Helper - V16"](../codeunit/7006.md) AfterRenameGLAccount

## Procedures

- `ShowPriceListLines(PriceType: Enum "Price Type"; AmountType: Enum "Price Amount Type")`: Displays price list lines for this general ledger account filtered by price type and amount type.
- `SetupNewGLAcc(OldGLAcc: Record "G/L Account"; BelowOldGLAcc: Boolean)`: Initializes a new general ledger account with default values based on an existing account. Copies income/balance classification and other relevant setup from the reference account.
- `CheckGLAcc()`: Validates that the general ledger account is ready for posting transactions. Checks that account type is Posting and account is not blocked.
- `ValidateAccountSubCategory(NewValue: Text[80])`: Validates and sets the account subcategory based on text input from user interface. Matches input text against available subcategory descriptions for the account category.
- `LookupAccountSubCategory()`: Opens a lookup page for selecting account subcategory based on the account's income/balance type and category. Updates the account category and subcategory based on user selection.
- `GetCurrencyCode(): Code[10]`: Returns the additional reporting currency code from General Ledger Setup. Used for additional currency amount formatting in flowfields.
- `ValidateShortcutDimCode(FieldNumber: Integer; var ShortcutDimCode: Code[20])`: Validates and updates the shortcut dimension code for the specified dimension field. Saves the dimension value as a default dimension for this account.
- `TranslationMethodConflict(var GLAcc: Record "G/L Account"): Boolean`: Checks for consolidation translation method conflicts with other accounts using same consolidation accounts. Prevents inconsistent translation methods for accounts that consolidate to the same target account.
- `CheckGenProdPostingGroup()`: Validates that the general product posting group is specified for the account. Logs an error message if the posting group is missing for posting-type accounts.
- `IsTotaling(): Boolean`: Determines whether the account type supports totaling functionality. Returns true for Total and End-Total account types used in account hierarchies.

Plus 8 local procedures.

## Triggers

OnDelete, OnInsert, OnModify, OnRename

## Relations

- drill-down page [Page 16 "Chart of Accounts"](../page/16.md)
- lookup page [Page 18 "G/L Account List"](../page/18.md)
- Cost Type No.: TableRelation [Table 1103 "Cost Type"](../table/1103.md)
- Add.-Currency Balance at Date: CalcFormula [Table 17 "G/L Entry"](../table/17.md)
- Add.-Currency Credit Amount: CalcFormula [Table 17 "G/L Entry"](../table/17.md)
- Add.-Currency Debit Amount: CalcFormula [Table 17 "G/L Entry"](../table/17.md)
- Additional-Currency Balance: CalcFormula [Table 17 "G/L Entry"](../table/17.md)
- Additional-Currency Net Change: CalcFormula [Table 17 "G/L Entry"](../table/17.md)
- Balance: CalcFormula [Table 17 "G/L Entry"](../table/17.md)
- Balance at Date: CalcFormula [Table 17 "G/L Entry"](../table/17.md)
- Credit Amount: CalcFormula [Table 17 "G/L Entry"](../table/17.md)
- Debit Amount: CalcFormula [Table 17 "G/L Entry"](../table/17.md)
- Net Change: CalcFormula [Table 17 "G/L Entry"](../table/17.md)
- Source Curr. Balance at Date: CalcFormula [Table 17 "G/L Entry"](../table/17.md)
- Source Currency Balance: CalcFormula [Table 17 "G/L Entry"](../table/17.md)
- Source Currency Net Change: CalcFormula [Table 17 "G/L Entry"](../table/17.md)
- VAT Amt.: CalcFormula [Table 17 "G/L Entry"](../table/17.md)
- Default Deferral Template Code: TableRelation [Table 1700 "Deferral Template"](../table/1700.md)
- Business Unit Filter: TableRelation [Table 220 "Business Unit"](../table/220.md)
- Gen. Bus. Posting Group: TableRelation [Table 250 "Gen. Business Posting Group"](../table/250.md)
- Gen. Prod. Posting Group: TableRelation [Table 251 "Gen. Product Posting Group"](../table/251.md)
- Tax Area Code: TableRelation [Table 318 "Tax Area"](../table/318.md)
- Tax Group Code: TableRelation [Table 321 "Tax Group"](../table/321.md)
- VAT Bus. Posting Group: TableRelation [Table 323 "VAT Business Posting Group"](../table/323.md)
- VAT Prod. Posting Group: TableRelation [Table 324 "VAT Product Posting Group"](../table/324.md)
- Global Dimension 1 Code: TableRelation [Table 349 "Dimension Value"](../table/349.md)
- Global Dimension 1 Filter: TableRelation [Table 349 "Dimension Value"](../table/349.md)
- Global Dimension 2 Code: TableRelation [Table 349 "Dimension Value"](../table/349.md)
- Global Dimension 2 Filter: TableRelation [Table 349 "Dimension Value"](../table/349.md)
- Source Currency Code: TableRelation [Table 4 "Currency"](../table/4.md)
- Default IC Partner G/L Acc. No: TableRelation [Table 410 "IC G/L Account"](../table/410.md)
- Account Subcategory Descript.: CalcFormula [Table 570 "G/L Account Category"](../table/570.md)
- Account Subcategory Entry No.: TableRelation [Table 570 "G/L Account Category"](../table/570.md)
- Budget Filter: TableRelation [Table 95 "G/L Budget Name"](../table/95.md)
- Budget at Date: CalcFormula [Table 96 "G/L Budget Entry"](../table/96.md)
- Budgeted Amount: CalcFormula [Table 96 "G/L Budget Entry"](../table/96.md)
- Budgeted Credit Amount: CalcFormula [Table 96 "G/L Budget Entry"](../table/96.md)
- Budgeted Debit Amount: CalcFormula [Table 96 "G/L Budget Entry"](../table/96.md)
- Comment: CalcFormula [Table 97 "Comment Line"](../table/97.md)

## Referenced by

375 fields in 176 objects relate to this table (TableRelation or CalcFormula).

- [Table 5606 "FA Posting Group"](../table/5606.md): Accum. Depr. Acc. on Disposal, Accum. Depreciation Account, Acq. Cost Acc. on Disposal, Acquisition Cost Account, Acquisition Cost Bal. Acc., Apprec. Bal. Acc. on Disp., Appreciation Acc. on Disposal, Appreciation Account, Appreciation Bal. Account, Book Val. Acc. on Disp. (Gain), Book Val. Acc. on Disp. (Loss), Custom 1 Account, Custom 1 Account on Disposal, Custom 1 Bal. Acc. on Disposal, Custom 1 Expense Acc., Custom 2 Account, Custom 2 Account on Disposal, Custom 2 Bal. Acc. on Disposal, Custom 2 Expense Acc., Depreciation Expense Acc., Gains Acc. on Disposal, Losses Acc. on Disposal, Maintenance Bal. Acc., Maintenance Expense Account, Sales Acc. on Disp. (Gain), Sales Acc. on Disp. (Loss), Sales Bal. Acc., Write-Down Acc. on Disposal, Write-Down Account, Write-Down Bal. Acc. on Disp., Write-Down Expense Acc.
- [Table 252 "General Posting Setup"](../table/252.md): COGS Account, COGS Account (Interim), Direct Cost Applied Account, Direct Cost Non-Inv. App. Acc., Inventory Adjmt. Account, Invt. Accrual Acc. (Interim), Overhead Applied Account, Purch. Account, Purch. Credit Memo Account, Purch. FA Disc. Account, Purch. Inv. Disc. Account, Purch. Line Disc. Account, Purch. Pmt. Disc. Credit Acc., Purch. Pmt. Disc. Debit Acc., Purch. Pmt. Tol. Credit Acc., Purch. Pmt. Tol. Debit Acc., Purch. Prepayments Account, Purchase Variance Account, Sales Account, Sales Credit Memo Account, Sales Inv. Disc. Account, Sales Line Disc. Account, Sales Pmt. Disc. Credit Acc., Sales Pmt. Disc. Debit Acc., Sales Pmt. Tol. Credit Acc., Sales Pmt. Tol. Debit Acc., Sales Prepayments Account
- [Table 208 "Job Posting Group"](../table/208.md): G/L Costs Applied Account, G/L Expense Acc. (Contract), Item Costs Applied Account, Job Costs Adjustment Account, Job Costs Applied Account, Job Sales Adjustment Account, Job Sales Applied Account, Recognized Costs Account, Recognized Sales Account, Resource Costs Applied Account, WIP Accrued Costs Account, WIP Accrued Sales Account, WIP Costs Account, WIP Invoiced Sales Account
- [Table 92 "Customer Posting Group"](../table/92.md): Add. Fee per Line Account, Additional Fee Account, Credit Curr. Appln. Rndg. Acc., Credit Rounding Account, Debit Curr. Appln. Rndg. Acc., Debit Rounding Account, Interest Account, Invoice Rounding Account, Payment Disc. Credit Acc., Payment Disc. Debit Acc., Payment Tolerance Credit Acc., Payment Tolerance Debit Acc., Receivables Account, Service Charge Acc.
- [Table 93 "Vendor Posting Group"](../table/93.md): Credit Curr. Appln. Rndg. Acc., Credit Rounding Account, Debit Curr. Appln. Rndg. Acc., Debit Rounding Account, Invoice Rounding Account, Payables Account, Payment Disc. Credit Acc., Payment Disc. Debit Acc., Payment Tolerance Credit Acc., Payment Tolerance Debit Acc., Service Charge Acc.
- [Table 4 "Currency"](../table/4.md): Conv. LCY Rndg. Credit Acc., Conv. LCY Rndg. Debit Acc., Realized G/L Gains Account, Realized G/L Losses Account, Realized Gains Acc., Realized Losses Acc., Residual Gains Account, Residual Losses Account, Unrealized Gains Acc., Unrealized Losses Acc.
- [Table 220 "Business Unit"](../table/220.md): Comp. Exch. Rate Gains Acc., Comp. Exch. Rate Losses Acc., Equity Exch. Rate Gains Acc., Equity Exch. Rate Losses Acc., Exch. Rate Gains Acc., Exch. Rate Losses Acc., Minority Exch. Rate Gains Acc., Minority Exch. Rate Losses Acc, Residual Account
- [Table 5813 "Inventory Posting Setup"](../table/5813.md): Cap. Overhead Variance Account, Capacity Variance Account, Inventory Account, Inventory Account (Interim), Mat. Non-Inv. Variance Acc., Material Variance Account, Mfg. Overhead Variance Account, Subcontracted Variance Account, WIP Account
- [Table 1828 "Business Unit Information"](../table/1828.md): Comp. Exch. Rate Gains Acc., Comp. Exch. Rate Losses Acc., Equity Exch. Rate Gains Acc., Equity Exch. Rate Losses Acc., Minority Exch. Rate Gains Acc., Minority Exch. Rate Losses Acc, Residual Account
- [Table 325 "VAT Posting Setup"](../table/325.md): Non-Ded. Purchase VAT Account, Purch. VAT Unreal. Account, Purchase VAT Account, Reverse Chrg. VAT Acc., Reverse Chrg. VAT Unreal. Acc., Sales VAT Account, Sales VAT Unreal. Account
- [Table 30102 "Shpfy Shop"](../table/30102.md): Cash Roundings Account, Refund Acc. non-restock Items, Refund Account, Shipping Charges Account, Sold Gift Card Account, Tip Account
- [Table 320 "Tax Jurisdiction"](../table/320.md): Reverse Charge (Purchases), Tax Account (Purchases), Tax Account (Sales), Unreal. Rev. Charge (Purch.), Unreal. Tax Acc. (Purchases), Unreal. Tax Acc. (Sales)
- [Table 326 "Tax Setup"](../table/326.md): Reverse Charge (Purchases), Tax Account (Purchases), Tax Account (Sales), Unreal. Rev. Charge (Purch.), Unreal. Tax Acc. (Purchases), Unreal. Tax Acc. (Sales)
- [Table 6786 "Withholding Tax Posting Setup"](../table/6786.md): Bal. Payable Account No., Bal. Prepaid Account No., Payable Wthldg. Tax Acc. Code, Prepaid Wthldg. Tax Acc. Code, Purch. Wthldg. Tax Adj. Acc No, Sales Wthldg. Tax Adj. Acc No
- [Table 1570 "G/L Entry Posting Preview"](../table/1570.md): Account Id, G/L Account Name, Account Id, Bal. Account No., G/L Account No.
- [Table 17 "G/L Entry"](../table/17.md): Account Id, G/L Account Name, Account Id, Bal. Account No., G/L Account No.
- [Table 5221 "Employee Posting Group"](../table/5221.md): Credit Curr. Appln. Rndg. Acc., Credit Rounding Account, Debit Curr. Appln. Rndg. Acc., Debit Rounding Account, Payables Account
- [Table 6928 "Expense Posting Group"](../table/6928.md): Credit Rounding Account, Debit Rounding Account, Non-Refundable Debit Account, Prepayment Credit Account, Refundable Debit Account
- [Table 81 "Gen. Journal Line"](../table/81.md): Account Id, Account No., Bal. Account No., Balance Account Id
- [Table extension 6900 "Exp. Employee Posting Group"](../tableextension/6900.md): Exp. Report Prepayment Account, Expense Payable Bank Paid Acc., Expense Payable Card Paid Acc., Expense Report Payable Account
- [Table extension 8066 "General Posting Setup"](../tableextension/8066.md): Cust. Sub. Contr. Def Account, Cust. Sub. Contract Account, Vend. Sub. Contr. Def. Account, Vend. Sub. Contract Account
- [Table 1251 "Text-to-Account Mapping"](../table/1251.md): Bal. Source No., Credit Acc. No., Debit Acc. No.
- [Table 181 "Posted Gen. Journal Line"](../table/181.md): Account Id, Account No., Bal. Account No.
- [Table 1877 "VAT Setup Posting Groups"](../table/1877.md): Purchase VAT Account, Reverse Chrg. VAT Acc., Sales VAT Account
- [Table 1004 "Job WIP Entry"](../table/1004.md): G/L Account No., G/L Bal. Account No.
- [Table 1005 "Job WIP G/L Entry"](../table/1005.md): G/L Account No., G/L Bal. Account No.
- [Table 1014 "Job G/L Account Price"](../table/1014.md): Description, G/L Account No.
- [Table 1018 "Job WIP Buffer"](../table/1018.md): Bal. G/L Account No., G/L Account No.
- [Table 1661 "Import G/L Transaction"](../table/1661.md): G/L Account Name, G/L Account
- [Table 1704 "Posted Deferral Header"](../table/1704.md): Account No., Deferral Account
- [Table 221 "Gen. Jnl. Allocation"](../table/221.md): Account Name, Account No.
- [Table 312 "Purchases & Payables Setup"](../table/312.md): Credit Acc. for Non-Item Lines, Debit Acc. for Non-Item Lines
- [Table 368 "Dimension Selection Buffer"](../table/368.md): Dimension Value Filter, New Dimension Value Code
- [Table 37 "Sales Line"](../table/37.md): Description, No.
- [Table 376 "G/L Account (Analysis View)"](../table/376.md): No., Totaling
- [Table 39 "Purchase Line"](../table/39.md): Description, No.
- [Table 413 "IC Partner"](../table/413.md): Payables Account, Receivables Account
- [Table 4851 "Automatic Account Line"](../table/4851.md): Description, G/L Account No.
- [Table 5261 "G/L Account Mapping Line"](../table/5261.md): G/L Account Name, G/L Account No.
- [Table 5615 "FA Allocation"](../table/5615.md): Account Name, Account No.
- [Table 5973 "Service Contract Account Group"](../table/5973.md): Non-Prepaid Contract Acc., Prepaid Contract Acc.
- [Table 751 "Standard General Journal Line"](../table/751.md): Account No., Bal. Account No.
- [Table extension 4701 "VAT Report Setup Extension"](../tableextension/4701.md): Group Settlement Account, VAT Settlement Account
- [Table 1003 "Job Planning Line"](../table/1003.md): No.
- [Table 110 "Sales Shipment Header"](../table/110.md): Bal. Account No.
- [Table 1103 "Cost Type"](../table/1103.md): G/L Account Range
- [Table 1104 "Cost Entry"](../table/1104.md): G/L Account
- [Table 111 "Sales Shipment Line"](../table/111.md): No.
- [Table 112 "Sales Invoice Header"](../table/112.md): Bal. Account No.
- [Table 113 "Sales Invoice Line"](../table/113.md): No.
- and 126 more objects (126 fields): data/code/relations/29.json

## Pages and codeunits on this table

- [Page 1158 "Cash Account Balances"](../page/1158.md) (source table)
- [Page 154 "G/L Account Balance/Budget"](../page/154.md) (source table)
- [Page 16 "Chart of Accounts"](../page/16.md) (source table)
- [Page 17 "G/L Account Card"](../page/17.md) (source table)
- [Page 18 "G/L Account List"](../page/18.md) (source table)
- [Page 20014 "APIV1 - Accounts"](../page/20014.md) (source table)
- [Page 30014 "APIV2 - Accounts"](../page/30014.md) (source table)
- [Page 30304 "API Finance - GL Account"](../page/30304.md) (source table)
- [Page 414 "G/L Balance"](../page/414.md) (source table)
- [Page 415 "G/L Account Balance"](../page/415.md) (source table)
- [Page 422 "G/L Balance/Budget"](../page/422.md) (source table)
- [Page 46866 "BC14 Balance Validation"](../page/46866.md) (source table)
- [Page 570 "Chart of Accounts (G/L)"](../page/570.md) (source table)
- [Page 6225 "G/L Accounts Subform"](../page/6225.md) (source table)
- [Page 628 "IC Mapping CoA Outgoing"](../page/628.md) (source table)
- [Page 634 "Chart of Accounts Overview"](../page/634.md) (source table)
- [Page 791 "G/L Accounts ListPart"](../page/791.md) (source table)
- [Page 792 "Uncategorized G/L Accounts"](../page/792.md) (source table)
- [Page 8396 "Totaling Accounts Factbox"](../page/8396.md) (source table)
- [Codeunit 7 "GLBudget-Open"](../codeunit/7.md) (codeunit runs on it)

## Extended by

- [Table extension 22210 "G/L Account Review Policy"](../tableextension/22210.md)
- [Table extension 4852 "AutoAcc G/L Account"](../tableextension/4852.md)
- [Table extension 6227 "Sust. G/L Account"](../tableextension/6227.md)
- [Table extension 6786 "Withholding GL Account Ext"](../tableextension/6786.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 408 "DimensionManagement"](../codeunit/408.md) (5 calls: `OnDelete → DeleteDefaultDim`, `OnInsert → UpdateDefaultDim`, `OnRename → RenameDefaultDim`, …)
- [Codeunit 1100 "Cost Account Mgt"](../codeunit/1100.md) (3 calls: `OnInsert → UpdateCostTypeFromGLAcc`, `OnModify → UpdateCostTypeFromGLAcc`, `OnRename → UpdateCostTypeFromGLAcc`)
- [Codeunit 1431 "Forward Link Mgt."](../codeunit/1431.md) (1 call: `CheckGenProdPostingGroup → GetHelpCodeForEmptyPostingSetupAccount`)
- [Codeunit 28 "Error Message Management"](../codeunit/28.md) (1 call: `CheckGenProdPostingGroup → LogContextFieldError`)
- [Codeunit 361 "MoveEntries"](../codeunit/361.md) (1 call: `OnDelete → MoveGLEntries`)
- [Codeunit 7018 "Price UX Management"](../codeunit/7018.md) (1 call: `ShowPriceListLines → ShowPriceListLines`)

## Recent changes

- 2026-09-09 [#11160 Ruleset hardening: promote three mechanical rules to Error](../../changes/bcapps/11160.md) (main, BC30, refactor)
- 2026-07-31 [#8959 Deliverable 638799: Spend Requests in Base App](../../changes/bcapps/8959.md) (main, BC30, feature)

## Across versions

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

## Countries that replace it

[AT](../../localizations/at.md), [AU](../../localizations/au.md), [BE](../../localizations/be.md), [CA](../../localizations/ca.md), [CH](../../localizations/ch.md), [DE](../../localizations/de.md), [ES](../../localizations/es.md), [FI](../../localizations/fi.md), [FR](../../localizations/fr.md), [IS](../../localizations/is.md), [MX](../../localizations/mx.md), [NL](../../localizations/nl.md), [NO](../../localizations/no.md), [NZ](../../localizations/nz.md), [RU](../../localizations/ru.md), [SE](../../localizations/se.md), [US](../../localizations/us.md)

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: "table", object_name: "G/L Account")`, then `bcatlas_get_procedure_body` or `bcatlas_get_neighbors` on the returned id.
