第1步:设计录入工单及录入变列单自定义画面: 工单单头设置 自定义字段组合框,值:L:正常领料, N:不可领料
第2步: 设置 工单发放及手工新建 工单时事件触发 给工单单头 自定义字段赋默认值( L:正常领料);
第3步: 在入库审核时设置 触 发传值 当工单单头状态 =Y 时 传值 给自定义字段 值(N:不可领料 )
第3步: 在领料单单身编写SQL触发器 使当工单单头自定义字段值为不可领料状态是不可以领料的(如下触发器)
第4步: 在工单变单就可操作工单自定义 值 来控制领 领料
USE [BM]
GO
/****** Object: Trigger [dbo].[MOCTE_UPD] Script Date: 2014/12/4 16:01:02 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
ALTER TRIGGER [dbo].[MOCTE_UPD]
ON [dbo].[MOCTE]
AFTER INSERT,UPDATE
AS
BEGIN
SET NOCOUNT ON; --领料码UDF02 T 代表特殊领料不给领料,
if EXISTS (SELECT * FROM INSERTED A LEFT JOIN MOCTA B ON A.TE011=B.TA001 AND A.TE012=B.TA002 WHERE B.TA011='y' or B.TA011='1' )--or B.UDF02='T:特殊领料')
begin
raiserror('出错!该工单已[指定完工]或[未发放]或已完工不可领料需联系计划部相关人员!',16,16)
return
end
END
==N:不可领料状态 如下:
USE [BM]
GO
/****** Object: Trigger [dbo].[MOCTE_UPD] Script Date: 2014/12/4 16:01:02 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
ALTER TRIGGER [dbo].[MOCTE_UPD]
ON [dbo].[MOCTE]
AFTER INSERT,UPDATE
AS
BEGIN
SET NOCOUNT ON; --领料码UDF02, N 代表特殊领料不可领料,
if EXISTS (SELECT * FROM INSERTED A LEFT JOIN MOCTA B ON A.TE011=B.TA001 AND A.TE012=B.TA002 WHERE B.TA011='y' or B.TA011='1' )--or B.UDF02='N:不可领料')
begin
raiserror('出错!该工单已[指定完工]或[未发放]或已完工不可领料需联系计划部相关人员!',16,16)
return
end
END