1.int_wms_kczt_bill由LIMS返回插入数据时,增加触发
触发自动更新sphwph的bukxshl数量,不更新dangqzht,因为lims可能不是批号整个停售,如果是shl和bukxshl相等;
2.销售开票拦截
即库存减去bukxshl,bukxshl统计时,shl为0时bukxshl为0;
3.销售开票存盘拦截
这样处理的话:
1.移库,报损,抽检,盘点,可以正常执行;
2.采购退,不走合格品库;
3.销售退回的时候库存增加,但bukxshl部分仍不可销售;
4.WMS必须移库后,才能减少这部分库存;
有个小BUG,WMS移完库后,销售再退回,bukxshl还占有数量的情况,这部分销不出去(待解决!);
解决思路:sphwph加个更新触发
IF UPDATE(shl)
BEGIN
UPDATE b
SET b.bukxshl = 0
FROM Inserted AS a
INNER JOIN sphwph AS b ON a.spid = b.spid AND a.hw = b.hw AND a.pihao = b.pihao
WHERE b.bukxshl <> 0 AND a.shl = 0
END