您的位置:首页 > 其它

NC客商bd_custbank不可修改账号、名称但可修改默认银行并更新分子公司trigger

2012-07-09 10:57 525 查看
create or replace trigger S_UPDATE_CUSTBANK
before  update on  bd_custbank
for each row
declare
-- local variables here
pk_bas char(20);

cursor basjob(id char) is
select pk_custbank
from ncv5.bd_custbank /*目标数据库表*/
where pk_custbank = id
and nvl(dr, 0) = 0;
begin
/*判断数据是否在目标数据库存在*/
open basjob(:new.pk_custbank);

loop

fetch basjob
into pk_bas;

exit when basjob%notfound;

end loop;
close basjob;
/******************************/

if pk_bas is not null then
if
:new.account<>:old.account or
:new.accname<>:old.accname or
:new.memo<>:old.memo then
raise_application_error(-20001, '请点击客商开户银行修改,此处不可修改!');
else
begin
update ncv5.bd_custbank /*目标数据库表*/
set pk_custbank = :new.pk_custbank,
pk_cubasdoc = :new.pk_cubasdoc,
accname     = :new.accname,
account     = :new.account,
accaddr     = :new.accaddr,
defflag     = :new.defflag,
memo        = :new.memo,
pk_accbank  = :new.pk_accbank,
pk_corp     = :new.pk_corp,
pk_currtype = :new.pk_currtype,
ts          = :new.ts,
dr          = :new.dr
where pk_custbank = :new.pk_custbank;
end;

end if;
end if;
end S_UPDATE_CUSTBANK;


内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: