Приветствую уважаемое сообщество SAPBOARD!
Ситуация такая:.
Сотрудник работает с 2014 г на суммированном учете, тариф часовой
1. До 01.01.2018 в размере Х руб/час
2. После 01.01.2018 в размере Х+10 руб/час. – с 01.01.2018 – это массовое повышение окладов на предприятии.
3. 02.04.2018 29.04.2018 0101 Отпуск ежегодный
30.04.2018 07.05.2018 0140 Доп.отпуск\ВУТ (СвязьЗапОтс/Ср. 02.04.2018)
Отпуска отправлены межрасчетом 0103 28.03.2018
4. В мае 2018 выплачена годовая премия , в декабрь 2017 занесен технический вид оплаты GPSR для пересчета среднего. Запущен пересчет с декабря 2017.
5. И вот в августе выясняется, что сотруднику неправильно подняли тариф с начала года и вместо Х+10 должно быть Х+12 руб/час.
6. В августе запущен пересчет с 01.01.2018
В расчете видим, что по основному и дополнительному отпуску вместо доначисления идет сторнирование 11 руб.
Анализ показал, что при расчете марта, а точнее апреля для расчета апрельского отпуска в марте, в модуле
HRPY_AVERA_ADJUST_BASES из RESULTS значение next_vALUE выбирается из старого, записанного в кластер расчета со старым значением /02i, а CURRENT_VALUE за март берется уже измененное.
next_vALUE = 151111.52
CURRENT_VALUE = 153494.21
И потому
FACTOR_COMPWTYP меньше единицы, т.е. 9.8447700405116256E-01
Начисления умножаются на 0,9844 и база становится меньше.
Code:
LOOP AT RESULTS WHERE EVP-FPBEG LE next_av_period_BEGDA
AND EVP-FPEND GE next_av_period_BEGDA.
LOOP AT RESULTS-INTER-WPBP INTO WPBP_WA
WHERE BEGDA LE next_av_period_BEGDA
AND ENDDA GE next_av_period_BEGDA.
EXIT.
ENDLOOP.
LOOP AT RESULTS-INTER-RT INTO RT_WA
WHERE LGART = I51AV_C-COMPWTYP
AND APZNR = WPBP_WA-APZNR.
next_vALUE = RT_WA-BETPE.
ENDLOOP.
ENDLOOP.
В САП написали, что у них все хорошо, возможно влияет Z.
Вопросы: точно не уверен, но в случае, когда в текущем месяце (март) рассчитывается отпуск следующего месяца (апрель) , то драйвер должен запускать виртуально расчет Апреля. Судя по изменению APER такой запуск происходит:
PAPER
201803BEGDA 20180402 – видать при расчете в марте отпуска с 02.04.2018-29.04.2018 драйвер запускает расчет апреля.
ENDDA 20180430
PBEGD 20180402
PENDD 20180430
IAPER 201805
IBEGD 20180501
IENDD 20180531
BONDT 00000000
CHKDT
20180331RRDAT 20171201
Вот в каком модуле, классе или где-то еще, если такое имеет место быть, запускается расчет апреля в марте? Чтобы посмотреть, как он запускается, с какой схемой, записывает ли результат в RGDIR[], RESUTS[], есть ли там Z-вставки. Может кто знает?
Просто потом, при анализе журнала в апреле в RT новый /02I, а в расчете среднего старый /02i.
То ли это в стандарте ошибка, то ли у нас что-то недообновлено.