今天跟好友在網上聊天,被問到如何使用web serivce作為數據源來制作BIRT報表,BIRT的例子里都是基于數據庫表來構建報表的,所以產生了這個疑問,本想寫一篇step by step的文章來詳細介紹一下,可是最近實在太忙了,只好在這里介紹一下思路。
這個問題,可以使用ScriptDataSource和ScripteDataSet來解決,ScripteDataSource后臺基于java bean,可以在bean里連接自己的數據源,無論是用web service還是用socket取數據源都應該沒什么問題,另外還可以為BIRT報表提供數據庫連接池,因為本來的報表設計文件是自己去連數據庫的,所以難免會比較慢
另外一個問題是基于屬性拖拽的問題,這個問題我沒有具體試驗過ScriptDataSet中的屬性拖拽是否可用,但我想既然基于表的可以,基于Bean的對于BIRT的開發組來說也沒什么難度,畢竟屬性都已經綁定到DataSet里了,拖拽一下又有何妨