Page 25 Customer Ledger Entries, source in 29
Source29
src/Layers/W1/BaseApp/Sales/Receivables/CustomerLedgerEntries.Page.al924 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.Sales.Receivables;
using Microsoft.Bank.Reconciliation;
using Microsoft.EServices.EDocument;
using Microsoft.Finance.Dimension;
using Microsoft.Finance.GeneralLedger.Ledger;
using Microsoft.Finance.GeneralLedger.Reversal;
using Microsoft.Finance.GeneralLedger.Setup;
using Microsoft.Foundation.Navigate;
using Microsoft.Sales.Customer;
using Microsoft.Sales.FinanceCharge;
using Microsoft.Sales.Reminder;
using Microsoft.Sales.Setup;
using System.Diagnostics;
using System.Security.User;
using System.Utilities;
/// <summary>
/// Displays all customer ledger entries with options to view details, apply entries, navigate to related documents, and perform entry management tasks.
/// </summary>
page 25 "Customer Ledger Entries"
{
ApplicationArea = Basic, Suite;
Caption = 'Customer Ledger Entries';
DataCaptionFields = "Customer No.";
DeleteAllowed = false;
InsertAllowed = false;
PageType = List;
AboutTitle = 'About Customer Ledger Entries';
AboutText = 'View and manage all financial transactions posted to customer accounts, including invoices, payments, credit memos, and refunds, and apply payments or credits to close outstanding entries and keep customer balances up-to-date.';
Permissions = TableData "Cust. Ledger Entry" = m;
SourceTable = "Cust. Ledger Entry";
SourceTableView = sorting("Customer No.", "Posting Date") order(descending);
UsageCategory = History;
layout
{
area(content)
{
repeater(Control1)
{
ShowCaption = false;
field("Posting Date"; Rec."Posting Date")
{
ApplicationArea = Basic, Suite;
Editable = false;
}
field("Document Date"; Rec."Document Date")
{
ApplicationArea = Basic, Suite;
Editable = false;
}
field("Document Type"; Rec."Document Type")
{
ApplicationArea = Basic, Suite;
Editable = false;
StyleExpr = StyleTxt;
}
field("Document No."; Rec."Document No.")
{
ApplicationArea = Basic, Suite;
Editable = false;
StyleExpr = StyleTxt;
}
field("Customer No."; Rec."Customer No.")
{
ApplicationArea = Basic, Suite;
Editable = false;
}
field("Customer Name"; Rec."Customer Name")
{
ApplicationArea = Basic, Suite;
Editable = false;
Visible = CustNameVisible;
}
field(Description; Rec.Description)
{
ApplicationArea = Basic, Suite;
Editable = true;
}
field("Global Dimension 1 Code"; Rec."Global Dimension 1 Code")
{
ApplicationArea = Dimensions;
Editable = false;
Visible = Dim1Visible;
}
field("Global Dimension 2 Code"; Rec."Global Dimension 2 Code")
{
ApplicationArea = Dimensions;
Editable = false;
Visible = Dim2Visible;
}
field("Customer Posting Group"; Rec."Customer Posting Group")
{
ApplicationArea = Basic, Suite;
Editable = false;
Visible = false;
}
field("IC Partner Code"; Rec."IC Partner Code")
{
ApplicationArea = Intercompany;
Editable = false;
Visible = false;
}
field("Salesperson Code"; Rec."Salesperson Code")
{
ApplicationArea = Suite;
Editable = false;
Visible = false;
}
field("Currency Code"; Rec."Currency Code")
{
ApplicationArea = Suite;
Editable = false;
}
field("Original Amount"; Rec."Original Amount")
{
ApplicationArea = Basic, Suite;
Editable = false;
}
field("Original Amt. (LCY)"; Rec."Original Amt. (LCY)")
{
ApplicationArea = Basic, Suite;
Editable = false;
Visible = false;
}
field(Amount; Rec.Amount)
{
ApplicationArea = Basic, Suite;
Editable = false;
Visible = AmountVisible;
}
field("Amount (LCY)"; Rec."Amount (LCY)")
{
ApplicationArea = Basic, Suite;
Editable = false;
Visible = AmountVisible;
}
field("Debit Amount"; Rec."Debit Amount")
{
ApplicationArea = Basic, Suite;
Visible = DebitCreditVisible;
}
field("Debit Amount (LCY)"; Rec."Debit Amount (LCY)")
{
ApplicationArea = Basic, Suite;
Visible = DebitCreditVisible;
}
field("Credit Amount"; Rec."Credit Amount")
{
ApplicationArea = Basic, Suite;
Visible = DebitCreditVisible;
}
field("Credit Amount (LCY)"; Rec."Credit Amount (LCY)")
{
ApplicationArea = Basic, Suite;
Visible = DebitCreditVisible;
}
field(RunningBalanceLCY; CalcRunningCustBalance.GetCustomerBalanceLCY(Rec))
{
ApplicationArea = Basic, Suite;
AutoFormatType = 1;
AutoFormatExpression = '';
Caption = 'Running Balance (LCY)';
ToolTip = 'Specifies the running balance in LCY.';
Visible = false;
}
field("Remaining Amount"; Rec."Remaining Amount")
{
ApplicationArea = Basic, Suite;
Editable = false;
}
field("Remaining Amt. (LCY)"; Rec."Remaining Amt. (LCY)")
{
ApplicationArea = Basic, Suite;
Editable = false;
}
field("Sales (LCY)"; Rec."Sales (LCY)")
{
ApplicationArea = Suite;
Editable = false;
}
field("Bal. Account Type"; Rec."Bal. Account Type")
{
ApplicationArea = Basic, Suite;
Editable = false;
Visible = false;
}
field("Bal. Account No."; Rec."Bal. Account No.")
{
ApplicationArea = Basic, Suite;
Editable = false;
Visible = false;
}
field("Due Date"; Rec."Due Date")
{
ApplicationArea = Basic, Suite;
StyleExpr = StyleTxt;
}
field("Promised Pay Date"; Rec."Promised Pay Date")
{
ApplicationArea = Basic, Suite;
Visible = false;
Importance = Promoted;
}
field("Pmt. Discount Date"; Rec."Pmt. Discount Date")
{
ApplicationArea = Basic, Suite;
}
field("Pmt. Disc. Tolerance Date"; Rec."Pmt. Disc. Tolerance Date")
{
ApplicationArea = Basic, Suite;
}
field("Original Pmt. Disc. Possible"; Rec."Original Pmt. Disc. Possible")
{
ApplicationArea = Basic, Suite;
}
field("Remaining Pmt. Disc. Possible"; Rec."Remaining Pmt. Disc. Possible")
{
ApplicationArea = Basic, Suite;
}
field("Max. Payment Tolerance"; Rec."Max. Payment Tolerance")
{
ApplicationArea = Basic, Suite;
}
field("Payment Method Code"; Rec."Payment Method Code")
{
ApplicationArea = Basic, Suite;
}
field(Open; Rec.Open)
{
ApplicationArea = Basic, Suite;
Editable = false;
}
field("Closed at Date"; Rec."Closed at Date")
{
Visible = false;
ApplicationArea = Basic, Suite;
}
field("Dispute Status"; Rec."Dispute Status")
{
ApplicationArea = Basic, Suite;
}
field("On Hold"; Rec."On Hold")
{
ApplicationArea = Basic, Suite;
}
field("User ID"; Rec."User ID")
{
ApplicationArea = Basic, Suite;
Editable = false;
Visible = false;
trigger OnDrillDown()
var
UserMgt: Codeunit "User Management";
begin
UserMgt.DisplayUserInformation(Rec."User ID");
end;
}
field("Source Code"; Rec."Source Code")
{
ApplicationArea = Suite;
Editable = false;
Visible = false;
}
field("Reason Code"; Rec."Reason Code")
{
ApplicationArea = Suite;
Editable = false;
Visible = false;
}
field(Reversed; Rec.Reversed)
{
ApplicationArea = Basic, Suite;
Editable = false;
Visible = false;
}
field("Reversed by Entry No."; Rec."Reversed by Entry No.")
{
ApplicationArea = Basic, Suite;
Editable = false;
Visible = false;
}
field("Reversed Entry No."; Rec."Reversed Entry No.")
{
ApplicationArea = Basic, Suite;
Editable = false;
Visible = false;
}
field("Entry No."; Rec."Entry No.")
{
ApplicationArea = Basic, Suite;
Editable = false;
}
field("G/L Register No."; Rec."G/L Register No.")
{
ApplicationArea = Basic, Suite;
Editable = false;
}
field("Transaction No."; Rec."Transaction No.")
{
ApplicationArea = Basic, Suite;
Editable = false;
}
field("Exported to Payment File"; Rec."Exported to Payment File")
{
ApplicationArea = Basic, Suite;
Editable = true;
trigger OnValidate()
var
ConfirmManagement: Codeunit "Confirm Management";
begin
if not ConfirmManagement.GetResponseOrDefault(ExportToPaymentFileConfirmTxt, true) then
Error('');
end;
}
field("Message to Recipient"; Rec."Message to Recipient")
{
ApplicationArea = Basic, Suite;
}
field("Direct Debit Mandate ID"; Rec."Direct Debit Mandate ID")
{
ApplicationArea = Basic, Suite;
Visible = false;
}
field("Dimension Set ID"; Rec."Dimension Set ID")
{
ApplicationArea = Dimensions;
Visible = false;
}
field("External Document No."; Rec."External Document No.")
{
ApplicationArea = Basic, Suite;
Editable = false;
Visible = false;
}
field("Your Reference"; Rec."Your Reference")
{
ApplicationArea = Basic, Suite;
Editable = false;
Visible = false;
}
field(RecipientBankAccount; Rec."Recipient Bank Account")
{
ApplicationArea = Basic, Suite;
}
field("Shortcut Dimension 3 Code"; Rec."Shortcut Dimension 3 Code")
{
ApplicationArea = Dimensions;
Editable = false;
Visible = Dim3Visible;
}
field("Shortcut Dimension 4 Code"; Rec."Shortcut Dimension 4 Code")
{
ApplicationArea = Dimensions;
Editable = false;
Visible = Dim4Visible;
}
field("Shortcut Dimension 5 Code"; Rec."Shortcut Dimension 5 Code")
{
ApplicationArea = Dimensions;
Editable = false;
Visible = Dim5Visible;
}
field("Shortcut Dimension 6 Code"; Rec."Shortcut Dimension 6 Code")
{
ApplicationArea = Dimensions;
Editable = false;
Visible = Dim6Visible;
}
field("Shortcut Dimension 7 Code"; Rec."Shortcut Dimension 7 Code")
{
ApplicationArea = Dimensions;
Editable = false;
Visible = Dim7Visible;
}
field("Shortcut Dimension 8 Code"; Rec."Shortcut Dimension 8 Code")
{
ApplicationArea = Dimensions;
Editable = false;
Visible = Dim8Visible;
}
}
}
area(factboxes)
{
part(Control1903096107; "Customer Ledger Entry FactBox")
{
ApplicationArea = Basic, Suite;
SubPageLink = "Entry No." = field("Entry No.");
Visible = true;
}
part(IncomingDocAttachFactBox; "Incoming Doc. Attach. FactBox")
{
ApplicationArea = Basic, Suite;
ShowFilter = false;
SubPageLink = "Posting Date" = field("Posting Date"), "Document No." = field("Document No.");
}
part(Control38; "Customer Details FactBox")
{
ApplicationArea = Basic, Suite;
SubPageLink = "No." = field("Customer No."),
"Date Filter" = field("Date Filter");
}
part(GLEntriesPart; "G/L Entries Part")
{
ApplicationArea = Basic, Suite;
Caption = 'Related G/L Entries';
ShowFilter = false;
SubPageLink = "Posting Date" = field("Posting Date"), "Document No." = field("Document No.");
}
systempart(Control1900383207; Links)
{
ApplicationArea = RecordLinks;
Visible = false;
}
systempart(Control1905767507; Notes)
{
ApplicationArea = Notes;
Visible = false;
}
}
}
actions
{
area(navigation)
{
group("Ent&ry")
{
Caption = 'Ent&ry';
Image = Entry;
action("Reminder/Fin. Charge Entries")
{
ApplicationArea = Suite;
Caption = 'Reminder/Fin. Charge Entries';
Image = Reminder;
RunObject = Page "Reminder/Fin. Charge Entries";
RunPageLink = "Customer Entry No." = field("Entry No.");
RunPageView = sorting("Customer Entry No.");
Scope = Repeater;
ToolTip = 'View the reminders and finance charge entries that you have entered for the customer.';
}
action(AppliedEntries)
{
ApplicationArea = Basic, Suite;
Caption = 'Applied E&ntries';
Image = Approve;
RunObject = Page "Applied Customer Entries";
RunPageOnRec = true;
Scope = Repeater;
ToolTip = 'View the ledger entries that have been applied to this record.';
}
action(Customer)
{
ApplicationArea = Basic, Suite;
Caption = 'Customer';
Image = Customer;
RunObject = Page "Customer Card";
RunPageLink = "No." = field("Customer No.");
ShortCutKey = 'Shift+F7';
ToolTip = 'View or edit detailed information about the customer.';
}
action(Dimensions)
{
AccessByPermission = TableData Dimension = R;
ApplicationArea = Dimensions;
Caption = 'Dimensions';
Image = Dimensions;
Scope = Repeater;
ShortCutKey = 'Alt+D';
ToolTip = 'View or edit dimensions, such as area, project, or department, that you can assign to sales and purchase documents to distribute costs and analyze transaction history.';
trigger OnAction()
begin
Rec.ShowDimensions();
end;
}
action(SetDimensionFilter)
{
ApplicationArea = Dimensions;
Caption = 'Set Dimension Filter';
Ellipsis = true;
Image = "Filter";
ToolTip = 'Limit the entries according to the dimension filters that you specify. NOTE: If you use a high number of dimension combinations, this function may not work and can result in a message that the SQL server only supports a maximum of 2100 parameters.';
trigger OnAction()
begin
Rec.SetFilter("Dimension Set ID", DimensionSetIDFilter.LookupFilter());
end;
}
action("Detailed &Ledger Entries")
{
ApplicationArea = Basic, Suite;
Caption = 'Detailed &Ledger Entries';
Image = View;
RunObject = Page "Detailed Cust. Ledg. Entries";
RunPageLink = "Cust. Ledger Entry No." = field("Entry No."),
"Customer No." = field("Customer No.");
RunPageView = sorting("Cust. Ledger Entry No.", "Posting Date");
Scope = Repeater;
ShortCutKey = 'Ctrl+F7';
ToolTip = 'View a summary of the all posted entries and adjustments related to a specific customer ledger entry.';
}
}
}
area(processing)
{
group("F&unctions")
{
Caption = 'F&unctions';
Image = "Action";
action("Create Reminder")
{
ApplicationArea = Basic, Suite;
Scope = Repeater;
Ellipsis = true;
Image = CreateReminders;
Caption = 'Create Reminder';
ToolTip = 'Create reminders for this customer if they have overdue payments.';
trigger OnAction()
var
Customer: Record "Customer";
ReminderHeader: Record "Reminder Header";
begin
ReminderHeader.SetRange("Customer No.", Rec."Customer No.");
if ReminderHeader.FindFirst() then begin
page.RunModal(Page::Reminder, ReminderHeader);
exit
end;
Customer.SetRange("No.", Rec."Customer No.");
REPORT.RunModal(REPORT::"Create Reminders", true, true, Customer);
ReminderHeader.SetRange("Customer No.", Rec."Customer No.");
if ReminderHeader.FindFirst() then begin
commit();
page.RunModal(Page::Reminder, ReminderHeader);
exit
end;
Error(NoReminderCreatedErr);
end;
}
action("Create Finance Charge Memo")
{
ApplicationArea = Basic, Suite;
Scope = Repeater;
Ellipsis = true;
Caption = 'Create Finance Charge Memo';
Image = CreateReminders;
ToolTip = 'Create finance charge memos for this customer if they have overdue payments';
trigger OnAction()
var
Customer: Record "Customer";
FinanceChargeMemoHeader: Record "Finance Charge Memo Header";
begin
FinanceChargeMemoHeader.SetRange("Customer No.", Rec."Customer No.");
if FinanceChargeMemoHeader.FindFirst() then begin
page.RunModal(Page::"Finance Charge Memo", FinanceChargeMemoHeader);
exit
end;
Customer.SetRange("No.", Rec."Customer No.");
REPORT.RunModal(REPORT::"Create Finance Charge Memos", true, true, Customer);
FinanceChargeMemoHeader.SetRange("Customer No.", Rec."Customer No.");
if FinanceChargeMemoHeader.FindFirst() then begin
Commit();
page.RunModal(Page::"Finance Charge Memo", FinanceChargeMemoHeader);
exit
end;
Error(NoFinanceChargeMemoHeaderCreatedErr);
end;
}
action("Apply Entries")
{
ApplicationArea = Basic, Suite;
Caption = 'Apply Entries';
Image = ApplyEntries;
Scope = Repeater;
ShortCutKey = 'Shift+F11';
ToolTip = 'Select one or more ledger entries that you want to apply this record to so that the related posted documents are closed as paid or refunded.';
trigger OnAction()
var
CustLedgEntry: Record "Cust. Ledger Entry";
CustEntryApplyPostEntries: Codeunit "CustEntry-Apply Posted Entries";
begin
CustLedgEntry.Copy(Rec);
CustEntryApplyPostEntries.ApplyCustEntryFormEntry(CustLedgEntry);
CustLedgEntry.Get(CustLedgEntry."Entry No.");
Rec := CustLedgEntry;
CurrPage.Update();
end;
}
action(UnapplyEntries)
{
ApplicationArea = Basic, Suite;
Caption = 'Unapply Entries';
Ellipsis = true;
Image = UnApply;
Scope = Repeater;
ToolTip = 'Unselect one or more ledger entries that you want to unapply this record.';
trigger OnAction()
var
CustEntryApplyPostedEntries: Codeunit "CustEntry-Apply Posted Entries";
begin
CustEntryApplyPostedEntries.UnApplyCustLedgEntry(Rec."Entry No.");
end;
}
action(ReverseTransaction)
{
ApplicationArea = Basic, Suite;
Caption = 'Reverse Transaction';
Ellipsis = true;
Image = ReverseRegister;
Scope = Repeater;
ToolTip = 'Reverse an erroneous customer ledger entry.';
trigger OnAction()
var
ReversalEntry: Record "Reversal Entry";
ReversePaymentRecJournal: Codeunit "Reverse Payment Rec. Journal";
begin
ReversePaymentRecJournal.ErrorIfEntryIsNotReversable(Rec);
ReversalEntry.ReverseTransaction(Rec."Transaction No.");
Clear(CalcRunningCustBalance);
end;
}
group(IncomingDocument)
{
Caption = 'Incoming Document';
Image = Documents;
action(IncomingDocCard)
{
ApplicationArea = Basic, Suite;
Caption = 'View Incoming Document';
Enabled = HasIncomingDocument;
Image = ViewOrder;
ToolTip = 'View any incoming document records and file attachments that exist for the entry or document.';
trigger OnAction()
var
IncomingDocument: Record "Incoming Document";
begin
IncomingDocument.ShowCard(Rec."Document No.", Rec."Posting Date");
end;
}
action(SelectIncomingDoc)
{
AccessByPermission = TableData "Incoming Document" = R;
ApplicationArea = Basic, Suite;
Caption = 'Select Incoming Document';
Enabled = not HasIncomingDocument;
Image = SelectLineToApply;
ToolTip = 'Select an incoming document record and file attachment that you want to link to the entry or document.';
trigger OnAction()
var
IncomingDocument: Record "Incoming Document";
begin
IncomingDocument.SelectIncomingDocumentForPostedDocument(Rec."Document No.", Rec."Posting Date", Rec.RecordId);
end;
}
action(IncomingDocAttachFile)
{
ApplicationArea = Basic, Suite;
Caption = 'Create Incoming Document from File';
Ellipsis = true;
Enabled = not HasIncomingDocument;
Image = Attach;
ToolTip = 'Create an incoming document record by selecting a file to attach, and then link the incoming document record to the entry or document.';
trigger OnAction()
var
IncomingDocumentAttachment: Record "Incoming Document Attachment";
begin
IncomingDocumentAttachment.NewAttachmentFromPostedDocument(Rec."Document No.", Rec."Posting Date");
end;
}
}
}
action("&Navigate")
{
ApplicationArea = Basic, Suite;
Caption = 'Find entries...';
Image = Navigate;
Scope = Repeater;
ShortCutKey = 'Ctrl+Alt+Q';
ToolTip = 'Find entries and documents that exist for the document number and posting date on the selected document. (Formerly this action was named Navigate.)';
trigger OnAction()
begin
Navigate.SetDoc(Rec."Posting Date", Rec."Document No.");
Navigate.Run();
end;
}
action("Show Document")
{
ApplicationArea = Basic, Suite;
Caption = 'Show Document';
Image = Document;
ShortCutKey = 'Return';
ToolTip = 'Show details for the posted payment, invoice, or credit memo.';
trigger OnAction()
begin
Rec.ShowDoc();
end;
}
action(ShowDocumentAttachment)
{
ApplicationArea = Basic, Suite;
Caption = 'Show Document Attachment';
Enabled = HasDocumentAttachment;
Image = Attach;
ToolTip = 'View documents or images that are attached to the posted invoice or credit memo.';
trigger OnAction()
begin
Rec.ShowPostedDocAttachment();
end;
}
action(ShowChangeHistory)
{
ApplicationArea = Basic, Suite;
Caption = 'Show Change History';
Image = History;
ToolTip = 'View the history of changes for this entry.';
trigger OnAction()
var
ChangeLogEntry: Record "Change Log Entry";
begin
SetChangeLogEntriesFilter(ChangeLogEntry);
Page.RunModal(Page::"Change Log Entries", ChangeLogEntry);
end;
}
}
area(Promoted)
{
group(Category_Process)
{
Caption = 'Process', Comment = 'Generated from the PromotedActionCategories property index 1.';
group(Category_Category4)
{
Caption = 'Line', Comment = 'Generated from the PromotedActionCategories property index 3.';
ShowAs = SplitButton;
actionref("Show Document_Promoted"; "Show Document")
{
}
actionref(ShowDocumentAttachment_Promoted; ShowDocumentAttachment)
{
}
}
group(Category_ApplyEntries)
{
Caption = 'Apply Entries';
ShowAs = SplitButton;
actionref("Apply Entries_Promoted"; "Apply Entries")
{
}
actionref(UnapplyEntries_Promoted; UnapplyEntries)
{
}
}
actionref("&Navigate_Promoted"; "&Navigate")
{
}
actionref(ReverseTransaction_Promoted; ReverseTransaction)
{
}
actionref("Create Reminder_Promoted"; "Create Reminder")
{
}
actionref("Create Finance Charge Memo_Promoted"; "Create Finance Charge Memo")
{
}
}
group(Category_Category5)
{
Caption = 'Entry', Comment = 'Generated from the PromotedActionCategories property index 4.';
actionref(Dimensions_Promoted; Dimensions)
{
}
actionref(SetDimensionFilter_Promoted; SetDimensionFilter)
{
}
actionref(AppliedEntries_Promoted; AppliedEntries)
{
}
actionref("Reminder/Fin. Charge Entries_Promoted"; "Reminder/Fin. Charge Entries")
{
}
actionref("Detailed &Ledger Entries_Promoted"; "Detailed &Ledger Entries")
{
}
separator(Navigate_Separator)
{
}
actionref(Customer_Promoted; Customer)
{
}
}
group(Category_Category6)
{
Caption = 'Navigate', Comment = 'Generated from the PromotedActionCategories property index 5.';
}
group(Category_Report)
{
Caption = 'Report', Comment = 'Generated from the PromotedActionCategories property index 2.';
}
}
}
analysisviews
{
analysisview("Aged accounts by month")
{
Caption = 'Aged accounts by month';
DefinitionFile = './Sales/Receivables/Aged accounts by month.analysis.json';
ToolTip = 'See what your customers owe you, for example, broken down into time intervals for when amounts are due.';
}
analysisview("Customer sales by volume")
{
Caption = 'Customer sales by volume';
DefinitionFile = './Sales/Receivables/Customer sales by volume.analysis.json';
ToolTip = 'Get an overview of the customers that purchase the most, or that owe the most.';
}
}
trigger OnAfterGetCurrRecord()
var
IncomingDocument: Record "Incoming Document";
begin
HasIncomingDocument := IncomingDocument.PostedDocExists(Rec."Document No.", Rec."Posting Date");
HasDocumentAttachment := Rec.HasPostedDocAttachment();
end;
trigger OnAfterGetRecord()
begin
StyleTxt := Rec.SetStyle();
end;
trigger OnInit()
begin
AmountVisible := true;
end;
trigger OnModifyRecord(): Boolean
begin
CODEUNIT.Run(CODEUNIT::"Cust. Entry-Edit", Rec);
exit(false);
end;
trigger OnOpenPage()
begin
SetControlVisibility();
SetDimVisibility();
if (Rec.GetFilters() <> '') and not Rec.Find() then
if Rec.FindFirst() then;
end;
var
CalcRunningCustBalance: Codeunit "Calc. Running Cust. Balance";
Navigate: Page Navigate;
DimensionSetIDFilter: Page "Dimension Set ID Filter";
HasIncomingDocument: Boolean;
HasDocumentAttachment: Boolean;
AmountVisible: Boolean;
DebitCreditVisible: Boolean;
CustNameVisible: Boolean;
ExportToPaymentFileConfirmTxt: Label 'Editing the Exported to Payment File field will change the payment suggestions in the Payment Journal. Edit this field only if you must correct a mistake.\Do you want to continue?';
NoReminderCreatedErr: Label 'No reminder was created. Check the reminder terms for the customer.';
NoFinanceChargeMemoHeaderCreatedErr: Label 'No finance charge memo was created. Check the finance charge terms for the customer.';
protected var
Dim1Visible: Boolean;
Dim2Visible: Boolean;
Dim3Visible: Boolean;
Dim4Visible: Boolean;
Dim5Visible: Boolean;
Dim6Visible: Boolean;
Dim7Visible: Boolean;
Dim8Visible: Boolean;
StyleTxt: Text;
local procedure SetDimVisibility()
var
DimensionManagement: Codeunit DimensionManagement;
begin
DimensionManagement.UseShortcutDims(Dim1Visible, Dim2Visible, Dim3Visible, Dim4Visible, Dim5Visible, Dim6Visible, Dim7Visible, Dim8Visible);
end;
local procedure SetControlVisibility()
var
GLSetup: Record "General Ledger Setup";
SalesSetup: Record "Sales & Receivables Setup";
begin
GLSetup.Get();
AmountVisible := not (GLSetup."Show Amounts" = GLSetup."Show Amounts"::"Debit/Credit Only");
DebitCreditVisible := not (GLSetup."Show Amounts" = GLSetup."Show Amounts"::"Amount Only");
SalesSetup.Get();
CustNameVisible := SalesSetup."Copy Customer Name to Entries";
end;
local procedure SetChangeLogEntriesFilter(var ChangeLogEntry: Record "Change Log Entry")
begin
ChangeLogEntry.SetRange("Table No.", Database::"Cust. Ledger Entry");
ChangeLogEntry.SetRange("Primary Key Field 1 Value", Format(Rec."Entry No.", 0, 9));
end;
}