Hi Rishi,
one thought,
Did you try creating a Calc view with the join of analytic views AN_FACT and AN_FACT1 using Input parameter xyear. In the procedure you can fire a select against the Calc view with values passed as parameters and then insert into the table.
There is also another alternative of using the left outer joins in two different analytic views each with one fact table and then using these Analytic views in UNION. But I am not very confident about the performance of this approach over the one mentioned above.
Regards,
Ravi