calm написал(а):
Выдает, что на 01.04.2011 у чела стажа 5 лет.
Выдает где? В ИТ0294 по кнопке "Трудовой стаж"?
Там такая особенность, В ИТ0294 по кнопке "Трудовой стаж" стаж выдается с учетом даты, на которую вычисялется стаж. То есть, если запрос идет на 01.04.2011, то это будет стаж включая дату 01.04.2011. Фактически на вечер 01.04.2011, когда день уже отработан.
А в spro утилита "Запуск средства отладки для расчета зачисляемого периода занятости" при запросе стажа на дату, выдает стаж на утро этого дня.
Вообще, в описаном примере у ТН на вечер 31.03.2011 (или на утро 01.04.2011) стаж будет 4 года, 11 месяцев и 29 дней.
Когда день 01.04.2011 будет отработан, стаж станет 4 года, 11 месяцев и 30 дней или 5 лет.
Кстати, когда день 02.04.2011 пройдет, стаж все равно будет ровно 5 лет, точнее 4 года, 11 месяцев и 31 день.
То есть, и на конец 01.04.2011 и на конец 02.04.2011 стаж получается 5 лет. Это связано с тем, что в предписании пересчету 0100, в ФМ HR_SEN_CRULE_0100_DURATION в конце есть такой код
Code:
* Example: 02.04.1999 - 31.12.1999 = 8 months + 30 days
* will be converted to 9 months according to the general
* principle
* (otherwise comparisons for maximum/minimum won't work)
PERFORM OVERFLOW_YMD_TO_YMD USING es_DURATION no_DAYS_PER_MONTH
CHANGING eS_DURATION.
который приводит к такому эффекту - преобразует 30 дней целому месяцу