tableFinanceofficial - Microsoftderived - from the source, no model text

Table 570 "G/L Account Category"

Base Application · Microsoft.Finance.GeneralLedger.Account

Across versions

  1. BC23present
  2. BC24declaration changed
  3. BC25unchanged
  4. BC261 fields changed, 1 procedures added
  5. BC27-28unchanged
  6. BC293 fields changed
  7. BC30unchanged

Neighbourhood 14 connected objects and pages

Page 790 "G/L Account Categories" (pages and codeunits on it)G/L Account CategoriesCodeunit 570 "G/L Account Category Mgt." (calls, 2 links)G/L Account Category Mgt.Codeunit 1511 "Notification Lifecycle Mgt." (calls)Notification Lifecycle Mgt.Codeunit 46 "SelectionFilterManagement" (calls)SelectionFilterManagementTable 15 "G/L Account" (referenced by, 2 links)G/L AccountTable 36953 "Account Category" (referenced by, 2 links)Account CategoryTable 98 "General Ledger Setup" (referenced by, 2 links)General Ledger SetupTable 46862 "BC14 G/L Account" (referenced by)BC14 G/L AccountTable 85 "Acc. Schedule Line" (referenced by)Acc. Schedule LineCreate custom financial reports (Learn pages)Create custom financial repo…Design your own financial reports (Learn pages)Design your own financial re…Organize report data using account categories (Learn pages)Organize report data using a…Understand the general ledger and Chart of Accounts (Learn pages)Understand the general ledge…Understanding the Chart of Accounts (Learn pages)Understanding the Chart of A…

Open in the neighbourhood explorer

One hop out, from the extracted relations and call graph. Up to 40 shown; the sections below list them all.

Base Application · Microsoft.Finance.GeneralLedger.Account · BC23-30 · source at ea08af5e · facts from BC29

Learn documents this table through its pages: Page 790 “G/L Account Categories” (5 Learn pages).

Properties

Property Value
Caption G/L Account Category
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 Entry No. Integer — AutoIncrement
2 Parent Entry No. Integer —
3 Sibling Sequence No. Integer —
4 Presentation Order Text[100] —
5 Indentation Integer —
6 Description Δ BC29 Text[80] Specifies a description of the record.
7 Account Category Δ BC29 Option Specifies the category of the G/L account. OptionCaption: ,Assets,Liabilities,Equity,Income,Cost of Goods Sold,Expense
8 Income/Balance Δ BC26 Enum “G/L Account Report Type” — enum Enum 20 “G/L Account Report Type”; not editable
9 Additional Report Definition Δ BC29 Option Specifies additional attributes that are used to create the cash flow statement. OptionCaption: ,Operating Activities,Investing Activities,Financing Activities,Cash Accounts,Retained Earnings,Distribution to Shareholders
11 System Generated Boolean —
12 Has Children Boolean — FlowField: exist(“G/L Account Category” where(“Parent Entry No.” = field(“Entry No.”)))

Keys

  • Key1: Entry No. (clustered)
  • Key2: Presentation Order, Sibling Sequence No.
  • Key3: Parent Entry No.

Events published

  • OnBeforeGetTotaling(GLAccountCategory: Record "G/L Account Category"; var TotallingStr: Text[250]; var IsHandled: Boolean) (integration): Integration event that allows customization of the GetTotaling procedure. Subscribers can provide custom totaling logic before the standard calculation.
  • OnBeforeMove(var RecGLAccountCategory: Record "G/L Account Category"; var GLAccountCategory: Record "G/L Account Category"; Steps: Integer; var IsHandled: Boolean) (integration): Integration event that allows customization of the category move operation. Subscribers can implement custom logic before moving account categories.
  • OnBeforeUpdateDescendants(var GLAccountCategory: Record "G/L Account Category"; var IsHandled: Boolean) (integration): Integration event that allows customization of descendant category updates. Subscribers can implement custom logic before updating child categories.
  • OnBeforeUpdatePresentationOrder(var GLAccountCategory: Record "G/L Account Category"; var IsHandled: Boolean) (integration): Integration event that allows customization of presentation order updates. Subscribers can implement custom logic before updating category display order.
  • OnBeforeValidateTotaling(var GLAccountCategory: Record "G/L Account Category"; NewTotaling: Text; var IsHandled: Boolean) (integration): Integration event that allows customization of totaling validation. Subscribers can implement custom validation logic before totaling field changes.
  • OnGetBalanceOnAfterGetTotaling(var GLAccountCategory: Record "G/L Account Category"; TotalingStr: Text; var Balance: Decimal; var IsHandled: Boolean) (integration): Integration event that allows customization of balance calculation after totaling. Subscribers can modify the balance calculation based on totaling results.
  • OnGetBalanceOnBeforeProcessChildren(var GLAccountCategory: Record "G/L Account Category"; var Balance: Decimal; var IsHandled: Boolean) (integration): Integration event that allows customization of balance calculation before processing child categories. Subscribers can modify the balance calculation before child category processing.

Procedures

  • UpdatePresentationOrder(): Updates the hierarchical presentation order and indentation level based on the category’s position in the tree structure. Calculates the sort order for proper display sequence in financial reports and user interfaces.
  • InitializeDataSet(): Initializes the account category dataset with standard financial statement structure. Creates default categories for Assets, Liabilities, Equity, Income, Cost of Goods Sold, and Expenses.
  • InsertRow(): Integer: Creates a new account category as a sibling of the current category with default settings. Returns the entry number of the newly created category for further processing.
  • MoveUp(): Moves the current account category up one position in the sibling sequence within the same parent level. Updates presentation order and descendant categories accordingly.
  • MoveDown(): Moves the current account category down one position in the sibling sequence within the same parent level. Updates presentation order and descendant categories accordingly.
  • MakeChildOfPreviousSibling(): Changes the current category to become a child of its previous sibling category. Restructures the hierarchy by moving the category down one level in the tree.
  • MakeSiblingOfParent(): Changes the current category to become a sibling of its parent category. Restructures the hierarchy by moving the category up one level in the tree.
  • DeleteRow(): Deletes the current category and all its child categories from the hierarchy. Removes associated account assignments and updates related financial reports.
  • MapAccounts(): Maps general ledger accounts to this category (placeholder for future implementation). Provides extension point for custom account mapping logic.
  • ValidateTotaling(NewTotaling: Text): Validates and assigns a new totaling filter for general ledger accounts in this category. Updates account assignments and clears previous totaling assignments as needed.
  • LookupTotaling(): Opens a lookup page to select G/L accounts for the Totaling field. Provides a filtered view based on the category’s Income/Balance setting.
  • PositiveNormalBalance(): Boolean: Determines if the account category has a positive normal balance. Returns true for Expense, Assets, and Cost of Goods Sold categories.
  • GetBalance(): Decimal: Calculates the total balance for this account category including all child categories. Processes both totaling accounts and hierarchical child categories.
  • GetTotaling(): Text[250]: Gets the totaling filter string for this account category. Returns the account filter used for calculating category totals.
  • ShowNotificationAccSchedUpdateNeeded(): Shows a notification that account schedules need to be updated when categories change. Helps maintain consistency between account categories and financial reporting.
  • GetAccSchedUpdateNeededNotificationId(): Guid: Returns the unique identifier for the account schedule update needed notification. Used for notification management and user preferences.
  • DontNotifyCurrentUserAgain(NotificationID: Guid): Disables the account schedule update notification for the current user. Allows users to opt out of future notifications about category updates.

Plus 5 local procedures.

Triggers

OnDelete

Relations

Referenced by

9 fields in 6 objects relate to this table (TableRelation or CalcFormula).

Pages and codeunits on this table

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.

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 Category"), then bcatlas_get_procedure_body or bcatlas_get_neighbors on the returned id.

Evidence 1 sources