触发器参看脚本

橙三吉。 提交于 2019-12-09 20:39:01
USE [easdata]
GO
/****** Object:  Trigger [dbo].[T_CAS_PaymentBill_ins]    Script Date: 2019/12/9 19:03:57 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO

  ALTER  TRIGGER   [dbo].[T_CAS_PaymentBill_ins]   ON    [dbo].[T_CAS_PaymentBill]
FOR  Insert
as
BEGIN
 --FPAYBILLTYPEID ='5OQAAAAClGE+kylb' 付款类型为 合同付款申请 进行回写合同付款申请单。
    DECLARE  @FID    NVARCHAR( 255),@status   nvarchar( 10), @fpaybilltype  NVARCHAR( 255),
	@FSourceBillID NVARCHAR( 255),@FactpayAmt int,@FOriAmt int,@funpaidamt int ,@fstatus  NVARCHAR( 255)
    select  @FID =FID ,@FSourceBillID =FSourceBillID ,@FactpayAmt =factualpayamount,@fpaybilltype =FPayBillTypeID  FROM  inserted 

     if (@fpaybilltype ='FcoAAAAAoL8+kylb')
         begin  
		 --如果是合同付款申请单,回写付款金额
           if exists( select fid from T_CON_PaymentRequest where fid =@fpaybilltype) 
           begin 
				update T_CON_PaymentRequest
				set  factunpaidamt  =factunpaidamt - @FactpayAmt,
					 factpaidamt  =factpaidamt + @FactpayAmt,
					 FPayStatus = case  when (FActUnPaidAmt  > @FactpayAmt ) then '1'
					                     when (FActUnPaidAmt  <= @FactpayAmt ) then '2' end
				where fid = @fpaybilltype; 
           end; 

		   if exists( select fid from T_CON_NOContractPayment where fid =@fpaybilltype) 
		   begin
		      update T_CON_NOContractPayment
				set  factunpaidamt  =factunpaidamt - @FactpayAmt,
					 factpaidamt  =factpaidamt + @FactpayAmt,
					  FPayStatus = case  when (FActUnPaidAmt  > @FactpayAmt ) then '1'
					                     when (FActUnPaidAmt  <= @FactpayAmt ) then '2' end
				where fid = @fpaybilltype; 
		   end;
        end;
     
END

 

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!