KVSPSATimeManagement#
Procedures#
CheckJobLine(Record Time Sheet Line) :#
Summary: This procedure checks the job line that linked with time sheet line.
procedure CheckJobLine(TimeSheetLine: Record "Time Sheet Line"):
Parameters:
TimeSheetLine
: Record used to check the job line.
FilterJobs(Code[20], Record Job) :#
Summary: This procedure filters Job based on multiple condition then set mark and return Job
procedure FilterJobs(ResNo: Code[20]; var Job: Record "Job"):
Parameters:
ResNo
: Code used for filtering jobs.Job
: Record Job used to return the filtered jobs.
GetPSPLine(Code[20], Code[20], Code[20], Code[20], Code[20]) :#
Summary: This procedure set GlobalJobPSPLine based on the provided parameters.
procedure GetPSPLine(JobNo: Code[20]; WorkPackageCode: Code[20]; PhaseCode: Code[20]; TaskCode: Code[20]; StepCode: Code[20]):
Parameters:
JobNo
: Code used for find Job PSP Line.WorkPackageCode
: Code used for find Job PSP Line.PhaseCode
: Code used for find Job PSP Line.TaskCode
: Code used for find Job PSP Line.StepCode
: Code used for find Job PSP Line.
JobNoOnLookup(Code[20], Code[20]) :#
Summary: This procedure open Time Tracking Project and show filtered Job based on Resource No.
procedure JobNoOnLookup(ResNo: Code[20]; var JobNo: Code[20]):
Parameters:
ResNo
: Resource No. used to filter Job.JobNo
: Job No. used to filter Job.
JobNoOnValidate(Code[20], Code[20]) :#
Summary: This procedure used for test if Job is valid base on Resource No. and Job No.
procedure JobNoOnValidate(ResNo: Code[20]; JobNo: Code[20]):
Parameters:
ResNo
: Resource No. used for filter Job.JobNo
: Job No. used for filter Job.
PerformJobSearch(Text, Code[20], Record Job) : Boolean#
Summary: This procedure is used to search for a project based on the search text entered by the user.
procedure PerformJobSearch(JobSearchText: Text; ResourceNo: Code[20]; var Job: Record "Job"): Boolean
Parameters:
JobSearchText
: Text used to filter Job.ResourceNo
: Resource No. used to filter Job.Job
: Job record to be filtered.
Returns: Return result if user had selected a job.
TestJobDateOnPosting(Code[20], Date, Integer) :#
Summary: This procedure checks if provided date is match condition for posting
procedure TestJobDateOnPosting(JobNo: Code[20]; PostingDate: Date; BudgetLineNo: Integer):
Parameters:
JobNo
: Job No. used for check date.PostingDate
: Posting Date to be checked.BudgetLineNo
: Budget Line No. used for check date.
TestJobPostingLevel() :#
Summary: This procedure checks if posting line match condition for posting base on Posting Level.
procedure TestJobPostingLevel():
TestJobTeamFilter(Code[20], Code[20]) :#
Summary: This procedure checks if resource is part of job team for time posting.
procedure TestJobTeamFilter(ResourceNo: Code[20]; JobNo: Code[20]):
Parameters:
ResourceNo
: Resource No. used for check if resource is part of job team.JobNo
: Job No. used for check if resource is part of job team.
TestProgress(Code[20], Decimal, Decimal, Code[20], Code[20], Code[20], Code[20], Code[20]) :#
Summary: This procedure checks if JobPSPLine has Time Posting w. Progress then ToDoProgress or QtyToComplete must have value if not then it will show error.
procedure TestProgress(ToDoNo: Code[20]; ToDoProgress: Decimal; QtyToComplete: Decimal; JobNo: Code[20]; WorkPackageCode: Code[20]; PhaseCode: Code[20]; TaskCode: Code[20]; StepCode: Code[20]):
Parameters:
ToDoNo
: Code used for conditionToDoProgress
: Decimal used for show progress of current lineQtyToComplete
: Decimal used for quantity to complete of current lineJobNo
: Job No. used for filter Job PSP LineWorkPackageCode
: Work Package Code used for filter Job PSP LinePhaseCode
: Phase Code used for filter Job PSP LineTaskCode
: Task Code used for filter Job PSP LineStepCode
: Step Code used for filter Job PSP Line
ValidateResNoWithResAdministration(Code[20]) :#
Summary: This procedure check if Resource No. is valid for User or exist in Resource Administration.
procedure ValidateResNoWithResAdministration(ResNo: Code[20]):
Parameters:
ResNo
: Resource No. used for check.
Events#
KVSPSAOnAfterCalcRestAfterPostingPerJobBudgetLine(Record KVSPSA Job Budget Line, Decimal, Boolean) :#
Summary: Integration event that is raised after calculating the rest quantity after posting for a Job Budget Line. This event allows subscribers to perform additional calculations or modifications to the rest quantity that remains after posting operations have been completed for the specified Job Budget Line.
[IntegrationEvent(false, false)]
local procedure KVSPSAOnAfterCalcRestAfterPostingPerJobBudgetLine(var JobBudgetLine: Record "KVSPSA Job Budget Line"; var RestAfterPosting: Decimal; var IsHandled: Boolean):
[EventSubscriber(ObjectType::Codeunit, Codeunit::"KVSPSATimeManagement", 'KVSPSAOnAfterCalcRestAfterPostingPerJobBudgetLine', '', false, false)]
local procedure DoSomethingKVSPSAOnAfterCalcRestAfterPostingPerJobBudgetLine(var JobBudgetLine: Record "KVSPSA Job Budget Line"; var RestAfterPosting: Decimal; var IsHandled: Boolean)
begin
end;
Parameters:
JobBudgetLine
: The Job Budget Line record for which the rest quantity after posting was calculated.RestAfterPosting
: The calculated rest quantity remaining after posting operations.IsHandled
: Boolean flag to indicate if the calculation has been handled by a subscriber.
KVSPSAOnAfterCalcRestAfterPostingPerJobPSPLine(Record KVSPSAJobPSPLine, Decimal, Boolean) :#
Summary: Integration event that is raised after calculating the rest quantity after posting for a Job PSP Line. This event allows subscribers to perform additional calculations or modifications to the rest quantity that remains after posting operations have been completed for the specified Job PSP Line.
[IntegrationEvent(false, false)]
local procedure KVSPSAOnAfterCalcRestAfterPostingPerJobPSPLine(var JobPSPLine: Record "KVSPSAJobPSPLine"; var RestAfterPosting: Decimal; var IsHandled: Boolean):
[EventSubscriber(ObjectType::Codeunit, Codeunit::"KVSPSATimeManagement", 'KVSPSAOnAfterCalcRestAfterPostingPerJobPSPLine', '', false, false)]
local procedure DoSomethingKVSPSAOnAfterCalcRestAfterPostingPerJobPSPLine(var JobPSPLine: Record "KVSPSAJobPSPLine"; var RestAfterPosting: Decimal; var IsHandled: Boolean)
begin
end;
Parameters:
JobPSPLine
: The Job PSP Line record for which the rest quantity after posting was calculated.RestAfterPosting
: The calculated rest quantity remaining after posting operations.IsHandled
: Boolean flag to indicate if the calculation has been handled by a subscriber.
KVSPSAOnAfterCalcRestAfterUnpostPerJobBudgetLine(Record KVSPSA Job Budget Line, Decimal, Boolean) :#
Summary: Integration event that is raised after calculating the rest quantity after unposting for a Job Budget Line. This event allows subscribers to perform additional calculations or modifications to the rest quantity that remains after unposting operations have been completed for the specified Job Budget Line.
[IntegrationEvent(false, false)]
local procedure KVSPSAOnAfterCalcRestAfterUnpostPerJobBudgetLine(var JobBudgetLine: Record "KVSPSA Job Budget Line"; var RestAfterUnpost: Decimal; var IsHandled: Boolean):
[EventSubscriber(ObjectType::Codeunit, Codeunit::"KVSPSATimeManagement", 'KVSPSAOnAfterCalcRestAfterUnpostPerJobBudgetLine', '', false, false)]
local procedure DoSomethingKVSPSAOnAfterCalcRestAfterUnpostPerJobBudgetLine(var JobBudgetLine: Record "KVSPSA Job Budget Line"; var RestAfterUnpost: Decimal; var IsHandled: Boolean)
begin
end;
Parameters:
JobBudgetLine
: The Job Budget Line record for which the rest quantity after unposting was calculated.RestAfterUnpost
: The calculated rest quantity remaining after unposting operations.IsHandled
: Boolean flag to indicate if the calculation has been handled by a subscriber.
KVSPSAOnAfterCalcRestAfterUnpostPerJobPSPLine(Record KVSPSAJobPSPLine, Decimal, Boolean) :#
Summary: Integration event that is raised after calculating the rest quantity after unposting for a Job PSP Line. This event allows subscribers to perform additional calculations or modifications to the rest quantity that remains after unposting operations have been completed for the specified Job PSP Line.
[IntegrationEvent(false, false)]
local procedure KVSPSAOnAfterCalcRestAfterUnpostPerJobPSPLine(var JobPSPLine: Record "KVSPSAJobPSPLine"; var RestAfterUnpost: Decimal; var IsHandled: Boolean):
[EventSubscriber(ObjectType::Codeunit, Codeunit::"KVSPSATimeManagement", 'KVSPSAOnAfterCalcRestAfterUnpostPerJobPSPLine', '', false, false)]
local procedure DoSomethingKVSPSAOnAfterCalcRestAfterUnpostPerJobPSPLine(var JobPSPLine: Record "KVSPSAJobPSPLine"; var RestAfterUnpost: Decimal; var IsHandled: Boolean)
begin
end;
Parameters:
JobPSPLine
: The Job PSP Line record for which the rest quantity after unposting was calculated.RestAfterUnpost
: The calculated rest quantity remaining after unposting operations.IsHandled
: Boolean flag to indicate if the calculation has been handled by a subscriber.
KVSPSAOnAfterCheckTimeSheetDetailLine(Record Time Sheet Detail, Record Time Sheet Line) :#
Summary: Integration event that is raised after checking a Time Sheet Detail Line for validation or business logic. This event allows subscribers to perform additional validation or processing after the standard Time Sheet Detail Line checks have been completed.
[IntegrationEvent(false, false)]
local procedure KVSPSAOnAfterCheckTimeSheetDetailLine(var TimeSheetDetail: Record "Time Sheet Detail"; var TimeSheetLine: Record "Time Sheet Line"):
[EventSubscriber(ObjectType::Codeunit, Codeunit::"KVSPSATimeManagement", 'KVSPSAOnAfterCheckTimeSheetDetailLine', '', false, false)]
local procedure DoSomethingKVSPSAOnAfterCheckTimeSheetDetailLine(var TimeSheetDetail: Record "Time Sheet Detail"; var TimeSheetLine: Record "Time Sheet Line")
begin
end;
Parameters:
TimeSheetDetail
: The Time Sheet Detail record that was checked.TimeSheetLine
: The related Time Sheet Line record associated with the detail line.
KVSPSAOnAfterCheckTimeSheetLine(Record Time Sheet Line) :#
Summary: Integration event that is raised after checking a Time Sheet Line for validation or business logic. This event allows subscribers to perform additional validation or processing after the standard Time Sheet Line checks have been completed.
[IntegrationEvent(false, false)]
local procedure KVSPSAOnAfterCheckTimeSheetLine(var TimeSheetLine: Record "Time Sheet Line"):
[EventSubscriber(ObjectType::Codeunit, Codeunit::"KVSPSATimeManagement", 'KVSPSAOnAfterCheckTimeSheetLine', '', false, false)]
local procedure DoSomethingKVSPSAOnAfterCheckTimeSheetLine(var TimeSheetLine: Record "Time Sheet Line")
begin
end;
Parameters:
TimeSheetLine
: The Time Sheet Line record that was checked.
KVSPSAOnBeforeCheckBudgetLineStatus(Record KVSPSA Job Budget Line, Boolean) :#
Summary: Integration event that is raised before checking the status of a Job Budget Line. This event allows subscribers to perform custom validation or override the standard budget line status checking logic.
[IntegrationEvent(false, false)]
local procedure KVSPSAOnBeforeCheckBudgetLineStatus(var JobBudgetLine: Record "KVSPSA Job Budget Line"; var IsHandled: Boolean):
[EventSubscriber(ObjectType::Codeunit, Codeunit::"KVSPSATimeManagement", 'KVSPSAOnBeforeCheckBudgetLineStatus', '', false, false)]
local procedure DoSomethingKVSPSAOnBeforeCheckBudgetLineStatus(var JobBudgetLine: Record "KVSPSA Job Budget Line"; var IsHandled: Boolean)
begin
end;
Parameters:
JobBudgetLine
: The Job Budget Line record to be checked for status validation.IsHandled
: Boolean flag to indicate if the status check has been handled by a subscriber.
KVSPSAOnBeforeCheckResNo(Code[20], Boolean) :#
Summary: This Event is raised on the beginning of the procedure JobNoOnValidate. If IsHandled is true the code will not be executed
[IntegrationEvent(false, false)]
local procedure KVSPSAOnBeforeCheckResNo(ResourceNo: Code[20]; var IsHandled: Boolean):
[EventSubscriber(ObjectType::Codeunit, Codeunit::"KVSPSATimeManagement", 'KVSPSAOnBeforeCheckResNo', '', false, false)]
local procedure DoSomethingKVSPSAOnBeforeCheckResNo(ResourceNo: Code[20]; var IsHandled: Boolean)
begin
end;
Parameters:
ResourceNo
:IsHandled
:
KVSPSAOnBeforeCheckTimeSheetDetailLine(Record Time Sheet Detail, Record Time Sheet Line) :#
Summary: Integration event that is raised before checking a Time Sheet Detail Line for validation or business logic. This event allows subscribers to perform custom validation or override the standard Time Sheet Detail Line checking logic before the standard checks are executed.
[IntegrationEvent(false, false)]
local procedure KVSPSAOnBeforeCheckTimeSheetDetailLine(var TimeSheetDetail: Record "Time Sheet Detail"; var TimeSheetLine: Record "Time Sheet Line"):
[EventSubscriber(ObjectType::Codeunit, Codeunit::"KVSPSATimeManagement", 'KVSPSAOnBeforeCheckTimeSheetDetailLine', '', false, false)]
local procedure DoSomethingKVSPSAOnBeforeCheckTimeSheetDetailLine(var TimeSheetDetail: Record "Time Sheet Detail"; var TimeSheetLine: Record "Time Sheet Line")
begin
end;
Parameters:
TimeSheetDetail
: The Time Sheet Detail record to be checked.TimeSheetLine
: The related Time Sheet Line record associated with the detail line.
KVSPSAOnBeforeCheckTimeSheetLine(Record Time Sheet Line) :#
Summary: Integration event that is raised before checking a Time Sheet Line for validation or business logic. This event allows subscribers to perform custom validation or override the standard Time Sheet Line checking logic before the standard checks are executed.
[IntegrationEvent(false, false)]
local procedure KVSPSAOnBeforeCheckTimeSheetLine(var TimeSheetLine: Record "Time Sheet Line"):
[EventSubscriber(ObjectType::Codeunit, Codeunit::"KVSPSATimeManagement", 'KVSPSAOnBeforeCheckTimeSheetLine', '', false, false)]
local procedure DoSomethingKVSPSAOnBeforeCheckTimeSheetLine(var TimeSheetLine: Record "Time Sheet Line")
begin
end;
Parameters:
TimeSheetLine
: The Time Sheet Line record to be checked.
KVSPSAOnBeforeCheckToDoNoStatus(Record KVSPSA Job Budget Line, Boolean, Code[20], Code[20], Code[20], Code[20], Code[20], Code[20]) :#
Summary: Event before checking the status of the Job Budget Line
[IntegrationEvent(false, false)]
local procedure KVSPSAOnBeforeCheckToDoNoStatus(var JobBudgetLine: Record "KVSPSA Job Budget Line"; var IsHandled: Boolean; JobNo: Code[20]; ToDoNo: Code[20]; WorkPackage: Code[20]; Phase: Code[20]; Task: Code[20]; Step: Code[20]):
[EventSubscriber(ObjectType::Codeunit, Codeunit::"KVSPSATimeManagement", 'KVSPSAOnBeforeCheckToDoNoStatus', '', false, false)]
local procedure DoSomethingKVSPSAOnBeforeCheckToDoNoStatus(var JobBudgetLine: Record "KVSPSA Job Budget Line"; var IsHandled: Boolean; JobNo: Code[20]; ToDoNo: Code[20]; WorkPackage: Code[20]; Phase: Code[20]; Task: Code[20]; Step: Code[20])
begin
end;
Parameters:
JobBudgetLine
: The Job Budget Line Record about to be checkedIsHandled
: If set to true the code will not be executedJobNo
: The Job No. of the Job Budget LineToDoNo
: The To-Do No. of the Job Budget LineWorkPackage
: The Work Package Code of the Job Budget LinePhase
: The Phase Code of the Job Budget LineTask
: The Task Code of the Job Budget LineStep
: The Step Code of the Job Budget Line
KVSPSAOnBeforeTestJobDateOnPosting(Record Time Sheet Line, Boolean) :#
Summary: Integration event that is raised before testing job date validation during posting operations. This event allows subscribers to perform custom date validation or override the standard job date testing logic for Time Sheet Line posting.
[IntegrationEvent(false, false)]
local procedure KVSPSAOnBeforeTestJobDateOnPosting(var TimeSheetLine: Record "Time Sheet Line"; var IsHandled: Boolean):
[EventSubscriber(ObjectType::Codeunit, Codeunit::"KVSPSATimeManagement", 'KVSPSAOnBeforeTestJobDateOnPosting', '', false, false)]
local procedure DoSomethingKVSPSAOnBeforeTestJobDateOnPosting(var TimeSheetLine: Record "Time Sheet Line"; var IsHandled: Boolean)
begin
end;
Parameters:
TimeSheetLine
: The Time Sheet Line record being tested for job date validation.IsHandled
: Boolean flag to indicate if the job date testing has been handled by a subscriber.
KVSPSAOnBeforeTestJobPostingLevelJobTimeJournal(Record KVSPSAJobTimeJournalLine, Boolean) :#
Summary: Integration event that is raised before testing job posting level validation for Job Time Journal Lines. This event allows subscribers to perform custom posting level validation or override the standard job posting level testing logic for Job Time Journal Line entries.
[IntegrationEvent(false, false)]
local procedure KVSPSAOnBeforeTestJobPostingLevelJobTimeJournal(var JobTimeJournalLine: Record "KVSPSAJobTimeJournalLine"; var IsHandled: Boolean):
[EventSubscriber(ObjectType::Codeunit, Codeunit::"KVSPSATimeManagement", 'KVSPSAOnBeforeTestJobPostingLevelJobTimeJournal', '', false, false)]
local procedure DoSomethingKVSPSAOnBeforeTestJobPostingLevelJobTimeJournal(var JobTimeJournalLine: Record "KVSPSAJobTimeJournalLine"; var IsHandled: Boolean)
begin
end;
Parameters:
JobTimeJournalLine
: The Job Time Journal Line record being tested for posting level validation.IsHandled
: Boolean flag to indicate if the posting level testing has been handled by a subscriber.
KVSPSAOnBeforeTestJobPostingLevelTimeSheet(Record Time Sheet Line, Boolean) :#
Summary: Integration event that is raised before testing job posting level validation for Time Sheet Lines. This event allows subscribers to perform custom posting level validation or override the standard job posting level testing logic for Time Sheet Line entries.
[IntegrationEvent(false, false)]
local procedure KVSPSAOnBeforeTestJobPostingLevelTimeSheet(var TimeSheetLine: Record "Time Sheet Line"; var IsHandled: Boolean):
[EventSubscriber(ObjectType::Codeunit, Codeunit::"KVSPSATimeManagement", 'KVSPSAOnBeforeTestJobPostingLevelTimeSheet', '', false, false)]
local procedure DoSomethingKVSPSAOnBeforeTestJobPostingLevelTimeSheet(var TimeSheetLine: Record "Time Sheet Line"; var IsHandled: Boolean)
begin
end;
Parameters:
TimeSheetLine
: The Time Sheet Line record being tested for posting level validation.IsHandled
: Boolean flag to indicate if the posting level testing has been handled by a subscriber.
KVSPSAOnBeforeTestJobStatus(Record Job, Boolean) :#
Summary: Integration event that is raised before testing the job status for validation purposes. This event allows subscribers to perform custom job status validation or override the standard job status testing logic before operations are performed on the job.
[IntegrationEvent(false, false)]
local procedure KVSPSAOnBeforeTestJobStatus(var Job: Record "Job"; var IsHandled: Boolean):
[EventSubscriber(ObjectType::Codeunit, Codeunit::"KVSPSATimeManagement", 'KVSPSAOnBeforeTestJobStatus', '', false, false)]
local procedure DoSomethingKVSPSAOnBeforeTestJobStatus(var Job: Record "Job"; var IsHandled: Boolean)
begin
end;
Parameters:
Job
: The Job record being tested for status validation.IsHandled
: Boolean flag to indicate if the job status testing has been handled by a subscriber.
KVSPSAOnBeforeValidateResNoWithResAdministration(Code[20], Record User Setup, Boolean) :#
Summary: Integration event that is raised before validating resource number with resource administration settings. This event allows subscribers to perform custom resource number validation or override the standard resource administration validation logic before the standard checks are executed.
[IntegrationEvent(false, false)]
local procedure KVSPSAOnBeforeValidateResNoWithResAdministration(var ResNo: Code[20]; var UserSetup: Record "User Setup"; var IsHandled: Boolean):
[EventSubscriber(ObjectType::Codeunit, Codeunit::"KVSPSATimeManagement", 'KVSPSAOnBeforeValidateResNoWithResAdministration', '', false, false)]
local procedure DoSomethingKVSPSAOnBeforeValidateResNoWithResAdministration(var ResNo: Code[20]; var UserSetup: Record "User Setup"; var IsHandled: Boolean)
begin
end;
Parameters:
ResNo
: The resource number being validated.UserSetup
: The User Setup record containing resource administration settings.IsHandled
: Boolean flag to indicate if the resource validation has been handled by a subscriber.