如果報表的產出, 希望可以直接轉成 Excel, 一般的作法會使用 XML Publisher, 但是資料量一大, 執行效率就不好; Discoverer 則是不夠彈性, 而且使用者需要另外登入 Discoverer 系統; Report 再另存 (使用特定分隔符號), 使用者則必須先將 Output 存成 CSV / TSV, 再用 Excel 開啟

在網路上找到一種作法, 它可以讓使用者在 View Output 時, 直接把產出存為 Excel 格式, 對使用者來說很方便, 對 IT 人員開發報表上也很便宜, 無需針對報表格式做規劃, 只需要把 SQL 寫好, 查詢條件定義好, 加上 Dynamic SQL 就完成了

這種作法叫作 : SYLK (SYmbolic LinK)

不過它必須修改 Oracle 標準的 Output Format : PCL 來當做 SYLK 的 Output Format, 所以必須先經過考量 (修改 PCL 的原因好像是因為 PCL 已經很少在使用, 所以較不會影響到其他 Report)

詳細作法可以參考網頁 http://garethroberts.blogspot.com/2007/10/excel-file-output-from-oracle.html

這樣的作法, IT 人員只要寫好對應的 Procedure, 然後將其掛載為 Concurrent Request, 開發流程非常的快速 :)

不過, Excel 2007 之前仍有筆數限制 (65535 筆), 所以產出資料量還是需要考量一下比較安全~

創作者介紹
創作者 Aloz 的頭像
Aloz

Aloz 的 Oracle ERP 天地

Aloz 發表在 痞客邦 留言(3) 人氣()