Page 570 Chart of Accounts (G/L)
- App
- Base Application
- Namespace
- Microsoft.Finance.Analysis
- Versions
- 17-28
- Source table
- 15
Versions171819202122232425262728
Source29
Source in 29
src/Layers/W1/BaseApp/Finance/Analysis/ChartofAccountsGL.Page.al385 lines, Copyright (c) Microsoft Corporation. MIT
// ------------------------------------------------------------------------------------------------
// Copyright (c) Microsoft Corporation. All rights reserved.
// Licensed under the MIT License. See License.txt in the project root for license information.
// ------------------------------------------------------------------------------------------------
namespace Microsoft.Finance.Analysis;
using Microsoft.Finance.Dimension;
using Microsoft.Finance.GeneralLedger.Account;
using Microsoft.Finance.GeneralLedger.Budget;
using Microsoft.Finance.GeneralLedger.Ledger;
using Microsoft.Foundation.Comment;
using Microsoft.Foundation.ExtendedText;
/// <summary>
/// Chart of accounts page specifically designed for general ledger analysis and reporting.
/// Provides G/L account selection and navigation for analysis by dimensions and budget functionality.
/// </summary>
/// <remarks>
/// Read-only view of G/L accounts optimized for analysis view selection.
/// Used primarily in analysis contexts where account selection is needed for dimensional analysis.
/// </remarks>
page 570 "Chart of Accounts (G/L)"
{
Caption = 'Chart of Accounts (G/L)';
CardPageID = "G/L Account Card";
Editable = false;
PageType = List;
SourceTable = "G/L Account";
layout
{
area(content)
{
repeater(Control1)
{
IndentationColumn = NameIndent;
IndentationControls = Name;
ShowCaption = false;
field("No."; Rec."No.")
{
ApplicationArea = Basic, Suite;
Style = Strong;
StyleExpr = Emphasize;
}
field(Name; Rec.Name)
{
ApplicationArea = Basic, Suite;
Style = Strong;
StyleExpr = Emphasize;
}
field("Account Type"; Rec."Account Type")
{
ApplicationArea = Basic, Suite;
}
field("Income/Balance"; Rec."Income/Balance")
{
ApplicationArea = Basic, Suite;
}
field("Direct Posting"; Rec."Direct Posting")
{
ApplicationArea = Basic, Suite;
ToolTip = 'Specifies whether you will be able to post directly or only indirectly to this general ledger account.';
Visible = false;
}
field(Totaling; Rec.Totaling)
{
ApplicationArea = Basic, Suite;
}
field("Gen. Posting Type"; Rec."Gen. Posting Type")
{
ApplicationArea = Basic, Suite;
ToolTip = 'Specifies the type of transaction.';
}
field("Gen. Bus. Posting Group"; Rec."Gen. Bus. Posting Group")
{
ApplicationArea = Basic, Suite;
}
field("Gen. Prod. Posting Group"; Rec."Gen. Prod. Posting Group")
{
ApplicationArea = Basic, Suite;
}
field("VAT Bus. Posting Group"; Rec."VAT Bus. Posting Group")
{
ApplicationArea = Basic, Suite;
Visible = false;
}
field("VAT Prod. Posting Group"; Rec."VAT Prod. Posting Group")
{
ApplicationArea = Basic, Suite;
Visible = false;
}
field("Net Change"; Rec."Net Change")
{
ApplicationArea = Basic, Suite;
BlankZero = true;
}
field("Balance at Date"; Rec."Balance at Date")
{
ApplicationArea = Basic, Suite;
BlankZero = true;
Visible = false;
}
field(Balance; Rec.Balance)
{
ApplicationArea = Basic, Suite;
BlankZero = true;
Visible = false;
}
field("Additional-Currency Net Change"; Rec."Additional-Currency Net Change")
{
ApplicationArea = Suite;
BlankZero = true;
Visible = false;
}
field("Add.-Currency Balance at Date"; Rec."Add.-Currency Balance at Date")
{
ApplicationArea = Suite;
BlankZero = true;
Visible = false;
}
field("Additional-Currency Balance"; Rec."Additional-Currency Balance")
{
ApplicationArea = Suite;
BlankZero = true;
Visible = false;
}
field(BudgetedAmount; Rec."Budgeted Amount")
{
ApplicationArea = Suite;
}
field("Consol. Debit Acc."; Rec."Consol. Debit Acc.")
{
ApplicationArea = Basic, Suite;
Visible = false;
}
field("Consol. Credit Acc."; Rec."Consol. Credit Acc.")
{
ApplicationArea = Basic, Suite;
ToolTip = 'Specifies the account number in a consolidated company to transfer credit balances.';
Visible = false;
}
}
}
area(factboxes)
{
systempart(Control1900383207; Links)
{
ApplicationArea = RecordLinks;
Visible = false;
}
systempart(Control1905767507; Notes)
{
ApplicationArea = Notes;
Visible = false;
}
}
}
actions
{
area(navigation)
{
group("A&ccount")
{
Caption = 'A&ccount';
Image = ChartOfAccounts;
action(AccountGeneralLedgerEntries)
{
ApplicationArea = Basic, Suite;
Caption = 'Ledger E&ntries';
Image = GLRegisters;
RunObject = Page "General Ledger Entries";
RunPageLink = "G/L Account No." = field("No.");
RunPageView = sorting("G/L Account No.");
ShortCutKey = 'Ctrl+F7';
ToolTip = 'View the history of transactions that have been posted for the selected record.';
}
action("Co&mments")
{
ApplicationArea = Comments;
Caption = 'Co&mments';
Image = ViewComments;
RunObject = Page "Comment Sheet";
RunPageLink = "Table Name" = const("G/L Account"),
"No." = field("No.");
ToolTip = 'View or add comments for the record.';
}
group(Dimensions)
{
Caption = 'Dimensions';
Image = Dimensions;
action("Dimensions-Single")
{
ApplicationArea = Dimensions;
Caption = 'Dimensions-Single';
Image = Dimensions;
RunObject = Page "Default Dimensions";
RunPageLink = "Table ID" = const(15),
"No." = field("No.");
ShortCutKey = 'Alt+D';
ToolTip = 'View or edit the single set of dimensions that are set up for the selected record.';
}
action("Dimensions-&Multiple")
{
AccessByPermission = TableData Dimension = R;
ApplicationArea = Dimensions;
Caption = 'Dimensions-&Multiple';
Image = DimensionSets;
ToolTip = 'View or edit dimensions for a group of records. You can assign dimension codes to transactions to distribute costs and analyze historical information.';
trigger OnAction()
var
GLAcc: Record "G/L Account";
DefaultDimMultiple: Page "Default Dimensions-Multiple";
begin
CurrPage.SetSelectionFilter(GLAcc);
DefaultDimMultiple.SetMultiRecord(GLAcc, Rec.FieldNo("No."));
DefaultDimMultiple.RunModal();
end;
}
}
action("E&xtended Texts")
{
ApplicationArea = Suite;
Caption = 'E&xtended Texts';
Image = Text;
RunObject = Page "Extended Text List";
RunPageLink = "Table Name" = const("G/L Account"),
"No." = field("No.");
RunPageView = sorting("Table Name", "No.", "Language Code", "All Language Codes", "Starting Date", "Ending Date");
ToolTip = 'View the extended description that is set up.';
}
action("Receivables-Payables")
{
ApplicationArea = Suite;
Caption = 'Receivables-Payables';
Image = ReceivablesPayables;
RunObject = Page "Receivables-Payables";
ToolTip = 'View a summary of the receivables and payables for the account, including customer and vendor balance due amounts.';
}
}
group("Underlying Entries")
{
Caption = 'Underlying Entries';
action(NetChange)
{
ApplicationArea = Basic, Suite;
Caption = 'Net Change';
Image = LedgerEntries;
RunObject = Page "General Ledger Entries";
RunPageLink = "G/L Account No." = field(filter(Totaling)),
"Posting Date" = field("Date Filter");
ToolTip = 'View the general ledger entries that make up the sum in the Net Change field.';
}
action("Budgeted Amount")
{
ApplicationArea = Suite;
Caption = 'Budgeted Amount';
Image = GLRegisters;
RunObject = Page "G/L Budget Entries";
RunPageLink = "G/L Account No." = field(filter(Totaling)),
Date = field("Date Filter");
ToolTip = 'View the budget entries that make up the sum in the Budgeted Amount field.';
}
}
group("&Balance")
{
Caption = '&Balance';
Image = Balance;
action("G/L &Account Balance")
{
ApplicationArea = Basic, Suite;
Caption = 'G/L &Account Balance';
Image = GLAccountBalance;
RunObject = Page "G/L Account Balance";
RunPageLink = "No." = field("No."),
"Global Dimension 1 Filter" = field("Global Dimension 1 Filter"),
"Global Dimension 2 Filter" = field("Global Dimension 2 Filter"),
"Business Unit Filter" = field("Business Unit Filter");
ToolTip = 'View a summary of the debit and credit balances for different time periods, for the account that you select in the chart of accounts.';
}
action("G/L &Balance")
{
ApplicationArea = Basic, Suite;
Caption = 'G/L &Balance';
Image = GLBalance;
RunObject = Page "G/L Balance";
RunPageOnRec = true;
ToolTip = 'View a summary of the debit and credit balances for all the accounts in the chart of accounts, for the time period that you select.';
}
action("G/L Balance by &Dimension")
{
ApplicationArea = Dimensions;
Caption = 'G/L Balance by &Dimension';
Image = GLBalanceDimension;
RunObject = Page "G/L Balance by Dimension";
ToolTip = 'View a summary of the debit and credit balances by dimensions for the current account.';
}
}
}
area(processing)
{
group("F&unctions")
{
Caption = 'F&unctions';
Image = "Action";
action("Indent Chart of Accounts")
{
ApplicationArea = Basic, Suite;
Caption = 'Indent Chart of Accounts';
Image = IndentChartOfAccounts;
RunObject = Codeunit "G/L Account-Indent";
ToolTip = 'Indent accounts between a Begin-Total and the matching End-Total one level to make the chart of accounts easier to read.';
}
}
}
area(Promoted)
{
group(Category_Process)
{
Caption = 'Process', Comment = 'Generated from the PromotedActionCategories property index 1.';
actionref("Indent Chart of Accounts_Promoted"; "Indent Chart of Accounts")
{
}
}
group(Category_Report)
{
Caption = 'Report', Comment = 'Generated from the PromotedActionCategories property index 2.';
}
group(Category_Category4)
{
Caption = 'Account', Comment = 'Generated from the PromotedActionCategories property index 3.';
actionref(AccountGeneralLedgerEntries_Promoted; AccountGeneralLedgerEntries)
{
}
actionref("Co&mments_Promoted"; "Co&mments")
{
}
group(Category_Dimensions)
{
Caption = 'Dimensions';
ShowAs = SplitButton;
actionref("Dimensions-&Multiple_Promoted"; "Dimensions-&Multiple")
{
}
actionref("Dimensions-Single_Promoted"; "Dimensions-Single")
{
}
}
}
group(Category_Category5)
{
Caption = 'Underlying Entries', Comment = 'Generated from the PromotedActionCategories property index 4.';
actionref(NetChange_Promoted; NetChange)
{
}
actionref("Budgeted Amount_Promoted"; "Budgeted Amount")
{
}
}
}
}
trigger OnAfterGetRecord()
begin
NameIndent := 0;
FormatLine();
end;
var
Emphasize: Boolean;
NameIndent: Integer;
local procedure FormatLine()
begin
NameIndent := Rec.Indentation;
Emphasize := Rec."Account Type" <> Rec."Account Type"::Posting;
end;
}