Table of Contents

Table "G/L Account"

ID 15
Namespace: Microsoft.Finance.GeneralLedger.Account

Central master data table for general ledger accounts containing the chart of accounts structure. Supports financial reporting, dimension analysis, budgeting, and multi-currency operations.

Remarks

Key relationships: G/L Entry, G/L Budget Entry, G/L Account Category, Dimension Values. Primary data source for financial statements, trial balance, and account analysis reports. Extensible via table extensions for industry-specific accounting requirements and additional financial dimensions. Supports account hierarchies through Begin-Total/End-Total structure and account categorization for financial reporting.

Properties

Name Value
Caption G/L Account
DataCaptionFields 1,2
DrillDownPageID Page Microsoft.Finance.GeneralLedger.Account."Chart of Accounts"
LookupPageID Page Microsoft.Finance.GeneralLedger.Account."G/L Account List"
DataClassification CustomerContent

Fields

Name Type Description
"No." Code[20]

Unique identifier for the general ledger account used throughout all financial transactions and reporting.

Name Text[100]

Descriptive name of the general ledger account displayed in financial reports and account listings.

"Search Name" Code[100]

Uppercase version of the account name used for faster search operations and lookups.

"Account Type" Enum Microsoft.Finance.GeneralLedger.Account."G/L Account Type"

Defines the account structure type determining posting capabilities and hierarchical relationships.

"Global Dimension 1 Code" Code[20]

First global dimension code for account-level dimensional analysis and reporting segmentation.

"Global Dimension 2 Code" Code[20]

Second global dimension code for additional dimensional analysis and reporting segmentation.

"Account Category" Enum Microsoft.Finance.GeneralLedger.Account."G/L Account Category"

Financial statement category classification for automated financial reporting and analysis.

"Income/Balance" Enum Microsoft.Finance.GeneralLedger.Account."G/L Account Report Type"

Determines whether the account appears on Income Statement or Balance Sheet financial reports.

"Debit/Credit" Option

Restricts posting to debit only, credit only, or allows both debit and credit transactions.

"No. 2" Code[20]

Secondary account number for alternative identification or integration with external systems.

Comment Boolean

Indicates whether comment lines exist for this general ledger account.

Blocked Boolean

Prevents posting transactions to this account when set to true.

"Direct Posting" Boolean

Enables direct posting of transactions to this account when true, required for posting-type accounts.

"Reconciliation Account" Boolean

Identifies accounts used for bank reconciliation processes with bank statement import functionality.

"New Page" Boolean

Forces a page break before this account when printing financial reports.

"No. of Blank Lines" Integer

Number of blank lines to insert before this account in printed financial reports.

Indentation Integer

Visual indentation level for hierarchical display of accounts in the chart of accounts.

"Source Currency Code" Code[10]

Currency code for source currency posting when account supports multi-currency transactions.

"Source Currency Posting" Enum Microsoft.Finance.GeneralLedger.Account."G/L Source Currency Posting"

Defines how transactions in different currencies are handled for this source currency account.

"Source Currency Revaluation" Boolean

Enables currency revaluation calculations for this source currency account.

"Unrealized Revaluation" Boolean

Indicates whether this account supports unrealized currency revaluation adjustments.

"Last Modified Date Time" DateTime

Timestamp of the last modification to this general ledger account record.

"Last Date Modified" Date

Date when this general ledger account was last modified.

"Date Filter" Date

Date range filter for calculating balance and transaction amounts in flowfields.

"Global Dimension 1 Filter" Code[20]

Filter for first global dimension to restrict balance calculations to specific dimension values.

"Global Dimension 2 Filter" Code[20]

Filter for second global dimension to restrict balance calculations to specific dimension values.

"Balance at Date" Decimal

Account balance as of the specified date filter including all historical transactions.

"Net Change" Decimal

Net change amount for the account within the specified date filter period.

"Budgeted Amount" Decimal

Total budgeted amount for the account within the specified date and budget filters.

Totaling Text[250]

Account number range used for totaling calculations when account type is Begin-Total or End-Total.

"Budget Filter" Code[10]

Budget name filter for restricting budget calculations to specific budget scenarios.

Balance Decimal

Current balance of the account including all posted transactions without date restrictions.

"Budget at Date" Decimal

Budgeted amount as of the specified date filter for budget performance analysis.

"Consol. Translation Method" Option

Currency translation method used for consolidation of foreign subsidiaries.

"Consol. Debit Acc." Code[20]

Consolidation account number for debit transactions when consolidating foreign subsidiaries.

"Consol. Credit Acc." Code[20]

Consolidation account number for credit transactions when consolidating foreign subsidiaries.

"Business Unit Filter" Code[20]

Business unit filter for restricting balance calculations to specific business units in consolidation.

"Gen. Posting Type" Enum Microsoft.Foundation.Enums."General Posting Type"

General posting type classification for VAT and general posting group combinations.

"Gen. Bus. Posting Group" Code[20]

General business posting group for determining posting accounts in combination with product posting groups.

"Gen. Prod. Posting Group" Code[20]

General product posting group for determining posting accounts in combination with business posting groups.

Picture Blob

Account picture or image for visual identification in user interfaces.

"Debit Amount" Decimal

Total debit amount for the account within the specified date and dimension filters.

"Credit Amount" Decimal

Total credit amount for the account within the specified date and dimension filters.

"Automatic Ext. Texts" Boolean

Enables automatic insertion of extended text lines when the account is used in documents.

"Budgeted Debit Amount" Decimal

Positive budget amounts for the account within the specified date and budget filters.

"Budgeted Credit Amount" Decimal

Negative budget amounts for the account within the specified date and budget filters.

"Tax Area Code" Code[20]

Tax area code for sales tax calculation when tax functionality is enabled.

"Tax Liable" Boolean

Indicates whether the account is subject to tax calculation in tax-enabled jurisdictions.

"Tax Group Code" Code[20]

Tax group code for determining applicable tax rates and calculation methods.

"VAT Bus. Posting Group" Code[20]

VAT business posting group for determining VAT treatment in combination with VAT product posting groups.

"VAT Prod. Posting Group" Code[20]

VAT product posting group for determining VAT treatment in combination with VAT business posting groups.

"VAT Amt." Decimal

Total VAT amount for the account within the specified date and dimension filters.

"Additional-Currency Net Change" Decimal

Net change amount in additional reporting currency for the account within the specified date filters.

"Add.-Currency Balance at Date" Decimal

Balance in additional reporting currency as of the specified date filter.

"Additional-Currency Balance" Decimal

Current balance in additional reporting currency including all posted transactions.

"Exchange Rate Adjustment" Enum Microsoft.Finance.Currency."Exch. Rate Adjustment Type"

Exchange rate adjustment type for currency revaluation processing.

"Add.-Currency Debit Amount" Decimal

Total debit amount in additional reporting currency for the account within the specified filters.

"Add.-Currency Credit Amount" Decimal

Total credit amount in additional reporting currency for the account within the specified filters.

"Default IC Partner G/L Acc. No" Code[20]

Default intercompany partner general ledger account for automatic intercompany transactions.

"Omit Default Descr. in Jnl." Boolean

Excludes default account name description from journal entries when posting transactions.

"Source Currency Net Change" Decimal

Net change amount in source currency for the account within the specified date filters.

"Source Curr. Balance at Date" Decimal

Balance in source currency as of the specified date filter for source currency accounts.

"Source Currency Balance" Decimal

Current balance in source currency for source currency accounts including all posted transactions.

"Account Subcategory Entry No." Integer

Reference to the account subcategory entry for detailed financial statement classification.

"Account Subcategory Descript." Text[80]

Description text for the account subcategory providing detailed classification information.

"VAT Reporting Date Filter" Date

Date filter specifically for VAT reporting date to calculate VAT-related flowfields.

"Exclude From Consolidation" Boolean

Excludes this account from consolidation processes when consolidating multiple companies or business units.

"Spend Request Required" Enum Microsoft.Finance.SpendRequest."Spend Request Required"

Specifies whether a spend request is required before expenses can be posted to this account.

"Dimension Set ID Filter" Integer

Filter for dimension set ID to restrict balance calculations to specific dimension combinations.

"Cost Type No." Code[20]

Associated cost accounting cost type number for integration with cost accounting functionality.

"Default Deferral Template Code" Code[10]

Default deferral template for automatic deferral processing when the account is used in transactions.

"API Account Type" Enum Microsoft.Finance.GeneralLedger.Account."G/L Account Type"

API-compatible account type field that mirrors the Account Type field for external integrations.

SystemId Guid
SystemCreatedAt DateTime
SystemCreatedBy Guid
SystemModifiedAt DateTime
SystemModifiedBy Guid
SystemCreatedByUserName Text[50]
SystemCreatedByFullName Text[80]
SystemModifiedByUserName Text[50]
SystemModifiedByFullName Text[80]
SystemRowVersion BigInteger

Methods

ShowPriceListLines

Displays price list lines for this general ledger account filtered by price type and amount type.

procedure ShowPriceListLines(PriceType: Enum "Price Type"; AmountType: Enum "Price Amount Type")

Parameters

Name Type Description
PriceType Enum Microsoft.Pricing.PriceList."Price Type"

Type of pricing (Sale or Purchase) to filter price lists

AmountType Enum Microsoft.Pricing.PriceList."Price Amount Type"

Amount type filter for displaying relevant price list entries

SetupNewGLAcc

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.

procedure SetupNewGLAcc(OldGLAcc: Record "G/L Account"; BelowOldGLAcc: Boolean)

Parameters

Name Type Description
OldGLAcc Table Microsoft.Finance.GeneralLedger.Account."G/L Account"

Reference account to copy default values from

BelowOldGLAcc Boolean

Indicates whether the new account is positioned below 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.

procedure CheckGLAcc()

ValidateAccountSubCategory

Validates and sets the account subcategory based on text input from user interface. Matches input text against available subcategory descriptions for the account category.

procedure ValidateAccountSubCategory(NewValue: Text[80])

Parameters

Name Type Description
NewValue Text[80]

Text description of the subcategory to match and assign

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.

procedure LookupAccountSubCategory()

GetCurrencyCode

Returns the additional reporting currency code from General Ledger Setup. Used for additional currency amount formatting in flowfields.

procedure GetCurrencyCode(): Code[10]

Returns

Type Description
Code[10]

Additional reporting currency code or empty string if not configured

ValidateShortcutDimCode

Validates and updates the shortcut dimension code for the specified dimension field. Saves the dimension value as a default dimension for this account.

procedure ValidateShortcutDimCode(FieldNumber: Integer; var ShortcutDimCode: Code[20])

Parameters

Name Type Description
FieldNumber Integer

Dimension field number (1 for Global Dimension 1, 2 for Global Dimension 2)

ShortcutDimCode Code[20]

Dimension value code to validate and assign

TranslationMethodConflict

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.

procedure TranslationMethodConflict(var GLAcc: Record "G/L Account"): Boolean

Parameters

Name Type Description
GLAcc Table Microsoft.Finance.GeneralLedger.Account."G/L Account"

Returns the conflicting account record if a conflict is found

Returns

Type Description
Boolean

True if a translation method conflict exists, false otherwise

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.

procedure CheckGenProdPostingGroup()

IsTotaling

Determines whether the account type supports totaling functionality. Returns true for Total and End-Total account types used in account hierarchies.

procedure IsTotaling(): Boolean

Returns

Type Description
Boolean

True if account type is Total or End-Total, false otherwise

Events

OnAfterCheckGLAcc

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.

[IntegrationEvent(False,False)]
local procedure OnAfterCheckGLAcc(var GLAccount: Record "G/L Account")

Parameters

Name Type Description
GLAccount Table Microsoft.Finance.GeneralLedger.Account."G/L Account"

General ledger account being validated for posting

OnAfterSetupNewGLAcc

Integration event raised after setting up a new general ledger account with default values. Allows extensions to add custom initialization logic for new accounts.

[IntegrationEvent(False,False)]
local procedure OnAfterSetupNewGLAcc(var GLAccount: Record "G/L Account")

Parameters

Name Type Description
GLAccount Table Microsoft.Finance.GeneralLedger.Account."G/L Account"

Newly created general ledger account being initialized

OnAfterValidateShortcutDimCode

Integration event raised after validating and updating shortcut dimension codes. Allows extensions to perform additional processing after dimension validation.

[IntegrationEvent(False,False)]
local procedure OnAfterValidateShortcutDimCode(var GLAccount: Record "G/L Account"; var xGLAccount: Record "G/L Account"; FieldNumber: Integer; var ShortcutDimCode: Code[20])

Parameters

Name Type Description
GLAccount Table Microsoft.Finance.GeneralLedger.Account."G/L Account"

Current general ledger account record

xGLAccount Table Microsoft.Finance.GeneralLedger.Account."G/L Account"

Previous version of the general ledger account record

FieldNumber Integer

Dimension field number being validated

ShortcutDimCode Code[20]

Dimension value code that was validated

OnBeforeValidateShortcutDimCode

Integration event raised before validating shortcut dimension codes. Allows extensions to modify validation logic or skip default validation.

[IntegrationEvent(False,False)]
local procedure OnBeforeValidateShortcutDimCode(var GLAccount: Record "G/L Account"; var xGLAccount: Record "G/L Account"; FieldNumber: Integer; var ShortcutDimCode: Code[20])

Parameters

Name Type Description
GLAccount Table Microsoft.Finance.GeneralLedger.Account."G/L Account"

Current general ledger account record

xGLAccount Table Microsoft.Finance.GeneralLedger.Account."G/L Account"

Previous version of the general ledger account record

FieldNumber Integer

Dimension field number being validated

ShortcutDimCode Code[20]

Dimension value code being validated

OnBeforeCheckGenProdPostingGroup

Integration event raised before checking general product posting group requirements. Allows extensions to override or supplement posting group validation logic.

[IntegrationEvent(False,False)]
local procedure OnBeforeCheckGenProdPostingGroup(var GLAccount: Record "G/L Account"; var IsHandled: Boolean)

Parameters

Name Type Description
GLAccount Table Microsoft.Finance.GeneralLedger.Account."G/L Account"

General ledger account being validated

IsHandled Boolean

Set to true to skip default validation logic

OnBeforeOnDelete

Integration event raised before deleting a general ledger account. Allows extensions to perform custom validation or cleanup before account deletion.

[IntegrationEvent(False,False)]
local procedure OnBeforeOnDelete(var GLAccount: Record "G/L Account"; var IsHandled: Boolean)

Parameters

Name Type Description
GLAccount Table Microsoft.Finance.GeneralLedger.Account."G/L Account"

General ledger account being deleted

IsHandled Boolean

Set to true to skip default deletion logic

OnBeforeCheckSalesOrdersPrepmtToDeduct

Integration event raised before checking sales orders with prepayments to deduct. Allows extensions to override or supplement prepayment validation logic for sales orders.

[IntegrationEvent(False,False)]
local procedure OnBeforeCheckSalesOrdersPrepmtToDeduct(var GLAccount: Record "G/L Account"; var IsHandled: Boolean)

Parameters

Name Type Description
GLAccount Table Microsoft.Finance.GeneralLedger.Account."G/L Account"

General ledger account being checked for sales prepayments

IsHandled Boolean

Set to true to skip default prepayment validation logic

See also