ActiveReports工作總結1——AR簡介

ActiveReports(以下簡稱AR)是一款日本開發的報表打印組件,類似於vs2003自帶的那個CrystalReports(即水晶報表,簡稱CR),雖然普及率沒CR高,但是在很多對日項目中卻普遍使用,而網上資料幾乎都是CRAR的中文資料不是很豐富。

最近一直在用AR,故對AR的使用也有一定經驗,所以打算把這些經驗總結一下,一方面自己總結鞏固一下,一方面也給有這方面需要的朋友參考參考。文章可能有很多錯誤或不足之處,希望可以和大家一起討論。

AR的使用其實和CR很像,有CR經驗的朋友開發AR肯定會駕輕就熟。對於那些沒有報表開發經驗的朋友也不要緊,我們下面一步步來,先試着創建一個最簡單的報表。

一,準備工作。

我的工作環境是vs2003+vb.net,以下例子就用這個環境,C#vb.net沒啥差別的。

首先,裝vs2003,這是廢話。

其次,裝AR,似乎也是廢話,vs2003自帶CR,但卻不帶AR的,所以只能自己裝。安裝文件google一下,應該很好找,假如不知道下載哪個的話,我回家上傳一個。

安裝好AR之後,你可以在工具箱裏看到多了一個控件Viewer,如圖:


 假如沒有直接出現的話,可以添加一下,如圖:


同時,在工程上添加一個新的Item時,你將會發現多了一個Item選項,這個就是AR的模版文件:


這裏有必要解釋下多出來的這2個咚咚是幹嘛的。

1, 工具箱裏的那個Viewer,是放在Form上的,可以理解爲一個容器。

2, 那個新Item,是個rpx文件,是AR的模版,可以理解爲需要放到容器裏的實物。最終用戶通過Form上的那個Viewer容器,看到AR模版的內容。

 

二,創建一個AR報表的簡單流程。

a)         創建一個窗體frmShowAR,在這個formadd一個 Viewer控件Viewer1



b)       
創建一個AR模版ARSimpleExample



c)       
AR模版ARSimpleExample隨便加幾個textbox(工具箱裏多了個ActiveReports板塊,只有裏面的這些控件,纔可以放到AR模版上),這就是我們需要打印出來的東西



d)       
在窗體frmShowAR中加入代碼,使Viewer1顯示AR模版ARSimpleExample

最後,運行程序,我們的第一張AR報表就這麼誕生了。

 

    ''' -----------------------------------------------------------------------------
    ''' <summary>
    ''' form load事件
    ''' </summary>
    ''' <param name="sender"></param>
    ''' <param name="e"></param>
    ''' <remarks>
    ''' form load時,把AR模版裝載到Viewer容器中去
    ''' </remarks>
    ''' <history>
    '''     [TonyGong]    6/5/2006    Created
    ''' </history>
    ''' -----------------------------------------------------------------------------
    Private Sub frmShowAR_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
        
Try
            
'創建AR模版實例
            Dim rpt As New ARSimpleExample

            
'顯示AR模版
            Me.Viewer1.Document = rpt.Document
            rpt.Run()

        
Catch ex As Exception
            MessageBox.Show(ex.ToString)
        
End Try
    
End Sub



e)        

 

 

這只是一個最最簡單的例子,AR的功能還是很強大的,比如可以以dataset爲數據源,設置AR模版;可以把報表導出成htmlxlspdf等。

整個AR的精華其實都在AR模版上,你們在AR模版上右擊,view code,將發現AR模版其實是由一個.rpx文件和一個.vb文件(c#.cs)組成的,這類似於asp.net中的代碼分離技術,畫面和代碼分離。

.vb文件中,你可以做很多控制,比如,畫面(.rpx)上面有個顯示日期的textbox控件,然後你可以在.vb中用代碼獲取當前日期,然後顯示到.rpx上的控件中去。

這些內容,下篇再講,今天先說到這裏吧,希望能和大家一起探討,共同進步。
 

發佈了4 篇原創文章 · 獲贊 0 · 訪問量 6萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章