|
|
#1 |
|
Участник
|
Кто нибудь смотрел новую Демо базу по Зарплате?
Не могу ввести Страховой стаж в карточке сотрудника. Если ввожу СТРАХОВОЙ стаж дата начало, то страховой стаж на дату лет не считает. Страховой стаж на дату лет ввести не даёт. все обнуляется. В Navision я чайник и только начинаю изучать. Может ,что делаю не так? Помогите пожалуйста. |
|
|
|
|
#2 |
|
Участник
|
Цитата:
Сообщение от im-juli
Кто нибудь смотрел новую Демо базу по Зарплате?
Не могу ввести Страховой стаж в карточке сотрудника. Если ввожу СТРАХОВОЙ стаж дата начало, то страховой стаж на дату лет не считает. Страховой стаж на дату лет ввести не даёт. все обнуляется. В Navision я чайник и только начинаю изучать. Может ,что делаю не так? |
|
|
|
|
#3 |
|
Участник
|
Цитата:
Когда вводим Страховой стаж на дату лет срабатывает ф-я TestInsuranceServ вот ее код Код: HumanResSetup.GET;
HumanResSetup.TESTFIELD("Min Insurance Serv Start Date");
IF ("Insurance Empl. Starting Date" <> 0D) AND (HumanResSetup."Min Insurance Serv Start Date" <> 0D) THEN BEGIN
CalcInsurServ(HumanResSetup."Min Insurance Serv Start Date","Insurance Empl. Starting Date",
TmpYear,TmpMonth,TmpDay,0,0,0);
IF "Insurance Empl. (Years)" > TmpYear THEN
"Insurance Empl. (Years)" := TmpYear;
IF "Insurance Empl. (Months)" > TmpMonth THEN
"Insurance Empl. (Months)" := TmpMonth;
IF "Insurance Empl. (Days)" > TmpDay THEN
"Insurance Empl. (Days)" := TmpDay;
END;Код: CalcInsurServ(StartingDate : Date;CurrentDate : Date;VAR YearsQty : Integer;VAR MonthsQty : Integer;VAR DaysQty : Integer;YearStart : Integer;MonthsStart : Integer;DaysStart : Integer)
DayAgo := YearStart * 12 * 30 + MonthsStart * 30 + DaysStart;
IF DayAgo <> 0 THEN BEGIN //ДОБАВИЛИ УСЛОВИЕ
StartingDateNew := CALCDATE('<-' + FORMAT(DayAgo) + 'D>',StartingDate);
IF StartingDateNew <> 0D THEN BEGIN
DaysQty := CurrentDate - StartingDateNew;
MonthsQty := ROUND(DaysQty / 30, 1.0, '<');
DaysQty := DaysQty - MonthsQty * 30;
END;
IF MonthsQty > 12 THEN BEGIN
YearsQty := ROUND(MonthsQty / 12 ,1.0, '<');
MonthsQty := MonthsQty - YearsQty * 12;
END;
END; |
|
|
|
|
#4 |
|
Участник
|
Если изменить параметры, то стаж лет , мес , дней ввсети получается. Но при этом стаж на дату (рабочую) лет, мес, дней получается очень странный.
Не понимаю почему Insurance Empl. Starting Date - OnValidate() не сделана в духе Total Empl. Starting Date - OnValidate() |
|
|