Table of Contents

KVSKBAOrderConfirmation

Events

OnUpdateRequestPageSettings(Enum KVSKBADocumentInitEventType, Boolean, Integer, Boolean, Boolean, Boolean, Boolean, Boolean, Option, 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 ArchiveDocument: Boolean; var LogInteraction: Boolean; var PrintOnNotePaper: Boolean; var DisplayAssemblyInfo: Boolean; var ShowItemTracking: Option; var ShowTariffNo: Boolean; var ShowCountryOfOrigin: 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.
  • ArchiveDocument: Specifies whether the document is archived after printing. 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.
  • DisplayAssemblyInfo: Specifies whether assembly component lines are printed. Can be modified by subscribers.
  • ShowItemTracking: Controls serial/lot number rendering: None, DocLines (inline per line), or ItemTrackingTable (appendix). Can be modified by subscribers.
  • ShowTariffNo: Specifies whether tariff numbers are printed as comment lines. Can be modified by subscribers.
  • ShowCountryOfOrigin: Specifies whether country/region of origin is printed as comment lines. Can be modified by subscribers.

Remarks: Fired on OnOpenPage, OnClosePage, OnBeforeOnPreReport and OnAfterOnPreReport. Use InitEventType to react to specific lifecycle phases only. The event is also used by DocumentDispSingleInstance to suppress certain options when printing without letterhead (PrintWithLogo mode).

OnBeforeCheckDocStatusOnAfterGetRecord(Record Sales Header, Boolean, Integer, Boolean) :

Summary: Raised in the OnAfterGetRecord trigger of DocHeader before the document status check is performed.

[IntegrationEvent(true, false)]
local procedure OnBeforeCheckDocStatusOnAfterGetRecord(var DocumentHeader: Record "Sales Header"; var Handled: Boolean; var NoOfRecords: Integer; PrintOutput: Boolean): 

Parameters:

  • DocumentHeader: The sales order header record currently being processed.
  • Handled: Set to true to skip the default status check (FieldError on Status other than Released or Pending Prepayment).
  • NoOfRecords: The total number of records in the DocHeader data item. Can be used by subscribers for progress tracking.
  • PrintOutput: Indicates whether actual output will be produced (false during preview). The status check is only performed when PrintOutput is true.

Remarks: The default logic raises a FieldError if the order status is not Released or Pending Prepayment (unless Prepayment % is non-zero). Set Handled to true to allow printing of orders in other statuses.

OnBeforeCheckDocStructureOnAfterGetRecord(Record Sales Header, Boolean) :

Summary: Raised in the OnAfterGetRecord trigger of DocHeader before the document structure check is performed.

[IntegrationEvent(true, false)]
local procedure OnBeforeCheckDocStructureOnAfterGetRecord(var DocumentHeader: Record "Sales Header"; var Handled: Boolean): 

Parameters:

  • DocumentHeader: The sales order header record currently being processed.
  • Handled: Set to true to skip the default structure validation (position number calculation and total structure check).

Remarks: The default logic calls SalesLib.RunCalcPosNoInSalesLines (with optional commit), SalesLib.CheckTotalStructureInSalesLine, and SalesLib.CheckPosNoNotEmptyInSalesLine based on SalesSetup.KVSKBACheckPosNoInSalesLines. Set Handled to true to bypass all structure checks.

OnBeforeCreateDocumentHeader(Record KVSKBADocumentHeaderBuffer, Boolean, Record Sales Header, Codeunit KVSKBAMasterDoc) :

[IntegrationEvent(true, false)]
local procedure OnBeforeCreateDocumentHeader(var DocumentHeaderBuffer: Record "KVSKBADocumentHeaderBuffer" temporary; var Handled: Boolean; var DocumentHeader: Record "Sales Header"; var MasterDoc: Codeunit "KVSKBAMasterDoc"): 

OnBeforeCreateDocumentAddress(Record KVSKBADocumentHeaderBuffer, Boolean, Record Sales Header, Codeunit KVSKBAMasterDoc) :

[IntegrationEvent(true, false)]
local procedure OnBeforeCreateDocumentAddress(var DocumentHeaderBuffer: Record "KVSKBADocumentHeaderBuffer" temporary; var Handled: Boolean; var DocumentHeader: Record "Sales Header"; var MasterDoc: Codeunit "KVSKBAMasterDoc"): 

OnBeforeAddDocHeader(Record KVSKBADocumentHeaderBuffer, Record Sales Header, Codeunit KVSKBAMasterDoc) :

[IntegrationEvent(true, false)]
local procedure OnBeforeAddDocHeader(var DocumentHeaderBuffer: Record "KVSKBADocumentHeaderBuffer" temporary; var DocumentHeader: Record "Sales Header"; var MasterDoc: Codeunit "KVSKBAMasterDoc"): 

OnBeforeCreateDocumentHeading(Record KVSKBADocumentHeaderBuffer, Boolean, Record Sales Header, Codeunit KVSKBAMasterDoc) :

[IntegrationEvent(true, false)]
local procedure OnBeforeCreateDocumentHeading(var DocumentHeaderBuffer: Record "KVSKBADocumentHeaderBuffer" temporary; var Handled: Boolean; var DocumentHeader: Record "Sales Header"; var MasterDoc: Codeunit "KVSKBAMasterDoc"): 

OnAfterCreateDocumentHeading(Record KVSKBADocumentHeaderBuffer, Record Sales Header, Codeunit KVSKBAMasterDoc) :

[IntegrationEvent(true, false)]
local procedure OnAfterCreateDocumentHeading(var DocumentHeaderBuffer: Record "KVSKBADocumentHeaderBuffer" temporary; var DocumentHeader: Record "Sales Header"; var MasterDoc: Codeunit "KVSKBAMasterDoc"): 

OnPreDataItemDocHeaderText(Record KVSKBADocumentHeaderBuffer, Record KVSKBADocumentLineBuffer, Boolean, Record Sales Header, Codeunit KVSKBAMasterDoc) :

[IntegrationEvent(true, false)]
local procedure OnPreDataItemDocHeaderText(var DocumentHeaderBuffer: Record "KVSKBADocumentHeaderBuffer" temporary; var DocumentLineBuffer: Record "KVSKBADocumentLineBuffer" temporary; var isHandled: Boolean; var DocumentHeader: Record "Sales Header"; var MasterDoc: Codeunit "KVSKBAMasterDoc"): 

OnPostDataItemDocHeaderText(Record KVSKBADocumentHeaderBuffer, Record KVSKBADocumentLineBuffer, Record Sales Header, Codeunit KVSKBAMasterDoc) :

[IntegrationEvent(true, false)]
local procedure OnPostDataItemDocHeaderText(var DocumentHeaderBuffer: Record "KVSKBADocumentHeaderBuffer" temporary; var DocumentLineBuffer: Record "KVSKBADocumentLineBuffer" temporary; var DocumentHeader: Record "Sales Header"; var MasterDoc: Codeunit "KVSKBAMasterDoc"): 

OnPreDataItemDocFooterText(Record KVSKBADocumentHeaderBuffer, Record KVSKBADocumentLineBuffer, Boolean, Record Sales Header, Codeunit KVSKBAMasterDoc) :

[IntegrationEvent(true, false)]
local procedure OnPreDataItemDocFooterText(var DocumentHeaderBuffer: Record "KVSKBADocumentHeaderBuffer" temporary; var DocumentLineBuffer: Record "KVSKBADocumentLineBuffer" temporary; var isHandled: Boolean; var DocumentHeader: Record "Sales Header"; var MasterDoc: Codeunit "KVSKBAMasterDoc"): 

OnPostDataItemDocFooterText(Record KVSKBADocumentHeaderBuffer, Record KVSKBADocumentLineBuffer, Record Sales Header, Codeunit KVSKBAMasterDoc) :

[IntegrationEvent(true, false)]
local procedure OnPostDataItemDocFooterText(var DocumentHeaderBuffer: Record "KVSKBADocumentHeaderBuffer" temporary; var DocumentLineBuffer: Record "KVSKBADocumentLineBuffer" temporary; var DocumentHeader: Record "Sales Header"; var MasterDoc: Codeunit "KVSKBAMasterDoc"): 

OnDocFooterFinished(Record KVSKBADocumentHeaderBuffer, Record Sales Header, Codeunit KVSKBAMasterDoc) :

[IntegrationEvent(true, false)]
local procedure OnDocFooterFinished(var DocumentHeaderBuffer: Record "KVSKBADocumentHeaderBuffer" temporary; var DocumentHeader: Record "Sales Header"; var MasterDoc: Codeunit "KVSKBAMasterDoc"): 

OnBeforeCheckForPageAndBlockBreak(Record KVSKBADocumentHeaderBuffer, Record Sales Header, Record Sales Line, Boolean, Boolean, Codeunit KVSKBAMasterDoc) :

[IntegrationEvent(false, false)]
local procedure OnBeforeCheckForPageAndBlockBreak(var DocumentHeaderBuffer: Record "KVSKBADocumentHeaderBuffer" temporary; var DocumentHeader: Record "Sales Header"; var DocumentLine: Record "Sales Line"; var skipLine: Boolean; var isHandled: Boolean; var MasterDoc: Codeunit "KVSKBAMasterDoc"): 

OnBeforeAddDocumentLine(Record KVSKBADocumentHeaderBuffer, Record KVSKBADocumentLineBuffer, Record Sales Header, Record Sales Line, Codeunit KVSKBAMasterDoc) :

[IntegrationEvent(false, false)]
local procedure OnBeforeAddDocumentLine(var DocumentHeaderBuffer: Record "KVSKBADocumentHeaderBuffer" temporary; var DocumentLineBuffer: Record "KVSKBADocumentLineBuffer" temporary; var DocumentHeader: Record "Sales Header"; var DocumentLine: Record "Sales Line"; var MasterDoc: Codeunit "KVSKBAMasterDoc"): 

OnAfterAddDocumentLine(Record KVSKBADocumentHeaderBuffer, Record KVSKBADocumentLineBuffer, Record Sales Header, Record Sales Line, Codeunit KVSKBAMasterDoc) :

[IntegrationEvent(false, false)]
local procedure OnAfterAddDocumentLine(var DocumentHeaderBuffer: Record "KVSKBADocumentHeaderBuffer" temporary; var DocumentLineBuffer: Record "KVSKBADocumentLineBuffer" temporary; var DocumentHeader: Record "Sales Header"; var DocumentLine: Record "Sales Line"; var MasterDoc: Codeunit "KVSKBAMasterDoc"): 

OnBeforeInitBySalesLine(Record KVSKBADocumentLineBuffer, Record KVSKBADocumentHeaderBuffer, Record Sales Header, Record Sales Line, Codeunit KVSKBAMasterDoc) :

[IntegrationEvent(false, false)]
local procedure OnBeforeInitBySalesLine(var DocumentLineBuffer: Record "KVSKBADocumentLineBuffer" temporary; var DocumentHeaderBuffer: Record "KVSKBADocumentHeaderBuffer" temporary; var DocumentHeader: Record "Sales Header"; var DocumentLine: Record "Sales Line"; var MasterDoc: Codeunit "KVSKBAMasterDoc"): 

OnAfterInitBySalesLine(Record KVSKBADocumentLineBuffer, Record KVSKBADocumentHeaderBuffer, Record Sales Header, Record Sales Line, Codeunit KVSKBAMasterDoc) :

[IntegrationEvent(false, false)]
local procedure OnAfterInitBySalesLine(var DocumentLineBuffer: Record "KVSKBADocumentLineBuffer" temporary; var DocumentHeaderBuffer: Record "KVSKBADocumentHeaderBuffer" temporary; var DocumentHeader: Record "Sales Header"; var DocumentLine: Record "Sales Line"; var MasterDoc: Codeunit "KVSKBAMasterDoc"): 

OnBeforeAddTariffNoAndCountryOfOriginInfo(Record KVSKBADocumentHeaderBuffer, Record KVSKBADocumentLineBuffer, Boolean, Record Sales Header, Record Sales Line, Codeunit KVSKBAMasterDoc, Boolean, Boolean) :

[IntegrationEvent(false, false)]
local procedure OnBeforeAddTariffNoAndCountryOfOriginInfo(var DocumentHeaderBuffer: Record "KVSKBADocumentHeaderBuffer" temporary; var DocumentLineBuffer: Record "KVSKBADocumentLineBuffer" temporary; var isHandled: Boolean; var DocumentHeader: Record "Sales Header"; var DocumentLine: Record "Sales Line"; var MasterDoc: Codeunit "KVSKBAMasterDoc"; var ShowCountryOfOrigin: Boolean; var ShowTariffNo: Boolean): 

OnBeforeAddItemAttributeInfo(Record KVSKBADocumentHeaderBuffer, Record KVSKBADocumentLineBuffer, Boolean, Record Sales Header, Record Sales Line, Codeunit KVSKBAMasterDoc) :

[IntegrationEvent(false, false)]
local procedure OnBeforeAddItemAttributeInfo(var DocumentHeaderBuffer: Record "KVSKBADocumentHeaderBuffer" temporary; var DocumentLineBuffer: Record "KVSKBADocumentLineBuffer" temporary; var isHandled: Boolean; var DocumentHeader: Record "Sales Header"; var DocumentLine: Record "Sales Line"; var MasterDoc: Codeunit "KVSKBAMasterDoc"): 

OnBeforeAddSubscriptionLineInfo(Record KVSKBADocumentHeaderBuffer, Record KVSKBADocumentLineBuffer, Boolean, Record Sales Header, Record Sales Line, Record Sales Line, Codeunit KVSKBAMasterDoc) :

[IntegrationEvent(false, false)]
local procedure OnBeforeAddSubscriptionLineInfo(var DocumentHeaderBuffer: Record "KVSKBADocumentHeaderBuffer" temporary; var DocumentLineBuffer: Record "KVSKBADocumentLineBuffer" temporary; var IsHandled: Boolean; var DocumentHeader: Record "Sales Header"; var DocumentLine: Record "Sales Line"; TempServiceCommitmentForLine: Record "Sales Line" temporary; var MasterDoc: Codeunit "KVSKBAMasterDoc"): 

OnBeforeAddAssemblyInfo(Record KVSKBADocumentHeaderBuffer, Record KVSKBADocumentLineBuffer, Boolean, Record Sales Header, Record Sales Line, Codeunit KVSKBAMasterDoc) :

[IntegrationEvent(false, false)]
local procedure OnBeforeAddAssemblyInfo(var DocumentHeaderBuffer: Record "KVSKBADocumentHeaderBuffer" temporary; var DocumentLineBuffer: Record "KVSKBADocumentLineBuffer" temporary; var isHandled: Boolean; var DocumentHeader: Record "Sales Header"; var DocumentLine: Record "Sales Line"; var MasterDoc: Codeunit "KVSKBAMasterDoc"): 

OnBeforeAddItemTrackingLines(Record KVSKBADocumentHeaderBuffer, Record KVSKBADocumentLineBuffer, Boolean, Record Sales Header, Record Sales Line, Record Tracking Specification, Codeunit KVSKBAMasterDoc) :

[IntegrationEvent(false, false)]
local procedure OnBeforeAddItemTrackingLines(var DocumentHeaderBuffer: Record "KVSKBADocumentHeaderBuffer" temporary; var DocumentLineBuffer: Record "KVSKBADocumentLineBuffer" temporary; var isHandled: Boolean; var DocumentHeader: Record "Sales Header"; var DocumentLine: Record "Sales Line"; var TrackingSpecBuffer: Record "Tracking Specification" temporary; var MasterDoc: Codeunit "KVSKBAMasterDoc"): 

OnBeforeAddChargeAssignmentInfo(Record KVSKBADocumentHeaderBuffer, Record KVSKBADocumentLineBuffer, Boolean, Record Sales Header, Record Sales Line, Record Item Charge Assignment (Sales), Codeunit KVSKBAMasterDoc) :

[IntegrationEvent(false, false)]
local procedure OnBeforeAddChargeAssignmentInfo(var DocumentHeaderBuffer: Record "KVSKBADocumentHeaderBuffer" temporary; var DocumentLineBuffer: Record "KVSKBADocumentLineBuffer" temporary; var isHandled: Boolean; var DocumentHeader: Record "Sales Header"; var DocumentLine: Record "Sales Line"; var ItemChargeAssignment: Record "Item Charge Assignment (Sales)"; var MasterDoc: Codeunit "KVSKBAMasterDoc"): 

OnAfterAddDocLineInfo(Record KVSKBADocumentHeaderBuffer, Record KVSKBADocumentLineBuffer, Record Sales Header, Record Sales Line, Codeunit KVSKBAMasterDoc) :

[IntegrationEvent(false, false)]
local procedure OnAfterAddDocLineInfo(var DocumentHeaderBuffer: Record "KVSKBADocumentHeaderBuffer" temporary; var DocumentLineBuffer: Record "KVSKBADocumentLineBuffer" temporary; var DocumentHeader: Record "Sales Header"; var DocumentLine: Record "Sales Line"; var MasterDoc: Codeunit "KVSKBAMasterDoc"): 

OnPreDataItemHeadLineText(Record KVSKBADocumentHeaderBuffer, Record KVSKBADocumentLineBuffer, Boolean, Record Sales Header, Record Sales Line, Codeunit KVSKBAMasterDoc) :

[IntegrationEvent(true, false)]
local procedure OnPreDataItemHeadLineText(var DocumentHeaderBuffer: Record "KVSKBADocumentHeaderBuffer" temporary; var DocumentLineBuffer: Record "KVSKBADocumentLineBuffer" temporary; var isHandled: Boolean; var DocumentHeader: Record "Sales Header"; var DocumentLine: Record "Sales Line"; var MasterDoc: Codeunit "KVSKBAMasterDoc"): 

OnPostDataItemHeadLineText(Record KVSKBADocumentHeaderBuffer, Record KVSKBADocumentLineBuffer, Record Sales Header, Record Sales Line, Codeunit KVSKBAMasterDoc) :

[IntegrationEvent(true, false)]
local procedure OnPostDataItemHeadLineText(var DocumentHeaderBuffer: Record "KVSKBADocumentHeaderBuffer" temporary; var DocumentLineBuffer: Record "KVSKBADocumentLineBuffer" temporary; var DocumentHeader: Record "Sales Header"; var DocumentLine: Record "Sales Line"; var MasterDoc: Codeunit "KVSKBAMasterDoc"): 

OnPreDataItemFootLineText(Record KVSKBADocumentHeaderBuffer, Record KVSKBADocumentLineBuffer, Boolean, Record Sales Header, Record Sales Line, Codeunit KVSKBAMasterDoc) :

[IntegrationEvent(true, false)]
local procedure OnPreDataItemFootLineText(var DocumentHeaderBuffer: Record "KVSKBADocumentHeaderBuffer" temporary; var DocumentLineBuffer: Record "KVSKBADocumentLineBuffer" temporary; var isHandled: Boolean; var DocumentHeader: Record "Sales Header"; var DocumentLine: Record "Sales Line"; var MasterDoc: Codeunit "KVSKBAMasterDoc"): 

OnPostDataItemFootLineText(Record KVSKBADocumentHeaderBuffer, Record KVSKBADocumentLineBuffer, Record Sales Header, Record Sales Line, Codeunit KVSKBAMasterDoc) :

[IntegrationEvent(true, false)]
local procedure OnPostDataItemFootLineText(var DocumentHeaderBuffer: Record "KVSKBADocumentHeaderBuffer" temporary; var DocumentLineBuffer: Record "KVSKBADocumentLineBuffer" temporary; var DocumentHeader: Record "Sales Header"; var DocumentLine: Record "Sales Line"; var MasterDoc: Codeunit "KVSKBAMasterDoc"): 

OnBeforeAddSubscriptionTotalInfo(Record KVSKBADocumentHeaderBuffer, Record KVSKBADocumentLineBuffer, Boolean, Record Sales Header, Record Name/Value Buffer, Record Name/Value Buffer, Codeunit KVSKBAMasterDoc) :

[IntegrationEvent(false, false)]
local procedure OnBeforeAddSubscriptionTotalInfo(var DocumentHeaderBuffer: Record "KVSKBADocumentHeaderBuffer" temporary; var DocumentLineBuffer: Record "KVSKBADocumentLineBuffer" temporary; var IsHandled: Boolean; var DocumentHeader: Record "Sales Header"; var TempServiceCommitmentsGroup: Record "Name/Value Buffer" temporary; var TempServiceCommitmentsGroupPerPeriod: Record "Name/Value Buffer" temporary; var MasterDoc: Codeunit "KVSKBAMasterDoc"): 

OnBeforeAddShipmentMethod(Record KVSKBADocumentHeaderBuffer, Record Shipment Method, Boolean, Record Sales Header, Codeunit KVSKBAMasterDoc) :

[IntegrationEvent(false, false)]
local procedure OnBeforeAddShipmentMethod(var DocumentHeaderBuffer: Record "KVSKBADocumentHeaderBuffer" temporary; var ShipmentMethod: Record "Shipment Method"; var isHandled: Boolean; var DocumentHeader: Record "Sales Header"; var MasterDoc: Codeunit "KVSKBAMasterDoc"): 

OnAfterAddShipmentMethod(Record KVSKBADocumentHeaderBuffer, Record Shipment Method, Record Sales Header, Codeunit KVSKBAMasterDoc) :

[IntegrationEvent(false, false)]
local procedure OnAfterAddShipmentMethod(var DocumentHeaderBuffer: Record "KVSKBADocumentHeaderBuffer" temporary; var ShipmentMethod: Record "Shipment Method"; var DocumentHeader: Record "Sales Header"; var MasterDoc: Codeunit "KVSKBAMasterDoc"): 

OnBeforeAddPaymentTerms(Record KVSKBADocumentHeaderBuffer, Record Payment Terms, Boolean, Record Sales Header, Codeunit KVSKBAMasterDoc) :

[IntegrationEvent(false, false)]
local procedure OnBeforeAddPaymentTerms(var DocumentHeaderBuffer: Record "KVSKBADocumentHeaderBuffer" temporary; var PaymentTerms: Record "Payment Terms"; var isHandled: Boolean; var DocumentHeader: Record "Sales Header"; var MasterDoc: Codeunit "KVSKBAMasterDoc"): 

OnAfterAddPaymentTerms(Record KVSKBADocumentHeaderBuffer, Record Payment Terms, Record Sales Header, Codeunit KVSKBAMasterDoc) :

[IntegrationEvent(false, false)]
local procedure OnAfterAddPaymentTerms(var DocumentHeaderBuffer: Record "KVSKBADocumentHeaderBuffer" temporary; var PaymentTerms: Record "Payment Terms"; var DocumentHeader: Record "Sales Header"; var MasterDoc: 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. Use SkipVATSpecVerification to implement report-specific VAT spec suppression logic for custom enum values.

OnPreDataItemVATSpec(Record KVSKBADocumentHeaderBuffer, Record Sales Header, Record VAT Amount Line, Boolean, Boolean, Codeunit KVSKBAMasterDoc) :

[IntegrationEvent(false, false)]
local procedure OnPreDataItemVATSpec(var KVSKBADocumentHeaderBuffer: Record "KVSKBADocumentHeaderBuffer" temporary; var DocumentHeader: Record "Sales Header"; var TempVATAmountLine: Record "VAT Amount Line" temporary; var SkipVATSpecVerification: Boolean; var IsHandled: Boolean; var KVSKBAMasterDoc: Codeunit "KVSKBAMasterDoc"): 

OnBeforeAddDocVATSpecLine(Record KVSKBADocumentHeaderBuffer, Record Sales Header, Record VAT Amount Line, Boolean, Codeunit KVSKBAMasterDoc) :

[IntegrationEvent(false, false)]
local procedure OnBeforeAddDocVATSpecLine(var KVSKBADocumentHeaderBuffer: Record "KVSKBADocumentHeaderBuffer" temporary; var DocumentHeader: Record "Sales Header"; var TempVATAmountLine: Record "VAT Amount Line" temporary; var IsHandled: Boolean; var KVSKBAMasterDoc: Codeunit "KVSKBAMasterDoc"): 

OnPreDataItemVATSpecLCY(Record KVSKBADocumentHeaderBuffer, Record Sales Header, Record VAT Amount Line, Boolean, Boolean, Codeunit KVSKBAMasterDoc) :

[IntegrationEvent(false, false)]
local procedure OnPreDataItemVATSpecLCY(var KVSKBADocumentHeaderBuffer: Record "KVSKBADocumentHeaderBuffer" temporary; var DocumentHeader: Record "Sales Header"; var TempVATAmountLine: Record "VAT Amount Line" temporary; var SkipVATSpecVerification: Boolean; var isHandled: Boolean; var KVSKBAMasterDoc: Codeunit "KVSKBAMasterDoc"): 

OnBeforeAddDocVATSpecLineLCY(Record KVSKBADocumentHeaderBuffer, Record Sales 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 "Sales 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"): 

OnBeforeAddItemTrackingHeadingToReport(Record KVSKBADocumentHeaderBuffer, Enum KVSKBADocumentTableType, Integer, Text[250], Text[50], Text[50], Text[30], Record Tracking Specification, Boolean, Codeunit KVSKBAMasterDoc) :

[IntegrationEvent(false, false)]
local procedure OnBeforeAddItemTrackingHeadingToReport(var TempDocumentHeaderBuffer: Record "KVSKBADocumentHeaderBuffer" temporary; DocumentTableType: Enum "KVSKBADocumentTableType"; var LineNo: Integer; FormatText: Text[250]; var LotNoCaption: Text[50]; var SerialNoCaption: Text[50]; var QuantityCaption: Text[30]; var TempTrackingSpecification: Record "Tracking Specification" temporary; var SkipStandardCode: Boolean; var MasterDoc: Codeunit "KVSKBAMasterDoc"): 

OnBeforeAddItemTrackingLineToReport(Record KVSKBADocumentHeaderBuffer, Enum KVSKBADocumentTableType, Integer, Text[250], Code[20], Text[250], Code[20], Record Tracking Specification, Text[30], Boolean, Codeunit KVSKBAMasterDoc) :

[IntegrationEvent(false, false)]
local procedure OnBeforeAddItemTrackingLineToReport(var TempDocumentHeaderBuffer: Record "KVSKBADocumentHeaderBuffer" temporary; DocumentTableType: Enum "KVSKBADocumentTableType"; var LineNo: Integer; FormatText: Text[250]; PositionNo: Code[20]; Description: Text[250]; ItemNo: Code[20]; var TempTrackingSpecification: Record "Tracking Specification" temporary; SortTrigger: Text[30]; var SkipStandardCode: Boolean; var MasterDoc: Codeunit "KVSKBAMasterDoc"): 

OnBeforeAddItemTrackingAppendix(Record KVSKBADocumentHeaderBuffer, Record KVSKBADocumentLineBuffer, Boolean, Record Sales Header, Option, Record Tracking Specification, Codeunit KVSKBAMasterDoc) :

[IntegrationEvent(true, false)]
local procedure OnBeforeAddItemTrackingAppendix(var DocumentHeaderBuffer: Record "KVSKBADocumentHeaderBuffer" temporary; var DocumentLineBuffer: Record "KVSKBADocumentLineBuffer" temporary; var isHandled: Boolean; var DocumentHeader: Record "Sales Header"; var ShowItemTracking: Option; var TrackingSpecBuffer: Record "Tracking Specification" temporary; var MasterDoc: Codeunit "KVSKBAMasterDoc"): 

OnBeforeAddItemTrackingAppendixLine(Record KVSKBADocumentHeaderBuffer, Record KVSKBADocumentLineBuffer, Boolean, Record Sales Header, Record Sales Line, Record Tracking Specification, Codeunit KVSKBAMasterDoc) :

[IntegrationEvent(false, false)]
local procedure OnBeforeAddItemTrackingAppendixLine(var DocumentHeaderBuffer: Record "KVSKBADocumentHeaderBuffer" temporary; var DocumentLineBuffer: Record "KVSKBADocumentLineBuffer" temporary; var isHandled: Boolean; var DocumentHeader: Record "Sales Header"; var DocumentLine: Record "Sales Line"; var TrackingSpecBuffer: Record "Tracking Specification" temporary; var MasterDoc: Codeunit "KVSKBAMasterDoc"): 

OnAfterGetRecordCopyLoop(Record KVSKBADocumentHeaderBuffer, Record Sales Header, Codeunit KVSKBAMasterDoc) :

[IntegrationEvent(false, false)]
local procedure OnAfterGetRecordCopyLoop(var DocumentHeaderBuffer: Record "KVSKBADocumentHeaderBuffer" temporary; var DocumentHeader: Record "Sales Header"; var MasterDoc: Codeunit "KVSKBAMasterDoc"): 

OnAfterGetRecordCopyLoop2(Record KVSKBADocumentHeaderBuffer, Record Sales Header, Codeunit KVSKBAMasterDoc, Integer) :

[IntegrationEvent(false, false)]
local procedure OnAfterGetRecordCopyLoop2(var DocumentHeaderBuffer: Record "KVSKBADocumentHeaderBuffer" temporary; var DocumentHeader: Record "Sales Header"; var MasterDoc: Codeunit "KVSKBAMasterDoc"; CopyLoopNumber: Integer): 

OnBeforeSetLanguageFormatAddress(Record Sales Header, Boolean) :

Summary: Raised before FormatAddress.SetLanguageCode is called with the sales order's language code.

[IntegrationEvent(false, false)]
local procedure OnBeforeSetLanguageFormatAddress(DocHeader: Record "Sales Header"; var IsHandled: Boolean): 

Parameters:

  • DocHeader: The sales order 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 begins. Setting a custom language code here affects how FormatAddress resolves country name translations and address block layouts.

OnBeforeResetLanguageFormatAddress(Record Sales 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 "Sales Header"; var GlobalIsHandled: Boolean): 

Parameters:

  • DocHeader: The sales order 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 elsewhere in the report 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 RoundLoop 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 VAT Amount, Total excl. VAT, Total incl. VAT, Total LCY, Payment Disc. on VAT, Total LineAmount, Inv. Disc. Amount, and VAT Amount Caption.
  • TempVATAmountLine: The temporary VAT amount line buffer containing the accumulated totals.

Remarks: Fired before MasterDoc.UpdateDocHeader, the prepayment payment terms check, the shipment method, and the payment terms. Use this event to modify or extend the total fields on DocumentHeaderBuffer before they are committed to the master document.

OnBeforeAddTariffNoAndCountryOfOriginInfoDocLineText(Record KVSKBADocumentHeaderBuffer, Record KVSKBADocumentLineBuffer, Record Sales Header, Record Sales Line, Codeunit KVSKBAMasterDoc) :

[IntegrationEvent(false, false)]
local procedure OnBeforeAddTariffNoAndCountryOfOriginInfoDocLineText(var TempDocumentHeaderBuffer: Record "KVSKBADocumentHeaderBuffer" temporary; var TempDocumentLineBuffer: Record "KVSKBADocumentLineBuffer" temporary; DocumentHeader: Record "Sales Header"; DocumentLine: Record "Sales Line"; var MasterDoc: Codeunit "KVSKBAMasterDoc"): 

OnAfterAddTariffNoAndCountryOfOriginInfoDocLineText(Record KVSKBADocumentHeaderBuffer, Record KVSKBADocumentLineBuffer, Record Sales Header, Record Sales Line, Codeunit KVSKBAMasterDoc) :

[IntegrationEvent(false, false)]
local procedure OnAfterAddTariffNoAndCountryOfOriginInfoDocLineText(var TempDocumentHeaderBuffer: Record "KVSKBADocumentHeaderBuffer" temporary; var TempDocumentLineBuffer: Record "KVSKBADocumentLineBuffer" temporary; DocumentHeader: Record "Sales Header"; DocumentLine: Record "Sales Line"; var MasterDoc: Codeunit "KVSKBAMasterDoc"): 

OnBeforeAddAssemblyInfoDocLineText(Record KVSKBADocumentHeaderBuffer, Record KVSKBADocumentLineBuffer, Record Sales Header, Record Sales Line, Codeunit KVSKBAMasterDoc) :

[IntegrationEvent(false, false)]
local procedure OnBeforeAddAssemblyInfoDocLineText(var TempDocumentHeaderBuffer: Record "KVSKBADocumentHeaderBuffer" temporary; var TempDocumentLineBuffer: Record "KVSKBADocumentLineBuffer" temporary; DocumentHeader: Record "Sales Header"; DocumentLine: Record "Sales Line"; var MasterDoc: Codeunit "KVSKBAMasterDoc"): 

OnAfterAddAssemblyInfoDocLineText(Record KVSKBADocumentHeaderBuffer, Record KVSKBADocumentLineBuffer, Record Sales Header, Record Sales Line, Codeunit KVSKBAMasterDoc) :

[IntegrationEvent(false, false)]
local procedure OnAfterAddAssemblyInfoDocLineText(var TempDocumentHeaderBuffer: Record "KVSKBADocumentHeaderBuffer" temporary; var TempDocumentLineBuffer: Record "KVSKBADocumentLineBuffer" temporary; DocumentHeader: Record "Sales Header"; DocumentLine: Record "Sales Line"; var MasterDoc: Codeunit "KVSKBAMasterDoc"): 

OnBeforeAddChargeAssignmentInfoDocLine(Record KVSKBADocumentHeaderBuffer, Record KVSKBADocumentLineBuffer, Record Sales Header, Record Sales Line, Codeunit KVSKBAMasterDoc) :

[IntegrationEvent(false, false)]
local procedure OnBeforeAddChargeAssignmentInfoDocLine(var TempDocumentHeaderBuffer: Record "KVSKBADocumentHeaderBuffer" temporary; var TempDocumentLineBuffer: Record "KVSKBADocumentLineBuffer" temporary; DocumentHeader: Record "Sales Header"; DocumentLine: Record "Sales Line"; var MasterDoc: Codeunit "KVSKBAMasterDoc"): 

OnAfterAddChargeAssignmentInfoDocLine(Record KVSKBADocumentHeaderBuffer, Record KVSKBADocumentLineBuffer, Record Sales Header, Record Sales Line, Codeunit KVSKBAMasterDoc) :

[IntegrationEvent(false, false)]
local procedure OnAfterAddChargeAssignmentInfoDocLine(var TempDocumentHeaderBuffer: Record "KVSKBADocumentHeaderBuffer" temporary; var TempDocumentLineBuffer: Record "KVSKBADocumentLineBuffer" temporary; DocumentHeader: Record "Sales Header"; DocumentLine: Record "Sales Line"; var MasterDoc: Codeunit "KVSKBAMasterDoc"): 

OnAfterOnOpenRequestPage(Text, Record Sales Header) :

Summary: Raised at the end of the request page OnOpenPage trigger, allowing subscribers to override the request page caption.

[IntegrationEvent(false, false)]
local procedure OnAfterOnOpenRequestPage(var RequestPageCaption: Text; var SalesHeader: Record "Sales Header"): 

Parameters:

  • RequestPageCaption: The caption to display on the request page. When set to a non-empty string, Caption(RequestPageCaption) is called to update the page title.
  • SalesHeader: The current DocHeader filter record. Can be inspected to determine a context-specific caption (e.g. based on order type).

Remarks: Called after the advanced option values (Option1, Option2) have been loaded. Modify RequestPageCaption to replace the default report caption on the request page.

OnBeforeFillSubscriptionLinesForLine(Record Sales Header, Record Sales Line, Record Name/Value Buffer) :

Summary: Raised before GlobalSalesReportPrintoutMgmt.FillServiceCommitmentsForLine is called for the current document.

[IntegrationEvent(false, false)]
local procedure OnBeforeFillSubscriptionLinesForLine(DocHeader: Record "Sales Header"; var SubscriptionLineForLine: Record "Sales Line"; var SubscriptionLineForLineCaption: Record "Name/Value Buffer"): 

Parameters:

  • DocHeader: The sales order header record currently being processed. Passed by value.
  • SubscriptionLineForLine: The temporary sales line buffer that will receive the service commitment lines per document line. Can be pre-populated or cleared by subscribers.
  • SubscriptionLineForLineCaption: The temporary Name/Value buffer that will receive the caption mapping for service commitment columns. Can be pre-populated or cleared by subscribers.

Remarks: Called once per DocHeader record in the DocHeader OnAfterGetRecord trigger. Modifications to SubscriptionLineForLine and SubscriptionLineForLineCaption here are visible to GlobalSalesReportPrintoutMgmt.FillServiceCommitmentsForLine and subsequently to OnBeforeAddSubscriptionLineInfo.

OnBeforeFillSubscriptionLinesGroupPerPeriod(Record Sales Header, Record Name/Value Buffer) :

Summary: Raised before GlobalSalesReportPrintoutMgmt.FillServiceCommitmentsGroups is called for the current document.

[IntegrationEvent(false, false)]
local procedure OnBeforeFillSubscriptionLinesGroupPerPeriod(DocHeader: Record "Sales Header"; var SubscriptionLinesGroupPerPeriod: Record "Name/Value Buffer"): 

Parameters:

  • DocHeader: The sales order header record currently being processed. Passed by value.
  • SubscriptionLinesGroupPerPeriod: The temporary Name/Value buffer that will receive the service commitment group-per-period data. Can be pre-populated or cleared by subscribers.

Remarks: Called once per DocHeader record in the DocHeader OnAfterGetRecord trigger. Modifications here are visible to GlobalSalesReportPrintoutMgmt.FillServiceCommitmentsGroups and subsequently to OnBeforeAddSubscriptionTotalInfo.

Protected Variables

GlobalArchiveDocument

Type: Boolean

GlobalDisplayAssemblyInfo

Type: Boolean

GlobalLogInteraction

Type: Boolean

GlobalPrintOnNotePaper

Type: Boolean

GlobalShowCountryOfOrigin

Type: Boolean

GlobalShowInternalInfo

Type: Boolean

GlobalShowTariffNo

Type: Boolean

GlobalNoOfCopies

Type: Integer

GlobalShowItemTracking

Type: Option