今天跟好友在网上聊天,被问到如何使用web serivce作为数据源来制作BIRT报表,BIRT的例子里都是基于数据库表来构建报表的,所以产生了这个疑问,本想写一篇step by step的文章来详细介绍一下,可是最近实在太忙了,只好在这里介绍一下思路。
这个问题,可以使用ScriptDataSource和ScripteDataSet来解决,ScripteDataSource后台基于java bean,可以在bean里连接自己的数据源,无论是用web service还是用socket取数据源都应该没什么问题,另外还可以为BIRT报表提供数据库连接池,因为本来的报表设计文件是自己去连数据库的,所以难免会比较慢
另外一个问题是基于属性拖拽的问题,这个问题我没有具体试验过ScriptDataSet中的属性拖拽是否可用,但我想既然基于表的可以,基于Bean的对于BIRT的开发组来说也没什么难度,毕竟属性都已经绑定到DataSet里了,拖拽一下又有何妨