![]() |
#24 |
Участник
|
Теперь в функции TESTAEPeriod
Код: HRSetUp.GET; Employee.GET(EmployeeSalary."Employee No."); StartAEPeriod := EmployeeSalary."Starting Date Average Earnings"; TimeSheet.RESET; TimeSheet.SETRANGE("Starting Date",EmployeeSalary."Starting Date Average Earnings",EmployeeSalary."Ending Date Average Earnings"); TimeSheet.SETRANGE("Employee No.",EmployeeSalary."Employee No."); TimeSheet.SETRANGE("Time-Sheet Type",1); TimeSheet.SETFILTER("Digression Type",'%1|%2|%3|%4',TimeSheet."Digression Type"::Work, TimeSheet."Digression Type"::"Piece Rate", TimeSheet."Digression Type"::Tariff, TimeSheet."Digression Type"::Teenager); TimeSheet.CALCSUMS("Quantity Days"); FactTime := TimeSheet."Quantity Days"; IF FactTime = 0 THEN REPEAT // PS33077.begin EmployeeSalary."Starting Date Average Earnings" := CALCDATE('<-'+ FORMAT(HRSetUp."AE Calc Period") +'M>', EmployeeSalary."Starting Date Average Earnings"); EmployeeSalary."Ending Date Average Earnings" := CALCDATE('<+' + FORMAT(HRSetUp."AE Calc Period") +'M-1D>', EmployeeSalary."Starting Date Average Earnings"); TimeSheet.SETRANGE("Starting Date",EmployeeSalary."Starting Date Average Earnings", EmployeeSalary."Ending Date Average Earnings"); // PS33077.begin TimeSheet.CALCSUMS("Quantity Days"); FactTime := TimeSheet."Quantity Days"; StartAEPeriod := EmployeeSalary."Starting Date Average Earnings"; UNTIL (FactTime <> 0) OR (EmployeeSalary."Starting Date Average Earnings" <= CALCDATE('<CM>',Employee."Employment Date")); Код: EmployeeSalary."Starting Date Average Earnings" := CALCDATE('<-'+ FORMAT(HRSetUp."AE Calc Period") +'M>', EmployeeSalary."Starting Date Average Earnings"); |
|