create trigger icstockbill_cust
on icstockbill
for update
if exists(select 1 from inserted)
begin
declare @ftrantype int
select @ftrantype=ftrantype from inserted
if @ftrantype=2 --产品入库单
begin
declare @fworkinterid int,@forderbillno varchar(9),@forderentryid int,@finterid int,@fentryid int
declare my_select cursor for select c.finterid,b.finterid,b.fentryid from inserted a inner join icstockbillentry b on a.finterid=b.finterid left outer join icmo c on b.ficmointerid=c.finterid
open my_select
fetch next from my_select into @fworkinterid,@finterid,@fentryid
while @@fetch_status=0
begin
if exists(select 1 from icmo where finterid=@fworkinterid and forderinterid>0)
begin --销售订单生成
select @forderbillno=d.fbillno,@forderentryid=c.fentryid from icmo a left outer join icmrpresult b on a.forderinterid=b.forgsaleinterid left outer join seorderentry c on b.forgsaleinterid=c.finterid and b.forgentyrid=c.fentryid left outer join seorder d on c.finterid=d.finterid
end
if exists(select 1 from icmo where finterid=@fworkinterid and fpporderinterid>0)
begin --产品预测生成
select @forderbillno=d.fbillno,@forderentryid=c.fentryid from icmo a left outer join icmrpresult b on a.fpporderinterid=b.forgppointerid left outer join pporderentry c on b.forgppointerid=c.finterid and b.forgentyrid=c.fentryid left outer join pporder d on c.finterid=d.finterid
end
--if not isnull(@forderbillno,'noresult')='noresult' begin select '订单编号是:' + @forderbillno + '----订单行号:' + cast(@forderentryid as varchar) end
if not isnull(@forderbillno,'noresult')='noresult' begin update icstockbillentry set fentryselfa0238=@forderbillno,fentryselfa0239=@forderentryid where finterid=@finterid and fentryid=@fentryid end
fetch next from my_select into @fworkinterid
end
close my_select
deallocate my_select
end
end