Здравствуйте, уважаемое SAP сообщество!
Посоветуйте, что можно предпринять для решения следующей проблемы:
В ИТ0014 введены следующие виды оплаты (ВО)
514A 01.01.2017-31.12.2017 (считается как 0,25 МТС - мин.тар.)
533A 01.01.2017-15.05.2017 2 ребенка
533A 16.05.2017-31.12.2017 1 ребенок
До мая месяца проблем не было. ВО 514A считался правильно, но в мае пошел сбой. В кластере появились 2 строки с разными сплитами APZNR, что в итоге дает 0,5
МТС:
3 514A 01 0.25
3 514A 02 0.25
Анализ лога расчета показал, что данные строки создаются в функции:
P0014 &U11 GEN NOAB Импорт периодических выплат/удержаний
В правиле &U11 для ВО 514A следующая логика:
&U11 * WGTYP?
&U11 * 514A
RUSPL P?A&U11 * 514A X GCYG&U11E
...
&U11 A 0 ADDWT *
Для ВО 533A
&U11 * WGTYP?
&U11 * **** GCYG&U11E
...
&U11 A 1 P0014 ELIMI A
&U11 A 1 P0014
WPBPCS - вот он корень зла. Именно тут разбивается таблица WPBP (
Code:
HRUCALC0_CE \ RPCBU309_OPWPBPC \ OPWPBPC
PERFORM split_wpbp_and_it TABLES sdates.
)
И в таблице IT для ВО 514A создается новая строка со сплитом APZNR 02:
Была
3 514A 01 0.25,
а стали
3 514A 01 0.25
3 514A 02 0.25
Ладно, думаю, реализую "чистку" и вставил после следующую конструкцию:
PIT ZW01 GEN NOAB Убрать лишние 514A
ZW01 * WGTYP?
ZW01 * 514A GCYGZW01B
ZW01 B OUTWPPAYSB
ZW01 B 02
RUSPL P?AZW01 B 02
X ADDWT *
Но почему-то для обеих строк RUSPL P?A выдает
X и строки остаются.
Потом решил вместо RUSPL P?A использовать SPLIT A? и проверять на 01 сплит, но тем самым "накрыл" расчет всего предприятия , т.к. оказывается на выходе из
P0014 &U11 GEN NOAB у кого-то ВО 514A на 02, 03, 04 APZNR
Вот почему в
P0014 RUSPL P?A оставляет запись ВО 514A только по
последнему сплиту, а использование в
PIT везде выдает
X ?
Может можно как-то по-другому обойти данную проблему?