自動發送 email 報表 Part (I)

目的: 自動於指定時間內寄發重要報表給長官們參考.

由於 Excel 及系統做出來的報表格式都很固定, 在偶然的機會找到這個產品 QueryReporter, 它可以把 SQL 查詢的指令轉製成多種格式 (包括 HTML, CSV 等), 加上排程的功能就可以達到自動寄發固定式報告的方式, 更重要的是他是免費的軟體.

首先到上述網站下載 QueryReporter (http://www.allroundautomations.nl/queryreporter.exe), 安裝在機器上, 當然該主機也必須先設定好 Oracle Client 端的安裝與設定, 該軟體指針對 Oracle DB 可以直接存取, 其他的 Database 應該是無法連結的.

第一次使用時必須要手動填寫 Username / Password, Database 它會主動去讀取 Oracle Client 的設定, 第二次進入時只要點選 [….], 就會帶出已經成功連線的資料.
Test NetApp Picture

接下來我們利用個簡單的 SQL 指令來試跑一下這個程式. Select owner, table_name, tablespace_name, status, pct_free, pct_used from all_tables where owner = ‘SYS’, 輸入到 SQL的空白區域內, 按 ‘齒輪’的圖示, 就可以看到以下的畫面
Test NetApp Picture

HTML 的好處就是其展示的畫面比較好看, 可以自由的改變大小及顏色, 我們就來稍微的調整一下, 點選上方的 Layout Tab, 進入到修改的模式, 我習慣把 Auto update 打開, 這樣修改完成後就可以馬上看得到結果, 不過先按下旋轉的箭頭符號把欄位先帶入到畫面出來.
Test NetApp Picture

首先 Report Title 可以在報表增加一行表頭出來, 在 Description 設定成 System Table, (註: Description 欄位其實就是 Field Name 的註解, Query Reporter 在處理Select 指令有顯示中文的欄位名稱很容易當機, 所以建議欄位要轉成中文就在這個欄位來處理).

而 Style 就是顯示該欄位的屬性, 如果會一點 HTML 的語法就可以知道這些參數就是控制呈現出來的結果. 以下的設定改變了一這些屬性就可以把 System Table 整個橫至在報表的上方.
Test NetApp Picture

接著可以設定 Tabular Table (設定表格格線), Form Tables (設定整個 Table 屬性), Default Field(設定欄位的預設值), 來改變整個報表的面貌
Test NetApp Picture

發表迴響