Skip to content

KVSPSADistributionBudgetMatrix#

Events#

KVSPSAOnAfterInsertTempJobBudgetLines(Record KVSPSA Job Budget Line, Record KVSPSAJobDistribWPMapping) :#

Summary: Use this function to add lines to the matrix. Use the line no for positioning and the "Matrix Line No." Field to identify your line.

[IntegrationEvent(false, false)]
local procedure KVSPSAOnAfterInsertTempJobBudgetLines(var TempJobBudgetLine: Record "KVSPSA Job Budget Line" temporary; JobDistribWPMapping: Record "KVSPSAJobDistribWPMapping"): 
[EventSubscriber(ObjectType::Page, Page::"KVSPSADistributionBudgetMatrix", 'KVSPSAOnAfterInsertTempJobBudgetLines', '', false, false)]
local procedure DoSomethingKVSPSAOnAfterInsertTempJobBudgetLines(var TempJobBudgetLine: Record "KVSPSA Job Budget Line" temporary; JobDistribWPMapping: Record "KVSPSAJobDistribWPMapping")
begin
end;

Parameters:

  • TempJobBudgetLine: Instance to add your line
  • JobDistribWPMapping: Mapping in which is defined which lines should be visible

KVSPSAOnGetOriginalJobBudgetLineLineNoElse(Integer, Record KVSPSA Job Budget Line) :#

Summary: Use this function to calc the Line No. of the original Job Budget Line.

[IntegrationEvent(false, false)]
local procedure KVSPSAOnGetOriginalJobBudgetLineLineNoElse(var LineNo: Integer; CurrentTempJobBudgetLine: Record "KVSPSA Job Budget Line" temporary): 
[EventSubscriber(ObjectType::Page, Page::"KVSPSADistributionBudgetMatrix", 'KVSPSAOnGetOriginalJobBudgetLineLineNoElse', '', false, false)]
local procedure DoSomethingKVSPSAOnGetOriginalJobBudgetLineLineNoElse(var LineNo: Integer; CurrentTempJobBudgetLine: Record "KVSPSA Job Budget Line" temporary)
begin
end;

Parameters:

  • LineNo: Line No. of the original Job PSP Line
  • CurrentTempJobBudgetLine: Current Matrix Line

KVSPSAOnCalcMatrixCellDataValueElse(Text, Integer, Record KVSPSADistributionEntry, Record KVSPSA Job Budget Line, Boolean) :#

Summary: Use this function to calc the CellDataValue for added lines

[IntegrationEvent(false, false)]
local procedure KVSPSAOnCalcMatrixCellDataValueElse(var GlobalMatrixCellData: Text; ColumnID: Integer; var DistributionEntry: Record "KVSPSADistributionEntry"; CurrentTempJobBudgetLine: Record "KVSPSA Job Budget Line" temporary; var IsHandled: Boolean): 
[EventSubscriber(ObjectType::Page, Page::"KVSPSADistributionBudgetMatrix", 'KVSPSAOnCalcMatrixCellDataValueElse', '', false, false)]
local procedure DoSomethingKVSPSAOnCalcMatrixCellDataValueElse(var GlobalMatrixCellData: Text; ColumnID: Integer; var DistributionEntry: Record "KVSPSADistributionEntry"; CurrentTempJobBudgetLine: Record "KVSPSA Job Budget Line" temporary; var IsHandled: Boolean)
begin
end;

Parameters:

  • GlobalMatrixCellData: Matrix Cell Values
  • ColumnID: Current Column
  • DistributionEntry: Related Distribution Entry/Entries
  • CurrentTempJobBudgetLine: Current Matrix Line
  • IsHandled: use this to skip default code

KVSPSAOnAfterValidateQuantityOnBeforeFunction(Record KVSPSADistributionEntry, Text, Integer, Record KVSPSA Job Budget Line, Boolean, Text, Text, Boolean) :#

Summary: Use this function to react on User Input on your added lines.

[IntegrationEvent(false, false)]
local procedure KVSPSAOnAfterValidateQuantityOnBeforeFunction(var MatrixRecords: Record "KVSPSADistributionEntry"; var GlobalMatrixCellData: Text; ColumnID: Integer; CurrentTempJobBudgetLine: Record "KVSPSA Job Budget Line" temporary; var IsHandled: Boolean; var CurrColumn: Text; var CurrRow: Text; var ActivatePage: Boolean): 
[EventSubscriber(ObjectType::Page, Page::"KVSPSADistributionBudgetMatrix", 'KVSPSAOnAfterValidateQuantityOnBeforeFunction', '', false, false)]
local procedure DoSomethingKVSPSAOnAfterValidateQuantityOnBeforeFunction(var MatrixRecords: Record "KVSPSADistributionEntry"; var GlobalMatrixCellData: Text; ColumnID: Integer; CurrentTempJobBudgetLine: Record "KVSPSA Job Budget Line" temporary; var IsHandled: Boolean; var CurrColumn: Text; var CurrRow: Text; var ActivatePage: Boolean)
begin
end;

Parameters:

  • MatrixRecords: Matrix Records
  • GlobalMatrixCellData: Matrix Cell Values
  • ColumnID: Current Column
  • CurrentTempJobBudgetLine: Current Matrix Line
  • IsHandled: use this to skip default code
  • CurrColumn: Current Column
  • CurrRow: Current Row
  • ActivatePage: Set this to Activate Page after your code

KVSPSAOnDrillDownField(Record KVSPSADistributionEntry, Integer, Record KVSPSA Job Budget Line, Boolean) :#

Summary: use this function to react on drilldown of a field in your line

[IntegrationEvent(false, false)]
local procedure KVSPSAOnDrillDownField(var MatrixRecords: Record "KVSPSADistributionEntry"; ColumnID: Integer; CurrentTempJobBudgetLine: Record "KVSPSA Job Budget Line" temporary; var IsHandled: Boolean): 
[EventSubscriber(ObjectType::Page, Page::"KVSPSADistributionBudgetMatrix", 'KVSPSAOnDrillDownField', '', false, false)]
local procedure DoSomethingKVSPSAOnDrillDownField(var MatrixRecords: Record "KVSPSADistributionEntry"; ColumnID: Integer; CurrentTempJobBudgetLine: Record "KVSPSA Job Budget Line" temporary; var IsHandled: Boolean)
begin
end;

Parameters:

  • MatrixRecords: Current Matrix Records
  • ColumnID: Current Column
  • CurrentTempJobBudgetLine: Current Matrix Line
  • IsHandled: Use this function to skip default code

KVSPSAOnAfterSetStyleExpr(Record KVSPSA Job Budget Line, Boolean, Boolean) :#

Summary: Use this function to overwrite GlobalIsPlaning and GlobalIsNotActual for your line.

[IntegrationEvent(false, false)]
local procedure KVSPSAOnAfterSetStyleExpr(CurrentTempJobBudgetLine: Record "KVSPSA Job Budget Line" temporary; var IsNotActual: Boolean; var IsPlanningLine: Boolean): 
[EventSubscriber(ObjectType::Page, Page::"KVSPSADistributionBudgetMatrix", 'KVSPSAOnAfterSetStyleExpr', '', false, false)]
local procedure DoSomethingKVSPSAOnAfterSetStyleExpr(CurrentTempJobBudgetLine: Record "KVSPSA Job Budget Line" temporary; var IsNotActual: Boolean; var IsPlanningLine: Boolean)
begin
end;

Parameters:

  • CurrentTempJobBudgetLine: Current Matrix Line
  • IsNotActual: Is Not Actual Indicator
  • IsPlanningLine: Is Planning Line