Codeunit CheckManagement
Manages check printing, voiding, and electronic payment processing for bank accounts. Handles complete check lifecycle from creation through financial voiding and positive pay export.
Remarks
Integrates with Gen. Jnl.-Post Line, Bank Account Ledger Entry, and vendor/customer payment applications. Supports physical check printing, electronic payments, and automated reconciliation processes. Extensible through OnInsertCheckOnBeforeCheckLedgEntryInsert, OnBeforeVoidCheck, and related events.
Properties
| Name | Value |
|---|---|
| Permissions | TableData "Cust. Ledger Entry" = rm, TableData "Vendor Ledger Entry" = rm, TableData "Bank Account Ledger Entry" = rm, TableData "Check Ledger Entry" = rim, TableData "Employee Ledger Entry" = rm |
Methods
InsertCheck
Creates a new check ledger entry with sequential numbering and duplicate validation. Validates check number uniqueness within the bank account before insertion.
procedure InsertCheck(var CheckLedgEntry: Record "Check Ledger Entry", RecordIdToPrint: RecordId)
Parameters
| Name | Type | Description |
|---|---|---|
| CheckLedgEntry | Table Microsoft.Bank.Check."Check Ledger Entry" |
Check ledger entry record to insert with initial data |
| RecordIdToPrint | RecordId |
RecordID reference for check printing operations |
VoidCheck
Voids a check by creating reversing entries and updating check ledger entry status. Handles currency conversion and validates payment document types.
procedure VoidCheck(var GenJnlLine: Record "Gen. Journal Line")
Parameters
| Name | Type | Description |
|---|---|---|
| GenJnlLine | Table Microsoft.Finance.GeneralLedger.Journal."Gen. Journal Line" |
General journal line containing check information to void |
FinancialVoidCheck
Performs financial voiding of a posted check by creating offsetting journal entries. Unapplies vendor/customer invoices and reverses all financial impacts while maintaining audit trail.
procedure FinancialVoidCheck(var CheckLedgEntry: Record "Check Ledger Entry")
Parameters
| Name | Type | Description |
|---|---|---|
| CheckLedgEntry | Table Microsoft.Bank.Check."Check Ledger Entry" |
Check ledger entry to financially void |
GenJournalLineGetSystemIdFromRecordId
procedure GenJournalLineGetSystemIdFromRecordId(GenJournalLineRecordId: RecordId): Guid
Parameters
| Name | Type | Description |
|---|---|---|
| GenJournalLineRecordId | RecordId |
Returns
| Type | Description |
|---|---|
| Guid |
ProcessElectronicPayment
Processes electronic payment transmission or voiding based on specified operation type. Manages electronic payment status updates and data exchange integration.
procedure ProcessElectronicPayment(var GenJournalLine: Record "Gen. Journal Line", WhichProcess: Option)
Parameters
| Name | Type | Description |
|---|---|---|
| GenJournalLine | Table Microsoft.Finance.GeneralLedger.Journal."Gen. Journal Line" |
General journal line containing electronic payment information |
| WhichProcess | Option |
Process type: Void or Transmit electronic payment |
Events
OnAfterCalcAmountToVoid
Integration event raised after calculating the total amount to void for a check. Enables custom calculation logic or adjustments to the void amount.
[IntegrationEvent(False,False)]
local procedure OnAfterCalcAmountToVoid(var CheckLedgerEntry: Record "Check Ledger Entry", var AmountToVoid: Decimal)
Parameters
| Name | Type | Description |
|---|---|---|
| CheckLedgerEntry | Table Microsoft.Bank.Check."Check Ledger Entry" |
Check ledger entry being processed for voiding |
| AmountToVoid | Decimal |
Calculated amount to void (can be modified by subscribers) |
Remarks
Raised from CalcAmountToVoid procedure after summing all related check entries.
OnAfterVoidCheck
Integration event raised after successfully voiding a check entry. Enables custom processing or logging after the void operation completes.
[IntegrationEvent(False,False)]
local procedure OnAfterVoidCheck(var GenJnlLine: Record "Gen. Journal Line", var CheckLedgerEntry: Record "Check Ledger Entry")
Parameters
| Name | Type | Description |
|---|---|---|
| GenJnlLine | Table Microsoft.Finance.GeneralLedger.Journal."Gen. Journal Line" |
General journal line used for the void operation |
| CheckLedgerEntry | Table Microsoft.Bank.Check."Check Ledger Entry" |
Check ledger entry that was voided |
Remarks
Raised from VoidCheck procedure after updating the check status to Voided.
OnAfterFinancialVoidCheck
Integration event raised after completing a financial void operation on a check. Enables custom processing or notifications after the check has been financially voided.
[IntegrationEvent(False,False)]
local procedure OnAfterFinancialVoidCheck(var CheckLedgerEntry: Record "Check Ledger Entry")
Parameters
| Name | Type | Description |
|---|---|---|
| CheckLedgerEntry | Table Microsoft.Bank.Check."Check Ledger Entry" |
Check ledger entry that was financially voided |
Remarks
Raised from FinancialVoidCheck procedure after all void entries are posted and analysis view is updated.
OnAfterFinancialVoidCheckPreValidation
Integration event raised after validating prerequisites for financial void operation. Enables additional validation or processing after standard void validation completes.
[IntegrationEvent(False,False)]
local procedure OnAfterFinancialVoidCheckPreValidation(CheckLedgerEntry: Record "Check Ledger Entry", BankAccountLedgerEntry: Record "Bank Account Ledger Entry")
Parameters
| Name | Type | Description |
|---|---|---|
| CheckLedgerEntry | Table Microsoft.Bank.Check."Check Ledger Entry" |
Check ledger entry being validated for void |
| BankAccountLedgerEntry | Table Microsoft.Bank.Ledger."Bank Account Ledger Entry" |
Associated bank account ledger entry |
Remarks
Raised from FinancialVoidCheckPreValidation procedure after verifying transaction balance is zero.
OnBeforeVoidCheck
Integration event raised before starting a check void operation. Enables custom validation or processing before the void operation begins.
[IntegrationEvent(False,False)]
local procedure OnBeforeVoidCheck(var GenJnlLine: Record "Gen. Journal Line", var IsHandled: Boolean)
Parameters
| Name | Type | Description |
|---|---|---|
| GenJnlLine | Table Microsoft.Finance.GeneralLedger.Journal."Gen. Journal Line" |
General journal line for the check being voided |
| IsHandled | Boolean |
Set to true to skip standard void processing |
Remarks
Raised from VoidCheck procedure before any void processing begins.
OnBeforeMarkCheckEntriesVoid
Integration event raised before marking check ledger entries as void. Enables custom logic for handling check entry void marking.
[IntegrationEvent(False,False)]
local procedure OnBeforeMarkCheckEntriesVoid(var OriginalCheckLedgerEntry: Record "Check Ledger Entry", VoidDate: Date, var IsHandled: Boolean)
Parameters
| Name | Type | Description |
|---|---|---|
| OriginalCheckLedgerEntry | Table Microsoft.Bank.Check."Check Ledger Entry" |
Original check ledger entry being marked as voided |
| VoidDate | Date |
Date when the void operation is performed |
| IsHandled | Boolean |
Set to true to skip standard void marking logic |
Remarks
Raised from MarkCheckEntriesVoid procedure before updating entry status to Financially Voided.
OnBeforeFinancialVoidCheck
Integration event raised before starting a financial void operation on a check. Enables custom validation or alternative void processing.
[IntegrationEvent(False,False)]
local procedure OnBeforeFinancialVoidCheck(var CheckLedgerEntry: Record "Check Ledger Entry", var IsHandled: Boolean)
Parameters
| Name | Type | Description |
|---|---|---|
| CheckLedgerEntry | Table Microsoft.Bank.Check."Check Ledger Entry" |
Check ledger entry being financially voided |
| IsHandled | Boolean |
Set to true to skip standard financial void processing |
Remarks
Raised from FinancialVoidCheck procedure before performing void validation and processing.
OnBeforeVoidCheckGenJnlLine2Modify
Integration event raised before modifying a general journal line during check void operation. Enables custom field updates or validation before journal line modification.
[IntegrationEvent(False,False)]
local procedure OnBeforeVoidCheckGenJnlLine2Modify(var GenJournalLine2: Record "Gen. Journal Line", GenJournalLine: Record "Gen. Journal Line")
Parameters
| Name | Type | Description |
|---|---|---|
| GenJournalLine2 | Table Microsoft.Finance.GeneralLedger.Journal."Gen. Journal Line" |
General journal line being modified |
| GenJournalLine | Table Microsoft.Finance.GeneralLedger.Journal."Gen. Journal Line" |
Original general journal line for reference |
Remarks
Raised from VoidCheck procedure before setting voided status on journal line.
OnMarkCheckEntriesVoidOnBeforeRelatedCheckLedgerEntry2Modify
Integration event raised before modifying related check ledger entries during void operation. Enables custom processing of related check entries before they are marked as voided.
[IntegrationEvent(False,False)]
local procedure OnMarkCheckEntriesVoidOnBeforeRelatedCheckLedgerEntry2Modify(var CheckLedgerEntry: Record "Check Ledger Entry", var VoidDate: Date)
Parameters
| Name | Type | Description |
|---|---|---|
| CheckLedgerEntry | Table Microsoft.Bank.Check."Check Ledger Entry" |
Related check ledger entry being modified |
| VoidDate | Date |
Date when the void operation is performed |
Remarks
Raised from MarkCheckEntriesVoid procedure when processing related check entries with same check number.
OnMarkCheckEntriesVoidOnBeforeOriginalCheckLedgerEntryModify
Integration event raised before modifying the original check ledger entry during void operation. Enables custom field updates or validation before the original check entry is marked as voided.
[IntegrationEvent(False,False)]
local procedure OnMarkCheckEntriesVoidOnBeforeOriginalCheckLedgerEntryModify(var CheckLedgerEntry: Record "Check Ledger Entry", var VoidDate: Date)
Parameters
| Name | Type | Description |
|---|---|---|
| CheckLedgerEntry | Table Microsoft.Bank.Check."Check Ledger Entry" |
Original check ledger entry being modified |
| VoidDate | Date |
Date when the void operation is performed |
Remarks
Raised from MarkCheckEntriesVoid procedure before setting entry status to Financially Voided.
OnVoidCheckOnAfterGenJnlLine2Modify
Integration event raised after modifying a general journal line during check void operation. Enables custom processing or logging after journal line has been updated with void status.
[IntegrationEvent(False,False)]
local procedure OnVoidCheckOnAfterGenJnlLine2Modify(var GenJournalLine2: Record "Gen. Journal Line", GenJournalLine: Record "Gen. Journal Line")
Parameters
| Name | Type | Description |
|---|---|---|
| GenJournalLine2 | Table Microsoft.Finance.GeneralLedger.Journal."Gen. Journal Line" |
General journal line that was modified |
| GenJournalLine | Table Microsoft.Finance.GeneralLedger.Journal."Gen. Journal Line" |
Original general journal line for reference |
Remarks
Raised from VoidCheck procedure after marking journal line as voided.
OnVoidCheckOnAfterCheckLedgEntry2SetFilters
Integration event raised after setting filters on check ledger entry during void operation. Enables custom filter modification or additional processing on filtered check entries.
[IntegrationEvent(False,False)]
local procedure OnVoidCheckOnAfterCheckLedgEntry2SetFilters(var CheckLedgerEntry: Record "Check Ledger Entry", GenJournalLine: Record "Gen. Journal Line")
Parameters
| Name | Type | Description |
|---|---|---|
| CheckLedgerEntry | Table Microsoft.Bank.Check."Check Ledger Entry" |
Check ledger entry with filters applied |
| GenJournalLine | Table Microsoft.Finance.GeneralLedger.Journal."Gen. Journal Line" |
General journal line context for the void operation |
Remarks
Raised from VoidCheck procedure after filtering check ledger entries for void processing.
OnFinancialVoidCheckOnBeforePostCust
Integration event raised before posting customer entries during financial void operation. Enables custom processing or validation before customer ledger entries are posted.
[IntegrationEvent(False,False)]
local procedure OnFinancialVoidCheckOnBeforePostCust(var GenJournalLine: Record "Gen. Journal Line", var CustLedgerEntry: Record "Cust. Ledger Entry", var BalanceAmountLCY: Decimal)
Parameters
| Name | Type | Description |
|---|---|---|
| GenJournalLine | Table Microsoft.Finance.GeneralLedger.Journal."Gen. Journal Line" |
General journal line for the void entry |
| CustLedgerEntry | Table Microsoft.Sales.Receivables."Cust. Ledger Entry" |
Customer ledger entry being processed |
| BalanceAmountLCY | Decimal |
Balance amount in local currency |
Remarks
Raised from FinancialVoidCheck procedure before posting customer-related void entries.
OnFinancialVoidCheckOnBeforeCheckBalAccountType
Integration event raised before checking balance account type during financial void operation. Enables custom validation or processing based on the balance account type.
[IntegrationEvent(False,False)]
local procedure OnFinancialVoidCheckOnBeforeCheckBalAccountType(var GenJournalLine: Record "Gen. Journal Line", var CheckLedgerEntry: Record "Check Ledger Entry", var BankAccountLedgerEntry: Record "Bank Account Ledger Entry")
Parameters
| Name | Type | Description |
|---|---|---|
| GenJournalLine | Table Microsoft.Finance.GeneralLedger.Journal."Gen. Journal Line" |
General journal line for the void operation |
| CheckLedgerEntry | Table Microsoft.Bank.Check."Check Ledger Entry" |
Check ledger entry being voided |
| BankAccountLedgerEntry | Table Microsoft.Bank.Ledger."Bank Account Ledger Entry" |
Bank account ledger entry associated with the check |
Remarks
Raised from FinancialVoidCheck procedure before processing balance account type specific logic.
OnFinancialVoidCheckOnBeforePostBankAccount
Integration event raised before posting bank account entries during financial void operation. Enables custom processing or validation before bank account ledger entries are posted.
[IntegrationEvent(False,False)]
local procedure OnFinancialVoidCheckOnBeforePostBankAccount(var GenJournalLine: Record "Gen. Journal Line", var BankAccountLedgerEntry: Record "Bank Account Ledger Entry")
Parameters
| Name | Type | Description |
|---|---|---|
| GenJournalLine | Table Microsoft.Finance.GeneralLedger.Journal."Gen. Journal Line" |
General journal line for the void entry |
| BankAccountLedgerEntry | Table Microsoft.Bank.Ledger."Bank Account Ledger Entry" |
Bank account ledger entry being processed |
Remarks
Raised from FinancialVoidCheck procedure before posting bank account-related void entries.
OnFinancialVoidCheckOnBeforePostFixedAsset
Integration event raised before posting fixed asset entries during financial void operation. Enables custom processing or validation before fixed asset ledger entries are posted.
[IntegrationEvent(False,False)]
local procedure OnFinancialVoidCheckOnBeforePostFixedAsset(var GenJournalLine: Record "Gen. Journal Line", var FALedgerEntry: Record "FA Ledger Entry")
Parameters
| Name | Type | Description |
|---|---|---|
| GenJournalLine | Table Microsoft.Finance.GeneralLedger.Journal."Gen. Journal Line" |
General journal line for the void entry |
| FALedgerEntry | Table Microsoft.FixedAssets.Ledger."FA Ledger Entry" |
Fixed asset ledger entry being processed |
Remarks
Raised from FinancialVoidCheck procedure before posting fixed asset-related void entries.
OnFinancialVoidCheckOnBeforePostVend
Integration event raised before posting vendor entries during financial void operation. Enables custom processing or validation before vendor ledger entries are posted.
[IntegrationEvent(False,False)]
local procedure OnFinancialVoidCheckOnBeforePostVend(var GenJournalLine: Record "Gen. Journal Line", var VendorLedgerEntry: Record "Vendor Ledger Entry", var BalanceAmountLCY: Decimal)
Parameters
| Name | Type | Description |
|---|---|---|
| GenJournalLine | Table Microsoft.Finance.GeneralLedger.Journal."Gen. Journal Line" |
General journal line for the void entry |
| VendorLedgerEntry | Table Microsoft.Purchases.Payables."Vendor Ledger Entry" |
Vendor ledger entry being processed |
| BalanceAmountLCY | Decimal |
Balance amount in local currency |
Remarks
Raised from FinancialVoidCheck procedure before posting vendor-related void entries.
OnFinancialVoidCheckOnBeforePostEmp
Integration event raised before posting employee entries during financial void operation. Enables custom processing or validation before employee ledger entries are posted.
[IntegrationEvent(False,False)]
local procedure OnFinancialVoidCheckOnBeforePostEmp(var GenJournalLine: Record "Gen. Journal Line", var EmployeeLedgerEntry: Record "Employee Ledger Entry")
Parameters
| Name | Type | Description |
|---|---|---|
| GenJournalLine | Table Microsoft.Finance.GeneralLedger.Journal."Gen. Journal Line" |
General journal line for the void entry |
| EmployeeLedgerEntry | Table Microsoft.HumanResources.Payables."Employee Ledger Entry" |
Employee ledger entry being processed |
Remarks
Raised from FinancialVoidCheck procedure before posting employee-related void entries.
OnFinancialVoidCheckOnAfterPostVoidCheckLine
Integration event raised after posting a void check line during financial void operation. Enables custom processing or logging after void entries are posted.
[IntegrationEvent(False,False)]
local procedure OnFinancialVoidCheckOnAfterPostVoidCheckLine(var GenJournalLine: Record "Gen. Journal Line", var GenJnlPostLine: Codeunit "Gen. Jnl.-Post Line")
Parameters
| Name | Type | Description |
|---|---|---|
| GenJournalLine | Table Microsoft.Finance.GeneralLedger.Journal."Gen. Journal Line" |
General journal line that was posted |
| GenJnlPostLine | Codeunit Microsoft.Finance.GeneralLedger.Posting."Gen. Jnl.-Post Line" |
General journal posting codeunit reference |
Remarks
Raised from FinancialVoidCheck procedure after posting each void journal line entry.
OnFinancialVoidCheckOnAfterVendorLedgEntrySetFilters
Integration event raised after setting filters on vendor ledger entries during financial void operation. Enables custom filter modification or additional processing on filtered vendor entries.
[IntegrationEvent(False,False)]
local procedure OnFinancialVoidCheckOnAfterVendorLedgEntrySetFilters(var VendorLedgEntry: Record "Vendor Ledger Entry", BankAccLedgEntry: Record "Bank Account Ledger Entry")
Parameters
| Name | Type | Description |
|---|---|---|
| VendorLedgEntry | Table Microsoft.Purchases.Payables."Vendor Ledger Entry" |
Vendor ledger entry with filters applied |
| BankAccLedgEntry | Table Microsoft.Bank.Ledger."Bank Account Ledger Entry" |
Bank account ledger entry context for filtering |
Remarks
Raised from FinancialVoidCheck procedure after filtering vendor ledger entries.
OnFinancialVoidCheckOnBeforePostVoidCheckLine
Integration event raised before posting a void check line during financial void operation. Enables custom processing or validation before void entries are posted.
[IntegrationEvent(False,False)]
local procedure OnFinancialVoidCheckOnBeforePostVoidCheckLine(var GenJournalLine: Record "Gen. Journal Line", var CheckLedgEntry: Record "Check Ledger Entry", var BankAccLedgEntry2: Record "Bank Account Ledger Entry")
Parameters
| Name | Type | Description |
|---|---|---|
| GenJournalLine | Table Microsoft.Finance.GeneralLedger.Journal."Gen. Journal Line" |
General journal line to be posted |
| CheckLedgEntry | Table Microsoft.Bank.Check."Check Ledger Entry" |
Check ledger entry being voided |
| BankAccLedgEntry2 | Table Microsoft.Bank.Ledger."Bank Account Ledger Entry" |
Bank account ledger entry associated with the check |
Remarks
Raised from FinancialVoidCheck procedure before posting each void journal line entry.
OnFinancialVoidCheckOnAfterPostBalAccLine
Integration event raised after posting balance account line during financial void operation. Enables custom processing or logging after balance account entries are posted.
[IntegrationEvent(False,False)]
local procedure OnFinancialVoidCheckOnAfterPostBalAccLine(var GenJournalLine: Record "Gen. Journal Line", CheckLedgerEntry: Record "Check Ledger Entry", var GenJnlPostLine: Codeunit "Gen. Jnl.-Post Line")
Parameters
| Name | Type | Description |
|---|---|---|
| GenJournalLine | Table Microsoft.Finance.GeneralLedger.Journal."Gen. Journal Line" |
General journal line that was posted |
| CheckLedgerEntry | Table Microsoft.Bank.Check."Check Ledger Entry" |
Check ledger entry being voided |
| GenJnlPostLine | Codeunit Microsoft.Finance.GeneralLedger.Posting."Gen. Jnl.-Post Line" |
General journal posting codeunit reference |
Remarks
Raised from FinancialVoidCheck procedure after posting balance account entries.
OnFinancialVoidCheckOnBeforePostBalAccLine
Integration event raised before posting balance account line during financial void operation. Enables custom processing or validation before balance account entries are posted.
[IntegrationEvent(False,False)]
local procedure OnFinancialVoidCheckOnBeforePostBalAccLine(var GenJournalLine: Record "Gen. Journal Line", CheckLedgerEntry: Record "Check Ledger Entry")
Parameters
| Name | Type | Description |
|---|---|---|
| GenJournalLine | Table Microsoft.Finance.GeneralLedger.Journal."Gen. Journal Line" |
General journal line to be posted |
| CheckLedgerEntry | Table Microsoft.Bank.Check."Check Ledger Entry" |
Check ledger entry being voided |
Remarks
Raised from FinancialVoidCheck procedure before posting balance account entries.
OnFinancialVoidPostGLAccountOnBeforeGLEntryLoop
Integration event raised before processing G/L entries loop during financial void of G/L account. Enables custom processing or filtering of G/L entries before void operation.
[IntegrationEvent(False,False)]
local procedure OnFinancialVoidPostGLAccountOnBeforeGLEntryLoop(var GLEntry: Record "G/L Entry", var CheckLedgerEntry: Record "Check Ledger Entry")
Parameters
| Name | Type | Description |
|---|---|---|
| GLEntry | Table Microsoft.Finance.GeneralLedger.Ledger."G/L Entry" |
G/L entry with filters applied |
| CheckLedgerEntry | Table Microsoft.Bank.Check."Check Ledger Entry" |
Check ledger entry being voided |
Remarks
Raised from FinancialVoidPostGLAccount procedure before processing G/L entries for void.
OnInsertCheckOnAfterCheckLedgEntryInsert
Integration event raised after inserting a new check ledger entry. Enables custom processing or additional field updates after check entry creation.
[IntegrationEvent(False,False)]
local procedure OnInsertCheckOnAfterCheckLedgEntryInsert(var CheckLedgEntry: Record "Check Ledger Entry")
Parameters
| Name | Type | Description |
|---|---|---|
| CheckLedgEntry | Table Microsoft.Bank.Check."Check Ledger Entry" |
Check ledger entry that was inserted |
Remarks
Raised from InsertCheck procedure after inserting check ledger entry into database.
OnInsertCheckOnBeforeCheckLedgEntryInsert
Integration event raised before inserting a new check ledger entry. Enables custom field updates or validation before check entry creation.
[IntegrationEvent(False,False)]
local procedure OnInsertCheckOnBeforeCheckLedgEntryInsert(var CheckLedgEntry: Record "Check Ledger Entry")
Parameters
| Name | Type | Description |
|---|---|---|
| CheckLedgEntry | Table Microsoft.Bank.Check."Check Ledger Entry" |
Check ledger entry to be inserted |
Remarks
Raised from InsertCheck procedure before inserting check ledger entry into database.
OnPostRoundingAmountOnAfterGenJnlPostLine
Integration event raised after posting rounding amount entries during financial void operation. Enables custom processing or logging after currency rounding entries are posted.
[IntegrationEvent(False,False)]
local procedure OnPostRoundingAmountOnAfterGenJnlPostLine(var GenJournalLine: Record "Gen. Journal Line", CheckLedgerEntry: Record "Check Ledger Entry", var GenJnlPostLine: Codeunit "Gen. Jnl.-Post Line")
Parameters
| Name | Type | Description |
|---|---|---|
| GenJournalLine | Table Microsoft.Finance.GeneralLedger.Journal."Gen. Journal Line" |
General journal line for the rounding entry that was posted |
| CheckLedgerEntry | Table Microsoft.Bank.Check."Check Ledger Entry" |
Check ledger entry being voided |
| GenJnlPostLine | Codeunit Microsoft.Finance.GeneralLedger.Posting."Gen. Jnl.-Post Line" |
General journal posting codeunit reference |
Remarks
Raised from PostRoundingAmount procedure after posting currency conversion rounding entries.
OnProcessElectronicPaymentOnBeforeCheckLedgEntry3Modify
Integration event raised before modifying check ledger entry during electronic payment processing. Enables custom field updates or validation before electronic payment status changes.
[IntegrationEvent(False,False)]
local procedure OnProcessElectronicPaymentOnBeforeCheckLedgEntry3Modify(var CheckLedgerEntry: Record "Check Ledger Entry", var WhichProcess: Option)
Parameters
| Name | Type | Description |
|---|---|---|
| CheckLedgerEntry | Table Microsoft.Bank.Check."Check Ledger Entry" |
Check ledger entry being modified for electronic payment |
| WhichProcess | Option |
Process type being performed (Void or Transmit) |
Remarks
Raised from ProcessElectronicPayment procedure before updating check entry status.
OnPostRoundingAmountOnBeforeGenJnlPostLine
Integration event raised before posting rounding amount entries during financial void operation. Enables custom processing or validation before currency rounding entries are posted.
[IntegrationEvent(False,False)]
local procedure OnPostRoundingAmountOnBeforeGenJnlPostLine(var GenJournalLine: Record "Gen. Journal Line", CheckLedgerEntry: Record "Check Ledger Entry", var BankAccountLedgerEntry: Record "Bank Account Ledger Entry")
Parameters
| Name | Type | Description |
|---|---|---|
| GenJournalLine | Table Microsoft.Finance.GeneralLedger.Journal."Gen. Journal Line" |
General journal line for the rounding entry to be posted |
| CheckLedgerEntry | Table Microsoft.Bank.Check."Check Ledger Entry" |
Check ledger entry being voided |
| BankAccountLedgerEntry | Table Microsoft.Bank.Ledger."Bank Account Ledger Entry" |
Bank account ledger entry associated with the check |
Remarks
Raised from PostRoundingAmount procedure before posting currency conversion rounding entries.
OnUnApplyCustInvoicesOnBeforePost
Integration event raised before posting unapplication entries for customer invoices during void operation. Enables custom processing or validation before customer unapplication entries are posted.
[IntegrationEvent(False,False)]
local procedure OnUnApplyCustInvoicesOnBeforePost(var GenJournalLine: Record "Gen. Journal Line", var CustLedgerEntry: Record "Cust. Ledger Entry", var DetailedCustLedgEntry: Record "Detailed Cust. Ledg. Entry")
Parameters
| Name | Type | Description |
|---|---|---|
| GenJournalLine | Table Microsoft.Finance.GeneralLedger.Journal."Gen. Journal Line" |
General journal line for the unapplication entry |
| CustLedgerEntry | Table Microsoft.Sales.Receivables."Cust. Ledger Entry" |
Customer ledger entry being unapplied |
| DetailedCustLedgEntry | Table Microsoft.Sales.Receivables."Detailed Cust. Ledg. Entry" |
Detailed customer ledger entry for the application being reversed |
Remarks
Raised from UnApplyCustInvoices procedure before posting customer unapplication entries.
OnUnApplyVendInvoicesOnBeforePost
Integration event raised before posting unapplication entries for vendor invoices during void operation. Enables custom processing or validation before vendor unapplication entries are posted.
[IntegrationEvent(False,False)]
local procedure OnUnApplyVendInvoicesOnBeforePost(var GenJournalLine: Record "Gen. Journal Line", var VendorLedgerEntry: Record "Vendor Ledger Entry", var DetailedVendorLedgEntry: Record "Detailed Vendor Ledg. Entry")
Parameters
| Name | Type | Description |
|---|---|---|
| GenJournalLine | Table Microsoft.Finance.GeneralLedger.Journal."Gen. Journal Line" |
General journal line for the unapplication entry |
| VendorLedgerEntry | Table Microsoft.Purchases.Payables."Vendor Ledger Entry" |
Vendor ledger entry being unapplied |
| DetailedVendorLedgEntry | Table Microsoft.Purchases.Payables."Detailed Vendor Ledg. Entry" |
Detailed vendor ledger entry for the application being reversed |
Remarks
Raised from UnApplyVendInvoices procedure before posting vendor unapplication entries.
OnAfterIsElectronicBankPaymentType
Integration event raised after determining if a bank payment type is electronic. Enables custom logic for identifying electronic payment types.
[IntegrationEvent(False,False)]
local procedure OnAfterIsElectronicBankPaymentType(BankPaymenType: Enum "Bank Payment Type", var IsElectronicPaymentType: Boolean)
Parameters
| Name | Type | Description |
|---|---|---|
| BankPaymenType | Enum Microsoft.Bank.BankAccount."Bank Payment Type" |
Bank payment type being evaluated |
| IsElectronicPaymentType | Boolean |
Whether the payment type is electronic (can be modified by subscribers) |
Remarks
Raised from IsElectronicBankPaymentType procedure after standard electronic payment type evaluation.
OnUnApplyCustInvoicesOnAfterCalcRemainingAmount
Integration event raised after calculating remaining amount for customer entries during void operation. Enables custom processing or adjustments after remaining amount calculation for customer ledger entries.
[IntegrationEvent(False,False)]
local procedure OnUnApplyCustInvoicesOnAfterCalcRemainingAmount(var CustLedgerEntry: Record "Cust. Ledger Entry")
Parameters
| Name | Type | Description |
|---|---|---|
| CustLedgerEntry | Table Microsoft.Sales.Receivables."Cust. Ledger Entry" |
Customer ledger entry with calculated remaining amount |
Remarks
Raised from UnApplyCustInvoices procedure after calculating remaining amount for customer entries.
OnUnApplyVendInvoicesOnAfterCalcRemainingAmount
Integration event raised after calculating remaining amount for vendor entries during void operation. Enables custom processing or adjustments after remaining amount calculation for vendor ledger entries.
[IntegrationEvent(False,False)]
local procedure OnUnApplyVendInvoicesOnAfterCalcRemainingAmount(var VendorLedgerEntry: Record "Vendor Ledger Entry")
Parameters
| Name | Type | Description |
|---|---|---|
| VendorLedgerEntry | Table Microsoft.Purchases.Payables."Vendor Ledger Entry" |
Vendor ledger entry with calculated remaining amount |
Remarks
Raised from UnApplyVendInvoices procedure after calculating remaining amount for vendor entries.
OnUnApplyVendInvoicesOnBeforeErrorNoAppliedEntry
Integration event raised before showing error for missing applied entries during vendor invoice unapplication. Enables custom error handling or alternative processing when no applied entries are found.
[IntegrationEvent(False,False)]
local procedure OnUnApplyVendInvoicesOnBeforeErrorNoAppliedEntry(var BankAccLedgEntry: Record "Bank Account Ledger Entry", var GenJnlLine: Record "Gen. Journal Line", var IsHandled: Boolean)
Parameters
| Name | Type | Description |
|---|---|---|
| BankAccLedgEntry | Table Microsoft.Bank.Ledger."Bank Account Ledger Entry" |
Bank account ledger entry context |
| GenJnlLine | Table Microsoft.Finance.GeneralLedger.Journal."Gen. Journal Line" |
General journal line context |
| IsHandled | Boolean |
Set to true to skip standard error handling |
Remarks
Raised from UnApplyVendInvoices procedure when no applied entries are found for unapplication.
OnBeforeSetGenJnlLine
Integration event raised before setting general journal line fields during check operations. Enables custom field updates or validation before journal line field assignment.
[IntegrationEvent(False,False)]
local procedure OnBeforeSetGenJnlLine(var GenJnlLine: Record "Gen. Journal Line", var IsHandled: Boolean)
Parameters
| Name | Type | Description |
|---|---|---|
| GenJnlLine | Table Microsoft.Finance.GeneralLedger.Journal."Gen. Journal Line" |
General journal line being updated |
| IsHandled | Boolean |
Set to true to skip standard field setting logic |
Remarks
Raised from SetGenJnlLine procedure before setting standard journal line fields.
OnAfterSetGenJnlLine
Integration event raised after setting general journal line fields during check operations. Enables custom field updates or additional processing after journal line field assignment.
[IntegrationEvent(False,False)]
local procedure OnAfterSetGenJnlLine(var GenJnlLine: Record "Gen. Journal Line")
Parameters
| Name | Type | Description |
|---|---|---|
| GenJnlLine | Table Microsoft.Finance.GeneralLedger.Journal."Gen. Journal Line" |
General journal line that was updated |
Remarks
Raised from SetGenJnlLine procedure after setting standard journal line fields.
OnBeforeUnApplyVendInvoices
Integration event raised before starting vendor invoice unapplication during void operation. Enables custom logic for handling vendor invoice unapplication or skipping standard processing.
[IntegrationEvent(False,False)]
local procedure OnBeforeUnApplyVendInvoices(var CheckLedgEntry: Record "Check Ledger Entry", var VoidDate: Date, var IsHandled: Boolean, var Result: Boolean)
Parameters
| Name | Type | Description |
|---|---|---|
| CheckLedgEntry | Table Microsoft.Bank.Check."Check Ledger Entry" |
Check ledger entry being processed for void |
| VoidDate | Date |
Date when the void operation is performed |
| IsHandled | Boolean |
Set to true to skip standard vendor unapplication logic |
| Result | Boolean |
Result of the unapplication operation (can be set by subscribers) |
Remarks
Raised from UnApplyVendInvoices procedure before performing vendor invoice unapplication.
OnFinancialVoidCheckOnBeforeConfirmFinancialVoid
Integration event raised before confirming financial void operation on a check. Enables custom confirmation dialog or validation before financial void confirmation.
[IntegrationEvent(False,False)]
local procedure OnFinancialVoidCheckOnBeforeConfirmFinancialVoid(var CheckLedgEntry: Record "Check Ledger Entry", var IsHandled: Boolean)
Parameters
| Name | Type | Description |
|---|---|---|
| CheckLedgEntry | Table Microsoft.Bank.Check."Check Ledger Entry" |
Check ledger entry being considered for financial void |
| IsHandled | Boolean |
Set to true to skip standard confirmation dialog |
Remarks
Raised from FinancialVoidCheck procedure before showing confirmation dialog to user.
OnBeforePostRoundingAmount
Integration event raised before posting rounding amount during financial void operation. Enables custom processing or validation before currency rounding entries are posted.
[IntegrationEvent(False,False)]
local procedure OnBeforePostRoundingAmount(var BankAcc: Record "Bank Account", var CheckLedgEntry: Record "Check Ledger Entry", BankAccLedgEntry2: Record "Bank Account Ledger Entry", var PostingDate: Date, var RoundingAmount: Decimal, var IsHandled: Boolean)
Parameters
| Name | Type | Description |
|---|---|---|
| BankAcc | Table Microsoft.Bank.BankAccount."Bank Account" |
Bank account for the check being voided |
| CheckLedgEntry | Table Microsoft.Bank.Check."Check Ledger Entry" |
Check ledger entry being voided |
| BankAccLedgEntry2 | Table Microsoft.Bank.Ledger."Bank Account Ledger Entry" |
Bank account ledger entry associated with the check |
| PostingDate | Date |
Date when the rounding entry will be posted |
| RoundingAmount | Decimal |
Currency rounding amount to be posted |
| IsHandled | Boolean |
Set to true to skip standard rounding amount posting |
Remarks
Raised from PostRoundingAmount procedure before posting currency conversion rounding entries.