1. 程式人生 > 其它 >案例分享:Excel表格的自動化處理和推送

案例分享:Excel表格的自動化處理和推送

需求:

每月1號從故障處理系統中查詢分公司上月的統計資料和故障清單傳送給分公司維護部經理。表格的格式如下:

解決方案:

1、設計Excel模板表格,在模板表格中需要填寫SQL資料的位置上設定“資料單元格”標記:

2、在EasySQLMAIL中建立資訊推送任務,上傳Excel模板表格:

3、為附件模板新增第一個SQL語句,用於查詢"故障數量":

SQL語句如下:

--查詢上月分公司故障統計資料
SELECT 
  分公司,to_char(發生時間,'yyyymm') AS 月份,
  COUNT(1) AS 故障數量 
FROM t_stat1 
  WHERE 分公司 =
'青陽公司' AND to_char(發生時間,'yyyymm') = to_char(add_months(SYSDATE,-1),'yyyymm') GROUP BY 分公司,to_char(發生時間,'yyyymm')

4、設定SQL欄位與Excel模板表格的對應關係:

5、為附件模板建立第二個SQL語,用於查詢"處理完成量":

SQL語句如下:

--查詢處理完成(處理時間非空)的故障數量
SELECT count(1) as 處理完成量 
FROM t_stat1 
WHERE 分公司 = '青陽公司' 
  AND to_char(發生時間,'yyyymm'
) = to_char(add_months(SYSDATE,-1),'yyyymm') AND 處理時間 IS NOT NULL;

6、設定第二個SQL語句欄位與模板表格的對應關係:

7、為附件模板新增第三個SQL語句,用於查詢故障清單:

SQL語句如下:

--查詢故障清單
SELECT 區域,裝置地址,故障型別,發生時間,處理時間
FROM t_stat1
WHERE 
  分公司 = '青陽公司'  
  AND to_char(發生時間,'yyyymm') = to_char(add_months(SYSDATE,-1),'yyyymm')
ORDER BY 發生時間

8、設定第三個 SQL語句與模板表格的對應關係:

9、設定郵件收件人:

10、設定自動執行時間(執行計劃):

 這裡設定為從5月1日起每月1號早上9點執行。

執行效果:

任務配置完成後,EasySQLMAIL將在每月1號早上執行這個任務,並把填寫好的表格傳送給"青陽維護經理<[email protected]>"。下面是執行的效果:

-系統自動填寫的表格內容:

-通過電子郵件推送:

-通過企業微信或釘釘推送:

在任務的“收件人”中選擇了企業微信收件人時,系統會自動把附件檔案通過企業微信推送給員工:

 企業微信推送結果:

說明:

(1) 除了上述的方式外,EasySQLMAIL還能夠實現點對點資訊推送、通過變數動態確定推送內容和收件人等功能。詳細資訊可參閱EasySQLMAIL的其他相關文件瞭解。

(2) 執行計劃僅在EasySQLMAIL企業版中提供,EasySQLMAIL桌面版不支援執行計劃。

相關連結:

應用案例:利用EasySQLMAIL實現點對點資訊分發

在SQL語句中實現電子郵件、企業微信和釘釘資訊推送

EasySQLMAIL執行計劃配置案例

轉自https://mp.weixin.qq.com/s/9hOvyUK1WUfHAR257FvNXg