KVSPSACreateInvoiceFromInvSug#
Procedures#
GetSuitableInvoiceResource(Code[20], Code[20]) : Code[20]#
Summary: Find a suitable billing resource for the given Gen. Prod. Posting Group. where "KVSPSABilling Resource" and "KVSPSAUseable in Sales" are set to "true" and "Blocked" is set to "false".
procedure GetSuitableInvoiceResource(GenProdPostingGroup: Code[20]; ResourceNoOrResourceGroupNo: Code[20]): Code[20]
Parameters:
GenProdPostingGroup
: Gen. Prod. Posting Group from the source resource / resource groupResourceNoOrResourceGroupNo
: No. from the source resource / resource group
Returns:
MainFunction(Code[20], Code[20]) :#
Summary: Main function to create invoices from invoice suggestions. This function prepares sales orders, creates shipments, and invoices based on the invoice suggestions. It handles existing invoice ledger entries, checks sales lines for job invoices, and updates invoices. It also creates invoices for job payment plans and opens the created documents. The function uses various global variables to keep track of the created documents and counters. It also handles the case where there are unposted invoice ledger entries in sales orders. The function is designed to be called with a worksheet template and worksheet name, which are used to filter the invoice suggestions.
procedure MainFunction(WorksheetTemplate: Code[20]; WorksheetName: Code[20]):
Parameters:
WorksheetTemplate
: The template of the worksheet to be used for filtering invoice suggestions.WorksheetName
: The name of the worksheet to be used for filtering invoice suggestions.
SetSalesLineTypeAndNoByWorkPackage(Record Sales Line, Record KVSPSAWork Package) :#
Summary: Set the Invoice Type and Invoice No. by validate the fields with values from the WorkPackage.
procedure SetSalesLineTypeAndNoByWorkPackage(var SalesLine: Record "Sales Line"; WorkPackage: Record "KVSPSAWork Package"):
Parameters:
SalesLine
:WorkPackage
:
SetSalesLineTypeAndNoForInvoiceLedgerEntryTypeGLAccount(Record Sales Line, Record KVSPSAInvoice Ledger Entry) : Boolean#
Summary: The functions calls the Procedure SetSalesLineTypeAndNoByWorkPackage to set Type and No. based on Invoice Values. After that it may update the description from the PSP
procedure SetSalesLineTypeAndNoForInvoiceLedgerEntryTypeGLAccount(var SalesLine: Record "Sales Line"; InvoiceLedgerEntry: Record "KVSPSAInvoice Ledger Entry"): Boolean
Parameters:
SalesLine
:InvoiceLedgerEntry
:
Returns:
Events#
KVSPSAOnAfterCopyInvoiceSuggestionLineFieldToSalesLine(Record Sales Line, Record KVSPSAInvoice Suggestion Line) :#
Summary: Integration event raised after copying invoice suggestion line fields to sales line
[IntegrationEvent(false, false)]
local procedure KVSPSAOnAfterCopyInvoiceSuggestionLineFieldToSalesLine(var SalesLine: Record "Sales Line"; InvoiceSuggestionLine: Record "KVSPSAInvoice Suggestion Line"):
[EventSubscriber(ObjectType::Codeunit, Codeunit::"KVSPSACreateInvoiceFromInvSug", 'KVSPSAOnAfterCopyInvoiceSuggestionLineFieldToSalesLine', '', false, false)]
local procedure DoSomethingKVSPSAOnAfterCopyInvoiceSuggestionLineFieldToSalesLine(var SalesLine: Record "Sales Line"; InvoiceSuggestionLine: Record "KVSPSAInvoice Suggestion Line")
begin
end;
Parameters:
SalesLine
: The sales line that received the copied fieldsInvoiceSuggestionLine
: The source invoice suggestion line
KVSPSAOnAfterCreateInvoiceEntryForPreparingSalesOrder(Record Sales Line, Record KVSPSAInvoice Suggestion Line) :#
Summary: Integration event raised after creating invoice entry for preparing sales order
[IntegrationEvent(false, false)]
local procedure KVSPSAOnAfterCreateInvoiceEntryForPreparingSalesOrder(var SalesLine: Record "Sales Line"; InvoiceSuggestionLine: Record "KVSPSAInvoice Suggestion Line"):
[EventSubscriber(ObjectType::Codeunit, Codeunit::"KVSPSACreateInvoiceFromInvSug", 'KVSPSAOnAfterCreateInvoiceEntryForPreparingSalesOrder', '', false, false)]
local procedure DoSomethingKVSPSAOnAfterCreateInvoiceEntryForPreparingSalesOrder(var SalesLine: Record "Sales Line"; InvoiceSuggestionLine: Record "KVSPSAInvoice Suggestion Line")
begin
end;
Parameters:
SalesLine
: The sales line for which the invoice entry was createdInvoiceSuggestionLine
: The source invoice suggestion line
KVSPSAOnAfterCreateInvoiceLine(Record Sales Line, Record Sales Header, Integer, Decimal, Record KVSPSAInvoice Ledger Entry) :#
Summary: Integration event raised after creating invoice line
[IntegrationEvent(false, false)]
local procedure KVSPSAOnAfterCreateInvoiceLine(var NewSalesLine: Record "Sales Line"; var TempSalesHeader: Record "Sales Header" temporary; NextLineNo: Integer; DeductionQty: Decimal; var TempInvoiceLedgerEntry: Record "KVSPSAInvoice Ledger Entry" temporary):
[EventSubscriber(ObjectType::Codeunit, Codeunit::"KVSPSACreateInvoiceFromInvSug", 'KVSPSAOnAfterCreateInvoiceLine', '', false, false)]
local procedure DoSomethingKVSPSAOnAfterCreateInvoiceLine(var NewSalesLine: Record "Sales Line"; var TempSalesHeader: Record "Sales Header" temporary; NextLineNo: Integer; DeductionQty: Decimal; var TempInvoiceLedgerEntry: Record "KVSPSAInvoice Ledger Entry" temporary)
begin
end;
Parameters:
NewSalesLine
: The newly created sales lineTempSalesHeader
: Temporary sales header recordNextLineNo
: The next line number to be usedDeductionQty
: The deduction quantityTempInvoiceLedgerEntry
: Temporary invoice ledger entry
KVSPSAOnAfterCreateInvoicesFromInvSugLines(Code[20], Code[20], Integer, Code[20], Code[20], Integer, Code[20], Integer, Code[20], Integer, Code[20], Code[20], Code[20]) :#
Summary: Integration event raised after creating invoices from invoice suggestion lines
[IntegrationEvent(false, false)]
local procedure KVSPSAOnAfterCreateInvoicesFromInvSugLines(WorksheetTemplate: Code[20]; WorksheetName: Code[20]; var InvoiceCounter: Integer; var FirstInvoiceNo: Code[20]; var LastInvoiceNo: Code[20]; var PrepareCounter: Integer; var PreparedSalesOrderNo: Code[20]; var JobPaymInvoicesCounter: Integer; var JobPaymInvoiceNo: Code[20]; var JobPaymCrMemosCounter: Integer; var JobPaymCrMemoNo: Code[20]; var LastJobPaymentInvoiceNo: Code[20]; var LastJobPaymentCreditMemoNo: Code[20]):
[EventSubscriber(ObjectType::Codeunit, Codeunit::"KVSPSACreateInvoiceFromInvSug", 'KVSPSAOnAfterCreateInvoicesFromInvSugLines', '', false, false)]
local procedure DoSomethingKVSPSAOnAfterCreateInvoicesFromInvSugLines(WorksheetTemplate: Code[20]; WorksheetName: Code[20]; var InvoiceCounter: Integer; var FirstInvoiceNo: Code[20]; var LastInvoiceNo: Code[20]; var PrepareCounter: Integer; var PreparedSalesOrderNo: Code[20]; var JobPaymInvoicesCounter: Integer; var JobPaymInvoiceNo: Code[20]; var JobPaymCrMemosCounter: Integer; var JobPaymCrMemoNo: Code[20]; var LastJobPaymentInvoiceNo: Code[20]; var LastJobPaymentCreditMemoNo: Code[20])
begin
end;
Parameters:
WorksheetTemplate
: The worksheet template codeWorksheetName
: The worksheet nameInvoiceCounter
: Counter for created invoicesFirstInvoiceNo
: Number of the first created invoiceLastInvoiceNo
: Number of the last created invoicePrepareCounter
: Counter for prepared documentsPreparedSalesOrderNo
: Number of the prepared sales orderJobPaymInvoicesCounter
: Counter for job payment invoicesJobPaymInvoiceNo
: Job payment invoice numberJobPaymCrMemosCounter
: Counter for job payment credit memosJobPaymCrMemoNo
: Job payment credit memo numberLastJobPaymentInvoiceNo
: Number of the last job payment invoiceLastJobPaymentCreditMemoNo
: Number of the last job payment credit memo
KVSPSAOnAfterDecideIfShouldCreateNewInvoiceInCreateInvoicesForJobPaymentPlan(Record KVSPSAInvoice Suggestion Line, Boolean, Record Sales Header, Code[20], Code[20], Record Sales Header) :#
Summary: Integration event raised after deciding if should create new invoice in create invoices for job payment plan
[IntegrationEvent(false, false)]
local procedure KVSPSAOnAfterDecideIfShouldCreateNewInvoiceInCreateInvoicesForJobPaymentPlan(var InvoiceSuggestionLine: Record "KVSPSAInvoice Suggestion Line"; var CreateNewInvoice: Boolean; var SalesHeader: Record "Sales Header"; var WorksheetTemplate: Code[20]; var WorksheetName: Code[20]; var TempSalesHeader: Record "Sales Header" temporary):
[EventSubscriber(ObjectType::Codeunit, Codeunit::"KVSPSACreateInvoiceFromInvSug", 'KVSPSAOnAfterDecideIfShouldCreateNewInvoiceInCreateInvoicesForJobPaymentPlan', '', false, false)]
local procedure DoSomethingKVSPSAOnAfterDecideIfShouldCreateNewInvoiceInCreateInvoicesForJobPaymentPlan(var InvoiceSuggestionLine: Record "KVSPSAInvoice Suggestion Line"; var CreateNewInvoice: Boolean; var SalesHeader: Record "Sales Header"; var WorksheetTemplate: Code[20]; var WorksheetName: Code[20]; var TempSalesHeader: Record "Sales Header" temporary)
begin
end;
Parameters:
InvoiceSuggestionLine
: The invoice suggestion line being processedCreateNewInvoice
: Indicates whether a new invoice should be createdSalesHeader
: The sales header being processedWorksheetTemplate
: The worksheet template codeWorksheetName
: The worksheet nameTempSalesHeader
: Temporary sales header record
KVSPSAOnAfterGetDescriptionFromBudgetLineForSalesInvoiceLineCreatedFromInvoiceSuggestionLine(Record KVSPSA Job Budget Line, Record Sales Line) :#
Summary: Integration event raised after getting description from budget line for sales invoice line created from invoice suggestion line
[IntegrationEvent(false, false)]
local procedure KVSPSAOnAfterGetDescriptionFromBudgetLineForSalesInvoiceLineCreatedFromInvoiceSuggestionLine(JobBudgetLine: Record "KVSPSA Job Budget Line"; var NewSalesLine: Record "Sales Line"):
[EventSubscriber(ObjectType::Codeunit, Codeunit::"KVSPSACreateInvoiceFromInvSug", 'KVSPSAOnAfterGetDescriptionFromBudgetLineForSalesInvoiceLineCreatedFromInvoiceSuggestionLine', '', false, false)]
local procedure DoSomethingKVSPSAOnAfterGetDescriptionFromBudgetLineForSalesInvoiceLineCreatedFromInvoiceSuggestionLine(JobBudgetLine: Record "KVSPSA Job Budget Line"; var NewSalesLine: Record "Sales Line")
begin
end;
Parameters:
JobBudgetLine
: The job budget line containing description sourceNewSalesLine
: The new sales line that received the description
KVSPSAOnAfterInsertInvoicesForJobPaymPlann(Record Sales Line, Record Sales Header, Record KVSPSAInvoice Suggestion Line) :#
Summary: Integration event raised after inserting invoices for job payment plan
[IntegrationEvent(false, false)]
local procedure KVSPSAOnAfterInsertInvoicesForJobPaymPlann(var SalesLine: Record "Sales Line"; SalesHeader: Record "Sales Header"; var InvoiceSuggestionLine: Record "KVSPSAInvoice Suggestion Line"):
[EventSubscriber(ObjectType::Codeunit, Codeunit::"KVSPSACreateInvoiceFromInvSug", 'KVSPSAOnAfterInsertInvoicesForJobPaymPlann', '', false, false)]
local procedure DoSomethingKVSPSAOnAfterInsertInvoicesForJobPaymPlann(var SalesLine: Record "Sales Line"; SalesHeader: Record "Sales Header"; var InvoiceSuggestionLine: Record "KVSPSAInvoice Suggestion Line")
begin
end;
Parameters:
SalesLine
: The sales line that was insertedSalesHeader
: The sales header associated with the lineInvoiceSuggestionLine
: The source invoice suggestion line
KVSPSAOnAfterPrepareSalesOrder(Record Sales Line) :#
Summary: Integration event raised after preparing sales order
[IntegrationEvent(false, false)]
local procedure KVSPSAOnAfterPrepareSalesOrder(var TempSalesLine: Record "Sales Line" temporary):
[EventSubscriber(ObjectType::Codeunit, Codeunit::"KVSPSACreateInvoiceFromInvSug", 'KVSPSAOnAfterPrepareSalesOrder', '', false, false)]
local procedure DoSomethingKVSPSAOnAfterPrepareSalesOrder(var TempSalesLine: Record "Sales Line" temporary)
begin
end;
Parameters:
TempSalesLine
: Temporary sales line record that was prepared
KVSPSAOnAfterRemoveFiltersOnItemOrGLAccountTempGlobalInvoiceLedgerEntryAfterCreateCollectiveInvoiceLine(Record KVSPSAInvoice Ledger Entry, Record KVSPSAInvoice Suggestion Line) :#
Summary: Integration event raised after removing filters on Item or G/L Account temporary global invoice ledger entry after creating collective invoice line
[IntegrationEvent(false, false)]
local procedure KVSPSAOnAfterRemoveFiltersOnItemOrGLAccountTempGlobalInvoiceLedgerEntryAfterCreateCollectiveInvoiceLine(var TempGlobalInvoiceLedgerEntry: Record "KVSPSAInvoice Ledger Entry" temporary; var GlobalInvoiceSuggestionLine: Record "KVSPSAInvoice Suggestion Line"):
[EventSubscriber(ObjectType::Codeunit, Codeunit::"KVSPSACreateInvoiceFromInvSug", 'KVSPSAOnAfterRemoveFiltersOnItemOrGLAccountTempGlobalInvoiceLedgerEntryAfterCreateCollectiveInvoiceLine', '', false, false)]
local procedure DoSomethingKVSPSAOnAfterRemoveFiltersOnItemOrGLAccountTempGlobalInvoiceLedgerEntryAfterCreateCollectiveInvoiceLine(var TempGlobalInvoiceLedgerEntry: Record "KVSPSAInvoice Ledger Entry" temporary; var GlobalInvoiceSuggestionLine: Record "KVSPSAInvoice Suggestion Line")
begin
end;
Parameters:
TempGlobalInvoiceLedgerEntry
: Temporary global invoice ledger entry with filters removedGlobalInvoiceSuggestionLine
: Global invoice suggestion line for reference
KVSPSAOnAfterRemoveFiltersOnItemOrGLAccountTempGlobalInvoiceLedgerEntryAfterCreateInvoiceLine(Record KVSPSAInvoice Ledger Entry, Record KVSPSAInvoice Suggestion Line) :#
Summary: Integration event raised after removing filters on Item or G/L Account temporary global invoice ledger entry after creating invoice line
[IntegrationEvent(false, false)]
local procedure KVSPSAOnAfterRemoveFiltersOnItemOrGLAccountTempGlobalInvoiceLedgerEntryAfterCreateInvoiceLine(var TempGlobalInvoiceLedgerEntry: Record "KVSPSAInvoice Ledger Entry" temporary; var GlobalInvoiceSuggestionLine: Record "KVSPSAInvoice Suggestion Line"):
[EventSubscriber(ObjectType::Codeunit, Codeunit::"KVSPSACreateInvoiceFromInvSug", 'KVSPSAOnAfterRemoveFiltersOnItemOrGLAccountTempGlobalInvoiceLedgerEntryAfterCreateInvoiceLine', '', false, false)]
local procedure DoSomethingKVSPSAOnAfterRemoveFiltersOnItemOrGLAccountTempGlobalInvoiceLedgerEntryAfterCreateInvoiceLine(var TempGlobalInvoiceLedgerEntry: Record "KVSPSAInvoice Ledger Entry" temporary; var GlobalInvoiceSuggestionLine: Record "KVSPSAInvoice Suggestion Line")
begin
end;
Parameters:
TempGlobalInvoiceLedgerEntry
: Temporary global invoice ledger entry with filters removedGlobalInvoiceSuggestionLine
: Global invoice suggestion line for reference
KVSPSAOnAfterRemoveFiltersOnResourceTempGlobalInvoiceLedgerEntryAfterCreateCollectiveInvoiceLine(Record KVSPSAInvoice Ledger Entry, Record KVSPSAInvoice Suggestion Line) :#
Summary: Integration event raised after removing filters on Resource temporary global invoice ledger entry after creating collective invoice line
[IntegrationEvent(false, false)]
local procedure KVSPSAOnAfterRemoveFiltersOnResourceTempGlobalInvoiceLedgerEntryAfterCreateCollectiveInvoiceLine(var TempGlobalInvoiceLedgerEntry: Record "KVSPSAInvoice Ledger Entry" temporary; var GlobalInvoiceSuggestionLine: Record "KVSPSAInvoice Suggestion Line"):
[EventSubscriber(ObjectType::Codeunit, Codeunit::"KVSPSACreateInvoiceFromInvSug", 'KVSPSAOnAfterRemoveFiltersOnResourceTempGlobalInvoiceLedgerEntryAfterCreateCollectiveInvoiceLine', '', false, false)]
local procedure DoSomethingKVSPSAOnAfterRemoveFiltersOnResourceTempGlobalInvoiceLedgerEntryAfterCreateCollectiveInvoiceLine(var TempGlobalInvoiceLedgerEntry: Record "KVSPSAInvoice Ledger Entry" temporary; var GlobalInvoiceSuggestionLine: Record "KVSPSAInvoice Suggestion Line")
begin
end;
Parameters:
TempGlobalInvoiceLedgerEntry
: Temporary global invoice ledger entry with filters removedGlobalInvoiceSuggestionLine
: Global invoice suggestion line for reference
KVSPSAOnAfterRemoveFiltersOnResourceTempGlobalInvoiceLedgerEntryAfterCreateInvoiceLine(Record KVSPSAInvoice Ledger Entry, Record KVSPSAInvoice Suggestion Line) :#
Summary: Integration event raised after removing filters on Resource temporary global invoice ledger entry after creating invoice line
[IntegrationEvent(false, false)]
local procedure KVSPSAOnAfterRemoveFiltersOnResourceTempGlobalInvoiceLedgerEntryAfterCreateInvoiceLine(var TempGlobalInvoiceLedgerEntry: Record "KVSPSAInvoice Ledger Entry" temporary; var GlobalInvoiceSuggestionLine: Record "KVSPSAInvoice Suggestion Line"):
[EventSubscriber(ObjectType::Codeunit, Codeunit::"KVSPSACreateInvoiceFromInvSug", 'KVSPSAOnAfterRemoveFiltersOnResourceTempGlobalInvoiceLedgerEntryAfterCreateInvoiceLine', '', false, false)]
local procedure DoSomethingKVSPSAOnAfterRemoveFiltersOnResourceTempGlobalInvoiceLedgerEntryAfterCreateInvoiceLine(var TempGlobalInvoiceLedgerEntry: Record "KVSPSAInvoice Ledger Entry" temporary; var GlobalInvoiceSuggestionLine: Record "KVSPSAInvoice Suggestion Line")
begin
end;
Parameters:
TempGlobalInvoiceLedgerEntry
: Temporary global invoice ledger entry with filters removedGlobalInvoiceSuggestionLine
: Global invoice suggestion line for reference
KVSPSAOnAfterSetFilterOnItemOrGLAccountTempGlobalInvoiceLedgerEntryBeforeCreateCollectiveInvoiceLine(Record KVSPSAInvoice Ledger Entry, Record KVSPSAInvoice Suggestion Line) :#
Summary: Integration event raised after setting filter on Item or G/L Account temporary global invoice ledger entry before creating collective invoice line
[IntegrationEvent(false, false)]
local procedure KVSPSAOnAfterSetFilterOnItemOrGLAccountTempGlobalInvoiceLedgerEntryBeforeCreateCollectiveInvoiceLine(var TempGlobalInvoiceLedgerEntry: Record "KVSPSAInvoice Ledger Entry" temporary; var GlobalInvoiceSuggestionLine: Record "KVSPSAInvoice Suggestion Line"):
[EventSubscriber(ObjectType::Codeunit, Codeunit::"KVSPSACreateInvoiceFromInvSug", 'KVSPSAOnAfterSetFilterOnItemOrGLAccountTempGlobalInvoiceLedgerEntryBeforeCreateCollectiveInvoiceLine', '', false, false)]
local procedure DoSomethingKVSPSAOnAfterSetFilterOnItemOrGLAccountTempGlobalInvoiceLedgerEntryBeforeCreateCollectiveInvoiceLine(var TempGlobalInvoiceLedgerEntry: Record "KVSPSAInvoice Ledger Entry" temporary; var GlobalInvoiceSuggestionLine: Record "KVSPSAInvoice Suggestion Line")
begin
end;
Parameters:
TempGlobalInvoiceLedgerEntry
: Temporary global invoice ledger entry with applied filtersGlobalInvoiceSuggestionLine
: Global invoice suggestion line for reference
KVSPSAOnAfterSetFilterOnItemOrGLAccountTempGlobalInvoiceLedgerEntryBeforeCreateInvoiceLine(Record KVSPSAInvoice Ledger Entry, Record KVSPSAInvoice Suggestion Line) :#
Summary: Integration event raised after setting filter on Item or G/L Account temporary global invoice ledger entry before creating invoice line
[IntegrationEvent(false, false)]
local procedure KVSPSAOnAfterSetFilterOnItemOrGLAccountTempGlobalInvoiceLedgerEntryBeforeCreateInvoiceLine(var TempGlobalInvoiceLedgerEntry: Record "KVSPSAInvoice Ledger Entry" temporary; var GlobalInvoiceSuggestionLine: Record "KVSPSAInvoice Suggestion Line"):
[EventSubscriber(ObjectType::Codeunit, Codeunit::"KVSPSACreateInvoiceFromInvSug", 'KVSPSAOnAfterSetFilterOnItemOrGLAccountTempGlobalInvoiceLedgerEntryBeforeCreateInvoiceLine', '', false, false)]
local procedure DoSomethingKVSPSAOnAfterSetFilterOnItemOrGLAccountTempGlobalInvoiceLedgerEntryBeforeCreateInvoiceLine(var TempGlobalInvoiceLedgerEntry: Record "KVSPSAInvoice Ledger Entry" temporary; var GlobalInvoiceSuggestionLine: Record "KVSPSAInvoice Suggestion Line")
begin
end;
Parameters:
TempGlobalInvoiceLedgerEntry
: Temporary global invoice ledger entry with applied filtersGlobalInvoiceSuggestionLine
: Global invoice suggestion line for reference
KVSPSAOnAfterSetFilterOnResourceTempGlobalInvoiceLedgerEntryBeforeCreateCollectiveInvoiceLine(Record KVSPSAInvoice Ledger Entry, Record KVSPSAInvoice Suggestion Line) :#
Summary: Integration event raised after setting filter on Resource temporary global invoice ledger entry before creating collective invoice line
[IntegrationEvent(false, false)]
local procedure KVSPSAOnAfterSetFilterOnResourceTempGlobalInvoiceLedgerEntryBeforeCreateCollectiveInvoiceLine(var TempGlobalInvoiceLedgerEntry: Record "KVSPSAInvoice Ledger Entry" temporary; var GlobalInvoiceSuggestionLine: Record "KVSPSAInvoice Suggestion Line"):
[EventSubscriber(ObjectType::Codeunit, Codeunit::"KVSPSACreateInvoiceFromInvSug", 'KVSPSAOnAfterSetFilterOnResourceTempGlobalInvoiceLedgerEntryBeforeCreateCollectiveInvoiceLine', '', false, false)]
local procedure DoSomethingKVSPSAOnAfterSetFilterOnResourceTempGlobalInvoiceLedgerEntryBeforeCreateCollectiveInvoiceLine(var TempGlobalInvoiceLedgerEntry: Record "KVSPSAInvoice Ledger Entry" temporary; var GlobalInvoiceSuggestionLine: Record "KVSPSAInvoice Suggestion Line")
begin
end;
Parameters:
TempGlobalInvoiceLedgerEntry
: Temporary global invoice ledger entry with applied filtersGlobalInvoiceSuggestionLine
: Global invoice suggestion line for reference
KVSPSAOnAfterSetFilterOnResourceTempGlobalInvoiceLedgerEntryBeforeCreateInvoiceLine(Record KVSPSAInvoice Ledger Entry, Record KVSPSAInvoice Suggestion Line) :#
Summary: Integration event raised after setting filter on Resource temporary global invoice ledger entry before creating invoice line
[IntegrationEvent(false, false)]
local procedure KVSPSAOnAfterSetFilterOnResourceTempGlobalInvoiceLedgerEntryBeforeCreateInvoiceLine(var TempGlobalInvoiceLedgerEntry: Record "KVSPSAInvoice Ledger Entry" temporary; var GlobalInvoiceSuggestionLine: Record "KVSPSAInvoice Suggestion Line"):
[EventSubscriber(ObjectType::Codeunit, Codeunit::"KVSPSACreateInvoiceFromInvSug", 'KVSPSAOnAfterSetFilterOnResourceTempGlobalInvoiceLedgerEntryBeforeCreateInvoiceLine', '', false, false)]
local procedure DoSomethingKVSPSAOnAfterSetFilterOnResourceTempGlobalInvoiceLedgerEntryBeforeCreateInvoiceLine(var TempGlobalInvoiceLedgerEntry: Record "KVSPSAInvoice Ledger Entry" temporary; var GlobalInvoiceSuggestionLine: Record "KVSPSAInvoice Suggestion Line")
begin
end;
Parameters:
TempGlobalInvoiceLedgerEntry
: Temporary global invoice ledger entry with applied filtersGlobalInvoiceSuggestionLine
: Global invoice suggestion line for reference
KVSPSAOnBeforeCreateInvoiceFromInvSug(Code[20], Code[20], Boolean) :#
Summary: Integration event raised before creating invoice from invoice suggestion
[IntegrationEvent(false, false)]
local procedure KVSPSAOnBeforeCreateInvoiceFromInvSug(WorksheetTemplate: Code[20]; WorksheetName: Code[20]; var IsHandled: Boolean):
[EventSubscriber(ObjectType::Codeunit, Codeunit::"KVSPSACreateInvoiceFromInvSug", 'KVSPSAOnBeforeCreateInvoiceFromInvSug', '', false, false)]
local procedure DoSomethingKVSPSAOnBeforeCreateInvoiceFromInvSug(WorksheetTemplate: Code[20]; WorksheetName: Code[20]; var IsHandled: Boolean)
begin
end;
Parameters:
WorksheetTemplate
: The worksheet template codeWorksheetName
: The worksheet nameIsHandled
: Set to true if the operation is handled by subscriber
KVSPSAOnBeforeCreateInvoiceLine(Record Sales Header, Integer, Decimal, Record KVSPSAInvoice Ledger Entry, Boolean) :#
Obsolete
This Element will be removed or changed with a future Version of the App.
Summary: Integration event raised before creating invoice line (obsolete - use KVSPSAOnBeforeCreateInvoiceLine2 instead)
[Obsolete('This event is obsolete. Please use KVSPSAOnBeforeCreateInvoiceLine2 instead.', '23.4')]
[IntegrationEvent(false, false)]
local procedure KVSPSAOnBeforeCreateInvoiceLine(var TempSalesHeader: Record "Sales Header" temporary; NextLineNo: Integer; DeductionQty: Decimal; var TempInvoiceLedgerEntry: Record "KVSPSAInvoice Ledger Entry" temporary; var IsHandled: Boolean):
[EventSubscriber(ObjectType::Codeunit, Codeunit::"KVSPSACreateInvoiceFromInvSug", 'KVSPSAOnBeforeCreateInvoiceLine', '', false, false)]
local procedure DoSomethingKVSPSAOnBeforeCreateInvoiceLine(var TempSalesHeader: Record "Sales Header" temporary; NextLineNo: Integer; DeductionQty: Decimal; var TempInvoiceLedgerEntry: Record "KVSPSAInvoice Ledger Entry" temporary; var IsHandled: Boolean)
begin
end;
Parameters:
TempSalesHeader
: Temporary sales header recordNextLineNo
: The next line number to be usedDeductionQty
: The deduction quantityTempInvoiceLedgerEntry
: Temporary invoice ledger entryIsHandled
: Set to true if the operation is handled by subscriber
KVSPSAOnBeforeCreateInvoiceLine2(Record Sales Header, Integer, Decimal, Record KVSPSAInvoice Ledger Entry, Boolean) :#
Summary: Integration event raised before creating invoice line
[IntegrationEvent(false, false)]
local procedure KVSPSAOnBeforeCreateInvoiceLine2(var TempSalesHeader: Record "Sales Header" temporary; var NextLineNo: Integer; DeductionQty: Decimal; var TempInvoiceLedgerEntry: Record "KVSPSAInvoice Ledger Entry" temporary; var IsHandled: Boolean):
[EventSubscriber(ObjectType::Codeunit, Codeunit::"KVSPSACreateInvoiceFromInvSug", 'KVSPSAOnBeforeCreateInvoiceLine2', '', false, false)]
local procedure DoSomethingKVSPSAOnBeforeCreateInvoiceLine2(var TempSalesHeader: Record "Sales Header" temporary; var NextLineNo: Integer; DeductionQty: Decimal; var TempInvoiceLedgerEntry: Record "KVSPSAInvoice Ledger Entry" temporary; var IsHandled: Boolean)
begin
end;
Parameters:
TempSalesHeader
: Temporary sales header recordNextLineNo
: The next line number to be usedDeductionQty
: The deduction quantityTempInvoiceLedgerEntry
: Temporary invoice ledger entryIsHandled
: Set to true if the operation is handled by subscriber
KVSPSAOnBeforeCreateInvoicesFromInvSugLines(Record KVSPSAInvoice Suggestion Line) :#
Summary: Integration event raised before creating invoices from invoice suggestion lines
[IntegrationEvent(false, false)]
local procedure KVSPSAOnBeforeCreateInvoicesFromInvSugLines(var InvoiceSuggestionLine: Record "KVSPSAInvoice Suggestion Line"):
[EventSubscriber(ObjectType::Codeunit, Codeunit::"KVSPSACreateInvoiceFromInvSug", 'KVSPSAOnBeforeCreateInvoicesFromInvSugLines', '', false, false)]
local procedure DoSomethingKVSPSAOnBeforeCreateInvoicesFromInvSugLines(var InvoiceSuggestionLine: Record "KVSPSAInvoice Suggestion Line")
begin
end;
Parameters:
InvoiceSuggestionLine
: The invoice suggestion line to be processed
KVSPSAOnBeforeCreateSalesInvoiceLineFromInvoiceSuggestLine(Record KVSPSAInvoice Suggestion Line, Record Sales Header, Integer) :#
Summary: Integration event raised before creating sales invoice line from invoice suggestion line
[IntegrationEvent(false, false)]
local procedure KVSPSAOnBeforeCreateSalesInvoiceLineFromInvoiceSuggestLine(InvoiceSuggestionLine: Record "KVSPSAInvoice Suggestion Line"; SalesHeader: Record "Sales Header"; var NextLineNo: Integer):
[EventSubscriber(ObjectType::Codeunit, Codeunit::"KVSPSACreateInvoiceFromInvSug", 'KVSPSAOnBeforeCreateSalesInvoiceLineFromInvoiceSuggestLine', '', false, false)]
local procedure DoSomethingKVSPSAOnBeforeCreateSalesInvoiceLineFromInvoiceSuggestLine(InvoiceSuggestionLine: Record "KVSPSAInvoice Suggestion Line"; SalesHeader: Record "Sales Header"; var NextLineNo: Integer)
begin
end;
Parameters:
InvoiceSuggestionLine
: The source invoice suggestion lineSalesHeader
: The sales header for the new lineNextLineNo
: The next line number to be used
KVSPSAOnBeforeFillSalesCrMemoHeaderFields(Record Sales Header, Record KVSPSAInvoice Suggestion Line, Boolean) :#
Summary: Integration event raised before filling sales credit memo header fields
[IntegrationEvent(false, false)]
local procedure KVSPSAOnBeforeFillSalesCrMemoHeaderFields(var SalesHeader: Record "Sales Header"; var InvoiceSuggestionLine: Record "KVSPSAInvoice Suggestion Line"; var IsHandled: Boolean):
[EventSubscriber(ObjectType::Codeunit, Codeunit::"KVSPSACreateInvoiceFromInvSug", 'KVSPSAOnBeforeFillSalesCrMemoHeaderFields', '', false, false)]
local procedure DoSomethingKVSPSAOnBeforeFillSalesCrMemoHeaderFields(var SalesHeader: Record "Sales Header"; var InvoiceSuggestionLine: Record "KVSPSAInvoice Suggestion Line"; var IsHandled: Boolean)
begin
end;
Parameters:
SalesHeader
: The sales header to be filledInvoiceSuggestionLine
: The source invoice suggestion lineIsHandled
: Set to true if the operation is handled by subscriber
KVSPSAOnBeforeFillSalesInvHeaderFields(Record Sales Header, Record KVSPSAInvoice Suggestion Line, Boolean) :#
Summary: Integration event raised before filling sales invoice header fields
[IntegrationEvent(false, false)]
local procedure KVSPSAOnBeforeFillSalesInvHeaderFields(var SalesHeader: Record "Sales Header"; InvoiceSuggestionLine: Record "KVSPSAInvoice Suggestion Line"; var IsHandled: Boolean):
[EventSubscriber(ObjectType::Codeunit, Codeunit::"KVSPSACreateInvoiceFromInvSug", 'KVSPSAOnBeforeFillSalesInvHeaderFields', '', false, false)]
local procedure DoSomethingKVSPSAOnBeforeFillSalesInvHeaderFields(var SalesHeader: Record "Sales Header"; InvoiceSuggestionLine: Record "KVSPSAInvoice Suggestion Line"; var IsHandled: Boolean)
begin
end;
Parameters:
SalesHeader
: The sales header to be filledInvoiceSuggestionLine
: The source invoice suggestion lineIsHandled
: Set to true if the operation is handled by subscriber
KVSPSAOnBeforeFindTempSalesCrMemoHeaderWhenUpdateCreditMemos(Record Sales Header, Record KVSPSAInvoice Suggestion Line) :#
Summary: Integration event raised before finding temporary sales credit memo header when updating credit memos
[IntegrationEvent(false, false)]
local procedure KVSPSAOnBeforeFindTempSalesCrMemoHeaderWhenUpdateCreditMemos(var TempSalesHeader: Record "Sales Header" temporary; var InvoiceSuggestionLine: Record "KVSPSAInvoice Suggestion Line"):
[EventSubscriber(ObjectType::Codeunit, Codeunit::"KVSPSACreateInvoiceFromInvSug", 'KVSPSAOnBeforeFindTempSalesCrMemoHeaderWhenUpdateCreditMemos', '', false, false)]
local procedure DoSomethingKVSPSAOnBeforeFindTempSalesCrMemoHeaderWhenUpdateCreditMemos(var TempSalesHeader: Record "Sales Header" temporary; var InvoiceSuggestionLine: Record "KVSPSAInvoice Suggestion Line")
begin
end;
Parameters:
TempSalesHeader
: Temporary sales header with filters to be appliedInvoiceSuggestionLine
: The source invoice suggestion line
KVSPSAOnBeforeFindTempSalesInvHeaderForPSP(Record Sales Header, Record KVSPSAInvoice Suggestion Line) :#
Summary: Integration event raised before finding temporary sales invoice header for PSP (Project Structure Plan)
[IntegrationEvent(false, false)]
local procedure KVSPSAOnBeforeFindTempSalesInvHeaderForPSP(var TempSalesHeader: Record "Sales Header" temporary; InvoiceSuggestionLine: Record "KVSPSAInvoice Suggestion Line"):
[EventSubscriber(ObjectType::Codeunit, Codeunit::"KVSPSACreateInvoiceFromInvSug", 'KVSPSAOnBeforeFindTempSalesInvHeaderForPSP', '', false, false)]
local procedure DoSomethingKVSPSAOnBeforeFindTempSalesInvHeaderForPSP(var TempSalesHeader: Record "Sales Header" temporary; InvoiceSuggestionLine: Record "KVSPSAInvoice Suggestion Line")
begin
end;
Parameters:
TempSalesHeader
: Temporary sales header with filters to be appliedInvoiceSuggestionLine
: The source invoice suggestion line
KVSPSAOnBeforeFindTempSalesInvoiceHeaderWhenUpdateInvoices(Record Sales Header, Record KVSPSAInvoice Suggestion Line) :#
Summary: Integration event raised before finding temporary sales invoice header when updating invoices
[IntegrationEvent(false, false)]
local procedure KVSPSAOnBeforeFindTempSalesInvoiceHeaderWhenUpdateInvoices(var TempSalesHeader: Record "Sales Header" temporary; InvoiceSuggestionLine: Record "KVSPSAInvoice Suggestion Line"):
[EventSubscriber(ObjectType::Codeunit, Codeunit::"KVSPSACreateInvoiceFromInvSug", 'KVSPSAOnBeforeFindTempSalesInvoiceHeaderWhenUpdateInvoices', '', false, false)]
local procedure DoSomethingKVSPSAOnBeforeFindTempSalesInvoiceHeaderWhenUpdateInvoices(var TempSalesHeader: Record "Sales Header" temporary; InvoiceSuggestionLine: Record "KVSPSAInvoice Suggestion Line")
begin
end;
Parameters:
TempSalesHeader
: Temporary sales header with filters to be appliedInvoiceSuggestionLine
: The source invoice suggestion line
KVSPSAOnBeforeModifySalesHeaderInCreateInvoicesForJobPaymentPlan(Record KVSPSAInvoice Suggestion Line, Boolean, Record Sales Header, Code[20], Code[20], Record Sales Header) :#
Summary: Integration event raised before modifying sales header in create invoices for job payment plan
[IntegrationEvent(false, false)]
local procedure KVSPSAOnBeforeModifySalesHeaderInCreateInvoicesForJobPaymentPlan(var InvoiceSuggestionLine: Record "KVSPSAInvoice Suggestion Line"; var CreateNewInvoice: Boolean; var SalesHeader: Record "Sales Header"; var WorksheetTemplate: Code[20]; var WorksheetName: Code[20]; var TempSalesHeader: Record "Sales Header" temporary):
[EventSubscriber(ObjectType::Codeunit, Codeunit::"KVSPSACreateInvoiceFromInvSug", 'KVSPSAOnBeforeModifySalesHeaderInCreateInvoicesForJobPaymentPlan', '', false, false)]
local procedure DoSomethingKVSPSAOnBeforeModifySalesHeaderInCreateInvoicesForJobPaymentPlan(var InvoiceSuggestionLine: Record "KVSPSAInvoice Suggestion Line"; var CreateNewInvoice: Boolean; var SalesHeader: Record "Sales Header"; var WorksheetTemplate: Code[20]; var WorksheetName: Code[20]; var TempSalesHeader: Record "Sales Header" temporary)
begin
end;
Parameters:
InvoiceSuggestionLine
: The invoice suggestion line being processedCreateNewInvoice
: Indicates whether a new invoice should be createdSalesHeader
: The sales header to be modifiedWorksheetTemplate
: The worksheet template codeWorksheetName
: The worksheet nameTempSalesHeader
: Temporary sales header record
KVSPSAOnBeforeMoreQtyNeededToShipSalesOrderLineErr(Record Sales Line, Decimal, Boolean) :#
Summary: Integration event raised before showing error about more quantity needed to ship sales order line
[IntegrationEvent(false, false)]
local procedure KVSPSAOnBeforeMoreQtyNeededToShipSalesOrderLineErr(SalesLine: Record "Sales Line"; QtyToInvoice: Decimal; var IsHandled: Boolean):
[EventSubscriber(ObjectType::Codeunit, Codeunit::"KVSPSACreateInvoiceFromInvSug", 'KVSPSAOnBeforeMoreQtyNeededToShipSalesOrderLineErr', '', false, false)]
local procedure DoSomethingKVSPSAOnBeforeMoreQtyNeededToShipSalesOrderLineErr(SalesLine: Record "Sales Line"; QtyToInvoice: Decimal; var IsHandled: Boolean)
begin
end;
Parameters:
SalesLine
: The sales line that needs more quantity to shipQtyToInvoice
: The quantity to invoiceIsHandled
: Set to true if the operation is handled by subscriber
KVSPSAOnBeforeOpenDocument(Record Sales Header, Enum Sales Document Type, Code[20], Boolean) :#
[IntegrationEvent(false, false)]
local procedure KVSPSAOnBeforeOpenDocument(GlobalSalesHeader: Record "Sales Header"; DocumentType: Enum "Sales Document Type"; DocumentNo: Code[20]; var Ishandled: Boolean):
[EventSubscriber(ObjectType::Codeunit, Codeunit::"KVSPSACreateInvoiceFromInvSug", 'KVSPSAOnBeforeOpenDocument', '', false, false)]
local procedure DoSomethingKVSPSAOnBeforeOpenDocument(GlobalSalesHeader: Record "Sales Header"; DocumentType: Enum "Sales Document Type"; DocumentNo: Code[20]; var Ishandled: Boolean)
begin
end;
KVSPSAOnBeforeSetCurrentKeyForInvoiceLines(Record KVSPSAInvoice Suggestion Line, Boolean) :#
Summary: Integration event raised before setting current key for invoice lines
[IntegrationEvent(false, false)]
local procedure KVSPSAOnBeforeSetCurrentKeyForInvoiceLines(var InvoiceSuggestionLine: Record "KVSPSAInvoice Suggestion Line"; var IsHandled: Boolean):
[EventSubscriber(ObjectType::Codeunit, Codeunit::"KVSPSACreateInvoiceFromInvSug", 'KVSPSAOnBeforeSetCurrentKeyForInvoiceLines', '', false, false)]
local procedure DoSomethingKVSPSAOnBeforeSetCurrentKeyForInvoiceLines(var InvoiceSuggestionLine: Record "KVSPSAInvoice Suggestion Line"; var IsHandled: Boolean)
begin
end;
Parameters:
InvoiceSuggestionLine
: The invoice suggestion line with filters to be appliedIsHandled
: Set to true if the operation is handled by subscriber
KVSPSAOnBeforeUpdateInvoicesFromInvSugLines(Record KVSPSAInvoice Suggestion Line) :#
Summary: This Event will be raised before Invoices are updated from Invoice Suggestion Line
[IntegrationEvent(false, false)]
local procedure KVSPSAOnBeforeUpdateInvoicesFromInvSugLines(var InvoiceSuggestionLine: Record "KVSPSAInvoice Suggestion Line"):
[EventSubscriber(ObjectType::Codeunit, Codeunit::"KVSPSACreateInvoiceFromInvSug", 'KVSPSAOnBeforeUpdateInvoicesFromInvSugLines', '', false, false)]
local procedure DoSomethingKVSPSAOnBeforeUpdateInvoicesFromInvSugLines(var InvoiceSuggestionLine: Record "KVSPSAInvoice Suggestion Line")
begin
end;
Parameters:
InvoiceSuggestionLine
: The Invoice Suggestion Line which is updating the Invoices
KVSPSAOnCreateDirectInvoiceHeaderOnBeforeCreateSeparateSalesLine(Record KVSPSAInvoice Suggestion Line, Record Sales Line, Boolean) :#
Summary: Integration event raised before creating a separate sales line when creating direct invoice header
[IntegrationEvent(false, false)]
local procedure KVSPSAOnCreateDirectInvoiceHeaderOnBeforeCreateSeparateSalesLine(var InvoiceSuggestionLine: Record "KVSPSAInvoice Suggestion Line"; var TestSalesLine: Record "Sales Line"; var IsHandled: Boolean):
[EventSubscriber(ObjectType::Codeunit, Codeunit::"KVSPSACreateInvoiceFromInvSug", 'KVSPSAOnCreateDirectInvoiceHeaderOnBeforeCreateSeparateSalesLine', '', false, false)]
local procedure DoSomethingKVSPSAOnCreateDirectInvoiceHeaderOnBeforeCreateSeparateSalesLine(var InvoiceSuggestionLine: Record "KVSPSAInvoice Suggestion Line"; var TestSalesLine: Record "Sales Line"; var IsHandled: Boolean)
begin
end;
Parameters:
InvoiceSuggestionLine
: The invoice suggestion line being processedTestSalesLine
: The test sales line used for referenceIsHandled
: Set to true if the operation is handled by subscriber
KVSPSAOnFillSalesInvHeaderFieldsForPSP(Record Sales Header, Record KVSPSAInvoice Suggestion Line, Boolean) :#
Summary: Integration event raised to fill sales invoice header fields for PSP (Project Structure Plan)
[IntegrationEvent(false, false)]
local procedure KVSPSAOnFillSalesInvHeaderFieldsForPSP(var SalesHeader: Record "Sales Header"; InvoiceSuggestionLine: Record "KVSPSAInvoice Suggestion Line"; var IsHandled: Boolean):
[EventSubscriber(ObjectType::Codeunit, Codeunit::"KVSPSACreateInvoiceFromInvSug", 'KVSPSAOnFillSalesInvHeaderFieldsForPSP', '', false, false)]
local procedure DoSomethingKVSPSAOnFillSalesInvHeaderFieldsForPSP(var SalesHeader: Record "Sales Header"; InvoiceSuggestionLine: Record "KVSPSAInvoice Suggestion Line"; var IsHandled: Boolean)
begin
end;
Parameters:
SalesHeader
: The sales header to be filled with PSP-specific dataInvoiceSuggestionLine
: The invoice suggestion line containing source dataIsHandled
: Set to true if the operation is handled by subscriber
KVSPSAOnUpdateInvoicesOnAfterSetCurrentKeyOnTempGlobalInvoiceLedgerEntryFindSetForItemOrGLAccount(Record KVSPSAInvoice Ledger Entry, Record KVSPSAInvoice Suggestion Line) :#
Summary: Integration event raised after setting current key on temporary global invoice ledger entry for Item or G/L Account types
[IntegrationEvent(false, false)]
local procedure KVSPSAOnUpdateInvoicesOnAfterSetCurrentKeyOnTempGlobalInvoiceLedgerEntryFindSetForItemOrGLAccount(var TempGlobalInvoiceLedgerEntry: Record "KVSPSAInvoice Ledger Entry" temporary; var GlobalInvoiceSuggestionLine: Record "KVSPSAInvoice Suggestion Line"):
[EventSubscriber(ObjectType::Codeunit, Codeunit::"KVSPSACreateInvoiceFromInvSug", 'KVSPSAOnUpdateInvoicesOnAfterSetCurrentKeyOnTempGlobalInvoiceLedgerEntryFindSetForItemOrGLAccount', '', false, false)]
local procedure DoSomethingKVSPSAOnUpdateInvoicesOnAfterSetCurrentKeyOnTempGlobalInvoiceLedgerEntryFindSetForItemOrGLAccount(var TempGlobalInvoiceLedgerEntry: Record "KVSPSAInvoice Ledger Entry" temporary; var GlobalInvoiceSuggestionLine: Record "KVSPSAInvoice Suggestion Line")
begin
end;
Parameters:
TempGlobalInvoiceLedgerEntry
: Temporary invoice ledger entry with applied filters and keyGlobalInvoiceSuggestionLine
: Global invoice suggestion line for reference
KVSPSAOnUpdateInvoicesOnAfterSetCurrentKeyOnTempGlobalInvoiceLedgerEntryFindSetForResource(Record KVSPSAInvoice Ledger Entry, Record KVSPSAInvoice Suggestion Line) :#
Summary: Integration event raised after setting current key on temporary global invoice ledger entry for Resource types
[IntegrationEvent(false, false)]
local procedure KVSPSAOnUpdateInvoicesOnAfterSetCurrentKeyOnTempGlobalInvoiceLedgerEntryFindSetForResource(var TempGlobalInvoiceLedgerEntry: Record "KVSPSAInvoice Ledger Entry" temporary; var GlobalInvoiceSuggestionLine: Record "KVSPSAInvoice Suggestion Line"):
[EventSubscriber(ObjectType::Codeunit, Codeunit::"KVSPSACreateInvoiceFromInvSug", 'KVSPSAOnUpdateInvoicesOnAfterSetCurrentKeyOnTempGlobalInvoiceLedgerEntryFindSetForResource', '', false, false)]
local procedure DoSomethingKVSPSAOnUpdateInvoicesOnAfterSetCurrentKeyOnTempGlobalInvoiceLedgerEntryFindSetForResource(var TempGlobalInvoiceLedgerEntry: Record "KVSPSAInvoice Ledger Entry" temporary; var GlobalInvoiceSuggestionLine: Record "KVSPSAInvoice Suggestion Line")
begin
end;
Parameters:
TempGlobalInvoiceLedgerEntry
: Temporary invoice ledger entry with applied filters and keyGlobalInvoiceSuggestionLine
: Global invoice suggestion line for reference