22,209
社区成员
发帖
与我相关
我的任务
分享
CREATE TRIGGER [PURTC-Control] ON [dbo].[PURTC]
FOR INSERT,UPDATE
AS
DECLARE @TC001 CHAR(4),
@TC002 CHAR(11)
begin
SET NOCOUNT ON
SELECT @TC001=TC001,@TC002=TC002 FROM INSERTED
exec PURTD_Control_Money @TC001,@TC002
SET NOCOUNT OFF
end
create proc PURTD_Control_Money
@danbie char(4),@danhao char(11)
as
declare @danbie1 char(4),@danhao1 char(11),
@users char(10),
@mail_address varchar(1000),
@datetime varchar(50),
@message1 varchar(255),
@body1 NVARCHAR(MAX)
begin
set @danbie1=@danbie
set @danhao1=@danhao
if
(
select count(*)
from
(
select TD001+'-'+TD002+'-'+TD003 采购单,TC011,TC004,TC005,TC026,CASE WHEN TC018='1' THEN '应税内含' WHEN TC018='9' THEN '不计税' end 税种,
TD009,TD010,
品号,币种,单位,含税,最低价格,
case when (含税='N' and TC018='9' ) or (含税='Y' AND TC018='1') THEN TD010
WHEN (含税='Y' AND TC018='9') or (含税='N' and TC018='1') THEN round(TD010 / (1+TC026),4)
END 转换单价
from PURTD
JOIN PURTC ON TC001=TD001 AND TC002=TD002
JOIN 品号最低价格 on 品号=TD004 and TD009=单位 and TC005=币种
WHERE TD010<>0 and TC001=@danbie1 AND TC002=@danhao1
) xxx
where 转换单价> 最低价格
) >0
BEGIN
set @users = (select TC011 FROM PURTC WHERE TC001=@danbie1 AND TC002=@danhao1)
set @mail_address = isnull((SELECT MV020 FROM CMSMV WHERE MV001=@users),'') + ''
set @datetime = convert(varchar(50),getdate(),20)
set @message1= 'ERP自动发送:采购单单价异常'
SET @body1 =
N'<H3>提示:以下物料存在更低的采购价格</H3>' + N'<H5>打印时间:'+@datetime+'</H5>' +
N'<table border="1" cellspacing="0" style="font-size: 14px" bordercolor="#CCCCCC">' +
N'<tr bgcolor="#CCFFFF"><th width="60">供应商</th><th width="60">采购员</th><th width="80">单据日期</th><th width="180">单号</th><th width="200">品号</th><th width="200">品名</th><th width="80">采购单价</th></tr>' +
CAST ( ( SELECT td = MA002,'',
td = MV002, '',
td = TC003, '',
td = TD001+'-'+TD002+'-'+TD003,'',
td = TD004, '',
td = TD005, '',
td = convert(numeric(16,4),TD010)
FROM PURTD
JOIN PURTC ON TC001=TD001 AND TC002=TD002
JOIN CMSMV ON MV001=TC011
JOIN PURMA ON MA001=TC004
WHERE TD001=@danbie AND TD002=@danhao
FOR XML PATH('tr'), TYPE
) AS NVARCHAR(MAX) ) +
N'</table> <BR/>易飞ERP自动发送,请勿回复!'
EXEC msdb.dbo.sp_send_dbmail
@profile_name = 'ERP_mail',
@recipients='××××××××××', --邮件地址,多个;分开。@mail_address
@subject = @message1,
@body = @body1,
@body_format = 'HTMl' ;
end
END