Hi Vadim,
I think you can run the 1st WHEN/ENDWHEN only for records where ENTITY.CURRENCY <> EMPOYEE.CURRENCY.
To accomplish this you have to use *XDIM_SKIPNULLCHECK described in OSS Note 2146749. Just define a variable that has all records that comply with that condition and use it in that statement.
Regards,
Gersh
P.S. This makes COMMIT not useless any longer:)