Да, виноват под вечер спрол чушь на больную голову,
просто меня смутила подсветка ключевого поля.
Надо было добавить поле в оба запроса в выражении,
так все работает:
select article,name from supermag.smcard
minus select s2.article,s3.name
from supermag.smdocuments s1, supermag.smspec s2, supermag.smcard s3
WHERE s1.doctype=s2.doctype
and s1.id=s2.docid
and s1.createdat
between add_months(sysdate,-7)and sysdate
and s2.article=s3.article