天天看點

基于DotNet構件技術的企業級靈活軟體開發平台 - AgileEAS.NET平台開發指南 - 處理報表

基于DotNet構件技術的企業級靈活軟體開發平台 - AgileEAS.NET平台開發指南 - 處理報表

         1.修改了Excel導出的問題,因為在應用中有大量的需求需要導出報表并要求和列印樣式比對:

基于DotNet構件技術的企業級靈活軟體開發平台 - AgileEAS.NET平台開發指南 - 處理報表

         2.修改了PDF檔案導出中文的問題。

         3.中文化。

         4.列印的走紙控制,在企業應用中,特别是視窗服務應用的同一列印機打多咱票據的列印走紙控制。

         首先設定連接配接:

基于DotNet構件技術的企業級靈活軟體開發平台 - AgileEAS.NET平台開發指南 - 處理報表

         選擇資料庫表或者編寫報表的查詢語句:

基于DotNet構件技術的企業級靈活軟體開發平台 - AgileEAS.NET平台開發指南 - 處理報表

         确定之後使用報表設計器設計報表:

基于DotNet構件技術的企業級靈活軟體開發平台 - AgileEAS.NET平台開發指南 - 處理報表

         預覽報表:

基于DotNet構件技術的企業級靈活軟體開發平台 - AgileEAS.NET平台開發指南 - 處理報表

         AgileEAS.NET平台同時提供了一個不需要資料庫連接配接而是基于AgileEAS.NET平台中的ORM對象設計報表的方法,我們來看一下設計過程:

         首先選擇ORM對象的元件及ORM表對象:

基于DotNet構件技術的企業級靈活軟體開發平台 - AgileEAS.NET平台開發指南 - 處理報表
基于DotNet構件技術的企業級靈活軟體開發平台 - AgileEAS.NET平台開發指南 - 處理報表

         AgileEAS.NET平台在報表的部署上采用了內建部署的思路,即設計好的報表定義存儲在資料庫中,用戶端在使用中讀報表定義并緩存在用戶端,平台中增加了一個報表管理的應用插件報表管理:用于管理系統中的所有報表。

基于DotNet構件技術的企業級靈活軟體開發平台 - AgileEAS.NET平台開發指南 - 處理報表

         開發人員可以使用獨立的報表設計器設計好報表,然後在報表管理中建立一個報表并且導入報表定義。

         建立報表:

基于DotNet構件技術的企業級靈活軟體開發平台 - AgileEAS.NET平台開發指南 - 處理報表

         導入報表定義,可以根據設計好的報表定義檔案導入,也可以直接從報表設計器Copy報表定義源碼:

基于DotNet構件技術的企業級靈活軟體開發平台 - AgileEAS.NET平台開發指南 - 處理報表

         開發員人也可以直接使用內建的報表設計器進行報表設計:

基于DotNet構件技術的企業級靈活軟體開發平台 - AgileEAS.NET平台開發指南 - 處理報表

         報表管理子產品內建的報表設計器是一個相獨立的報表設計器相比更加簡潔,這個報表設計器不像獨立的報表設計,最後把結果儲存到報表定義檔案,而是直接儲存到AgileEAS.NET的報表定義資料庫中。

         AgileEAS.NET平台提供了一個報表列印/預覽控件與報表列印/預覽視窗,開發人員可以根據需要情況彈出的列印窗體還是使用可以嵌入在應用界面中的列印控件。

         因為報表定義是在資料庫中,是以在報表列印前需要賦予報表列印控件報表定義和報表的資料源,我們在平台的報表管理中定義了一個IRportEx接口,用于存儲報表定義,下面示範一個使用彈出窗體的報表列印例子:

             //報表對象

             IReportEx report = DALHelper.DALManager.CreateReportEx();

             report.Session = ContextHelper.Session;

             report.Name = "診療項目清單";

             report.Refresh();

             //綁定到報表的資料對象(ORM表對象)

             IItemInfoPrintList pl = this.itemList.GetPrintList();

             //列印對話框

             RDLViewDialog printForm = new RDLViewDialog();

             //綁定報表定義

                 printForm.Report = this.Report; 

             //綁定列印資料

             printForm.DataObject = pl;

             //預覽列印

             printForm.PrintPreview();

以上代碼效果如下圖:

基于DotNet構件技術的企業級靈活軟體開發平台 - AgileEAS.NET平台開發指南 - 處理報表

             使用AgileEAS.NET平台提供的報表列印控件的使用方法同彈出式列印視窗,代碼如下:

              report.Name = "示範報表";

             IIteminfoList dataList =

             EAS.Exam.DAL.Interface.DALHelper.DALManager.CreateIteminfoList();

             dataList.Session = ContextHelper.Session;

             dataList.GetIteminfoList(string.Empty, this.tbName.Text);

             this.reportViewer.Report = this.Report; 

             this.reportViewer.DataObject = pl;

             以上代碼執行效果如下圖:

基于DotNet構件技術的企業級靈活軟體開發平台 - AgileEAS.NET平台開發指南 - 處理報表

             在AgileEAS.NET平台的應用項目開發中,我們建設使用這種模式的報表開發,簡單、直覺,在我們的開發實踐中,我們也可以使用這種方式代替資料查詢子產品。

連結

QQ群:116773358,15118502(已滿員)