K3 ERP 触发器 IQC判定资料同步_大泣大愚_新浪博客

CREATE TRIGGER tar_K3_2Conctrol ON dbo.ICStockBill
FOR INSERT
AS
DECLARE @FInterID Int,  @IQCFInterID Int, @TranType int, @FCount int ,@FSaleNo VarChar(1000), @FTranType int, @FROB INT, @BillDateTime Datetime, @FSupplyID INT, @FBillNo  VarChar(50), @NowDateTime DateTime
SELECT @FInterID = FInterID, @TranType = FTranType, @FTranType=FTranType, @FROB=FROB,@FSupplyID=FSupplyID,@FBillNo=FBillNo From  INSERTED
SELECT @IQCFInterID=FInterID, @BillDateTime=BillDateTime FROM ICStockBillEntryIQC WHERE FInterID=@FInterID
SELECT @NowDateTime = GETDATE()
--IQC START:
--1. 制单日期改成年月日时分秒;
--2. 备份外购入库, 委外入库记录到IQC辅助表
--3. 更改子表会触发主表 UPDATE DELETE INSERT;
--4.  ICStockBillEntryIQC只做删除标志,因为有可能已经做判定
--EDIT BY hsyou 2009/12/03
IF  @IQCFInterID>0
  BEGIN
    UPDATE ICStockBill SET FHeadSelfA0141=@BillDateTime  WHERE FInterID=@FInterID
    INSERT INTO ICStockBillEntryIQC (FInterID,FEntryID,FItemID,BillDateTime,FSourceBillNo,FChangeDate)  SELECT a1.FInterID,a1.FEntryID,a1.FItemID,@BillDateTime,FSourceBillNo,@NowDateTime FROM ICStockBillEntry a1 WHERE a1.FInterID=@FInterID  
    UPDATE  ICStockBillEntryIQC SET FState=0 WHERE FInterID=@FInterID AND FChangeDate<@NowDateTime
    UPDATE  ICStockBillEntryIQC SET FSupplyID=@FSupplyID, FBillNo= @FBillNo WHERE FInterID=@FInterID AND FState=1
    --反写已判定记录,相同入库单,物料才允许更新
    UPDATE a1 SET  a1.IQCResult=b1.IQCResult, a1.IQCRemark=b1.IQCRemark, a1.IQCStaffID=b1.IQCStaffID, a1.IQCDateTime=b1.IQCDateTime
        FROM ICStockBillEntryIQC a1,ICStockBillEntryIQC b1
        WHERE a1.fsourcebillno=b1.fsourcebillno and a1.fitemid=b1.fitemid and a1.iqcresult=10 and b1.iqcresult<>10 and a1.FInterID=b1.FInterID and a1.fsourcebillno is not null
  END
ELSE
  BEGIN
    UPDATE ICStockBill SET FHeadSelfA0141=@NowDateTime  WHERE FInterID=@FInterID
    IF @FTranType IN (1,5)  AND @FROB=1
    BEGIN
      INSERT INTO ICStockBillEntryIQC (FInterID,FEntryID,FItemID,BillDateTime,FSourceBillNo,FChangeDate,FQty)  SELECT a1.FInterID,a1.FEntryID,a1.FItemID,@NowDateTime,FSourceBillNo,@NowDateTime,FQty FROM ICStockBillEntry a1 WHERE a1.FInterID=@FInterID
      UPDATE  ICStockBillEntryIQC SET FSupplyID=@FSupplyID, FBillNo= @FBillNo WHERE FInterID=@FInterID AND FState=1
    END
  END
--IQC END.

郑重声明:资讯 【K3 ERP 触发器 IQC判定资料同步_大泣大愚_新浪博客】由 发布,版权归原作者及其所在单位,其原创性以及文中陈述文字和内容未经(企业库qiyeku.com)证实,请读者仅作参考,并请自行核实相关内容。若本文有侵犯到您的版权, 请你提供相关证明及申请并与我们联系(qiyeku # qq.com)或【在线投诉】,我们审核后将会尽快处理。
—— 相关资讯 ——