Подниму темку. Сильно тапками не закидывайте - я только учусь писать более сложные запросы.
Необходимо получать оперативные остатки в любое время дня - артикул, наименование, ш/к, остаток.
set serveroutput on
DECLARE
v_name supermag.smcard.name%type;
v_article supermag.smcard.article%type;
v_salequan supermag.smopergoods.salequantity%type DEFAULT 0;
v_quan supermag.smgoods.quantity%type;
v_returnquan supermag.smopergoods.returnquantity%type DEFAULT 0;
v_barcode supermag.smstoreunits.barcode%type;
v_operquan real;
v_count integer:=1;
BEGIN
for r in ( select supermag.smcard.name,
supermag.smcard.article,
supermag.smstoreunits.barcode,
supermag.smopergoods.salequantity,
supermag.smopergoods.returnquantity,
supermag.smgoods.quantity
into v_name,
v_article,
v_barcode,
v_salequan,
v_returnquan,
v_quan
from supermag.smcard,
supermag.smstoreunits,
supermag.smopergoods,
supermag.smgoods
where supermag.smcard.accepted='1'
and supermag.smcard.article=supermag.smgoods.article
and supermag.smcard.article=supermag.smopergoods.article
and supermag.smcard.article=supermag.smstoreunits.article)
loop
V_count:=V_count+1;
v_operquan:=v_quan-v_salequan+v_returnquan;
dbms_output.put_line (v_name||', '||v_article||', '||v_barcode||', '||v_operquan);
exit when SQL%NOTFOUND;
end loop;
END;
/
компилируется без ошибок, но ничего не выводит ((( не могу проверить - верно ли считает...
помогите, пжлста...