需求:有谁做过金蝶KIS专业版 销售出库单必须选销售订单才能出库、采购入库单必须选采购订单入库相关的插件。
首先,为什么会有这个需求呢?想必是为了规范企业的做事流程,不管是实际的合同还是口头的约定,我们一定要把谈好的价格,做到系统中的订单里面。后续的业务都统一从订单开始,便于跟踪管理。
然后,实现这个功能的逻辑是:当保存库存单据的时候(销售出库单和采购入库单)要判断原单号字段是否为空值。当源单号字段为空时,则返回错误。
最后,如果想做成功这个触发器,要理解3个知识点:
- 触发器的基本结构
- 触发器的中间表
- 库存单据表icstockbillentry
前2点可以看另外一篇入门的文章 :SQL触发器及存储过程学习,一个门外汉的学习笔记
alter trigger tr_xouton ICStockBillEntryafter insertasbegin if exists(select * from inserted where (FSourceTranType <> 81 or FSourceInterId = 0) and (select FTranType from ICStockBill t1,inserted t2 where t2.FInterID = t1.FInterID ) =21 ) begin raiserror('销售出库单源单号为空,不允许保存!',16,8) rollback tran endend