Commit 2b388daa authored by dpawar's avatar dpawar

changes in sql function


git-svn-id: http://15.206.35.175/svn/proteus/business-java/trunk@95542 ce508802-f39f-4f6c-b175-0d175dae99d5
parent e1f890ca
...@@ -221,13 +221,14 @@ TYPE cursor2 IS REF CURSOR; ...@@ -221,13 +221,14 @@ TYPE cursor2 IS REF CURSOR;
invtrace_cur cursor1; invtrace_cur cursor1;
miscdrcr_cur cursor2; miscdrcr_cur cursor2;
miscdrcr_sql_stmt varchar2(3000); miscdrcr_sql_stmt varchar2(3000);
miscdrcr_sql_stmt_cnt varchar2(3000);
invtrace_sql_stmt varchar2(3000); invtrace_sql_stmt varchar2(3000);
invtrace_qty number; invtrace_qty number;
invtrace_itemcode char(10); invtrace_itemcode char(10);
invtrace_lot_sl char(15); invtrace_lot_sl char(15);
invtrace_lot_no char(15); invtrace_lot_no char(15);
invtrace_lineNoTrace char(15); invtrace_lineNoTrace char(15);
misc_cnt number;
miscdrcr_qty number; miscdrcr_qty number;
miscdrcr_itemcode char(10); miscdrcr_itemcode char(10);
miscdrcr_lot_sl char(15); miscdrcr_lot_sl char(15);
...@@ -245,34 +246,36 @@ invtrace_sql_stmt varchar2(3000); ...@@ -245,34 +246,36 @@ invtrace_sql_stmt varchar2(3000);
FETCH invtrace_cur INTO invtrace_qty,invtrace_itemcode,invtrace_lot_no,invtrace_lot_sl,invtrace_lineNoTrace; FETCH invtrace_cur INTO invtrace_qty,invtrace_itemcode,invtrace_lot_no,invtrace_lot_sl,invtrace_lineNoTrace;
EXIT WHEN invtrace_cur%NOTFOUND; EXIT WHEN invtrace_cur%NOTFOUND;
IF invtrace_cur%FOUND THEN IF invtrace_cur%FOUND THEN
select count(1) into misc_cnt from misc_drcr_rcp h,misc_drcr_rdet d where h.tran_id=d.tran_id and h.remarks like '%POD%'||as_invoiceId||'' and Quantity <> 0;
miscdrcr_sql_stmt := 'select sum(nvl(d.quantity,0)) as Quantity,d.item_code,d.lot_sl, d.lot_no,line_no__invtrace from misc_drcr_rcp h,misc_drcr_rdet d where h.tran_id=d.tran_id and h.remarks like ''%POD%'||as_invoiceId||''' and Quantity <> 0 group by d.item_code,d.lot_sl,d.lot_no,line_no__invtrace'; if(misc_cnt > 0) then
open miscdrcr_cur for miscdrcr_sql_stmt; miscdrcr_sql_stmt := 'select sum(nvl(d.quantity,0)) as Quantity,d.item_code,d.lot_sl, d.lot_no,line_no__invtrace from misc_drcr_rcp h,misc_drcr_rdet d where h.tran_id=d.tran_id and h.remarks like ''%POD%'||as_invoiceId||''' and Quantity <> 0 group by d.item_code,d.lot_sl,d.lot_no,line_no__invtrace';
<<cont4>> open miscdrcr_cur for miscdrcr_sql_stmt;
loop <<cont4>>
FETCH miscdrcr_cur INTO miscdrcr_qty,miscdrcr_itemcode,miscdrcr_lot_sl,miscdrcr_lot_no,miscdrcr_lineNoTrace; loop
if miscdrcr_cur%NOTFOUND then FETCH miscdrcr_cur INTO miscdrcr_qty,miscdrcr_itemcode,miscdrcr_lot_sl,miscdrcr_lot_no,miscdrcr_lineNoTrace;
return 1; EXIT WHEN miscdrcr_cur%NOTFOUND;
end if; IF miscdrcr_cur%FOUND THEN
IF miscdrcr_cur%FOUND THEN if miscdrcr_qty < invtrace_qty AND invtrace_itemcode = miscdrcr_itemcode AND miscdrcr_lot_no = invtrace_lot_no AND miscdrcr_lot_sl = invtrace_lot_sl AND miscdrcr_lineNoTrace = invtrace_lineNoTrace THEN
if miscdrcr_qty < invtrace_qty AND invtrace_itemcode = miscdrcr_itemcode AND miscdrcr_lot_no = invtrace_lot_no AND miscdrcr_lot_sl = invtrace_lot_sl AND miscdrcr_lineNoTrace = invtrace_lineNoTrace THEN return 1;
return 1; else
else goto cont4;
goto cont4; END IF;
END IF; END IF;
END IF; end loop;
end loop; close miscdrcr_cur;
close miscdrcr_cur; else --ELSE OF misc_cnt cond.
return 1;
end if; --misc_cnt condition end
ELSE ELSE
goto cont3; goto cont3;
END IF; END IF;
END LOOP; END LOOP;
close invtrace_cur; close invtrace_cur;
return cnumber; return cnumber;
exception when others then exception when others then
return -39; return 1;
--return cnumber; --return cnumber;
END; END;
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment