金蝶K3的触发器,不能使用,麻烦大家指点下

kurorole 2019-05-24 10:46:36


CREATE TRIGGER UPdateFEB ON ICStockBillEntry
FOR INSERT
AS

if exists (select 1 from inserted a join ICStockBill b on a.FInterID=b.FInterID and b.ftrantype=24)
begin
update ICStockBillEntry set
FEntrySelfB0463 = (case when FUnitID = 88403 then FQty/10000 else FQty end)
FROM ICStockBill a
join ICStockBillEntry b
on a.FInterID=b.FInterID and ftrantype=24 and a.FInterID in (select FInterID from inserted)
end


ICStockBill 出入库表头
ICStockBillEntry 出入库表体
表头ftrantype字段是单据类型,24表示生产领料单
表体FEntrySelfB0463是我自己增加的字段

这是我自己写的金蝶K3生产领料单的触发器
完全没作用
如果把关于inserted表的删除(包括IF,和FInterID的判断),就可以用
但是想不明白哪里出问题
希望大家指点下
...全文
273 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
kurorole 2019-05-24
  • 打赏
  • 举报
回复
引用 1 楼 RINK_1 的回复:
你这个逻辑好像有问题,针对ICStockBillEntry的插入动作进行触发,但是触发的结果又是对ICStockBillEntry进行更新。这时候,ICStockBillEntry里有本次插入的FInterID对应的数据了吗。


有的.FInterID是自动生成的主键.只要有新的插入,就一定有
RINK_1 2019-05-24
  • 打赏
  • 举报
回复
你这个逻辑好像有问题,针对ICStockBillEntry的插入动作进行触发,但是触发的结果又是对ICStockBillEntry进行更新。这时候,ICStockBillEntry里有本次插入的FInterID对应的数据了吗。

22,206

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server 疑难问题
社区管理员
  • 疑难问题社区
  • 尘觉
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧