pageFinanceofficial - Microsoftderived - from the source, no model text

Page 39 "General Journal"

Base Application · Microsoft.Finance.GeneralLedger.Journal

Across versions

  1. BC23-24present
  2. BC251 procedures removed
  3. BC26unchanged
  4. BC27declaration changed
  5. BC28-30unchanged

Neighbourhood 37 connected objects and pages

Table 81 "Gen. Journal Line" (relates to)Gen. Journal LinePage extension 20241 "Gen Journal Ext" (extended by)Gen Journal ExtPage extension 4854 "AutoAcc General Journal" (extended by)AutoAcc General JournalPage extension 6224 "Sust. General Journal" (extended by)Sust. General JournalPage extension 6799 "Withholding General Journal" (extended by)Withholding General JournalPage extension 7058 "WHT General Journal" (extended by)WHT General JournalCodeunit 9080 "Journal Errors Mgt." (event subscribers, 3 links)Journal Errors Mgt.Codeunit 1535 "Approvals Mgmt." (calls, 11 links)Approvals Mgmt.Codeunit 230 "GenJnlManagement" (calls, 11 links)Codeunit 4030 "Client Type Management" (calls, 4 links)Client Type ManagementPage 1795 "Data Migration Overview Part" (calls, 3 links)Data Migration Overview PartPage 1799 "Data Migration Overview" (calls, 3 links)Data Migration OverviewCodeunit 1281 "Update Currency Exchange Rates" (calls, 2 links)Codeunit 1520 "Workflow Event Handling" (calls, 2 links)Workflow Event HandlingCodeunit 1543 "Workflow Webhook Management" (calls, 2 links)Workflow Webhook ManagementCodeunit 308 "No. Series - Batch" (calls, 2 links)Codeunit 1501 "Workflow Management" (calls)Workflow ManagementCodeunit 1563 "Privacy Notice" (calls)Codeunit 1660 "Payroll Management" (calls)Codeunit 2675 "Allocation Account Mgt." (calls)Codeunit 27 "Confirm Management" (calls)Codeunit 408 "DimensionManagement" (calls)Codeunit 457 "Environment Information" (calls)Codeunit 6400 "Flow Service Management" (calls)Codeunit 6723 "Server Setting" (calls)Codeunit 799 "VAT Reporting Date Mgt" (calls)Codeunit 9079 "Background Error Handling Mgt." (calls)Codeunit 9080 "Journal Errors Mgt." (calls)Codeunit 980 "Payment Registration Mgt." (calls)Page 344 "Navigate" (calls)Accounting and bookkeeping (Learn pages)Change VAT Setup in Journals (Learn pages)Let Business Central suggest values (Learn pages)Record expenses or income directly in G/L (Learn pages)Set up and post employee withholding tax (Learn pages)Transfer bank funds (Learn pages)Working with general journals to post directly to G/L (Learn pages)

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.Journal · captioned “General Journals” · BC23-30 · source at ea08af5e · facts from BC29

Properties

Property Value
Caption General Journals
SourceTable Gen. Journal Line
PageType Worksheet
UsageCategory Tasks
ApplicationArea Basic, Suite

Fields on this page

Layout controls in source order, grouped by the container they sit in. Shows: the table field a control is bound to (or its expression as written); ToolTip: the control’s own, else the bound field’s (marked).

Group Control Shows ToolTip
Control120 Batch Name CurrentJnlBatchName Specifies the name of the journal batch.
Document No. CurrentDocNo Specifies a document number for the journal line.
Posting Date CurrentPostingDate Specifies the date of the transaction in the general ledger, and thereby the fiscal year and period.
Currency Code CurrentCurrencyCode Specifies the code of the currency for the amounts on the journal line.
Approval Status GenJnlBatchApprovalStatus Specifies the approval status for general journal batch.
Control1 Posting Date Posting Date Specifies the date of the transaction in the general ledger, and thereby the fiscal year and period.
VAT Reporting Date VAT Reporting Date Specifies the date used to include entries on VAT reports in a VAT period. This is either the date that the document was created or posted, depending on your setting on the General Ledger Setup page.
Document Date Document Date Specifies the date on the document that provides the basis for the entry on the journal line.
Document Type Document Type Specifies the type of document that the entry on the journal line is. from the table field
Document No. Document No. Specifies a document number for the journal line. from the table field
Incoming Document Entry No. Incoming Document Entry No. Specifies the number of the incoming document that this general journal line is created for. from the table field
External Document No. External Document No. Specifies a document number that refers to the customer’s or vendor’s numbering system. from the table field
Applies-to Ext. Doc. No. Applies-to Ext. Doc. No. Specifies the external document number that will be exported in the payment file. from the table field
Account Type Account Type Specifies the type of account that the entry on the journal line will be posted to. from the table field
Account No. Account No. Specifies the account number that the entry on the journal line will be posted to. from the table field
Account Name AccName Specifies the account name that the entry on the journal line will be posted to.
Spend Request No. Spend Request No. Specifies the spend request that this journal line relates to. from the table field
Approval Status GenJnlLineApprovalStatus Specifies the approval status for general journal line.
Description Description Specifies a description of the entry. from the table field
Payer Information Payer Information Specifies payer information that is imported with the bank statement file. from the table field
Transaction Information Transaction Information Specifies transaction information that is imported with the bank statement file. from the table field
Business Unit Code Business Unit Code Specifies the code of the business unit that the entry derives from in a consolidated company. from the table field
Salespers./Purch. Code Salespers./Purch. Code Specifies the salesperson or purchaser who is linked to the journal line. from the table field
Campaign No. Campaign No. Specifies the number of the campaign the journal line is linked to.
Currency Code Currency Code Specifies the code of the currency for the amounts on the journal line. from the table field
EU 3-Party Trade EU 3-Party Trade Specifies whether the entry was part of a 3-party trade. If it was, there is a check mark in the field. from the table field
Gen. Posting Type Gen. Posting Type Specifies the general posting type that will be used when you post the entry on this journal line.
Gen. Bus. Posting Group Gen. Bus. Posting Group 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. from the table field
Gen. Prod. Posting Group Gen. Prod. Posting Group 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. from the table field
VAT Bus. Posting Group VAT Bus. Posting Group Specifies the VAT business posting group code that will be used when you post the entry on the journal line.
VAT Prod. Posting Group VAT Prod. Posting Group Specifies the VAT product posting group. Links business transactions made for the item, resource, or G/L account with the general ledger, to account for VAT amounts resulting from trade with that record.
Posting Group Posting Group Specifies the posting group that will be used in posting the journal line.The field is used only if the account type is either customer or vendor. from the table field
Quantity Quantity Specifies the quantity of items to be included on the journal line. from the table field
Amount Amount Specifies the total amount (including VAT) that the journal line consists of. from the table field
Amount (LCY) Amount (LCY) Specifies the total amount in local currency (including VAT) that the journal line consists of.
Debit Amount Debit Amount Specifies the total amount (including VAT) that the journal line consists of, if it is a debit amount.
Credit Amount Credit Amount Specifies the total amount (including VAT) that the journal line consists of, if it is a credit amount.
VAT Amount VAT Amount Specifies the amount of VAT included in the total amount.
VAT Difference VAT Difference Specifies the difference between the calculate VAT amount and the VAT amount that you have entered manually.
Bal. VAT Amount Bal. VAT Amount Specifies the amount of Bal. VAT included in the total amount. from the table field
Bal. VAT Difference Bal. VAT Difference Specifies the difference between the calculate VAT amount and the VAT amount that you have entered manually. from the table field
Bal. Account Type Bal. Account Type Specifies the code for the balancing account type that should be used in this journal line.
Bal. Account No. Bal. Account No. Specifies the number of the general ledger, customer, vendor, or bank account to which a balancing entry for the journal line will posted (for example, a cash account for cash purchases).
Bal. Gen. Posting Type Bal. Gen. Posting Type Specifies the general posting type associated with the balancing account that will be used when you post the entry on the journal line. from the table field
Bal. Gen. Bus. Posting Group Bal. Gen. Bus. Posting Group Specifies the general business posting group code associated with the balancing account that will be used when you post the entry. from the table field
Bal. Gen. Prod. Posting Group Bal. Gen. Prod. Posting Group Specifies the general product posting group code associated with the balancing account that will be used when you post the entry. from the table field
Allocation Account No. Selected Alloc. Account No. Specifies the allocation account number that will be used to distribute the amounts during the posting process. from the table field
Deferral Code Deferral Code Specifies the deferral template that governs how expenses or revenue are deferred to the different accounting periods when the expenses or revenue were incurred. from the table field
Job Queue Status Job Queue Status Specifies the status of a job queue entry or task that handles the posting of general journals. from the table field
Bal. VAT Bus. Posting Group Bal. VAT Bus. Posting Group Specifies the code of the VAT business posting group that will be used when you post the entry on the journal line. from the table field
Bal. VAT Prod. Posting Group Bal. VAT Prod. Posting Group Specifies the code of the VAT product posting group that will be used when you post the entry on the journal line. from the table field
Bill-to/Pay-to No. Bill-to/Pay-to No. Specifies the number of the bill-to customer or pay-to vendor that the entry is linked to. from the table field
Ship-to/Order Address Code Ship-to/Order Address Code Specifies the address code of the ship-to customer or order-from vendor that the entry is linked to. from the table field
Payment Terms Code Payment Terms Code Specifies the code that represents the payments terms that apply to the entry on the journal line.
Applied Automatically Applied Automatically Specifies that the general journal line has been automatically applied with a matching payment using the Apply Automatically function. from the table field
Applied Rec.IsApplied() Specifies if the record on the line has been applied.
Applies-to Doc. Type Applies-to Doc. Type Specifies the type of the posted document that this document or journal line will be applied to when you post, for example to register payment. from the table field
Applies-to Doc. No. Applies-to Doc. No. Specifies the number of the posted document that this document or journal line will be applied to when you post, for example to register payment. from the table field
Applies-to ID Applies-to ID Specifies the ID of entries that will be applied to when you choose the Apply Entries action. from the table field
On Hold On Hold Specifies if the journal line has been invoiced, and you execute the payment suggestions batch job, or you create a finance charge memo or reminder.
Bank Payment Type Bank Payment Type Specifies the code for the payment type to be used for the entry on the payment journal line.
Reason Code Reason Code Specifies the reason code that has been entered on the journal lines.
Correction Correction Specifies the entry as a corrective entry. You can use the field if you need to post a corrective entry to an account. from the table field
Comment Comment Specifies a comment about the activity on the journal line. Note that the comment is not carried forward to posted entries. from the table field
Direct Debit Mandate ID Direct Debit Mandate ID Specifies the identification of the direct-debit mandate that is being used on the journal lines to process a direct debit collection. from the table field
Shortcut Dimension 1 Code Shortcut Dimension 1 Code Specifies the code for Shortcut Dimension 1, which is one of two global dimension codes that you set up in the General Ledger Setup window. from the table field
Shortcut Dimension 2 Code Shortcut Dimension 2 Code Specifies the code for Shortcut Dimension 2, which is one of two global dimension codes that you set up in the General Ledger Setup window. from the table field
ShortcutDimCode3 ShortcutDimCode[3] —
ShortcutDimCode4 ShortcutDimCode[4] —
ShortcutDimCode5 ShortcutDimCode[5] —
ShortcutDimCode6 ShortcutDimCode[6] —
ShortcutDimCode7 ShortcutDimCode[7] —
ShortcutDimCode8 ShortcutDimCode[8] —
Number of Lines NumberOfJournalRecords NumberOfRecords Specifies the number of lines in the current journal batch.
Account Name AccName AccName Specifies the name of the account.
Bal. Account Name Bal. Account Name BalAccName Specifies the name of the balancing account that has been entered on the journal line.
Total Debit Total Debit GetTotalDebitAmt() Specifies the total debit amount in the general journal.
Total Credit Total Credit GetTotalCreditAmt() Specifies the total credit amount in the general journal.
Balance Balance Balance Specifies the balance that has accumulated in the general journal on the line where the cursor is.
Total Balance Total Balance TotalBalance Specifies the total balance in the general journal.
FactBoxes JournalErrorsFactBox part Page 9121 “Journal Errors Factbox” —
JournalLineDetails part Page 9120 “Journal Line Details FactBox” —
Control1900919607 part Page 699 “Dimension Set Entries FactBox” —
IncomingDocAttachFactBox part Page 193 “Incoming Doc. Attach. FactBox” —
Batch Workflows part Page 1528 “Workflow Status FactBox” —
Line Workflows part Page 1528 “Workflow Status FactBox” —

Actions

Group Action ToolTip Runs
Line Dimensions 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.
Account Card View or change detailed information about the record on the document or journal line. Codeunit 15 “Gen. Jnl.-Show Card”
Ledger Entries View the history of transactions that have been posted for the selected record. Codeunit 14 “Gen. Jnl.-Show Entries”
Navigation Approvals View a list of the records that are waiting to be approved. For example, you can see who requested the record to be approved, when it was sent, and when it is due to be approved.
Functions Renumber Document Numbers Resort the numbers in the Document No. column to avoid posting errors because the document numbers are not in sequence. Entry applications and line groupings are preserved.
Insert Conv. LCY Rndg. Lines Insert a rounding correction line in the journal. This rounding correction line will balance in LCY when amounts in the foreign currency also balance. You can then post the journal. Codeunit 407 “Adjust Gen. Journal Balance”
Get Standard Journals Select a standard general journal to be inserted.
Save as Standard Journal Define the journal lines that you want to use later as a standard journal before you post the journal.
Test Report View a test report so that you can find and correct any errors before you perform the actual posting of the journal or document.
Post Finalize the document or journal by posting the amounts and quantities to the related accounts in your company books.
Preview Posting Review the different types of entries that will be created when you post the document or journal.
Post and Print Finalize and prepare to print the document or journal. The values and quantities are posted to the related accounts. A report request window where you can specify what to include on the print-out.
Remove From Job Queue Remove the scheduled processing of this record from the job queue.
Deferral Schedule View or edit the deferral schedule that governs how expenses or revenue are deferred to different accounting periods when the journal line is posted.
Redistribute Account Allocations Use this action to redistribute the account allocations for this line.
Generate lines from Allocation Account Line Use this action to replace the Allocation Account line with the actual lines that would be generated from the line itself.
Incoming Document View Incoming Document View any incoming document records and file attachments that exist for the entry or document.
Select Incoming Document Select an incoming document record and file attachment that you want to link to the entry or document.
Create Incoming Document from File Create an incoming document record by selecting a file to attach, and then link the incoming document record to the entry or document.
Remove Incoming Document Remove any incoming document records and file attachments.
Bank Import Bank Statement Import electronic bank statements from your bank to populate with data about actual bank transactions.
Bank Statement Details View the content of the imported bank statement file, such as account number, posting date, and amounts. Page 1221 “Bank Statement Line Details”
Reconcile View the balances on bank accounts that are marked for reconciliation, usually liquid accounts.
Application Apply Entries Apply the payment amount on a journal line to a sales or purchase document that was already posted for a customer or vendor. This updates the amount on the posted document, and the document can either be partially paid, or closed as paid or refunded. Codeunit 225 “Gen. Jnl.-Apply”
Apply Automatically Apply payments to their related open entries based on data matches between bank transaction text and entry information. Codeunit 1250 “Match General Journal Lines”
Map Text to Account Associate text on payments with debit, credit, and balancing accounts, so payments are posted to the accounts when you post payments. The payments are not applied to invoices or credit memos, and are suited for recurring cash receipts or expenses.
Payroll Import Payroll File Import a payroll file that you select.
Import Payroll Transactions Add journal lines based on transactions from your payroll service provider.
Send Approval Request Journal Batch Send all journal lines for approval, also those that you may not see because of filters.
Selected Journal Lines Send selected journal lines for approval.
Cancel Approval Request Journal Batch Cancel sending all journal lines for approval, also those that you may not see because of filters.
Selected Journal Lines Cancel sending selected journal lines for approval.
Power Automate Create approval flow Create a new flow in Power Automate from a list of relevant flow templates.
Approval Approve Approve the requested changes.
Reject Reject the approval request.
Delegate Delegate the approval to a substitute approver.
Comments View or add comments for the record.
Prepare journal G/L Accounts Opening balance Creates general journal line per G/L account to enable manual entry of G/L account open balances during the setup of a new company
Customers Opening balance Creates general journal line per Customer to enable manual entry of Customer open balances during the setup of a new company
Vendors Opening balance Creates a general journal line for each vendor. This lets you manually enter open balances for vendors when you set up a new company.
Page Edit in Excel Send the data in the journal to an Excel file for analysis or editing.
Previous Doc No. Navigate to previous document number for current batch.
Next Doc No. Navigate to next document number for current batch.
Show More Columns View all available fields. Fields not frequently used are currently hidden.
Show Fewer Columns Hide fields that are not frequently used.
New Document Number Creates a new document number.
Issues Show Lines with Issues View a list of journal lines that have issues before you post the journal.
Show All Lines View all journal lines, including lines with and without issues.

Events published

  • OnAfterValidateShortcutDimCode(var GenJournalLine: Record "Gen. Journal Line"; var ShortcutDimCode: array[8] of Code[20]; DimIndex: Integer) (integration): Integration event raised after validating shortcut dimension code input. Enables custom processing after dimension validation.
  • OnAfterValidateCurrentJnlBatchName(CurrentJnlBatchName: Code[10]) (integration): Integration event raised after validating the current journal batch name. Enables custom processing after batch name validation.
  • OnBeforeOnInit(var GenJnlLine: Record "Gen. Journal Line") (integration): Integration event raised before initializing the general journal page. Enables custom processing before page initialization and general journal line setup.
  • OnBeforeOpenJournalFromBatch(var GenJournalLine: Record "Gen. Journal Line"; var Result: Boolean; var IsHandled: Boolean) (integration): Integration event raised before opening the journal from a specific batch. Enables custom logic to control journal opening behavior and result handling.
  • OnBeforeSelectTemplate(var GenJournalLine: Record "Gen. Journal Line"; var GenJnlManagement: Codeunit GenJnlManagement; var IsHandled: Boolean) (integration): Integration event raised before selecting the journal template for the general journal page. Enables custom logic to control template selection behavior and override standard selection.
  • OnBeforeSetDataForSimpleModeOnPost(var GenJournalLine: Record "Gen. Journal Line"; IsSimplePage: Boolean; var IsHandled: Boolean) (integration): Integration event raised before setting data for simple mode during posting operations. Enables custom processing before simplified posting mode configuration and data preparation.
  • OnLookupCurrentJnlBatchNameOnAfterSetDataForSimpleModeOnBatchChange(CurrentJnlBatchName: Code[10]) (integration): Integration event raised after setting data for simple mode during batch change operations. Enables custom processing after batch lookup and simple mode data configuration.
  • OnOpenPageOnAfterAssignCurrentJnlBatchName(var CurrentJnlBatchName: Code[10]) (integration): Integration event raised after assigning the current journal batch name during page opening. Enables custom processing after batch name assignment and page initialization.
  • OnOpenPageOnBeforeGetLastViewedJournalBatchName(var CurrentJnlBatchName: Code[10]; var GenJnlManagement: Codeunit GenJnlManagement) (integration): Integration event raised before retrieving the last viewed journal batch name during page opening. Enables custom logic to override standard batch name retrieval and provide custom batch selection.
  • OnAfterEnableApplyEntriesAction(GenJournalLine: Record "Gen. Journal Line"; var ApplyEntriesActionEnabled: Boolean) (integration): Integration event raised after determining whether the apply entries action should be enabled. Enables custom logic to control the availability of the apply entries functionality.
  • OnAccountNoValidateOnAfterSetUserInteractions(var Balance: Decimal; var TotalBalance: Decimal; var ShowBalance: Boolean; var ShowTotalBalance: Boolean; var BalanceVisible: Boolean; var TotalBalanceVisible: Boolean; var NumberOfRecords: Integer) (integration): Integration event raised after setting user interactions during account number validation. Enables custom modification of balance display settings and user interface interaction controls.
  • OnBeforeUpdateBalance(var GenJournalLine: Record "Gen. Journal Line"; xGenJournalLine: Record "Gen. Journal Line"; var Balance: Decimal; var TotalBalance: Decimal; var ShowBalance: Boolean; var ShowTotalBalance: Boolean; var BalanceVisible: Boolean; var TotalBalanceVisible: Boolean; var NumberOfRecords: Integer; var IsHandled: Boolean) (integration): Integration event raised before updating balance calculations and display settings. Enables custom logic to override standard balance update processing and control user interface visibility.

Trigger event subscribers

Procedures

  • UpdateBalance() (protected)
  • SetUserInteractions(): Sets user interface interaction styles and appearance based on the current journal line status.
  • SetApprovalState(RecordId: RecordId; OpenApprovalEntriesOnJournalBatchExist: Boolean; LocalCanRequestFlowApprovalForBatch: Boolean; var LocalCanCancelFlowApprovalForLine: Boolean; var OpenApprovalEntriesExistForCurrentUser: Boolean; var OpenApprovalEntriesOnJournalLineExist: Boolean; var OpenApprovalEntriesOnBatchOrCurrentJournalLineExist: Boolean; var CanCancelApprovalForJournalLine: Boolean; var LocalCanRequestFlowApprovalForBatchAndCurrentLine: Boolean) (internal)
  • SetApprovalStateForBatch(GenJournalBatch: Record "Gen. Journal Batch"; GenJournalLine: Record "Gen. Journal Line"; var OpenApprovalEntriesExistForCurrentUser: Boolean; var OpenApprovalEntriesOnJournalBatchExist: Boolean; var OpenApprovalEntriesOnBatchOrAnyJournalLineExist: Boolean; var CanCancelApprovalForJournalBatch: Boolean; var LocalCanRequestFlowApprovalForBatch: Boolean; var LocalCanCancelFlowApprovalForBatch: Boolean; var LocalCanRequestFlowApprovalForBatchAndAllLines: Boolean; var LocalApprovalEntriesExistSentByCurrentUser: Boolean; var EnabledGeneralJournalBatchWorkflowsExist: Boolean; var EnabledGeneralJournalLineWorkflowsExist: Boolean) (internal)
  • NewDocumentNo(): Generates and assigns a new document number to the current journal line based on the batch’s number series.

Plus 24 local procedures.

Triggers

OnAfterGetCurrRecord, OnAfterGetRecord, OnInit, OnInsertRecord, OnModifyRecord, OnNewRecord, OnOpenPage

Relations

Extended by

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.

Called by

Recent changes

Documented on Microsoft Learn

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: "page", object_name: "General Journal"), then bcatlas_get_procedure_body or bcatlas_get_neighbors on the returned id.

Evidence 8 sources