트리거를 실행하다가 조건에 만족하지 않으면 에러를 리턴할려고 하는데 방법을 모르겠네요
CREATE OR REPLACE FUNCTION func_workitem_af_in_row() RETURNS "trigger"
AS '
declare
cnt int;
begin
----수주품목 테이블 정리
update orderitem set qtywork = qtywork + coalesce(new.qtyea,null,0)
where orderpk = new.orderpk and orderno2 = new.orderno2 ;
select qtyea - qtywork
into cnt
from orderitem
where orderpk = new.orderpk and orderno2 = new.orderno2;
IF cnt = 0 then
update orderitem set workyn = ''N''
where orderpk = new.orderpk and orderno2 = new.orderno2;
ElseIF cnt > 0 then
update orderitem set workyn = ''Y''
where orderpk = new.orderpk and orderno2 = new.orderno2;
ElseIF < 0 Then
-----------------여기에서 에러를 리턴해야 하는데 방법이 없나요...?
END IF;
return null;
end;'LANGUAGE plpgsql VOLATILE; |