zoukankan      html  css  js  c++  java
  • 金蝶 更新价格分录表触发器

     1 create trigger [dbo].[xzz_t] on [dbo].[ICSale] for 
     2 update as begin
     3 if update(FStatus)  
     4 begin   
     5 if isnull((select FStatus from inserted ),0)=1 
     6 and isnull((select FStatus from deleted ),0)=0  
     7 
     8 declare @fin int  set @fin=(select finterid from inserted)
     9 update c set FEndDate=dateadd(dd,-1,GETDATE())
    10 from ICSale a inner join ICSaleEntry b on a.FInterID=b.finterid 
    11 inner join ICPrcPlyEntry c on 
    12 a.FCustID=c.FRelatedID and b.FItemID=c.FItemID and b.FtaxPrice<>c.FPrice
    13 where a.finterid=@fin
    14 
    15 update c set FEndDate='2100-10-1'
    16 from ICSale a inner join ICSaleEntry b on a.FInterID=b.finterid 
    17 inner join ICPrcPlyEntry c on 
    18 a.FCustID=c.FRelatedID and b.FItemID=c.FItemID and b.FtaxPrice=c.FPrice
    19 where a.finterid=@fin
    20 
    21 INSERT INTO [dbo].[ICPrcPlyEntry]
    22            ([FInterID],[FItemID],[FRelatedID],[FModel]
    23            ,[FAuxPropID],[FUnitID],[FBegQty]
    24            ,[FEndQty],[FCuryID],[FPriceType],[FPrice],[FBegDate]
    25            ,[FEndDate],[FLeadTime],[FNote],[FChecked]
    26            ,[FIndex],[FTime],[FID],[FBase],[FBase1]
    27            ,[FBegQty_Base],[FEndQty_Base],[FInteger],[FClassTypeID],[FBCust]
    28            ,[FB2CustCls],[FB2Emp],[FB2EmpCls],[FB2VipGrp]
    29            ,[FB2Cust],[FB2ItemID],[FB2Item],[FFlagSave]
    30            ,[FCreator],[FOperator])
    31 select distinct 2,b.fitemid,a.FCustID,0,0,b.FUnitID,0,0,1,0,b.FTaxPrice,a.FDate,'2100-01-01',0,'',
    32 1,0,null,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,'',0,0
    33 from ICSale a inner join ICSaleEntry b on a.FInterID=b.finterid 
    34 left join ICPrcPlyEntry c on a.FCustID=c.FRelatedID and b.FItemID=c.FItemID 
    35 and c.FPrice=b.FtaxPrice 
    36 where a.FROB=1 and c.FItemID is null and a.finterid=@fin 
    37 
    38 update b set FConsignPrice=c.ftaxprice,FConsignAmount=c.FTaxPrice*fqty
    39 from icstockbill a inner join icstockbillentry b on a.FInterID=b.finterid 
    40 inner join (select distinct a.fdate,a.FCustID,b.FItemID,b.ftaxprice 
    41 from ICSale a inner join ICSaleEntry b on a.FInterID=b.finterid 
    42 where a.FROB=1  and a.finterid=@fin ) c on c.FCustID=a.FSupplyID and c.FItemID=b.FItemID
    43 and YEAR(c.fdate)=YEAR(a.fdate) and MONTH(c.fdate)=MONTH(a.fdate)
    44 
    45 end end
  • 相关阅读:
    BM求递推式模板
    主席树浅谈
    DSU on Tree浅谈
    树链剖分浅谈
    省选模拟八 题解
    提答题 总结
    交互题 总结
    省选模拟七 题解
    省选模拟六 题解
    省选模拟五 题解
  • 原文地址:https://www.cnblogs.com/erph/p/6992387.html
Copyright © 2011-2022 走看看