Skip to content

KVSPSAJobPSPLine#

Fields#

Name Type Note
Job No. Code[20]
Version No. Code[20]
Line No. Integer
Phase Code Code[20]
Task Code Code[20]
Step Code Code[20]
Type Option OptionMembers: ,Work Package,Heading,Begin-Total,End-Total,Heading-Sum,Block
No. Code[20]
Starting Date Date
Description Text[100]
Quantity Decimal
Direct Unit Cost (LCY) Decimal
Unit Cost (LCY) Decimal
Total Cost (Budget LCY) Decimal FlowField
Unit Price (LCY) Decimal
Total Price (Budget LCY) Decimal FlowField
Manual Unit Price Boolean
Date Filter Date FlowFilter
Qty. (Job Budget) Decimal FlowField
Total Cost (LCY) Decimal
Total Price (LCY) Decimal
Job Budget Name Code[10]
Active Boolean
Comment Integer FlowField
Previous Text Boolean FlowField
Indentation Integer
Subtotal Total Cost (Budget) Decimal
Subtotal Total Price (Budget) Decimal
Subtotal Total Cost Decimal FlowField
Subtotal Total Price (LCY) Decimal FlowField
Position No. Code[20]
Totaling Text[30]
Usage Quantity (Base) Decimal FlowField
Usage Total Cost (LCY) Decimal FlowField
Usage Total Price (LCY) Decimal FlowField
Ending Date Date
Blocked Boolean
Job Status Enum Job Status FlowField
Work Status Enum (KVSPSAWorkStatusType)
After Text Boolean FlowField
Job Ledger Entry Exist Boolean FlowField
Shortcut Dimension 1 Code Code[20]
Shortcut Dimension 2 Code Code[20]
Dimension Set ID Integer
Subtotal Total Cost (Usage) Decimal
Subtotal Total Price (Usage) Decimal
Subtotal Qty. (Budget) Decimal
Subtotal Qty. (Usage) Decimal
Subtotal Total Qty. Decimal FlowField
Subtotal Total Sales Qty. Decimal FlowField
Subtotal SalesQuoteAmt Decimal
Subtotal SalesOrderAmt Decimal
Subtotal SalesInvoiceAmt Decimal
KVSPSAInvoicing Type Enum (KVSPSAPspInvoicingType)
Subtotal SalesOrderOutstdAmt Decimal
Subtotal Line Disc. Amt (LCY) Decimal FlowField
Work Type Code Code[10]
Requisition Boolean
Description 2 Text[50]
Differing Sales Description Text[100]
Differing Sales Description 2 Text[50]
Location Code Code[10]
Bin Code Code[20]
Invoicing Quantity Decimal
Manual Invoicing Quantity Boolean
Suspend from Invoice Boolean
KVSPSAInvoicUnitOfMeasureCode Code[10]
Unit of Measure Code Code[10]
Sale Quantity (Base) Decimal FlowField
Sale - Total Cost (LCY) Decimal FlowField
Sale - Total Price (LCY) Decimal FlowField
Sale Subtotal Total Cost (LCY) Decimal
SaleSubtotal Total Price (LCY) Decimal
Sale Subtotal Qty. (LCY) Decimal
Budget Line Existing Boolean FlowField
Outstanding Sales Total Price Decimal
Subtotal Outstand. Sale Price Decimal
Calculation Formula Existing Boolean FlowField
Job Progress % Decimal
Posting Progress % Decimal
Subtotal Posting Progress Decimal
Posting Progress incl. Commit. Decimal
Subtotal Posting Progress Comm Decimal
Earned Value Decimal
Cost Variance Decimal
Cost Variance % Decimal
Estimated Total Cost Decimal
Earned Value Subtotal Decimal
Cost Variance Subtotal Decimal
Cost Variance % Subtotal Decimal
Estimated Total Cost Subtotal Decimal
Order Decimal
No. of Precursors Integer FlowField
Precursors Text[250]
Level No. Integer
Milestone Boolean
Copy from Line No. Integer
KVSPSATo-Do Progress Integer
Subtotal Commitment (LCY) Decimal
Time Commitment Decimal FlowField
Time Cost Commitment (LCY) Decimal FlowField
Subtotal Time Commitment Decimal
Subtotal Time Cost Com. (LCY) Decimal
Variance Qty Decimal
Variance Total Cost Decimal
Posted Time Qty. Decimal FlowField
Resource Filter Code[20] FlowFilter
Belongs to Line Integer
Line Discount % Decimal
Line Discount Amount (LCY) Decimal
Cost Factor Decimal
Profit Decimal
Profit % Decimal
Actual Profit Decimal
Actual Profit Percent Decimal
Calc. Outst. Sales Price Type Option OptionMembers: ,Budget-Invoice,Used-Invoice,KVSPSAInvoice Ledger Entry,Milestoneplan,Budget-POC-Invoice
Transfer in Sales Doc Option OptionMembers: PSP-Line,Budget-Lines,,No Transfer
PSPStatus Enum Job Status
Budget calculation Boolean
Manual Unit Cost Boolean
Manual Discount Boolean
Invoicing Delimination Boolean
Invoicing Delimination % Decimal
Invoicing Integration Option OptionMembers: PSP-Line,Budget-Lines,,No Transfer
Use as bundle Boolean
Esti. Amt to Compl. Bud. (LCY) Decimal FlowField
Time Posting w. Progress Boolean
Stock Liability Decimal Warning: Obsolete
StockLiability Decimal FlowField
Sales Budget Blocked Boolean
Closing Date Date
To-Do Progress PSP Integer Warning: Obsolete
Automatic Progess Calculation Boolean
Sales Invoice Amount Decimal FlowField
Sales Order Amount Decimal FlowField
Sales Quote Amount Decimal FlowField
Budget Line Disc. Amount (LCY) Decimal FlowField
Payment Plan Entry Filter Integer FlowFilter
Sales Order Outstd. Amount Decimal FlowField
Show in Res. Capacity Plan Option OptionMembers: Budget,Job To-Do's
Ignore Paym.-Plan in Inv-Sugg. Boolean
Assigned as Milestone Base Boolean FlowField
ActualExpansionStatus Integer
Usage Invoicing Qty. Decimal FlowField
Subtotal Usage Invoicing Qty. Decimal
PSP Line Selected by User Code[50]
WP-BOM in Usage Boolean
Duration in Days Integer
Planning Type Option OptionMembers: Automatic,Manual
No Consideration in Planning Boolean
Fixed Starting Date Boolean
Fixed Ending Date Boolean
No. of Successors Integer FlowField
Successors Text[250]
Subproject Manager Code[20]
Subproject Manager Name Text[100] FlowField
Invoice Currency Factor Decimal
Invoice Currency Date Date
Unit Price (ICY) Decimal
Total Price (ICY) Decimal
Line Discount Amount (ICY) Decimal
Total Price Budget (ICY) Decimal FlowField
Budget Line Disc. Amount (ICY) Decimal FlowField
Subtotal Total Price Decimal FlowField
Subtotal Line Disc. Amt Decimal FlowField
Job Invoice Currency Code Code[10] FlowField
Usage Total Price Decimal FlowField
Sale - Total Price Decimal FlowField
Sale - Line Amount (LCY) Decimal FlowField
Sale - Line Amount Decimal Warning: Obsolete
Sale - Discount Amount (LCY) Decimal FlowField
Sale - Discount Amount Decimal Warning: Obsolete
Qty. post. Inv. Ledger Decimal FlowField
Inv. Qty. post. Inv. Ledger Decimal FlowField
IC Partner Code Code[20]
Status IC Post Processing Option OptionMembers: ,Open,Processed
Source IC Partner Work Package Code[20]
Source IC Partner Phase Code Code[20]
Source IC Partner Task Code Code[20]
Source IC Partner Step Code Code[20]
Qty. IC Obligo (Base) Decimal FlowField
Total Price IC Obligo (LCY) Decimal FlowField
New Starting Date (PL) Date
New Ending Date (PL) Date
New Duration in Days (PL) Integer
Planning Conflict (PL) Boolean
Phase Code (Template) Code[20]
Task Code (Template) Code[20]
Step Code (Template) Code[20]
Template No. Code[20]
Template Line No. Integer
Sell-to Customer No. Code[20]
Sell-to Customer Name Text[100] FlowField
Bill-to Customer No. Code[20]
Bill-to Customer Name Text[100] FlowField
Budget Status Option OptionMembers: ,in check,released,rejected
Created by Sales Document Boolean
Distr. Calc. Formula Code Code[20]
Quantity Assigned Decimal FlowField
Quantity Unassigned Decimal
Period Unit Type Enum (KVSPSAPeriodUnitType)
Quantity Periods Integer
Quantity (Actual) Decimal
Rem. Quantity (Usage) Decimal
Sales Total (Open) Decimal
Qty. (Planned in Fut.) Decimal
Last Planning Update Date
Last Invoicing Update Date
Invoicing Quantity Fixed Boolean
Hide Invoicing Boolean
Inv. Quantity Assigned Decimal FlowField
Inv. Qty. Unassigned Decimal
Inv. Quantity (Open) Decimal
Missing Distr. Reason Type Enum (KVSPSADistributionReasonType)
Inv. Amount Assigned Decimal FlowField
Inv. Amount Unassigned Decimal
Outst. Order Amount Decimal FlowField
Do not Calc. Distr. Sugg. Line Boolean
Period Filter Code Code[20]
Last Manual Update Date
Amount Periods Decimal
Distribution Level Type Enum (KVSPSADistributionLevelType)
Time Com. (Inv. Qty) Decimal FlowField
Quantity Act + Comm. Decimal
Remaining Quantity Decimal
Inv. Qty Act + Comm. Decimal
Remaining Inv. Quantity Decimal
Actual + Commitment Costs Decimal
Amount Remaining Budget Decimal
Remaining Total Price Decimal
Total Cost Commitment Decimal
Quantity prev. Version Decimal
Inv. Qty prev. Version Decimal
Total Cost prev. Version Decimal
Total Price prev. Version Decimal
Quantity Origin Decimal
Inv. Quantity Origin Decimal
Total Cost Origin Decimal
Total Price Origin Decimal
Transfer Addition Boolean
Is Addition Boolean
Addition at Date
Add. from PSP Version Code[20]
Add. from PSP Job Bud Code[20]
Add. from PSP Descr. Text[100]
Subt. Qty. Act. + Comm. Decimal
Subt. Rem. Quantity Decimal
Subt. Rem. Inv. Qty Decimal
Subt. Total Cost A. + C. Decimal
Subt. Rem. Total Cost Decimal
Subt. Rem. Total Price Decimal
Subt. Total Cost Com. Decimal
Subt. Quantity Expected Decimal
Subt. Inv. Qty. Exp. Decimal
Subt. Total Cost Exp. Decimal
Subt. Total Price Exp. Decimal
Skip Origin Check Boolean
Transferred to Origin Boolean
Keep Total Quantity Boolean
Is New Version Copy Boolean
Use Resource Capacity Boolean
Distribution Base Type Enum (KVSPSADistributionBaseType)
Total Cost Assigned Decimal FlowField
Total Cost Unassigned Decimal
Rounding Precision Decimal
Total Cost (Act. + Pl.) Decimal
Total Cost (Act. + Pl. Budget) Decimal FlowField
No Active Planning Boolean
Distribute Differences Boolean
Line Updated Boolean
Quantity Assigned (Period) Decimal FlowField
Starting Date Filter (Distr.) Date FlowFilter
Ending Date Filter (Distr.) Date FlowFilter
Inv. Qty. Assign. (Period) Decimal FlowField
Total Cost As. (Period) Decimal FlowField
Total Price As. (Period) Decimal FlowField
Sell-To Contact No. Code[20]
Bill-To Contact No. Code[20]
Use in Resource Planning Boolean
RequestedNotPlannedQty Decimal FlowField
RequestedPlannedQty Decimal FlowField
OpenResourcePlanning Boolean FlowField
Subt. Total Cost Act.+Pl. Decimal FlowField
Quantity Assigned (Budget) Decimal FlowField
Inv. Quantity Assign. (Budget) Decimal FlowField
Inv. Amount Assigned (Budget) Decimal FlowField
Total Cost Assigned (Budget) Decimal FlowField

Procedures#

BudgetIntoPSPLine(Decimal, Decimal, Decimal, Decimal, Decimal) :#

Summary: This procedure update current WBS line with provided parameters. It is used to transfer budget values into the WBS line.

procedure BudgetIntoPSPLine(CostSum: Decimal; PriceSum: Decimal; DiscountSum: Decimal; PriceSumFCY: Decimal; DiscountSumFCY: Decimal): 

Parameters:

  • CostSum: Decimal value used for update psp line.
  • PriceSum: Decimal value used for update psp line.
  • DiscountSum: Decimal value used for update psp line.
  • PriceSumFCY: Decimal value used for update psp line.
  • DiscountSumFCY: Decimal value used for update psp line.

BudgetIntoPSPLineWithQuestion() :#

Summary: This procedure ask confirms to user before call function TransferBudgetIntoWBSLine.

procedure BudgetIntoPSPLineWithQuestion(): 

CalcMileStonePaymentPlans(Boolean) :#

Obsolete

This Element will be removed or changed with a future Version of the App.

[Obsolete('Replaced by CalcMileStonePaymentPlans(ForAdvance: Boolean; OnlyCurrectRecord: Boolean)', '25.1')]
procedure CalcMileStonePaymentPlans(ForAdvance: Boolean): 

CalcMileStonePaymentPlans(Boolean, Boolean) :#

Summary: This procedure calculates the milestone payment plans for the current job PSP header or for current job PSP line.

procedure CalcMileStonePaymentPlans(ForAdvance: Boolean; OnlyCurrectRecord: Boolean): 

Parameters:

  • ForAdvance: Specifies whether the payment plans are for advance payments.
  • OnlyCurrectRecord: Specifies whether to calculate only for job PSP line or for job PSP header.

CalcQtyperUOM(Boolean) : Decimal#

Obsolete

This Element will be removed or changed with a future Version of the App.

[Obsolete('Replaced by CalcQtyperUOM(Invoicing: Boolean; SkipBlockCheck: Boolean): Decimal', '25.1')]
procedure CalcQtyperUOM(Invoicing: Boolean): Decimal

CalcQtyperUOM(Boolean, Boolean) : Decimal#

Summary: This procedure calculates the quantity per unit of measure for the current job PSP line. It can skip the block check if specified.

procedure CalcQtyperUOM(Invoicing: Boolean; SkipBlockCheck: Boolean): Decimal

Parameters:

  • Invoicing: Specifies whether the calculation is for invoicing field or normal field.
  • SkipBlockCheck: Specifies whether to skip the block check during calculation.

Returns: Return the calculated quantity per unit of measure.

CalcStockLiability() : Decimal#

Summary: This procedure calculates the stock liability for the current job PSP line. It sums up the cost amounts from value entries related to the job PSP line

procedure CalcStockLiability(): Decimal

Returns: Return value of stock liability.

CalculatePurchaseLiabilityLCY() : Decimal#

Summary: This procedure calculates the purchase liability in local currency for the current job PSP line. It sums up the outstanding amounts from purchase lines related to the job PSP line.

procedure CalculatePurchaseLiabilityLCY(): Decimal

Returns: Reurn value of purchase liability in local currency.

ChangeDate() :#

Summary: This procedure opens a page to change the job PSP date fields.

procedure ChangeDate(): 

CheckConsistence(Boolean) :#

Summary: This procedure checks if there other PSP lines in same job PSP header has same specfic fields. If it already exists, it raises an error.

procedure CheckConsistence(FromInsertTrigger: Boolean): 

Parameters:

  • FromInsertTrigger: Specifies whether the check is called from the insert trigger.

CheckPaymentPlanTotal(Option) :#

Summary: This procedure checks amount between job PSP line and job payment plan.

procedure CheckPaymentPlanTotal(MessageType: Option): 

Parameters:

  • MessageType: Specifies the behavior of message to be displayed.

ClearIndentationForCurrentHeader() :#

Summary: This procedure clears the indentation in all job PSP line for the current job PSP header.

procedure ClearIndentationForCurrentHeader(): 

CreateDim(List) :#

procedure CreateDim(DefaultDimSource: List): 

CreateNewUserTask() :#

Summary: This procedure creates a new user task for the current job PSP line and opens the user task card page.

procedure CreateNewUserTask(): 

DocumentNavigate() :#

Summary: This procedure opens the job documents page used for navigating.

procedure DocumentNavigate(): 

DrillDownBudgetField() :#

Summary: This procedure opens the job budget entries page for the current job PSP line.

procedure DrillDownBudgetField(): 

DrillDownCommitment() :#

Summary: This procedure opens purchase lines page related to the current job PSP line.

procedure DrillDownCommitment(): 

DrillDownSalesAmountField(Option) :#

Summary: This procedure opens the sales lines page related to the current job PSP line.

procedure DrillDownSalesAmountField(DocType: Option): 

Parameters:

  • DocType: Document type to filter sales lines.

DrillDownSalesField() :#

Summary: This procedure opens the job ledger entry page for the current job PSP line with filter entry type as Sale.

procedure DrillDownSalesField(): 

DrillDownTimeCommitment(Option) :#

Summary: This procedure opens the job time ledger entry page for the current job PSP line.

procedure DrillDownTimeCommitment(TimeCommitmentType: Option): 

Parameters:

  • TimeCommitmentType: Type of time commitment to determine which page to open.

DrillDownUsageField() :#

Summary: This procedure call function DrillDownUsageField with false parameter.

procedure DrillDownUsageField(): 

Parameters:

  • ``````:
  • CalledFromQuantityField:

DrillDownUsageField(Boolean) :#

Summary: This procedure opens the job ledger entry page for the current job PSP line with filter entry type as Usage.

procedure DrillDownUsageField(CalledFromQuantityField: Boolean): 

Parameters:

  • CalledFromQuantityField:

EnableCreatePaymentPlanCurrentRec() : Boolean#

Summary: This procedure checks if the current job PSP line can create or update payment plan.

procedure EnableCreatePaymentPlanCurrentRec(): Boolean

Returns: Return result of the check it used for set Enabled in other page.

ExplodeBlock() :#

Summary: This procedure explodes the job PSP line type block.

procedure ExplodeBlock(): 

ExplodeBomAndRecalculateSums() :#

Summary: This procedure explodes the BOM for the current job PSP line and recalculates the sums for budget line.

procedure ExplodeBomAndRecalculateSums(): 

FillSumLinesForPage() :#

Summary: This procedure calculated total field for job PSP line type total or sum.

procedure FillSumLinesForPage(): 

FindPrice(Integer) :#

Summary: Find Unit Price

procedure FindPrice(CalledByFieldNo: Integer): 

Parameters:

  • CalledByFieldNo: The field number that called this function

FindUnitCost(Integer) :#

Summary: Find Unit Cost

procedure FindUnitCost(CalledByFieldNo: Integer): 

Parameters:

  • CalledByFieldNo: The field number that called this function

GetFilteredBudgetLinesForWBSLine(Record KVSPSA Job Budget Line) :#

Summary: GetFilteredBudgetLinesForWBSLine filters the JobBudgetline on the primary key fields. Other filters will be cleared (with reset)

procedure GetFilteredBudgetLinesForWBSLine(var JobBudgetLine: Record "KVSPSA Job Budget Line"): 

Parameters:

  • JobBudgetLine:

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

Summary: GetFilteredBudgetLinesForWBSLine filters the JobBudgetline on the primary key fields. The filters will be set in the filter group to use, and is reset to 0. Other filters will be cleared (with reset)

procedure GetFilteredBudgetLinesForWBSLine(var JobBudgetLine: Record "KVSPSA Job Budget Line"; FilterGroupToUse: Integer): 

Parameters:

  • FilterGroupToUse: The filter group, which is used for the primary key filters.
  • JobBudgetLine: Returns the filtered budget lines.

Example: If you use filtergroup, the user cannot remove the filter. This is good for lookups.

GetLineNoAndUniquePos() : Text#

Summary: This procedure returns a description of line number and unique position of the job PSP line.

procedure GetLineNoAndUniquePos(): Text

Returns: Text description of line number and unique position.

GetLineTypeStyle(Boolean) : Text#

Summary: This procedure returns the style of line for current job PSP line.

procedure GetLineTypeStyle(ForSums: Boolean): Text

Parameters:

  • ForSums: Specifies if current line is type sums or not.

Returns: Return style of the line.

InitNewRecord() :#

Summary: This procedure initializes job PSP line for new record.

procedure InitNewRecord(): 

InsertTextWorkPackage() :#

Summary: This procedure inserts extended text from work package to job PSP line.

procedure InsertTextWorkPackage(): 

InvCurrencyAssist() :#

Summary: This procedure opens the Change Exchange Rate page for the current job PSP line.

procedure InvCurrencyAssist(): 

JobLedgerEntryExisting(Record KVSPSAJobPSPLine) : Boolean#

Summary: Check if Job Ledger Entries exist for actual Job WBS Line

procedure JobLedgerEntryExisting(JobPSPLine: Record "KVSPSAJobPSPLine"): Boolean

Parameters:

  • JobPSPLine: The Job WBS Line

Returns: True if Job Ledger Entries exist, otherwise False

KVSPSACalcInvoicingQuantity(Decimal) : Decimal#

Summary: Calculates the invoicing quantity from the planning quantity.

procedure KVSPSACalcInvoicingQuantity(PlanningQuantity: Decimal): Decimal

Parameters:

  • PlanningQuantity:

Returns:

KVSPSACalcToDoProgress() :#

Summary: KVSPSACalcToDoProgress: Calculates the total progress of the assigned budget lines. for each line, the budget quantity will be taken as the target, and the progress will be calculated using the progress % - field. (not the posted quantities!)

         the field KVSPSATo-Do Progress will be filled, the record not modified.
procedure KVSPSACalcToDoProgress(): 

KVSPSACalcToDoProgressAndPSPCombined() :#

Summary: KVSPSACalcToDoProgressAndPSPCombined: Calculates the total progress of the assigned budget lines. for each line, the budget quantity will be taken as the target, and the progress will be calculated using the progress % - field. (not the posted quantities!)

         the fields KVSPSATo-Do Progress and To-Do Progress PSP will be filled, the record not modified.
procedure KVSPSACalcToDoProgressAndPSPCombined(): 

KVSPSAExplodeBOM() :#

Summary: Transfers all lines of a work package bom, if it exists, into budget lines.

procedure KVSPSAExplodeBOM(): 

ModifyWorkPackageLinesFromBeginTotal(Enum KVSPSAFieldToChange) :#

Summary: This procedure modifies work package lines that are related to the current begin-total line.

procedure ModifyWorkPackageLinesFromBeginTotal(FieldToChange: Enum "KVSPSAFieldToChange"): 

Parameters:

  • FieldToChange: Specifies the field to change in the work package lines.

MovePSPLine() :#

Summary: This procedure open report to move the current PSP line to new position.

procedure MovePSPLine(): 

NewLine(Record KVSPSAJobPSPLine, Boolean) :#

Summary: This procedure creates a new job PSP line with almost same properties as the current line except the line number.

procedure NewLine(var JobPSPLine: Record "KVSPSAJobPSPLine"; InsertLineBefore: Boolean): 

Parameters:

  • JobPSPLine: Job PSP Line to copy properties from.
  • InsertLineBefore: Specifies if the new line should be inserted before or after the current line.

PSPBudgetExisting() : Boolean#

Summary: PSPBudgetExisting tells you, if a budgetline exists for the psp line.

procedure PSPBudgetExisting(): Boolean

Returns: true, if at least one budget line has been created, and false, if no line exists.

RecalcWPBOM() :#

Summary: Recalc Work Package BOM

procedure RecalcWPBOM(): 

SetDontSetStatusToHeader() :#

Summary: This procedure sets the value of GlobalDontChangeStatusToHeader to true.

procedure SetDontSetStatusToHeader(): 

SetHideDialogs(Boolean) :#

Summary: This procedure sets the value of GlobalHideDialog to new value.

procedure SetHideDialogs(NewValue: Boolean): 

Parameters:

  • NewValue: New value for GlobalHideDialog.

SetKeepTexts(Boolean) :#

Summary: Allows keeping the texts on validating the work package number.

procedure SetKeepTexts(SkipRecreateTextForWorkPackage: Boolean): 

Parameters:

  • SkipRecreateTextForWorkPackage:

SetSkipWPText(Boolean) :#

Summary: Allows skipping the texts of a work package

procedure SetSkipWPText(SkipWPText: Boolean): 

Parameters:

  • SkipWPText:

ShowBudget() :#

Summary: This procedure shows the budget lines related to the current job PSP line.

procedure ShowBudget(): 

ShowCommentLines() :#

Summary: This procedure shows the comment lines related to the current job PSP line.

procedure ShowCommentLines(): 

ShowDimensions() :#

Summary: This procedure shows the dimensions for the current job PSP line. If user changes the dimensions, it updates the dimension set ID and modifies the record.

procedure ShowDimensions(): 

ShowInteractionLogEntries() :#

Summary: This procedure shows the interaction log entries related to the current job PSP line.

procedure ShowInteractionLogEntries(): 

ShowJobDocuments() :#

Summary: This procedure shows the job documents related to the current job PSP line.

procedure ShowJobDocuments(): 

ShowJobPaymentPlan(Record KVSPSAJobPSPLine) :#

Summary: This procedure shows the job payment plan related to the current job PSP line.

procedure ShowJobPaymentPlan(KVSPSAJobPSPLine: Record "KVSPSAJobPSPLine"): 

Parameters:

  • KVSPSAJobPSPLine: Job PSP Line to show payment plan for.

ShowMilestoneLinksToLine() :#

Summary: This procedure shows the milestone related to the current job PSP line.

procedure ShowMilestoneLinksToLine(): 

ShowShortcutDimCode(Code[20]) :#

Summary: This procedure retrieves the shortcut dimension codes from general setup to this job PSP line.

procedure ShowShortcutDimCode(var ShortcutDimCode: Code[20]): 

Parameters:

  • ShortcutDimCode: Shortcut dimension codes to fill.

ShowTaskLinksFromLine() :#

Summary: This procedure shows the task links that link from the current job PSP line.

procedure ShowTaskLinksFromLine(): 

ShowTaskLinksToLine() :#

Summary: This procedure shows the task links that link to the current job PSP line.

procedure ShowTaskLinksToLine(): 

ShowTextLines(Enum KVSKBATextPosition) :#

Summary: This procedure shows the text lines related to the current job PSP line.

procedure ShowTextLines(TextPosition: Enum "KVSKBATextPosition"): 

Parameters:

  • TextPosition: Specifies the position of the text lines to filter (such as header text or footer text).

ShowWPStatistic() :#

Summary: This procedure shows the work package statistics for the current job PSP line. It opens the "KVSPSAWork Package Info" page

procedure ShowWPStatistic(): 

SkipRecalc(Boolean) :#

Summary: This procedure set value of GlobalSkipRecalc to new value.

procedure SkipRecalc(NewValue: Boolean): 

Parameters:

  • NewValue: New value for GlobalSkipRecalc.

SuspendJobBlockedCheck(Boolean) :#

Summary: This procedure sets the value of GlobalSuspendJobBlockedCheck to new value.

procedure SuspendJobBlockedCheck(Suspend: Boolean): 

Parameters:

  • Suspend: New value for GlobalSuspendJobBlockedCheck.

TransferBudgetQty() :#

Summary: This procedure transfers quantity fields from the job budget lines to the current job PSP line.

procedure TransferBudgetQty(): 

UpdateJobPayPlanToMilestoneLines() :#

Summary: This procedure updates job payment planning entry or create new by value from milestone lines.

procedure UpdateJobPayPlanToMilestoneLines(): 

UpdateSalesPriceFCY() :#

Summary: This procedure updates unit price (icy) for the current job PSP line based on the job invoice currency code.

procedure UpdateSalesPriceFCY(): 

UpdateSalesPriceLCY() :#

Summary: This procedure updates unit price (lcy) for the current job PSP line based on the job invoice currency code.

procedure UpdateSalesPriceLCY(): 

ValidateShortcutDimCode(Integer, Code[20]) :#

Summary: This procedure update dimension set id for the current job PSP line.

procedure ValidateShortcutDimCode(FieldNumber: Integer; var ShortcutDimCode: Code[20]): 

Parameters:

  • FieldNumber: Array index of the shortcut dimension code to changed.
  • ShortcutDimCode: Shortcut dimension code to changed.

Events#

KVSPSAOnAfterBudgetIntoPSPLine(Record KVSPSAJobPSPLine) :#

[IntegrationEvent(false, false)]
local procedure KVSPSAOnAfterBudgetIntoPSPLine(var JobPSPLine: Record "KVSPSAJobPSPLine"): 
[EventSubscriber(ObjectType::Table, Table::"KVSPSAJobPSPLine", 'KVSPSAOnAfterBudgetIntoPSPLine', '', false, false)]
local procedure DoSomethingKVSPSAOnAfterBudgetIntoPSPLine(var JobPSPLine: Record "KVSPSAJobPSPLine")
begin
end;

KVSPSAOnAfterFillSumLinesForPage(Record KVSPSAJobPSPLine) :#

[IntegrationEvent(false, false)]
local procedure KVSPSAOnAfterFillSumLinesForPage(var JobPSPLine: Record "KVSPSAJobPSPLine"): 
[EventSubscriber(ObjectType::Table, Table::"KVSPSAJobPSPLine", 'KVSPSAOnAfterFillSumLinesForPage', '', false, false)]
local procedure DoSomethingKVSPSAOnAfterFillSumLinesForPage(var JobPSPLine: Record "KVSPSAJobPSPLine")
begin
end;

KVSPSAOnAfterInitNewRecord(Record KVSPSAJobPSPLine) :#

[IntegrationEvent(false, false)]
local procedure KVSPSAOnAfterInitNewRecord(var JobPSPLine: Record "KVSPSAJobPSPLine"): 
[EventSubscriber(ObjectType::Table, Table::"KVSPSAJobPSPLine", 'KVSPSAOnAfterInitNewRecord', '', false, false)]
local procedure DoSomethingKVSPSAOnAfterInitNewRecord(var JobPSPLine: Record "KVSPSAJobPSPLine")
begin
end;

KVSPSAOnAfterTransferBOMToBudgetLine(Record KVSPSAJobPSPLine, Record KVSPSA Job Budget Line) :#

[IntegrationEvent(false, false)]
local procedure KVSPSAOnAfterTransferBOMToBudgetLine(var JobPSPLine: Record "KVSPSAJobPSPLine"; var JobBudgetLine: Record "KVSPSA Job Budget Line"): 
[EventSubscriber(ObjectType::Table, Table::"KVSPSAJobPSPLine", 'KVSPSAOnAfterTransferBOMToBudgetLine', '', false, false)]
local procedure DoSomethingKVSPSAOnAfterTransferBOMToBudgetLine(var JobPSPLine: Record "KVSPSAJobPSPLine"; var JobBudgetLine: Record "KVSPSA Job Budget Line")
begin
end;

KVSPSAOnAfterTransferWorkPackageFieldToPSPLine(Record KVSPSAJobPSPLine, Record KVSPSAWork Package) :#

[IntegrationEvent(false, false)]
local procedure KVSPSAOnAfterTransferWorkPackageFieldToPSPLine(var JobPSPLine: Record "KVSPSAJobPSPLine"; WorkPackage: Record "KVSPSAWork Package"): 
[EventSubscriber(ObjectType::Table, Table::"KVSPSAJobPSPLine", 'KVSPSAOnAfterTransferWorkPackageFieldToPSPLine', '', false, false)]
local procedure DoSomethingKVSPSAOnAfterTransferWorkPackageFieldToPSPLine(var JobPSPLine: Record "KVSPSAJobPSPLine"; WorkPackage: Record "KVSPSAWork Package")
begin
end;

KVSPSAOnBeforeAskDeleteDistributionQuestion(Record KVSPSAJobPSPLine, Record KVSPSAJobPSPLine, Boolean, Boolean) :#

[IntegrationEvent(false, false)]
local procedure KVSPSAOnBeforeAskDeleteDistributionQuestion(var JobPSPLine: Record "KVSPSAJobPSPLine"; xJobPSPLine: Record "KVSPSAJobPSPLine"; var SkipMessage: Boolean; var DeleteDistribution: Boolean): 
[EventSubscriber(ObjectType::Table, Table::"KVSPSAJobPSPLine", 'KVSPSAOnBeforeAskDeleteDistributionQuestion', '', false, false)]
local procedure DoSomethingKVSPSAOnBeforeAskDeleteDistributionQuestion(var JobPSPLine: Record "KVSPSAJobPSPLine"; xJobPSPLine: Record "KVSPSAJobPSPLine"; var SkipMessage: Boolean; var DeleteDistribution: Boolean)
begin
end;

KVSPSAOnBeforeAskForBudgetUpdateWhenChangingFromWithoutCalc(Record KVSPSAJobPSPLine, Boolean, Boolean) :#

[IntegrationEvent(false, false)]
local procedure KVSPSAOnBeforeAskForBudgetUpdateWhenChangingFromWithoutCalc(JobPSPLine: Record "KVSPSAJobPSPLine"; var Result: Boolean; var IsHandled: Boolean): 
[EventSubscriber(ObjectType::Table, Table::"KVSPSAJobPSPLine", 'KVSPSAOnBeforeAskForBudgetUpdateWhenChangingFromWithoutCalc', '', false, false)]
local procedure DoSomethingKVSPSAOnBeforeAskForBudgetUpdateWhenChangingFromWithoutCalc(JobPSPLine: Record "KVSPSAJobPSPLine"; var Result: Boolean; var IsHandled: Boolean)
begin
end;

KVSPSAOnBeforeBudgetIntoPSPLine(Record KVSPSAJobPSPLine, Decimal, Decimal, Decimal, Decimal, Decimal, Boolean) :#

[IntegrationEvent(false, false)]
local procedure KVSPSAOnBeforeBudgetIntoPSPLine(var JobPSPLine: Record "KVSPSAJobPSPLine"; var CostSum: Decimal; var PriceSum: Decimal; var DiscountSum: Decimal; var PriceSumFCY: Decimal; var DiscountSumFCY: Decimal; var IsHandled: Boolean): 
[EventSubscriber(ObjectType::Table, Table::"KVSPSAJobPSPLine", 'KVSPSAOnBeforeBudgetIntoPSPLine', '', false, false)]
local procedure DoSomethingKVSPSAOnBeforeBudgetIntoPSPLine(var JobPSPLine: Record "KVSPSAJobPSPLine"; var CostSum: Decimal; var PriceSum: Decimal; var DiscountSum: Decimal; var PriceSumFCY: Decimal; var DiscountSumFCY: Decimal; var IsHandled: Boolean)
begin
end;

KVSPSAOnBeforeCalcToDoProgress(Record KVSPSA Job Budget Line, Record KVSPSAJobPSPLine, Boolean) :#

[IntegrationEvent(false, false)]
local procedure KVSPSAOnBeforeCalcToDoProgress(var JobBudgetLine: Record "KVSPSA Job Budget Line"; var JobPSPLine: Record "KVSPSAJobPSPLine"; var IsHandled: Boolean): 
[EventSubscriber(ObjectType::Table, Table::"KVSPSAJobPSPLine", 'KVSPSAOnBeforeCalcToDoProgress', '', false, false)]
local procedure DoSomethingKVSPSAOnBeforeCalcToDoProgress(var JobBudgetLine: Record "KVSPSA Job Budget Line"; var JobPSPLine: Record "KVSPSAJobPSPLine"; var IsHandled: Boolean)
begin
end;

KVSPSAOnBeforeCalcToDoProgressAndPSPCombinedForBudget(Record KVSPSA Job Budget Line, Record KVSPSAJobPSPLine, Boolean) :#

[IntegrationEvent(false, false)]
local procedure KVSPSAOnBeforeCalcToDoProgressAndPSPCombinedForBudget(var JobBudgetLine: Record "KVSPSA Job Budget Line"; var JobPSPLine: Record "KVSPSAJobPSPLine"; var IsHandled: Boolean): 
[EventSubscriber(ObjectType::Table, Table::"KVSPSAJobPSPLine", 'KVSPSAOnBeforeCalcToDoProgressAndPSPCombinedForBudget', '', false, false)]
local procedure DoSomethingKVSPSAOnBeforeCalcToDoProgressAndPSPCombinedForBudget(var JobBudgetLine: Record "KVSPSA Job Budget Line"; var JobPSPLine: Record "KVSPSAJobPSPLine"; var IsHandled: Boolean)
begin
end;

KVSPSAOnBeforeCheckICPartner(Record KVSPSAJobPSPLine, Boolean) :#

Summary: Event publisher that allows to bypass the standard IC Partner validation check in CheckICPartner function. This event is raised before checking if the WBS line was received from an IC Partner and prevents deletion. Set IsHandled to true to skip the standard validation and allow custom logic to handle the IC Partner check.

[IntegrationEvent(false, false)]
local procedure KVSPSAOnBeforeCheckICPartner(JobPSPLine: Record "KVSPSAJobPSPLine"; var IsHandled: Boolean): 
[EventSubscriber(ObjectType::Table, Table::"KVSPSAJobPSPLine", 'KVSPSAOnBeforeCheckICPartner', '', false, false)]
local procedure DoSomethingKVSPSAOnBeforeCheckICPartner(JobPSPLine: Record "KVSPSAJobPSPLine"; var IsHandled: Boolean)
begin
end;

Parameters:

  • JobPSPLine: The Job PSP Line record being validated
  • IsHandled: Set to true to bypass the standard IC Partner validation

KVSPSAOnBeforeCheckJobPSPLineDateCompareToBudgetLines(Record KVSPSAJobPSPLine, Integer, Boolean) :#

Summary: This event is raised before checking if JobPSPLine dates are compatible with related budget lines. If IsHandled is set to true, the check will not be executed.

[IntegrationEvent(false, false)]
local procedure KVSPSAOnBeforeCheckJobPSPLineDateCompareToBudgetLines(JobPSPLine: Record "KVSPSAJobPSPLine"; FieldNo: Integer; var IsHandled: Boolean): 
[EventSubscriber(ObjectType::Table, Table::"KVSPSAJobPSPLine", 'KVSPSAOnBeforeCheckJobPSPLineDateCompareToBudgetLines', '', false, false)]
local procedure DoSomethingKVSPSAOnBeforeCheckJobPSPLineDateCompareToBudgetLines(JobPSPLine: Record "KVSPSAJobPSPLine"; FieldNo: Integer; var IsHandled: Boolean)
begin
end;

Parameters:

  • JobPSPLine: The Job PSP Line record
  • FieldNo: The field number that triggered the check
  • IsHandled: Set to true to skip the default check logic

KVSPSAOnBeforeCheckModifyLineFromBeginTotal(Record KVSPSAJobPSPLine, Enum KVSPSAFieldToChange, Boolean, Boolean) :#

Summary: This event is raised on the beginning of CheckModifyLineFromBeginTotal. If IsHandled is set to true, the procedure will not be executed and there will be no cofirmation dialog. With SkipModifyLine the descission can be make if the lines should be changed or not

[IntegrationEvent(false, false)]
local procedure KVSPSAOnBeforeCheckModifyLineFromBeginTotal(JobPSPLine: Record "KVSPSAJobPSPLine"; FieldToChange: Enum "KVSPSAFieldToChange"; var IsHandled: Boolean; var SkipModifyLine: Boolean): 
[EventSubscriber(ObjectType::Table, Table::"KVSPSAJobPSPLine", 'KVSPSAOnBeforeCheckModifyLineFromBeginTotal', '', false, false)]
local procedure DoSomethingKVSPSAOnBeforeCheckModifyLineFromBeginTotal(JobPSPLine: Record "KVSPSAJobPSPLine"; FieldToChange: Enum "KVSPSAFieldToChange"; var IsHandled: Boolean; var SkipModifyLine: Boolean)
begin
end;

Parameters:

  • JobPSPLine:
  • FieldToChange:
  • IsHandled:
  • SkipModifyLine:

KVSPSAOnBeforeClosePSPLine(Record KVSPSAJobPSPLine, Boolean) :#

Summary: This Event is raised at the beginning of the procedure ClosePSPLine. If the event is handled, the procedure ClosePSPLine will not be executed.

[IntegrationEvent(false, false)]
local procedure KVSPSAOnBeforeClosePSPLine(JobPSPLine: Record "KVSPSAJobPSPLine"; var IsHandled: Boolean): 
[EventSubscriber(ObjectType::Table, Table::"KVSPSAJobPSPLine", 'KVSPSAOnBeforeClosePSPLine', '', false, false)]
local procedure DoSomethingKVSPSAOnBeforeClosePSPLine(JobPSPLine: Record "KVSPSAJobPSPLine"; var IsHandled: Boolean)
begin
end;

Parameters:

  • JobPSPLine:
  • IsHandled:

KVSPSAOnBeforeConfirmRecalcWPBOM(Record KVSPSAJobPSPLine, Boolean, Boolean, Integer) :#

[IntegrationEvent(false, false)]
local procedure KVSPSAOnBeforeConfirmRecalcWPBOM(var JobPSPLine: Record "KVSPSAJobPSPLine"; var DoRecalcWPBOM: Boolean; var IsHandled: Boolean; CurrFieldNo: Integer): 
[EventSubscriber(ObjectType::Table, Table::"KVSPSAJobPSPLine", 'KVSPSAOnBeforeConfirmRecalcWPBOM', '', false, false)]
local procedure DoSomethingKVSPSAOnBeforeConfirmRecalcWPBOM(var JobPSPLine: Record "KVSPSAJobPSPLine"; var DoRecalcWPBOM: Boolean; var IsHandled: Boolean; CurrFieldNo: Integer)
begin
end;

KVSPSAOnBeforeCreateDim(Record KVSPSAJobPSPLine, Boolean, List) :#

[IntegrationEvent(false, false)]
local procedure KVSPSAOnBeforeCreateDim(var JobPSPLine: Record "KVSPSAJobPSPLine"; var IsHandled: Boolean; var DefaultDimSource: List): 
[EventSubscriber(ObjectType::Table, Table::"KVSPSAJobPSPLine", 'KVSPSAOnBeforeCreateDim', '', false, false)]
local procedure DoSomethingKVSPSAOnBeforeCreateDim(var JobPSPLine: Record "KVSPSAJobPSPLine"; var IsHandled: Boolean; var DefaultDimSource: List)
begin
end;

KVSPSAOnBeforeDrillDownSetFilterPurchaseLiabilityLCY(Record KVSPSAJobPSPLine, Record Purchase Line) :#

[IntegrationEvent(false, false)]
local procedure KVSPSAOnBeforeDrillDownSetFilterPurchaseLiabilityLCY(var JobPSPLine: Record "KVSPSAJobPSPLine"; var PurchaseLine: Record "Purchase Line"): 
[EventSubscriber(ObjectType::Table, Table::"KVSPSAJobPSPLine", 'KVSPSAOnBeforeDrillDownSetFilterPurchaseLiabilityLCY', '', false, false)]
local procedure DoSomethingKVSPSAOnBeforeDrillDownSetFilterPurchaseLiabilityLCY(var JobPSPLine: Record "KVSPSAJobPSPLine"; var PurchaseLine: Record "Purchase Line")
begin
end;

KVSPSAOnBeforeExplodeBOM(Record KVSPSAJobPSPLine, Boolean) :#

[IntegrationEvent(false, false)]
local procedure KVSPSAOnBeforeExplodeBOM(var JobPSPLine: Record "KVSPSAJobPSPLine"; var IsHandled: Boolean): 
[EventSubscriber(ObjectType::Table, Table::"KVSPSAJobPSPLine", 'KVSPSAOnBeforeExplodeBOM', '', false, false)]
local procedure DoSomethingKVSPSAOnBeforeExplodeBOM(var JobPSPLine: Record "KVSPSAJobPSPLine"; var IsHandled: Boolean)
begin
end;

KVSPSAOnBeforeFillBudgetCalculation(Record KVSPSAJobPSPLine, Record KVSPSAWork Package, Boolean) :#

[IntegrationEvent(false, false)]
local procedure KVSPSAOnBeforeFillBudgetCalculation(var JobPSPLine: Record "KVSPSAJobPSPLine"; WorkPackage: Record "KVSPSAWork Package"; var IsHandled: Boolean): 
[EventSubscriber(ObjectType::Table, Table::"KVSPSAJobPSPLine", 'KVSPSAOnBeforeFillBudgetCalculation', '', false, false)]
local procedure DoSomethingKVSPSAOnBeforeFillBudgetCalculation(var JobPSPLine: Record "KVSPSAJobPSPLine"; WorkPackage: Record "KVSPSAWork Package"; var IsHandled: Boolean)
begin
end;

KVSPSAOnBeforeJobLedgerEntryExisting(Record KVSPSAJobPSPLine, Boolean) :#

[IntegrationEvent(false, false)]
local procedure KVSPSAOnBeforeJobLedgerEntryExisting(var JobPSPLine: Record "KVSPSAJobPSPLine"; var IsHandled: Boolean): 
[EventSubscriber(ObjectType::Table, Table::"KVSPSAJobPSPLine", 'KVSPSAOnBeforeJobLedgerEntryExisting', '', false, false)]
local procedure DoSomethingKVSPSAOnBeforeJobLedgerEntryExisting(var JobPSPLine: Record "KVSPSAJobPSPLine"; var IsHandled: Boolean)
begin
end;

KVSPSAOnBeforeRecreateTextForWorkPackage(Record KVSPSAJobPSPLine, Boolean) :#

Summary: This Event is raised before RecreateTextForWorkPackage. The procedure is run during validation of the number, overwriting all texts, even if the No. does not change. If KeepText is set to true, you keep them.

[IntegrationEvent(false, false)]
local procedure KVSPSAOnBeforeRecreateTextForWorkPackage(JobPSPLine: Record "KVSPSAJobPSPLine"; var SkipRecreateTextForWorkPackage: Boolean): 
[EventSubscriber(ObjectType::Table, Table::"KVSPSAJobPSPLine", 'KVSPSAOnBeforeRecreateTextForWorkPackage', '', false, false)]
local procedure DoSomethingKVSPSAOnBeforeRecreateTextForWorkPackage(JobPSPLine: Record "KVSPSAJobPSPLine"; var SkipRecreateTextForWorkPackage: Boolean)
begin
end;

Parameters:

  • JobPSPLine:
  • SkipRecreateTextForWorkPackage:

KVSPSAOnBeforeSetFilterPurchaseLiabilityLCY(Record KVSPSAJobPSPLine, Record Purchase Line, Boolean, Decimal, Boolean) :#

[IntegrationEvent(false, false)]
local procedure KVSPSAOnBeforeSetFilterPurchaseLiabilityLCY(var JobPSPLine: Record "KVSPSAJobPSPLine"; var PurchaseLine: Record "Purchase Line"; var IsHandled: Boolean; var PurchaseLiabilityLCY: Decimal; GLAccount: Boolean): 
[EventSubscriber(ObjectType::Table, Table::"KVSPSAJobPSPLine", 'KVSPSAOnBeforeSetFilterPurchaseLiabilityLCY', '', false, false)]
local procedure DoSomethingKVSPSAOnBeforeSetFilterPurchaseLiabilityLCY(var JobPSPLine: Record "KVSPSAJobPSPLine"; var PurchaseLine: Record "Purchase Line"; var IsHandled: Boolean; var PurchaseLiabilityLCY: Decimal; GLAccount: Boolean)
begin
end;

KVSPSAOnBeforeTransferBOMToBudgetLine(Record KVSPSAJobPSPLine, Record KVSPSA Job Budget Line) :#

[IntegrationEvent(false, false)]
local procedure KVSPSAOnBeforeTransferBOMToBudgetLine(var JobPSPLine: Record "KVSPSAJobPSPLine"; var JobBudgetLine: Record "KVSPSA Job Budget Line"): 
[EventSubscriber(ObjectType::Table, Table::"KVSPSAJobPSPLine", 'KVSPSAOnBeforeTransferBOMToBudgetLine', '', false, false)]
local procedure DoSomethingKVSPSAOnBeforeTransferBOMToBudgetLine(var JobPSPLine: Record "KVSPSAJobPSPLine"; var JobBudgetLine: Record "KVSPSA Job Budget Line")
begin
end;

KVSPSAOnBeforeTransferBudgetQty(Record KVSPSAJobPSPLine, Boolean) :#

[IntegrationEvent(false, false)]
local procedure KVSPSAOnBeforeTransferBudgetQty(var JobPSPLine: Record "KVSPSAJobPSPLine"; var IsHandled: Boolean): 
[EventSubscriber(ObjectType::Table, Table::"KVSPSAJobPSPLine", 'KVSPSAOnBeforeTransferBudgetQty', '', false, false)]
local procedure DoSomethingKVSPSAOnBeforeTransferBudgetQty(var JobPSPLine: Record "KVSPSAJobPSPLine"; var IsHandled: Boolean)
begin
end;

KVSPSAOnBeforeUpdateSalesPriceFCY(Record KVSPSAJobPSPLine, Code[10]) :#

[IntegrationEvent(false, false)]
local procedure KVSPSAOnBeforeUpdateSalesPriceFCY(var JobPSPLine: Record "KVSPSAJobPSPLine"; var JobInvoiceCurrencyCode: Code[10]): 
[EventSubscriber(ObjectType::Table, Table::"KVSPSAJobPSPLine", 'KVSPSAOnBeforeUpdateSalesPriceFCY', '', false, false)]
local procedure DoSomethingKVSPSAOnBeforeUpdateSalesPriceFCY(var JobPSPLine: Record "KVSPSAJobPSPLine"; var JobInvoiceCurrencyCode: Code[10])
begin
end;

KVSPSAOnBeforeValidateInvoicingQuantityAndPricesInInvoicingType(Record KVSPSAJobPSPLine, Boolean, Record KVSPSAJobPSPLine) :#

[IntegrationEvent(false, false)]
local procedure KVSPSAOnBeforeValidateInvoicingQuantityAndPricesInInvoicingType(var JobPSPLine: Record "KVSPSAJobPSPLine"; var IsHandled: Boolean; var xJobPSPLine: Record "KVSPSAJobPSPLine"): 
[EventSubscriber(ObjectType::Table, Table::"KVSPSAJobPSPLine", 'KVSPSAOnBeforeValidateInvoicingQuantityAndPricesInInvoicingType', '', false, false)]
local procedure DoSomethingKVSPSAOnBeforeValidateInvoicingQuantityAndPricesInInvoicingType(var JobPSPLine: Record "KVSPSAJobPSPLine"; var IsHandled: Boolean; var xJobPSPLine: Record "KVSPSAJobPSPLine")
begin
end;

OnAfterCalcAmounts(Record KVSPSAJobPSPLine) :#

Summary: This Event is raised after the procedure CalcAmounts is executed

[IntegrationEvent(false, false)]
local procedure OnAfterCalcAmounts(var JobPSPLine: Record "KVSPSAJobPSPLine"): 
[EventSubscriber(ObjectType::Table, Table::"KVSPSAJobPSPLine", 'OnAfterCalcAmounts', '', false, false)]
local procedure DoSomethingOnAfterCalcAmounts(var JobPSPLine: Record "KVSPSAJobPSPLine")
begin
end;

Parameters:

  • JobPSPLine:

OnAfterTransferBudgetIntoWBSLineRecalcWPBOM(Record KVSPSAJobPSPLine) :#

Summary: This Event is raised after call the procedure TransferBudgetIntoWBSLine inside RecalcWPBOM

[IntegrationEvent(false, false)]
local procedure OnAfterTransferBudgetIntoWBSLineRecalcWPBOM(var JobPSPLine: Record "KVSPSAJobPSPLine"): 
[EventSubscriber(ObjectType::Table, Table::"KVSPSAJobPSPLine", 'OnAfterTransferBudgetIntoWBSLineRecalcWPBOM', '', false, false)]
local procedure DoSomethingOnAfterTransferBudgetIntoWBSLineRecalcWPBOM(var JobPSPLine: Record "KVSPSAJobPSPLine")
begin
end;

Parameters:

  • JobPSPLine:

OnBeforeCheckStatusICPostProcessing(Record KVSPSAJobPSPLine, Boolean) :#

Summary: This Event is raised before the status "Status IC Post Processing" is checked on changing the work status If IsHandled is set to true, the check will not be executed.

[IntegrationEvent(false, false)]
local procedure OnBeforeCheckStatusICPostProcessing(JobPSPLine: Record "KVSPSAJobPSPLine"; var IsHandled: Boolean): 
[EventSubscriber(ObjectType::Table, Table::"KVSPSAJobPSPLine", 'OnBeforeCheckStatusICPostProcessing', '', false, false)]
local procedure DoSomethingOnBeforeCheckStatusICPostProcessing(JobPSPLine: Record "KVSPSAJobPSPLine"; var IsHandled: Boolean)
begin
end;

Parameters:

  • JobPSPLine:
  • IsHandled: