我的意思是我从报价#QT001复制SOOrder#SO001 . 无论如何,我看到SOOrder复制的报价参考,所以我想在报价中得到相同的结果 . 我插入新的SO然后更新到QT时创建了触发器 . 通过手动,逐个插入它很好 . 但是,当我保存已经从报价转换的SO时,它出现了消息错误:'错误#91:另一个进程已更新'SOOrder'记录 . 你的改变将会丢失 . '当然,我想我会错过任何步骤 .
CREATE TRIGGER tgg_SOOrder
ON dbo.SOOrder
FOR INSERT
AS
--Update QT record with SO record's order info
UPDATE SOOrder
SET OrigOrderType = 'SO',
OrigOrderNbr = i.OrderNbr
FROM SOOrder so
JOIN inserted i
ON so.OrderNbr = i.OrigOrderNbr
WHERE so.OrderType = 'QT'
AND i.OrderType = 'SO'
AND so.CompanyID = 2--Business logic constraint
AND so.OrigOrderNbr IS NULL
AND so.OrigOrderType IS NULL