KVSPSAAdvancePaymentPlanMgt#
Procedures#
CalcBaseSalesAmountPSP(Record KVSPSAJobPSPLine) : Decimal#
Summary: Calculate the base sales amount for a PSP line. Depend on the type of plan, it either calculates the amount for PSP Line or for the entire job.
procedure CalcBaseSalesAmountPSP(SourceJobPSPLine: Record "KVSPSAJobPSPLine"): Decimal
Parameters:
SourceJobPSPLine
: The PSP Line which is the source of the calculation
Returns: Return the sales amount based on the Field "Total Price (ICY)"
CreatePlanningEntriesForSinglePSPLine(Record KVSPSAJobPSPLine, Boolean) :#
Summary: Create planning entries for a single PSP line. This procedure is used to create planning entries for a single PSP line, either for an advance payment or for a regular payment plan.
procedure CreatePlanningEntriesForSinglePSPLine(JobPSPLine: Record "KVSPSAJobPSPLine"; ForAdvance: Boolean):
Parameters:
JobPSPLine
: PSP Line for the planning EntriesForAdvance
: Indicates whether the planning entries are for an advance payment (true) or a regular payment plan (false)
Events#
KVSPSAOnAfterDialogCloseInCreateInvoiceFromJobPaymentPlanningEntry(Record KVSPSAJobPaymentPlanningEntry, Record Sales Header) :#
[IntegrationEvent(false, false)]
local procedure KVSPSAOnAfterDialogCloseInCreateInvoiceFromJobPaymentPlanningEntry(var JobPaymentPlanningEntry: Record "KVSPSAJobPaymentPlanningEntry"; var SalesHeader: Record "Sales Header"):
[EventSubscriber(ObjectType::Codeunit, Codeunit::"KVSPSAAdvancePaymentPlanMgt", 'KVSPSAOnAfterDialogCloseInCreateInvoiceFromJobPaymentPlanningEntry', '', false, false)]
local procedure DoSomethingKVSPSAOnAfterDialogCloseInCreateInvoiceFromJobPaymentPlanningEntry(var JobPaymentPlanningEntry: Record "KVSPSAJobPaymentPlanningEntry"; var SalesHeader: Record "Sales Header")
begin
end;
KVSPSAOnAfterGetJobPSPLineForSalesLine(Record Sales Line, Record KVSPSAJobPSPLine, Record KVSPSAJobPaymentPlanningEntry) :#
Summary: This event is raised after the Job PSP Line is retrieved for the Sales Line. It can be used to assign additonial values to the Sales Line.
[IntegrationEvent(false, false)]
local procedure KVSPSAOnAfterGetJobPSPLineForSalesLine(var SalesLine: Record "Sales Line"; KVSPSAJobPSPLine: Record "KVSPSAJobPSPLine"; JobPaymentPlanningEntry: Record "KVSPSAJobPaymentPlanningEntry"):
[EventSubscriber(ObjectType::Codeunit, Codeunit::"KVSPSAAdvancePaymentPlanMgt", 'KVSPSAOnAfterGetJobPSPLineForSalesLine', '', false, false)]
local procedure DoSomethingKVSPSAOnAfterGetJobPSPLineForSalesLine(var SalesLine: Record "Sales Line"; KVSPSAJobPSPLine: Record "KVSPSAJobPSPLine"; JobPaymentPlanningEntry: Record "KVSPSAJobPaymentPlanningEntry")
begin
end;
Parameters:
SalesLine
:KVSPSAJobPSPLine
:JobPaymentPlanningEntry
:
KVSPSAOnBeforeConfirmNoMilestonesFoundContinue(Boolean, Record KVSPSAJobPSPLine, Boolean) :#
[IntegrationEvent(false, false)]
local procedure KVSPSAOnBeforeConfirmNoMilestonesFoundContinue(var IsHandled: Boolean; var JobPSPLine: Record "KVSPSAJobPSPLine"; ForAdvance: Boolean):
[EventSubscriber(ObjectType::Codeunit, Codeunit::"KVSPSAAdvancePaymentPlanMgt", 'KVSPSAOnBeforeConfirmNoMilestonesFoundContinue', '', false, false)]
local procedure DoSomethingKVSPSAOnBeforeConfirmNoMilestonesFoundContinue(var IsHandled: Boolean; var JobPSPLine: Record "KVSPSAJobPSPLine"; ForAdvance: Boolean)
begin
end;
KVSPSAOnBeforeConfirmUpdateDescriptionInJobPaymentPlanning(Boolean, Record KVSPSAJobPSPLine, Record KVSPSAJobPaymentPlanningEntry, Decimal) :#
[IntegrationEvent(false, false)]
local procedure KVSPSAOnBeforeConfirmUpdateDescriptionInJobPaymentPlanning(var IsHandled: Boolean; var JobPSPLine: Record "KVSPSAJobPSPLine"; JobPaymentPlanningEntry: Record "KVSPSAJobPaymentPlanningEntry"; BaseAmt: Decimal):
[EventSubscriber(ObjectType::Codeunit, Codeunit::"KVSPSAAdvancePaymentPlanMgt", 'KVSPSAOnBeforeConfirmUpdateDescriptionInJobPaymentPlanning', '', false, false)]
local procedure DoSomethingKVSPSAOnBeforeConfirmUpdateDescriptionInJobPaymentPlanning(var IsHandled: Boolean; var JobPSPLine: Record "KVSPSAJobPSPLine"; JobPaymentPlanningEntry: Record "KVSPSAJobPaymentPlanningEntry"; BaseAmt: Decimal)
begin
end;
KVSPSAOnBeforeFindJobPaymentPlanningEntry(Record KVSPSAJobPaymentPlanningEntry) :#
[IntegrationEvent(false, false)]
local procedure KVSPSAOnBeforeFindJobPaymentPlanningEntry(var JobPaymentPlanningEntry: Record "KVSPSAJobPaymentPlanningEntry"):
[EventSubscriber(ObjectType::Codeunit, Codeunit::"KVSPSAAdvancePaymentPlanMgt", 'KVSPSAOnBeforeFindJobPaymentPlanningEntry', '', false, false)]
local procedure DoSomethingKVSPSAOnBeforeFindJobPaymentPlanningEntry(var JobPaymentPlanningEntry: Record "KVSPSAJobPaymentPlanningEntry")
begin
end;
KVSPSAOnBeforeModifySalesHeader(Record KVSPSAJobPaymentPlanningEntry, Record Sales Header) :#
Summary: This event is raised before the modification of the Sales Header record. The Sales Header is modified when creating an invoice from the Job Payment Planning Entry. It can be used to assign additonial values to the Sales Header.
[IntegrationEvent(false, false)]
local procedure KVSPSAOnBeforeModifySalesHeader(JobPaymentPlanningEntry: Record "KVSPSAJobPaymentPlanningEntry"; var SalesHeader: Record "Sales Header"):
[EventSubscriber(ObjectType::Codeunit, Codeunit::"KVSPSAAdvancePaymentPlanMgt", 'KVSPSAOnBeforeModifySalesHeader', '', false, false)]
local procedure DoSomethingKVSPSAOnBeforeModifySalesHeader(JobPaymentPlanningEntry: Record "KVSPSAJobPaymentPlanningEntry"; var SalesHeader: Record "Sales Header")
begin
end;
Parameters:
JobPaymentPlanningEntry
:SalesHeader
:
KVSPSAOnBeforeModifySalesLine(Record KVSPSAJobPaymentPlanningEntry, Record Sales Line) :#
Summary: This event is raised before the modification of the Sales Line record. The Sales Line is modified when creating an invoice from the Job Payment Planning Entry. It can be used to assign additonial values to the Sales Line.
[IntegrationEvent(false, false)]
local procedure KVSPSAOnBeforeModifySalesLine(JobPaymentPlanningEntry: Record "KVSPSAJobPaymentPlanningEntry"; var SalesLine: Record "Sales Line"):
[EventSubscriber(ObjectType::Codeunit, Codeunit::"KVSPSAAdvancePaymentPlanMgt", 'KVSPSAOnBeforeModifySalesLine', '', false, false)]
local procedure DoSomethingKVSPSAOnBeforeModifySalesLine(JobPaymentPlanningEntry: Record "KVSPSAJobPaymentPlanningEntry"; var SalesLine: Record "Sales Line")
begin
end;
Parameters:
JobPaymentPlanningEntry
:SalesLine
:
KVSPSAOnBeforeResponseAfterInvoiceCreated(Record Sales Header, Decimal, Boolean) :#
Summary: This event is raised before the response after the invoice is created from the Job Payment Planning Entry. It can be to supress the existing Response.
[IntegrationEvent(false, false)]
local procedure KVSPSAOnBeforeResponseAfterInvoiceCreated(SalesHeader: Record "Sales Header"; Counter: Decimal; var IsHandled: Boolean):
[EventSubscriber(ObjectType::Codeunit, Codeunit::"KVSPSAAdvancePaymentPlanMgt", 'KVSPSAOnBeforeResponseAfterInvoiceCreated', '', false, false)]
local procedure DoSomethingKVSPSAOnBeforeResponseAfterInvoiceCreated(SalesHeader: Record "Sales Header"; Counter: Decimal; var IsHandled: Boolean)
begin
end;
Parameters:
SalesHeader
:Counter
:IsHandled
: