Kettle發送郵箱並在正文中以表格形式展示內容[基礎版]

之前曾多次使用kettle進行作業監控,當Kettle需要通過郵件發送統計結果時,之前我的做法都是通過郵箱附件的方式實現.而對於結果集很小的場景,如果依然使用附件方式,整個郵件的核心內容會顯得非常不直觀.

而如何在郵箱正文中通過表格方式展現統計結果呢?

郵件正文中支持HTML格式,那解決辦法就是自行拼出HTML,然後填到郵箱正文中.

自行拼接HTML串,是此任務中最麻煩的點,也是最關鍵的點.另外,要注意使用組件"設置變量"將統計結果寫入變量中.

下面展示一下,將Oracle查詢得到的結果集拼成HTML的實例:(Sql拼接HTML是一種方式,也可以嘗試使用其他方式.)


1. 準備郵箱正文
1.1 表輸入:
WITH stu as
(
SELECT 1001 AS ID,'小明' AS name,12 AS age,'北京' AS address FROM dual UNION ALL
SELECT 1002 ,'小東',10,'南京' FROM dual UNION ALL
SELECT 1003 ,'小飛',14,'天津' FROM dual UNION ALL
SELECT 1004 ,'小連',13,'深圳' FROM dual UNION ALL
SELECT 1005 ,'小楠',12,'大連' FROM dual UNION ALL
SELECT 1006 ,'小紅',9,'合肥' FROM dual
)

SELECT replace(wm_concat(v_stu.info),',','') AS v_info from
(
SELECT '<table border ="1">' AS info FROM dual union all
SELECT '<tr><th>學號</th><th>姓名</th><th>年齡</th><th>城市</th></tr>' AS info  FROM dual UNION all
SELECT '<tr><td align="center">'||stu.id||'</td><td  align="center">'||stu.name||'</td><td align="center">'||stu.age||'</td><td  align="center">'||stu.address||'</td></tr>' from stu UNION ALL
SELECT '</table>' AS info FROM dual
) v_stu
1.2 設置變量
2. 郵件通知
3. 郵件效果

至此,通過SQL將查詢結果拼接HTML串的方式實現郵箱正文展示結果集的過程梳理完畢,希望能夠對你有用!

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章