Skip to content

KVSPSAJobAccSchedManagement#

Procedures#

OnRun#

procedure OnRun(Rec: Record "KVSPSAJob Acc. Schedule Line")

CalcCell(Record KVSPSAJob Acc. Schedule Line, Record KVSPSAJob Column Layout, Boolean) : Decimal#

Summary: CalcCell calculates the value of a cell in a job account schedule line based on the provided job column layout. It takes into account various filters and settings, and returns the calculated value as a Decimal. It also handles different display options such as showing only positive or negative values, indentation, and sign inversion. The function uses global variables to manage state and caching, ensuring efficient recalculation only when necessary.

procedure CalcCell(var JobAccScheduleLine: Record "KVSPSAJob Acc. Schedule Line"; var JobColumnLayout: Record "KVSPSAJob Column Layout"; CalcAddCurr: Boolean): Decimal

Parameters:

  • JobAccScheduleLine: Passed record containing the job account schedule line data.
  • JobColumnLayout: Passed record containing the job column layout data.
  • CalcAddCurr: Passed Boolean indicating whether to calculate additional currency values.

Returns: Returns the calculated value as a Decimal.

FormatCellAsText(Record KVSPSAJob Column Layout, Decimal) : Text[30]#

Summary: FormatCellAsText formats a decimal value as text based on the provided job column layout.

procedure FormatCellAsText(var JobColumnLayout2: Record "KVSPSAJob Column Layout"; Value: Decimal): Text[30]

Parameters:

  • JobColumnLayout2: Passed record containing the job column layout data.
  • Value: Passed decimal value to be formatted as text.

Returns: Returns the formatted value as a Text[30].

GetDimTotalingFilter(Integer, Text[250]) : Text[1024]#

Summary: This function converts a dimension totaling filter into a standard filter format.

procedure GetDimTotalingFilter(DimNo: Integer; DimTotaling: Text[250]): Text[1024]

Parameters:

  • DimNo: Passed integer representing the dimension number.
  • DimTotaling: Passed text representing the dimension totaling filter.

Returns: Returns the converted filter as a Text[1024].

GetDivisionError() : Boolean#

Summary: GetDivisionError checks if there was a division by zero error during the calculation of job account schedule cells.

procedure GetDivisionError(): Boolean

Returns: Returns true if there was a division error, otherwise false.

GetPeriodError() : Boolean#

Summary: GetPeriodError checks if there was a period error during the calculation of job account schedule cells.

procedure GetPeriodError(): Boolean

Returns: Returns true if there was a period error, otherwise false.

Events#

KVSPSAOnAfterAmountTypeCommitmentWithoutAnalysisViewInCalcJobAcc(Record KVSPSAJob Acc. Schedule Line, Record KVSPSAJob Column Layout, Record Purchase Line, Option, Decimal) :#

[IntegrationEvent(false, false)]
local procedure KVSPSAOnAfterAmountTypeCommitmentWithoutAnalysisViewInCalcJobAcc(var JobAccScheduleLine: Record "KVSPSAJob Acc. Schedule Line"; var JobColumnLayout: Record "KVSPSAJob Column Layout"; var PurchaseLine: Record "Purchase Line"; AmountType: Option; var ColValue: Decimal): 
[EventSubscriber(ObjectType::Codeunit, Codeunit::"KVSPSAJobAccSchedManagement", 'KVSPSAOnAfterAmountTypeCommitmentWithoutAnalysisViewInCalcJobAcc', '', false, false)]
local procedure DoSomethingKVSPSAOnAfterAmountTypeCommitmentWithoutAnalysisViewInCalcJobAcc(var JobAccScheduleLine: Record "KVSPSAJob Acc. Schedule Line"; var JobColumnLayout: Record "KVSPSAJob Column Layout"; var PurchaseLine: Record "Purchase Line"; AmountType: Option; var ColValue: Decimal)
begin
end;

KVSPSAOnAfterAmountTypeJobAccountEntriesWithoutAnalysisViewInCalcJobAcc(Record KVSPSAJob Acc. Schedule Line, Record KVSPSAJob Column Layout, Record KVSPSA Job Account Entry, Option, Decimal) :#

[IntegrationEvent(false, false)]
local procedure KVSPSAOnAfterAmountTypeJobAccountEntriesWithoutAnalysisViewInCalcJobAcc(var JobAccScheduleLine: Record "KVSPSAJob Acc. Schedule Line"; var JobColumnLayout: Record "KVSPSAJob Column Layout"; var JobAccountEntry: Record "KVSPSA Job Account Entry"; AmountType: Option; var ColValue: Decimal): 
[EventSubscriber(ObjectType::Codeunit, Codeunit::"KVSPSAJobAccSchedManagement", 'KVSPSAOnAfterAmountTypeJobAccountEntriesWithoutAnalysisViewInCalcJobAcc', '', false, false)]
local procedure DoSomethingKVSPSAOnAfterAmountTypeJobAccountEntriesWithoutAnalysisViewInCalcJobAcc(var JobAccScheduleLine: Record "KVSPSAJob Acc. Schedule Line"; var JobColumnLayout: Record "KVSPSAJob Column Layout"; var JobAccountEntry: Record "KVSPSA Job Account Entry"; AmountType: Option; var ColValue: Decimal)
begin
end;

KVSPSAOnAfterAmountTypeJobEntriesWithoutAnalysisViewInCalcJobAcc(Record KVSPSAJob Acc. Schedule Line, Record KVSPSAJob Column Layout, Record Job Ledger Entry, Option, Decimal) :#

[IntegrationEvent(false, false)]
local procedure KVSPSAOnAfterAmountTypeJobEntriesWithoutAnalysisViewInCalcJobAcc(var JobAccScheduleLine: Record "KVSPSAJob Acc. Schedule Line"; var JobColumnLayout: Record "KVSPSAJob Column Layout"; var JobLedgerEntry: Record "Job Ledger Entry"; AmountType: Option; var ColValue: Decimal): 
[EventSubscriber(ObjectType::Codeunit, Codeunit::"KVSPSAJobAccSchedManagement", 'KVSPSAOnAfterAmountTypeJobEntriesWithoutAnalysisViewInCalcJobAcc', '', false, false)]
local procedure DoSomethingKVSPSAOnAfterAmountTypeJobEntriesWithoutAnalysisViewInCalcJobAcc(var JobAccScheduleLine: Record "KVSPSAJob Acc. Schedule Line"; var JobColumnLayout: Record "KVSPSAJob Column Layout"; var JobLedgerEntry: Record "Job Ledger Entry"; AmountType: Option; var ColValue: Decimal)
begin
end;

KVSPSAOnAfterAmountTypeTimeCommitmentWithoutAnalysisViewInCalcJobAcc(Record KVSPSAJob Acc. Schedule Line, Record KVSPSAJob Column Layout, Record KVSPSAJobTimeLedgerEntry, Option, Decimal) :#

[IntegrationEvent(false, false)]
local procedure KVSPSAOnAfterAmountTypeTimeCommitmentWithoutAnalysisViewInCalcJobAcc(var JobAccScheduleLine: Record "KVSPSAJob Acc. Schedule Line"; var JobColumnLayout: Record "KVSPSAJob Column Layout"; var JobTimeLedgerEntry: Record "KVSPSAJobTimeLedgerEntry"; AmountType: Option; var ColValue: Decimal): 
[EventSubscriber(ObjectType::Codeunit, Codeunit::"KVSPSAJobAccSchedManagement", 'KVSPSAOnAfterAmountTypeTimeCommitmentWithoutAnalysisViewInCalcJobAcc', '', false, false)]
local procedure DoSomethingKVSPSAOnAfterAmountTypeTimeCommitmentWithoutAnalysisViewInCalcJobAcc(var JobAccScheduleLine: Record "KVSPSAJob Acc. Schedule Line"; var JobColumnLayout: Record "KVSPSAJob Column Layout"; var JobTimeLedgerEntry: Record "KVSPSAJobTimeLedgerEntry"; AmountType: Option; var ColValue: Decimal)
begin
end;

KVSPSAOnAfterCalcJobAccByLedgerEntryTypeElse(Record KVSPSAJob Account, Record KVSPSAJob Acc. Schedule Name, Record KVSPSAJob Acc. Schedule Line, Record KVSPSAJob Column Layout, Boolean, Option, Decimal) :#

[IntegrationEvent(false, false)]
local procedure KVSPSAOnAfterCalcJobAccByLedgerEntryTypeElse(var JobAccount: Record "KVSPSAJob Account"; JobAccScheduleName: Record "KVSPSAJob Acc. Schedule Name"; var JobAccScheduleLine: Record "KVSPSAJob Acc. Schedule Line"; var JobColumnLayout: Record "KVSPSAJob Column Layout"; CalcAddCurr: Boolean; AmountType: Option; var ColValue: Decimal): 
[EventSubscriber(ObjectType::Codeunit, Codeunit::"KVSPSAJobAccSchedManagement", 'KVSPSAOnAfterCalcJobAccByLedgerEntryTypeElse', '', false, false)]
local procedure DoSomethingKVSPSAOnAfterCalcJobAccByLedgerEntryTypeElse(var JobAccount: Record "KVSPSAJob Account"; JobAccScheduleName: Record "KVSPSAJob Acc. Schedule Name"; var JobAccScheduleLine: Record "KVSPSAJob Acc. Schedule Line"; var JobColumnLayout: Record "KVSPSAJob Column Layout"; CalcAddCurr: Boolean; AmountType: Option; var ColValue: Decimal)
begin
end;

KVSPSAOnAfterCalcNonTotalingCellValueByArea(Record KVSPSAJob Account, Record KVSPSAJob Acc. Schedule Line, Record KVSPSAJob Column Layout, Boolean, Decimal) :#

[IntegrationEvent(false, false)]
local procedure KVSPSAOnAfterCalcNonTotalingCellValueByArea(var JobAccount: Record "KVSPSAJob Account"; var JobAccScheduleLine: Record "KVSPSAJob Acc. Schedule Line"; var JobColumnLayout: Record "KVSPSAJob Column Layout"; CalcAddCurr: Boolean; var Result: Decimal): 
[EventSubscriber(ObjectType::Codeunit, Codeunit::"KVSPSAJobAccSchedManagement", 'KVSPSAOnAfterCalcNonTotalingCellValueByArea', '', false, false)]
local procedure DoSomethingKVSPSAOnAfterCalcNonTotalingCellValueByArea(var JobAccount: Record "KVSPSAJob Account"; var JobAccScheduleLine: Record "KVSPSAJob Acc. Schedule Line"; var JobColumnLayout: Record "KVSPSAJob Column Layout"; CalcAddCurr: Boolean; var Result: Decimal)
begin
end;

KVSPSAOnAfterCalcRecPaymentsByLedgerEntryTypeElse(Record KVSPSAJob Account, Record KVSPSAJob Acc. Schedule Name, Record KVSPSAJob Acc. Schedule Line, Record KVSPSAJob Column Layout, Boolean, Decimal) :#

[IntegrationEvent(false, false)]
local procedure KVSPSAOnAfterCalcRecPaymentsByLedgerEntryTypeElse(var JobAccount: Record "KVSPSAJob Account"; JobAccScheduleName: Record "KVSPSAJob Acc. Schedule Name"; var JobAccScheduleLine: Record "KVSPSAJob Acc. Schedule Line"; var JobColumnLayout: Record "KVSPSAJob Column Layout"; CalcAddCurr: Boolean; var ColValue: Decimal): 
[EventSubscriber(ObjectType::Codeunit, Codeunit::"KVSPSAJobAccSchedManagement", 'KVSPSAOnAfterCalcRecPaymentsByLedgerEntryTypeElse', '', false, false)]
local procedure DoSomethingKVSPSAOnAfterCalcRecPaymentsByLedgerEntryTypeElse(var JobAccount: Record "KVSPSAJob Account"; JobAccScheduleName: Record "KVSPSAJob Acc. Schedule Name"; var JobAccScheduleLine: Record "KVSPSAJob Acc. Schedule Line"; var JobColumnLayout: Record "KVSPSAJob Column Layout"; CalcAddCurr: Boolean; var ColValue: Decimal)
begin
end;

KVSPSAOnAfterCalcSalesPOCByLedgerEntryTypeElse(Record KVSPSAJob Account, Record KVSPSAJob Acc. Schedule Name, Record KVSPSAJob Acc. Schedule Line, Record KVSPSAJob Column Layout, Boolean, Decimal) :#

[IntegrationEvent(false, false)]
local procedure KVSPSAOnAfterCalcSalesPOCByLedgerEntryTypeElse(var JobAccount: Record "KVSPSAJob Account"; JobAccScheduleName: Record "KVSPSAJob Acc. Schedule Name"; var JobAccScheduleLine: Record "KVSPSAJob Acc. Schedule Line"; var JobColumnLayout: Record "KVSPSAJob Column Layout"; CalcAddCurr: Boolean; var ColValue: Decimal): 
[EventSubscriber(ObjectType::Codeunit, Codeunit::"KVSPSAJobAccSchedManagement", 'KVSPSAOnAfterCalcSalesPOCByLedgerEntryTypeElse', '', false, false)]
local procedure DoSomethingKVSPSAOnAfterCalcSalesPOCByLedgerEntryTypeElse(var JobAccount: Record "KVSPSAJob Account"; JobAccScheduleName: Record "KVSPSAJob Acc. Schedule Name"; var JobAccScheduleLine: Record "KVSPSAJob Acc. Schedule Line"; var JobColumnLayout: Record "KVSPSAJob Column Layout"; CalcAddCurr: Boolean; var ColValue: Decimal)
begin
end;

KVSPSAOnAfterSetJobAnalysisViewEntryFilterOnCalcJobAcc(Record KVSPSAJob Analysis View Entry, Record KVSPSAJob Account, Record KVSPSAJob Acc. Schedule Line, Record KVSPSAJob Column Layout) :#

[IntegrationEvent(false, false)]
local procedure KVSPSAOnAfterSetJobAnalysisViewEntryFilterOnCalcJobAcc(var JobAnalysisViewEntry: Record "KVSPSAJob Analysis View Entry"; var JobAccount: Record "KVSPSAJob Account"; var JobAccScheduleLine: Record "KVSPSAJob Acc. Schedule Line"; var JobColumnLayout: Record "KVSPSAJob Column Layout"): 
[EventSubscriber(ObjectType::Codeunit, Codeunit::"KVSPSAJobAccSchedManagement", 'KVSPSAOnAfterSetJobAnalysisViewEntryFilterOnCalcJobAcc', '', false, false)]
local procedure DoSomethingKVSPSAOnAfterSetJobAnalysisViewEntryFilterOnCalcJobAcc(var JobAnalysisViewEntry: Record "KVSPSAJob Analysis View Entry"; var JobAccount: Record "KVSPSAJob Account"; var JobAccScheduleLine: Record "KVSPSAJob Acc. Schedule Line"; var JobColumnLayout: Record "KVSPSAJob Column Layout")
begin
end;

KVSPSAOnAfterSetJobLedgerEntryFilterOnCalcJobAcc(Record Job Ledger Entry, Record KVSPSAJob Account, Record KVSPSAJob Acc. Schedule Line, Record KVSPSAJob Column Layout) :#

[IntegrationEvent(false, false)]
local procedure KVSPSAOnAfterSetJobLedgerEntryFilterOnCalcJobAcc(var JobLedgerEntry: Record "Job Ledger Entry"; var JobAccount: Record "KVSPSAJob Account"; var JobAccScheduleLine: Record "KVSPSAJob Acc. Schedule Line"; var JobColumnLayout: Record "KVSPSAJob Column Layout"): 
[EventSubscriber(ObjectType::Codeunit, Codeunit::"KVSPSAJobAccSchedManagement", 'KVSPSAOnAfterSetJobLedgerEntryFilterOnCalcJobAcc', '', false, false)]
local procedure DoSomethingKVSPSAOnAfterSetJobLedgerEntryFilterOnCalcJobAcc(var JobLedgerEntry: Record "Job Ledger Entry"; var JobAccount: Record "KVSPSAJob Account"; var JobAccScheduleLine: Record "KVSPSAJob Acc. Schedule Line"; var JobColumnLayout: Record "KVSPSAJob Column Layout")
begin
end;

KVSPSAOnAfterSetSetJobAccountEntryFilter(Record KVSPSA Job Account Entry, Record KVSPSAJob Column Layout, Record KVSPSAJob Acc. Schedule Line, Boolean, Record KVSPSAJob Account) :#

[IntegrationEvent(false, false)]
local procedure KVSPSAOnAfterSetSetJobAccountEntryFilter(var JobAccountEntry: Record "KVSPSA Job Account Entry"; JobColumnLayout: Record "KVSPSAJob Column Layout"; JobAccScheduleLine: Record "KVSPSAJob Acc. Schedule Line"; CalculateAdditionalReportingCurrency: Boolean; var JobAccount: Record "KVSPSAJob Account"): 
[EventSubscriber(ObjectType::Codeunit, Codeunit::"KVSPSAJobAccSchedManagement", 'KVSPSAOnAfterSetSetJobAccountEntryFilter', '', false, false)]
local procedure DoSomethingKVSPSAOnAfterSetSetJobAccountEntryFilter(var JobAccountEntry: Record "KVSPSA Job Account Entry"; JobColumnLayout: Record "KVSPSAJob Column Layout"; JobAccScheduleLine: Record "KVSPSAJob Acc. Schedule Line"; CalculateAdditionalReportingCurrency: Boolean; var JobAccount: Record "KVSPSAJob Account")
begin
end;

KVSPSAOnBeforeCalcCellExit(Record KVSPSAJob Acc. Schedule Line, Record KVSPSAJob Column Layout, Boolean, Decimal) :#

[IntegrationEvent(false, false)]
local procedure KVSPSAOnBeforeCalcCellExit(var JobAccScheduleLine: Record "KVSPSAJob Acc. Schedule Line"; var JobColumnLayout: Record "KVSPSAJob Column Layout"; CalcAddCurr: Boolean; var Result: Decimal): 
[EventSubscriber(ObjectType::Codeunit, Codeunit::"KVSPSAJobAccSchedManagement", 'KVSPSAOnBeforeCalcCellExit', '', false, false)]
local procedure DoSomethingKVSPSAOnBeforeCalcCellExit(var JobAccScheduleLine: Record "KVSPSAJob Acc. Schedule Line"; var JobColumnLayout: Record "KVSPSAJob Column Layout"; CalcAddCurr: Boolean; var Result: Decimal)
begin
end;

KVSPSAOnBeforeTestBalance(Record KVSPSAJob Account, Record KVSPSAJob Acc. Schedule Name, Record KVSPSAJob Acc. Schedule Line, Record KVSPSAJob Column Layout, Integer, Decimal, Boolean, Boolean) :#

[IntegrationEvent(false, false)]
local procedure KVSPSAOnBeforeTestBalance(JobAccount: Record "KVSPSAJob Account"; var JobAccScheduleName: Record "KVSPSAJob Acc. Schedule Name"; var JobAccScheduleLine: Record "KVSPSAJob Acc. Schedule Line"; var JobColumnLayout: Record "KVSPSAJob Column Layout"; AmountType: Integer; ColValue: Decimal; CalcAddCurr: Boolean; var TestBalance: Boolean): 
[EventSubscriber(ObjectType::Codeunit, Codeunit::"KVSPSAJobAccSchedManagement", 'KVSPSAOnBeforeTestBalance', '', false, false)]
local procedure DoSomethingKVSPSAOnBeforeTestBalance(JobAccount: Record "KVSPSAJob Account"; var JobAccScheduleName: Record "KVSPSAJob Acc. Schedule Name"; var JobAccScheduleLine: Record "KVSPSAJob Acc. Schedule Line"; var JobColumnLayout: Record "KVSPSAJob Column Layout"; AmountType: Integer; ColValue: Decimal; CalcAddCurr: Boolean; var TestBalance: Boolean)
begin
end;