Колхозил себе недавно такое, показывает товар без движения (только кассовые и приходы) меньше определенной даты, с хитрым условием, сейчас и вспомнить не могу(код лень перебирать, пивка вчера принял
), вроде как остатки не равны нулю или карточка активна.
Предупреждения, обратите на дату в запросе и кол-во доков у вас в БД, на "c.idclass > 1" вам скорее всего не нужна будет.
Код:
SELECT nvl(acd.ln,'Ни где нету') Место_хранения,
acd.article Артикул_acd,
acd.cn Наименование,
nvl(acd.quantity,0) Остаток,
SUBSTR(to_char(acd.ml),1,10) Последнее_изменение
FROM
(select aa.name ln, bb.article, bb.name cn, aa.quantity, bb.ml from
(SELECT g.article, g.quantity, l.name FROM smgoods g, smstorelocations l WHERE g.quantity <> 0 and g.storeloc = l.id) aa
full outer join
(SELECT c.article, c.name, c.accepted, max(sl.eventtime) ml
FROM smcard c, SMCardSecurityLog sl WHERE c.datatype = 0 and c.idclass > 1 and sl.article = c.article
group by c.article, c.name, c.accepted) bb
on aa.article = bb.article
where (aa.quantity is not null or bb.accepted = 1)
and bb.accepted is not null) acd,
(SELECT s.article
FROM smdocuments d, smspec s
WHERE d.docstate=3
and d.createdat>=to_date('01.01.2014','DD.MM.YYYY')
and (s.doctype = 'CS' or s.doctype = 'WI')
and s.doctype=d.doctype
and s.docid=d.id
GROUP BY s.article) asp
WHERE acd.article = asp.article(+)
and asp.article is null
order by acd.ln, acd.article