生产库自动派送报表派送失败之重新派送
/*
Description: 生产库自动派送报表派送失败之重新派送
*/
USE [DB] --Replace yourDB
GO
DECLARE @ProductDate nvarchar(10) = N'2014-01-01'
DECLARE @FactoryCode nvarchar(10) = N'X'
DECLARE @strSQL nvarchar(3000)
DECLARE @strCRLF nvarchar(2)
DECLARE @strCmdShell nvarchar(255)
DECLARE @pFactoryName nvarchar(50)
DECLARE @pSubjectText nvarchar(255)
DECLARE @pBodyText nvarchar(max)
DECLARE @pRecipients nvarchar(max)
DECLARE @Attachments nvarchar(max)
DECLARE @RetVal int
DECLARE @is_master_dw int
DECLARE @SQLMailProfile nvarchar(255)
DECLARE @template_path nvarchar(255)
DECLARE @template_name nvarchar(255)
DECLARE @report_target_name nvarchar(255)
DECLARE @report_full_path nvarchar(255)
SET NOCOUNT ON;
SET @strCRLF = NCHAR(13) + NCHAR(10)
-----------------------------------------------------------------------
PRINT @strCRLF + N'********** 產生DB 生產日報表並自動發送**********'
--預設是當天的日報表
IF @ProductDate = N'' SET @ProductDate = LEFT(CONVERT(nvarchar(20), GETDATE(), 120), 10)
--IF@ProductDate = N'' SET @ProductDate = LEFT(CONVERT(nvarchar(20), DATEADD(DD,-1, GETDATE()), 120), 10)
--未指定工廠代碼就是全部
IF @FactoryCode = N'' SET @FactoryCode = NULL
/* 讀取系統參數*/
SET @is_master_dw = CAST(dbo.fn_GetParameter(N'@is_master_dw') AS int)
SET @SQLMailProfile = CAST(dbo.fn_GetParameter(N'@sqlmail_profile') AS nvarchar)
SET @template_path = CAST(dbo.fn_GetParameter(N'@template_path') AS nvarchar)
SET @template_name = CAST(dbo.fn_GetParameter(N'@template_name') AS nvarchar)
SET @report_target_name = CAST(dbo.fn_GetParameter(N'@report_target_name')AS nvarchar)
SET @report_full_path = @template_path + N'\' + @report_target_name
--以下是自動派送EMAIL 給各收件人
--SET@pRecipients = dbo.fn_GetRecipients()
SET @pRecipients = dbo.fn_GetRecipientsByCode(N'DailyReport')
SET @pRecipients += ';mail@163.com' --Replaceyour mail address....
IF @is_master_dw = 1
SET @pSubjectText= N'<<<XXXXXXXX日報表自動派送>>> 生產日期:' + @ProductDate
ELSE
BEGIN
/* 只處理一個廠,取得加工廠名稱*/
SELECT TOP1 @pFactoryName =FactoryName FROMdbo.T_factory WHERE IsActive = 1
SET @pSubjectText= N'<<<'+ @pFactoryName+ N'生產狀況日報表自動派送>>> 生產日期:' +@ProductDate
END
SET @pBodyText = N'Dear All,' + @strCRLF+ @strCRLF
SET @pBodyText += N'附件為' +@ProductDate + N' 的生產狀況日報表,請參閱。' + @strCRLF
IF @is_master_dw =1 SET @pBodyText+= N'如需其他生產數據查詢,請進本公司XXXX 系統查詢,網址為http://XXXX.COM.CN' +@strCRLF + @strCRLF
SET @pBodyText += @strCRLF
--SET@Attachments = N'D:\DB\DBDailyReport.xls'
SET @Attachments = @report_full_path
PRINT @pRecipients
PRINT @pBodyText
PRINT @pSubjectText
PRINT @Attachments
EXEC msdb.dbo.sp_send_dbmail
@profile_name =@SQLMailProfile,
@recipients = @pRecipients,
@body =@pBodyText,
@subject =@pSubjectText,
@file_p_w_uploads = @Attachments
/*
* 查询邮件失败之项目
USE msdb
GO
SELECT * FROMsysmail_account
SELECT * FROMsysmail_allitems ORDER BY mailitem_id DESC --sent_status
*/
转载于:https://blog.51cto.com/kinwar/1548847
生产库自动派送报表派送失败之重新派送相关推荐
- U8 销售订单对应的生产订单缴库情况执行报表
文章目录 前言 一.功能 二.脚本 总结 前言 本文主是帮助一位有该需求的网友写的,感觉有点实用价值,便分享出来(含sql脚本) 一.功能 U8系统中销售订单对应的生产订单缴库情况执行报表,执行结果如 ...
- 奕新集团RAC 11g 生产库环境(待完善无图)
奕新集团RAC 11g 生产库环境(待完善无图) 1.硬件规划: CPU 8个 内存 8G 网卡 2张 硬盘 1个90G机内盘 8个存储盘 分区:boot 200M swap 8G LVM / ...
- oracle归档日志的生产,记一次Oracle生产库还原归档日志经历
同事电话说急着要恢复生产库上的归档日志.系统环境是10.2.0.5,RAC,归档日志在node1上建立了nfs共享,而node2上没有建立nfs共享 中午刚去吃饭,就接到同事电话说急着要恢复生产库上的 ...
- birt使用quartz框架实现自动生成报表
经过两天的学习,终于通过quartz框架将birt的自动生成报表功能实现了,下面将代码粘贴上来,仅供参考. 1.GenReportAutoDs类,用来生成报表.其中资源库文件位于工程根目录下的libr ...
- 正式生产库,配置双节点的RAC + 单实例的 DATAGUARD
正式生产库,配置DATAGUARD RAC+单实例DATAGUARD 配置 RAC 两节点: 192.1.0.101 rac1 192.1.0.102 rac2 存储:ASM D ...
- 自动安装第三方库python,python第三方库自动安装脚本
#python第三方库自动安装脚本,需要在cmd中运行此脚本 #BatchInstall.py import os libs = {"numpy","matplotlib ...
- 工业企业能耗监测系统 自动生成报表
能源现状 目前,很多企业单位具有工业监控系统,可以监视运行状态.但是没有能源管控系统,不能对能源消耗进行监视与分析.这就造成在生产安排方面缺乏数据支撑,无法对整个厂区的生产进行有效的安排.调度,不能提 ...
- 【python自动化】02. pywin32库自动操作键鼠(保姆级代码注释)
目录 源码和工具下载 大漠综合工具->坐标和窗口信息抓取 在你的桌面上新建一个记事本用于后面的代码测试 完整项目源码 实现思路 介绍win32的基础思路 基本步骤 API介绍 代码实战 1. 获 ...
- sqlserver 通过触发器 自动生成报表 数据表 每小时自动生成报表
这段时间做一个项目,想着不改程序的情况下,实现库里一些报表的自动创建功能. 就有了以下思路 Create TRIGGER TRIGGER_AUTOCREATEREPORTon [sensor]afte ...
最新文章
- nginx虚拟目录配置
- Jmeter调试工具---Debug Sampler
- 话里话外:简单看流程
- python中一共有多少个关键字-Python中关键字有多少个?
- dom定义了访问html文档对象的,HTML DOM (文档对象模型)
- 浏览器的内核及版本的判断
- html 文件上传框 input标签
- slot传函数 vue_面试必备 Vue 知识点
- js基本函数和基本方法
- maven 整体打包_Maven打包方式整理
- Linux下的高级文件权限ACL
- 修改java阻塞数,加快他的运行速度
- 『杭电1891』Tough Water Level
- 【目标一】2019年9月15日 - 2019年9月22日晚 --- 周计划
- ObjectARX开发笔记(一)——分别使用AcEdInputPointFilter和AcEdInputPointMonitor实现光标提示功能
- SpringMVC实现i18n和主题切换
- tdd干扰波形_TDD-LTE上行干扰定位方法及排查指导手册.doc
- 网络持续演进不仅是技术活儿,还是一个“哲学问题”
- 星淘惠:沙特阿拉伯或将成为亚马逊跨境卖家新蓝海市场
- AdaBoost算法搭建信用卡精准营销模型