go
create trigger icpurchase_jade01 on icpurchase
for insert,update
as
declare @fleftamountfor decimal(18,2),@fdiffamount decimal(18,2)
from inserted
if @ftrantype <> 75 or @fstatus = 1 or @fisprompt = 0 goto ext
from t_voucher a,t_voucherentry b,t_account c,t_itemdetailv d
where a.fvoucherid = b.fvoucherid and b.faccountid = c.faccountid and b.fdetailid = d.fdetailid
and d.fitemclassid = 8 and c.fnumber= '7001' and b.fdc = 0
and d.fitemid = @fsupplyid
from icpurchase a
inner join icpurchaseentry b on a.finterid = b.finterid
left join poorderentry c on b.forderinterid = c.finterid and b.forderentryid = c.fentryid
where a.finterid = @finterid
if @fleftamountfor < @fdiffamount
begin
declare @errmsg varchar(200)
select @errmsg = '已经确认的差额为:' + convert(varchar(20),@fleftamountfor) + char(10) +
'本张发票的差额为:' + convert(varchar(20),@fdiffamount) + char(10)
raiserror (@errmsg,16,1)
end
/*
alter table icpurchase disable trigger icpurchase_jade01
alter table icpurchase enable trigger icpurchase_jade01
*/