KVSKBAReminder
Events
OnUpdateRequestPageSettings(Enum KVSKBADocumentInitEventType, Boolean, Integer, Boolean, Boolean, Boolean, Boolean, Boolean) :
Summary: Raised during request page lifecycle events to allow customization of report options.
[IntegrationEvent(true, false)]
local procedure OnUpdateRequestPageSettings(InitEventType: Enum "KVSKBADocumentInitEventType"; RequestPageAlreadyOpen: Boolean; var NoOfCopies: Integer; var ShowInternalInfo: Boolean; var LogInteraction: Boolean; var PrintOnNotePaper: Boolean; var ShowNotDueAmounts: Boolean; var ShowOnHoldAmounts: Boolean):
Parameters:
InitEventType: The lifecycle event type that triggered this call (OnOpenPage, OnClosePage, OnBeforeOnPreReport, OnAfterOnPreReport).RequestPageAlreadyOpen: Indicates whether the request page has already been opened in this session.NoOfCopies: The number of additional copies to print. Can be modified by subscribers.ShowInternalInfo: Specifies whether internal information is shown. Can be modified by subscribers.LogInteraction: Specifies whether the print action is logged as an interaction. Can be modified by subscribers.PrintOnNotePaper: Specifies whether the report prints on business letterhead paper. Can be modified by subscribers.ShowNotDueAmounts: Specifies whether reminder lines of type Not Due are included in the output. Can be modified by subscribers.ShowOnHoldAmounts: Specifies whether reminder lines of type On Hold are included in the output. Can be modified by subscribers.
Remarks: Fired on OnOpenPage, OnClosePage, OnBeforeOnPreReport and OnAfterOnPreReport. The ShowNotDueAmounts and ShowOnHoldAmounts parameters are specific to the reminder document type and are not present in sales or purchase document reports. There is no ArchiveDocument or PrintOrderCancelation parameter for reminders.
OnBeforeCreateDocumentHeader(Record KVSKBADocumentHeaderBuffer, Boolean, Record Issued Reminder Header, Codeunit KVSKBAMasterDoc) :
[IntegrationEvent(true, false)]
local procedure OnBeforeCreateDocumentHeader(var DocumentHeaderBuffer: Record "KVSKBADocumentHeaderBuffer" temporary; var Handled: Boolean; var DocumentHeader: Record "Issued Reminder Header"; var MasterDoc: Codeunit "KVSKBAMasterDoc"):
OnBeforeCreateDocumentAddress(Record KVSKBADocumentHeaderBuffer, Boolean, Record Issued Reminder Header, Codeunit KVSKBAMasterDoc) :
[IntegrationEvent(true, false)]
local procedure OnBeforeCreateDocumentAddress(var DocumentHeaderBuffer: Record "KVSKBADocumentHeaderBuffer" temporary; var Handled: Boolean; var DocumentHeader: Record "Issued Reminder Header"; var MasterDoc: Codeunit "KVSKBAMasterDoc"):
OnBeforeAddDocHeader(Record KVSKBADocumentHeaderBuffer, Record Issued Reminder Header, Codeunit KVSKBAMasterDoc) :
[IntegrationEvent(true, false)]
local procedure OnBeforeAddDocHeader(var DocumentHeaderBuffer: Record "KVSKBADocumentHeaderBuffer" temporary; var DocumentHeader: Record "Issued Reminder Header"; var MasterDoc: Codeunit "KVSKBAMasterDoc"):
OnBeforeCreateDocumentHeading(Record KVSKBADocumentHeaderBuffer, Boolean, Record Issued Reminder Header, Codeunit KVSKBAMasterDoc) :
[IntegrationEvent(true, false)]
local procedure OnBeforeCreateDocumentHeading(var DocumentHeaderBuffer: Record "KVSKBADocumentHeaderBuffer" temporary; var Handled: Boolean; var DocumentHeader: Record "Issued Reminder Header"; var MasterDoc: Codeunit "KVSKBAMasterDoc"):
OnAfterCreateDocumentHeading(Record KVSKBADocumentHeaderBuffer, Record Issued Reminder Header, Codeunit KVSKBAMasterDoc) :
[IntegrationEvent(true, false)]
local procedure OnAfterCreateDocumentHeading(var DocumentHeaderBuffer: Record "KVSKBADocumentHeaderBuffer" temporary; var DocumentHeader: Record "Issued Reminder Header"; var MasterDoc: Codeunit "KVSKBAMasterDoc"):
OnDocFooterFinished(Record KVSKBADocumentHeaderBuffer, Record Issued Reminder Header, Codeunit KVSKBAMasterDoc) :
OnBeforeAddReminderHeadingLine(Record KVSKBADocumentHeaderBuffer, Record KVSKBADocumentLineBuffer, Boolean, Record Issued Reminder Header, Record Issued Reminder Line, Codeunit KVSKBAMasterDoc) :
[IntegrationEvent(false, false)]
local procedure OnBeforeAddReminderHeadingLine(var DocumentHeaderBuffer: Record "KVSKBADocumentHeaderBuffer" temporary; var DocumentLineBuffer: Record "KVSKBADocumentLineBuffer" temporary; var isHandled: Boolean; var DocumentHeader: Record "Issued Reminder Header"; var DocumentLine: Record "Issued Reminder Line"; var MasterDoc: Codeunit "KVSKBAMasterDoc"):
OnBeforeAddReminderLine(Record KVSKBADocumentHeaderBuffer, Record KVSKBADocumentLineBuffer, Boolean, Record Issued Reminder Header, Record Issued Reminder Line, Codeunit KVSKBAMasterDoc) :
[IntegrationEvent(false, false)]
local procedure OnBeforeAddReminderLine(var DocumentHeaderBuffer: Record "KVSKBADocumentHeaderBuffer" temporary; var DocumentLineBuffer: Record "KVSKBADocumentLineBuffer" temporary; var isHandled: Boolean; var DocumentHeader: Record "Issued Reminder Header"; var DocumentLine: Record "Issued Reminder Line"; var MasterDoc: Codeunit "KVSKBAMasterDoc"):
OnBeforeAddCommentLine(Record KVSKBADocumentHeaderBuffer, Record KVSKBADocumentLineBuffer, Boolean, Record Issued Reminder Header, Record Issued Reminder Line, Codeunit KVSKBAMasterDoc) :
[IntegrationEvent(false, false)]
local procedure OnBeforeAddCommentLine(var DocumentHeaderBuffer: Record "KVSKBADocumentHeaderBuffer" temporary; var DocumentLineBuffer: Record "KVSKBADocumentLineBuffer" temporary; var isHandled: Boolean; var DocumentHeader: Record "Issued Reminder Header"; var DocumentLine: Record "Issued Reminder Line"; var MasterDoc: Codeunit "KVSKBAMasterDoc"):
OnBeforeAddReminderLine2(Record KVSKBADocumentHeaderBuffer, Record KVSKBADocumentLineBuffer, Boolean, Record Issued Reminder Header, Record Issued Reminder Line, Codeunit KVSKBAMasterDoc) :
[IntegrationEvent(false, false)]
local procedure OnBeforeAddReminderLine2(var DocumentHeaderBuffer: Record "KVSKBADocumentHeaderBuffer" temporary; var DocumentLineBuffer: Record "KVSKBADocumentLineBuffer" temporary; var isHandled: Boolean; var DocumentHeader: Record "Issued Reminder Header"; var DocumentLine: Record "Issued Reminder Line"; var MasterDoc: Codeunit "KVSKBAMasterDoc"):
OnBeforeAddReminderLineOnHold(Record KVSKBADocumentHeaderBuffer, Record KVSKBADocumentLineBuffer, Boolean, Record Issued Reminder Header, Record Issued Reminder Line, Codeunit KVSKBAMasterDoc) :
[IntegrationEvent(false, false)]
local procedure OnBeforeAddReminderLineOnHold(var DocumentHeaderBuffer: Record "KVSKBADocumentHeaderBuffer" temporary; var DocumentLineBuffer: Record "KVSKBADocumentLineBuffer" temporary; var IsHandled: Boolean; var DocumentHeader: Record "Issued Reminder Header"; var DocumentLine: Record "Issued Reminder Line"; var MasterDoc: Codeunit "KVSKBAMasterDoc"):
OnBeforeAddReminderFooterLine(Record KVSKBADocumentHeaderBuffer, Record KVSKBADocumentLineBuffer, Boolean, Record Issued Reminder Header, Record Issued Reminder Line, Codeunit KVSKBAMasterDoc) :
OnCasePrintVatSpecificationOnCaseElse(Enum KVSKBAPrintVatSpecification, Record VAT Amount Line, Boolean) :
Summary: Raised in the else-branch of the VAT specification case statement, allowing subscribers to define custom suppression logic for non-standard KVSKBAPrintVatSpecification values.
[IntegrationEvent(false, false)]
local procedure OnCasePrintVatSpecificationOnCaseElse(PrintVatSpecification: Enum "KVSKBAPrintVatSpecification"; var TempVATAmountLine: Record "VAT Amount Line" temporary; var SkipVATSpecVerification: Boolean):
Parameters:
PrintVatSpecification: The current value of CompanyInfo.KVSKBAPrintVatSpecificonDocs that matched the else-branch.TempVATAmountLine: The temporary VAT amount line buffer. Can be filtered or modified by subscribers.SkipVATSpecVerification: Set to true to break the VATSpec data item (suppress the VAT specification block) for this custom value.
Remarks: Only raised when CompanyInfo.KVSKBAPrintVatSpecificonDocs does not match the OnlywithdiffVATIdentifier case. The VATSpec data item also breaks when IsHandled is set to true by OnPreDataItemVATSpec, or when the standard verification (total VAT amount = 0 or count ≤ 1) suppresses the block. Note: the check order in this report is GetTotalVATAmount() = 0 first, then Count() ≤ 1 (reversed compared to purchase documents).
OnPreDataItemVATSpec(Record KVSKBADocumentHeaderBuffer, Record Issued Reminder Header, Record VAT Amount Line, Boolean, Boolean, Codeunit KVSKBAMasterDoc) :
[IntegrationEvent(false, false)]
local procedure OnPreDataItemVATSpec(var KVSKBADocumentHeaderBuffer: Record "KVSKBADocumentHeaderBuffer" temporary; var DocumentHeader: Record "Issued Reminder Header"; var TempVATAmountLine: Record "VAT Amount Line" temporary; var SkipVATSpecVerification: Boolean; var isHandled: Boolean; var KVSKBAMasterDoc: Codeunit "KVSKBAMasterDoc"):
OnBeforeAddDocVATSpecLine(Record KVSKBADocumentHeaderBuffer, Record Issued Reminder Header, Record VAT Amount Line, Boolean, Codeunit KVSKBAMasterDoc) :
[IntegrationEvent(false, false)]
local procedure OnBeforeAddDocVATSpecLine(var KVSKBADocumentHeaderBuffer: Record "KVSKBADocumentHeaderBuffer" temporary; var DocumentHeader: Record "Issued Reminder Header"; var TempVATAmountLine: Record "VAT Amount Line" temporary; var IsHandled: Boolean; var KVSKBAMasterDoc: Codeunit "KVSKBAMasterDoc"):
OnPreDataItemVATSpecLCY(Record KVSKBADocumentHeaderBuffer, Record Issued Reminder Header, Record VAT Amount Line, Boolean, Boolean, Codeunit KVSKBAMasterDoc) :
[IntegrationEvent(false, false)]
local procedure OnPreDataItemVATSpecLCY(var KVSKBADocumentHeaderBuffer: Record "KVSKBADocumentHeaderBuffer" temporary; var DocumentHeader: Record "Issued Reminder Header"; var TempVATAmountLine: Record "VAT Amount Line" temporary; var SkipVATSpecVerification: Boolean; var IsHandled: Boolean; var KVSKBAMasterDoc: Codeunit "KVSKBAMasterDoc"):
OnBeforeAddDocVATSpecLineLCY(Record KVSKBADocumentHeaderBuffer, Record Issued Reminder Header, Record VAT Amount Line, Boolean, Text[50], Decimal, Decimal, Codeunit KVSKBAMasterDoc) :
[IntegrationEvent(false, false)]
local procedure OnBeforeAddDocVATSpecLineLCY(var KVSKBADocumentHeaderBuffer: Record "KVSKBADocumentHeaderBuffer" temporary; var DocumentHeader: Record "Issued Reminder Header"; var TempVATAmountLine: Record "VAT Amount Line" temporary; var IsHandled: Boolean; var VALExchRate: Text[50]; var VALVATBaseLCY: Decimal; var VALVATAmountLCY: Decimal; var KVSKBAMasterDoc: Codeunit "KVSKBAMasterDoc"):
OnPreDataItemVATClauseSpec(Record KVSKBADocumentHeaderBuffer, Record Issued Reminder Header, Record VAT Amount Line, Boolean, Record VAT Clause, Codeunit KVSKBAMasterDoc) :
[IntegrationEvent(false, false)]
local procedure OnPreDataItemVATClauseSpec(var KVSKBADocumentHeaderBuffer: Record "KVSKBADocumentHeaderBuffer" temporary; var DocumentHeader: Record "Issued Reminder Header"; var TempVATAmountLine: Record "VAT Amount Line" temporary; var IsHandled: Boolean; var VATClause: Record "VAT Clause"; var KVSKBAMasterDoc: Codeunit "KVSKBAMasterDoc"):
OnBeforeAddDocVATClause(Record KVSKBADocumentHeaderBuffer, Record Issued Reminder Header, Record VAT Amount Line, Boolean, Record VAT Clause, Codeunit KVSKBAMasterDoc) :
[IntegrationEvent(false, false)]
local procedure OnBeforeAddDocVATClause(var KVSKBADocumentHeaderBuffer: Record "KVSKBADocumentHeaderBuffer" temporary; var DocumentHeader: Record "Issued Reminder Header"; var TempVATAmountLine: Record "VAT Amount Line" temporary; var IsHandled: Boolean; var VATClause: Record "VAT Clause"; var KVSKBAMasterDoc: Codeunit "KVSKBAMasterDoc"):
OnBeforeSetLanguageFormatAddress(Record Issued Reminder Header, Boolean) :
Summary: Raised before FormatAddress.SetLanguageCode is called with the reminder's language code.
[IntegrationEvent(false, false)]
local procedure OnBeforeSetLanguageFormatAddress(DocHeader: Record "Issued Reminder Header"; var IsHandled: Boolean):
Parameters:
DocHeader: The issued reminder header record currently being processed.IsHandled: Set to true to skip the default FormatAddress.SetLanguageCode call.
Remarks: Fired in the DocHeader OnAfterGetRecord trigger before address formatting and heading creation begin. Setting a custom language code here affects how FormatAddress.IssuedReminder resolves country name translations and address block layouts.
OnBeforeResetLanguageFormatAddress(Record Issued Reminder Header, Boolean) :
Summary: Raised before FormatAddress.SetLanguageCode is called with an empty string to reset the address language after heading creation.
[IntegrationEvent(false, false)]
local procedure OnBeforeResetLanguageFormatAddress(DocHeader: Record "Issued Reminder Header"; var GlobalIsHandled: Boolean):
Parameters:
DocHeader: The issued reminder header record currently being processed.GlobalIsHandled: Set to true to skip the default FormatAddress.SetLanguageCode('') reset call.
Remarks: Fired in the DocHeader OnAfterGetRecord trigger after CreateDocumentHeading and OnAfterCreateDocumentHeading have run. Resetting the language ensures that subsequent FormatAddress calls use the system default rather than the document language.
OnAfterTransferTotalAmount(Record KVSKBADocumentHeaderBuffer, Record VAT Amount Line) :
Summary: Raised after all VAT total amounts have been transferred to the document header buffer in the DocLine OnPostDataItem trigger.
[IntegrationEvent(false, false)]
local procedure OnAfterTransferTotalAmount(var TempDocumentHeaderBuffer: Record "KVSKBADocumentHeaderBuffer" temporary; var TempVATAmountLine: Record "VAT Amount Line" temporary):
Parameters:
TempDocumentHeaderBuffer: The temporary document header buffer, already updated with Total excl. VAT, Total incl. VAT, Total LCY, Total LineAmount, and VAT Amount Caption.TempVATAmountLine: The temporary VAT amount line buffer containing the accumulated totals.
Remarks: Fired before MasterDoc.UpdateDocHeader. Unlike purchase documents, NNC_TotalInvDiscAmt and Payment Disc. on VAT are not written for reminders. The interest amount is included in NNC_TotalLCY but is tracked separately in NNC_TotalInterestAmount. Use this event to modify or extend the total fields on DocumentHeaderBuffer before they are committed to the master document.
Protected Variables
GlobalLogInteraction
Type: Boolean
GlobalPrintOnNotePaper
Type: Boolean
GlobalShowInternalInfo
Type: Boolean
GlobalShowNotDueAmounts
Type: Boolean
GlobalShowOnHoldAmounts
Type: Boolean
GlobalNoOfCopies
Type: Integer