Skip to content

KVSKBAComJnlPostLine#

Procedures#

OnRun#

Summary: OnRun trigger that posts a single commission journal line after validation.

procedure OnRun(Rec: Record "KVSKBACommissionJournalLine")

RunWithCheck(Record KVSKBACommissionJournalLine) :#

Summary: Posts a commission journal line after performing validation checks. This function validates the journal line, creates commission entries, and updates source documents.

procedure RunWithCheck(var OriginalCommissionJournalLine: Record "KVSKBACommissionJournalLine"): 

Parameters:

  • OriginalCommissionJournalLine: The commission journal line that needs to be posted.

Remarks: The procedure performs the following operations: 1. Validates the journal line using ComJnlCheckLine codeunit 2. Creates commission entry records with all relevant data 3. Handles correction entries and validates correction logic 4. Updates sales invoice/credit memo lines to mark commission as posted 5. Manages commission register for tracking purposes Supports both regular and correction entries for salesperson and 2nd salesperson calculations.

Events#

OnCodeOnAfterInsertCommissionEntry(Record KVSKBACommissionJournalLine, Record KVSKBACommissionEntry) :#

Summary: Integration Event that is raised after inserting a commission entry record. Use this event to perform additional processing after the commission entry has been created.

[IntegrationEvent(false, false)]
local procedure OnCodeOnAfterInsertCommissionEntry(KVSKBACommissionJournalLine: Record "KVSKBACommissionJournalLine"; var KVSKBACommissionEntry: Record "KVSKBACommissionEntry"): 
[EventSubscriber(ObjectType::Codeunit, Codeunit::"KVSKBAComJnlPostLine", 'OnCodeOnAfterInsertCommissionEntry', '', false, false)]
local procedure DoSomethingOnCodeOnAfterInsertCommissionEntry(KVSKBACommissionJournalLine: Record "KVSKBACommissionJournalLine"; var KVSKBACommissionEntry: Record "KVSKBACommissionEntry")
begin
end;

Parameters:

  • KVSKBACommissionJournalLine: The commission journal line that was posted.
  • KVSKBACommissionEntry: The commission entry record that was created and inserted.

Remarks: This event allows external extensions to perform additional operations after a commission entry has been successfully created, such as creating related records or triggering notifications.

OnCodeOnBeforeInsertCommissionEntry(Record KVSKBACommissionJournalLine, Record KVSKBACommissionEntry) :#

Summary: Integration Event that is raised before inserting a commission entry record. Use this event to modify commission entry data or perform validation before insertion.

[IntegrationEvent(false, false)]
local procedure OnCodeOnBeforeInsertCommissionEntry(KVSKBACommissionJournalLine: Record "KVSKBACommissionJournalLine"; var KVSKBACommissionEntry: Record "KVSKBACommissionEntry"): 
[EventSubscriber(ObjectType::Codeunit, Codeunit::"KVSKBAComJnlPostLine", 'OnCodeOnBeforeInsertCommissionEntry', '', false, false)]
local procedure DoSomethingOnCodeOnBeforeInsertCommissionEntry(KVSKBACommissionJournalLine: Record "KVSKBACommissionJournalLine"; var KVSKBACommissionEntry: Record "KVSKBACommissionEntry")
begin
end;

Parameters:

  • KVSKBACommissionJournalLine: The commission journal line being posted.
  • KVSKBACommissionEntry: The commission entry record that will be inserted. Modify this record as needed.

Remarks: This event allows external extensions to customize commission entry data before it is inserted into the database. All standard fields have already been populated from the journal line.