As of Release 4.6, there is a new cancellation function in R/3, by means of which the system automaticallyclears the accounting documents for the original billing document and the cancellation billing document in FI.Please refer to note 40000 for detailed information.
But it is possible that you would meet the situation that after you carried out billing cancellation the automatic clearing of FI accountings does not work.Here I provided some information about how to analyze such kind of situation.From SD side, the following part of coding is responsible for the prevent of new cancellation execution:FM: RV_ACCOUNTING_DOCUMENT_CREATE
* new cancellation
* sfakn is only set, when the whole invoice is cancelled
if not vbrk-sfakn is initial and not vbrk-fktyp eq con_fktyp_p and
rule_new_cancel ne con_a and new_acct_det is initial.
if not rrrel is initial.
nonewcancel = 'X'.
call function 'AC_DOCUMENT_REVERSE'
Except the above check, there is no other reason from SD side could cause new cancellation failure in standard SD module. So the main cause of the new cancellation failure is most probably located in FI or CO side.Please refer to note 309208 Negative posting not carried out about the possible cause of it.To analyze the exact cause of the problem, a reproducible example is quite necessary.
You could make the following checking during reproducing the problem via VF11 according to note 304612:
LOOP AT LT_TRWPR. CALL FUNCTION LT_TRWPR-FUNCTION
I_ACCREV = R_ACCREV
REVERSE_IMPOSSIBLE = 1.
ERROR_MESSAGE = 2.
IF NOT SY-SUBRC IS INITIAL.... <<< Breakpoint here!
If you have set a breakpoint in CALL_DISPATCHER_STORNO_P at line IF NOT SY-SUBRC IS INITIAL.behind the call of function LT_TRWPR-FUNCTION (see above), with variable LT_TRWPR-FUNCTION you can check in which function module the sy-subrc becomes <>0. In this function module, you should make a restart to find the position and therefore the cause where and why the RAISE REVERSE_IMPOSSIBLE occurs.
Here is some additional information about the SD Billing New Cancellation Procedure:During the execution of new cancellation procedure, the SD-FI interface customer exits (SDVFXnnn) will be ignored. If you expect to add or edit some field for SD-FI interface during cancellation through these exits, please consider deactivating the new cancellation procedure. This is stated in note 339928.