msv, там дело не в этом. САП не использует этот механизм в 6НДФЛ. Он явно вычитает суммы межрасчетов из регулярного расчета. Обработка стартует из ФМ HR_RU_DAQ_NDFL_AMOUNTS, вызов процедуры post_process_wages. post_process_wages в свою очередь перебирает объекты класса cl_hrpayru_payfactx, и вызывает у них метод post_process_wages, где собственно все и происходит.
Вот пример кода из cl_hrpayru_payfactx-post_process_wages
Code:
* Finding wage to reduce: this wage should be classified with same objects (same instances and ANYK) except PAYFACTX and
* should be classified by PAYFACTX as regular payroll run.
* All other criteria: wtype, wcode, per etc. also should match.
ls_coll_wages-objid = get_regular_run_to_reduce( iv_pernr = iv_pernr is_reducing_wage = <ls_wages_of_offcycle> it_all_wages = lt_wages[] ).
* If run from which current wage can be subtracted is found, amount of current wage subtracted from returned run.
IF ls_coll_wages-objid IS NOT INITIAL.
ls_coll_wages-sum = - ls_coll_wages-sum.
COLLECT ls_coll_wages INTO et_final_wages[].
ENDIF.
этот кусок кода обрабатывает запись межрасчета, уменьшая сумму регулярного расчета.
Нота, которую я привел, как раз и модифицирует методы GET_REGULAR_RUN_TO_REDUCE и POST_PROCESS_WAGES. Там появляется дополнительный цикл, аналогичный существующему, который выполняет ту же операцию для межрасчета B.