eclipse birt報表

   在開發中,報表或多或少會涉及到,有些報表可能比較簡單,而有些報表可能很複雜。無論如何,這些報表功能的開發都是可以通過一些公共的組件來實現的,比如我現在所在的這家公司,如果想要製作報表,只需要配置下報表配置下就可以了(這個報表是通過特定實現的報表語言實現了,支持內部自定義的語言,最終將這些相應的數據保存到數據庫中,對報表中的一些事物進行了抽象,比如:報表模型, 查詢參數。)。如果要自己手動的一步一步的編寫報表,那麼相對會比較麻煩,如果能提供一個框架,只需要進行一些配置就可以完成自定義報表,那豈不很輕鬆。現在流行的報表框架還是挺多的,由於公司使用的是eclipse的birt報表,所有本文只是簡單的介紹下birt報表框架的使用。

1、birt下載和安裝

    下載birt:

        下載地址爲:http://download.eclipse.org/birt/downloads/,如下圖,直接點擊“download now”進行下載,建議下載all-in-one版本(這其實也就是一個eclipse,其中包含了birt報表插件)這樣就不需要再爲eclipse安裝birt插件了,這樣很省事,也避免在eclipse安裝birt插件時出現各種問題,由於博主我是懶人,我的eclipse就是All-in-One版本的。

技術分享

通過birt插件安裝,如果不採用eclipse插件在線安裝的方式,那麼這種方式相對比較麻煩,因爲要安裝birt插件的那些依賴的插件(不過可以下載集成WPT的eclipse,那麼安裝的依賴相對就比較少了)。

技術分享

離線安裝eclispe插件常見的有2種方式:一是link方式(這種方式相對比較靈活),二是通過拷貝到對應的目錄的方式安裝。(本文就不介紹離線安裝方式了,需要的可以自行百度)本文主要說下在線安裝方式:

1.點擊Help --->Install New Software

技術分享

2.輸入url,進行一些勾選,然後選擇下一步

技術分享

上面的那個url可以在這個地址找到http://wiki.eclipse.org/BIRT_Update_Site_URL,選擇相應版本的url就行,不過只要3.7.x(含)及以上版本的url地址有效,其它地址都沒用了。

技術分享

後面還有幾步就省略了,都是點擊下一步,同意協議什麼的,然後等待安裝完成再重啓eclipse。

能夠切換到報表視圖就說明安裝成功了,至此birt的安裝算告一段落了。

技術分享


2.birt開發例子

說明:本文只是對eclispe birt官方提供的例子教程的一個搬運,英文比較好的童鞋可以直接去官網看,地址爲:http://www.eclipse.org/birt/documentation/tutorial/tutorial-2.php,這個例子做一個birt報表來顯示客戶(Customers)的信息。後續的birt文章會給出一些較有意義的birt開發例子。

1.首先新建一個Report Project項目,在工作空間右鍵new->Project->選擇"Business Intelligence and Reporting Tools"節點下的"Report Project"->點擊【Next】->輸入項目名字爲:My Project ->點擊【Finish】,這時項目已經創建完成了,出現了一個對話框,問你是否打開關聯的視圖(報表視圖),點擊【Yes】進入報表視圖,出現如下圖說明項目已經創建成功了。

技術分享

2.創建報表

    右鍵My Project項目-> new -> Report ,輸入文件名爲:Customers.rptdesign(rptdesign後綴爲birt報表文件),點擊“Next” ,然後選擇“Grouped Listing”(帶有分組工作的列表模板),然後點擊“Finish”,切換到報表視圖。

技術分享

下面簡單的介紹下各個視圖(view)的作用:

(1) Palette(調色板) -- 這個視圖裏是一些可用來拖拽到報表的公共組件

(2)Data Explorer(數據資源管理器)-  這個視圖用來顯示數據源(Data Sources),數據集(Data Sets)和報表參數(report parameters)。你也能使用這個視圖添加數據集的列到報表佈局。

(3)Resource Explorer(資源管理器) -- 在這個視圖你能看到所有的報表相關的資源,例如:birt報表文件

(4)Property Editor(屬性編輯器) --  這個視圖包含一些報表用到的屬性,在需要的時候你可以好好的看看它

3.建一個數據源(Data Source)

一個數據源表示獲取的數據的來源地,可以是JDBC,ODBC,也可以是XML文件,總的來說來說數據從哪裏來。

切換到“Data Explorer”視圖,選中“Data Sources”,右鍵點擊它,在右鍵菜單中點擊“New  Data Source”

出現了“New Data Source”對話框,選中“Classic Models Inc. Sample Database”數據庫(這個是birt提供的例子數據庫),然後輸入數據源的名字:Sample,點擊下一步,再點擊完成,那麼一個數據源就創建完成了。

技術分享

技術分享

如果想要對數據源進行修改,那麼直接點擊相應的數據源即可,上面的例子中,可以雙擊“Sample”對其進行修改,到目前爲止數據源創建完成了。現在我們有了數據源,但是光只有數據源是不行的,它只是用來提供數據的,如果想獲得數據,那麼還需要創建一個數據集,他用來獲取數據信息。

4.創建數據集(Data Set)

  • 切換到Data Explorer視圖,右鍵“Data Sets”,在出現的右鍵菜單中,選擇"New Data Set",“New Data Set”對話框出現了
  • 選擇剛纔所創建的“Sample”數據源,選擇“Data Set Type”:SQL Select Query,輸入"Data Set Name":Customer
          技術分享
  • 點擊下一步
  • 輸入查詢語句:select  * 
    from 
        customers
    where
        country = ‘USA‘
  • 點擊完成
          技術分享

   點擊“完成”後,會出現數據集編輯對話框,這個對話框提供瞭如下的頁面:

  • Data Source ---  顯示數據集用到的數據源,你也可以改變它

             技術分享

  • Query -- 可以用來查看和編輯查詢語句,你可以在"Available Items"裏查看數據庫和表

              技術分享

  • Output Columns -- 顯示在查詢語句裏的列,你能爲這個列起別名。
  • Computed  Columns -- 經過計算而得到的列,跟其他列類型
  • Parameters -- 這些參數能包含在查詢語句中,根據條件來進行過濾
  • Filters -- 對查詢結果進行過濾
  • Preview Results -- 通過前面的查詢語句所查詢到結果的預覽

 現在有了數據集,接下來需要將數據顯示到表格中

5.填充表格

  • 打開“Data Explorer”視圖,選擇“Data Sets”節點下面的“Customer”節點下面的“CUSTOMERNAME”,然後將其拖拽到表格中帶有灰色字體“Detail Row”的第二列(也就是第三行第二列)

             技術分享

  • 拖拽過去後,如下圖:

           技術分享

  • 創建State組(我們想要將相同State的客戶放到一起,就需要根據State進行排序)
    • 定位到表格中的Group Header Row(用灰色字體標識)那一行(也就是第二行),
    • 將STATE拖拽到表格中Group Header Row的第一行的第一列(第二行第一列)

技術分享

將STATE這行拖拽過去後:

技術分享

  • 手動創建CITY組
  • 鼠標移到表格上面,出現了Table懸浮框,然後點擊這個懸浮框,全選整個表格

技術分享

出現瞭如下的圖形:

技術分享

  • 切換到屬性編輯器(Property Editor)視圖,然後切換到“Binding”標籤欄
技術分享
  • 然後點擊“Add”按鈕,出現了“New Date Binding”對話框,輸入Column Binding Name:CITY,Display Name:CITY,點擊Expression列最後的“fx”按鈕,BIRT Expression Builder對話框出現了
技術分享
  • 在Expression Builder對話框中,在Category那兒選擇“Available Data Sets”,在Sub-Category那兒選中“Customer”,在“Double Click to insert”那兒雙擊“CITY”那一列,然後點擊“OK”
技術分享
  • 回到“New Data Binding”對話框,然後點擊“OK”
技術分享
  • 使表格處於全選狀態,然後右鍵點擊“STATE”頭上面的灰色懸浮單元格,在出現的右鍵菜單中,Insert Group -->   Below,出現了New Group 對話框
技術分享
  • 在“New Group”對話框中,輸入Name:CITY,在Group On中選擇CITY,最後點擊“OK”
技術分享
  • 爲表格添加一列,全選表格,在“STATE”頭的上面的灰色單元格中右鍵,出現了右鍵菜單,選擇Insert -->  Column to the right(相當於在表格中插入了第二列)
技術分享
  • 將CITY數據元素(在第一列的第二組的組頭)移動到第二列的第二組的組頭(也就是移動到第三行第二列)
技術分享
拖過去就成了這個樣子了:
技術分享
  • 創建或修改表頭(我們可能需要對錶頭進行一些調整)
    • 雙擊第一列的表頭,將其修改爲:State
技術分享
  • 在Palette視圖中拖拽一個Label到表格的第二行的表頭,並輸入City
技術分享
  • 雙擊第三列的表頭“CUSTOMERNAME”,修改爲“Name”
  • 增加最後一個表頭“PHONE”,在Data Explorer視圖中將Date Sets -- > Customer --> PHONE拖拽到第四行的最後一列,然後雙擊它,將其修改爲“Phone”
技術分享
  • 修改完成後是這樣子的:
技術分享
  • 最後點擊保存按鈕將文件進行保存。
6.預覽你的報表
  • 你可以通過報表設計器的Preview標籤欄去預覽你設計的報表,然後我這兒並沒有找個標籤欄(具體是什麼原因我這兒也不去深究),我換另一種方式去預覽報表
技術分享
  • 通過工具欄的View Report來預覽報表,點擊這個會出現一個列表選項,你可以選擇一html格式預覽,PDF格式預覽,還有很多可以選擇
技術分享

下面是報表預覽的結果(更加詳細的報表詳細,請自行完成,看結果):
技術分享
這時我們生成的報表已經能顯示了,不過不好看,需要對其進行排版,下面就是一些排版啦~~~
發佈了20 篇原創文章 · 獲贊 14 · 訪問量 21萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章