雲豹
CloudReport
訊光科技/張育誠
前言
現代企業大都全面導入電子化或稱資訊化的系統,大量的商業數據都被儲存在資料庫中。而這些零碎的資料在未經過整理前其實價值並不高,所以就需要透過整理分析,將資料變成有意義的資訊,提供給不同部門或不同職務之人想要的資料,更可作為高階管理人參考或決策的依據。通常這些只是個查詢結果,如果想印出或記錄這個查詢結果,就是所謂的報表。
報表平台隨著企業使用的資訊系統平台而變遷,以往的Windows平台可以在單機上操作列印報表(Win Report)。但網路所給予的即時便利性大大的影響了這類型的需求,也導致許多使用者希望在瀏覽器瀏覽網頁的同時,就能夠將查詢的資料直接預覽或是產出報表(Web Report),更可以透過eMail或通訊軟體傳送給主管或他人。
雲豹CloudReport特色
從前述的演進到現在,通常報表開發的動作還是在個人開發環境上,像是使用Visual Studio安裝報表套件,讓程式人員透過IDE環境來設計報表 (Ex:CrystalReport,ReportViewer)。
CloudReport 則結合了原本EEP平台的開發環境(明年將開放CloudReport可以獨立使用),將報表的設計過程,從本機環境移到了Web網頁當中。不須額外安裝任何報表套件,透過訊光自製研發的Web報表設計介面與報表引擎,開發人員只需透過瀏覽器,即可打開CloudReport設計界面,可以不受時間與空間的限制,在雲端直接進行報表的開發設計與維護的工作。
建立報表
1.在原有的EEP產品中,會在JQWebClient目錄下,增加一個Report的資料夾,裡面會包含CloudReport的Design網頁程式與報表設計階段所產生的檔案。
2.從EEP Manager中將上述的ReportDesign.aspx網頁掛載到Menu上,就可以直接從JQWebClient打開報表設計畫面,可讓開發者或進階的使用者來使用。
3.點選精靈(Wizard)會開啟選擇資料來源的畫面,其實和EEP Node.JS Report的畫面非常相似。只是這裡所挑選的服務端名稱(ServerName)是目前IIS網站所連線的A/P Server 資料來源。
4.簡單挑選要呈現的欄位和布局後按下完成。
5.即可產生報表雛型模板,做後續的設計開發動作
6.點選預覽(Preview)可顯示目前報表的設計結果,這對開發人員來說相當重要,可隨時比對是否有設計上的落差。並可以選擇下載PDF文件格式檔案,或是直接列印成紙本。
修改報表
1. 設計階段所產生的報表設計檔,會以JSON格式存放在IIS目錄下。
2.當後續要變更報表格式時,可以從ReportDesign設計網頁點選開啟 (Open)的功能,打開欲修改的報表設計檔。
3.例如要在報表中增加一個欄位,在表格元件上點選右鍵,增加一個Column。
4.在設計界面選中目前表格後,可以從工具箱用滑鼠拖曳想要的資料來源欄位Field,到剛剛新增的空白欄位中。
5.滑鼠放開後,資料欄位上方的欄位名稱也會一併自動設定。
6.如果我們要針對資料作分群,則可以設定Table中的Groups屬性的分組欄位和AfterGroup屬性的ChangePage(群組間以換頁隔開)等選項來做調整。
7.接著將把客戶號碼欄位往前移動,直接用滑鼠拖曳後放開就可以和訂單號碼欄位內容對調。
8.報表存檔後點選預覽,可立即看到修改的欄位和資料分群換頁的效果。
掛載報表
1.設計完成的報表檔案,在執行階段時可結合原本EEP開發好的JQuery查詢畫面。透過DataGrid元件的ToolItem屬性,增加一個按鈕呼叫公用Function。
2.接著設定ReportFileName選擇要打開的報表設計檔,也就是先前做好的JSON檔案。
3.在網頁執行時,即可輸入查詢條件產生報表。簡單幾個步驟,可快速將CloudReport的設計成果,輕鬆滿足使用者的各種報表需求。
結語
以上的範例,可以看到 CloudReport ,已經成為一個雲端報表設計(Web Report Design)的開發工具。開發環境不再需要安裝額外的報表套件,只要選擇EEP原本開發好的資料來源後,就可在網頁上直接設計各式各樣的報表,並以輕量化的JSON格式存放報表設計檔。
未來訊光除了使用A/P Server的資料來源,預計也會讓 CloudReport 開放支援其他類型的資料來源,例如可以把整理好的JSON格式資料,透過簡單幾句程式語法,將其快速呈現在設計好的 CloudReport報表畫面。如此一來,報表畫面與資料來源的串接將更具有彈性和便利性,就如同雲豹般輕巧靈動。