А нет, совместить получится.
Сперва рассчитываем остатки с заполнением таблиц ttostatki1,ttostatki2, затем рассчитываем остатки в закупочных ценах.
call supermag.Rep_Ostatki(to_char(sysdate-54,'dd.mm.yyyy'),0,0,0,2,0,0,0);
execute supermag.FixRemains.calc(trunc(sysdate-54));
select sum(rem.Quantity),sum(round(rem.cp_full,2)) from supermag.TTRemains rem,supermag.SVCardName crd where crd.article = rem.article and crd.datatype in (0,3,4);
SELECT sum(rem.qty),SUM(nvl(round(o2.Price1*rem.Qty, o2.PricePrec),0)) FROM SVARemainsCP REM,ttostatki2 o2,supermag.SVCardName crd where crd.article = rem.article and o2.Article(+)=rem.Article and o2.locid(+)=rem.StoreLoc and crd.datatype in (0,3,4);