关于利用birt API进行报表开发中遇到的问题!

anyoneking 2008-01-17 04:13:11
希望熟悉birt api的大侠多帮忙.
这个问题是在我开发一个barchart中遇到的,主要是在对x,y等维度进行function操作的时候出现的问题.
我们的一个项目用到了birt,但是只是用他的api来生成客户自定义的report文件.在其中.我用到了对row["abc"]进行表达式运算的功能.举个简单的例子row["abc"]+1000 .希望在barchart图中显示该数据时,为原先值再增加1000.
代码如下:
BarSeries bs = (BarSeries) BarSeriesImpl.create();
qryDial = QueryImpl.create("row[\"abc\"]+1000 ");
bs.getDataDefinition().add(qryDial);
然后再将我定义的bs加入到SeriesDefinition中.
我的数据是用的scriptDataSet和ScriptDataSource来组成的.
其中定义了"row['abc'] = node['abc']",用来取数据.
但是在保存report文件后,编辑其源文件:
<DataDefinition>
<Definition>row["abc"]</Definition>
</DataDefinition>
与我期望的
<DataDefinition>
<Definition>row["abc"]+1000</Definition>
</DataDefinition>
完全不一样.感觉很诧异!
不知道造成这样的原因是什么?
而且如果我将row["abc"]+1000 写成一个错误的任意字符串xyzrow["abc"]+1000.

<DataDefinition>
<Definition>xyzqrow["abc"]+1000</Definition>
</DataDefinition>
是显示正确的!郁闷郁闷!
请个位大侠帮帮忙!!!!!!!!!!
...全文
214 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
呼唤 2008-10-07
  • 打赏
  • 举报
回复
似乎这个问题直接在报表设计器里实现更容易些。
anyoneking 2008-01-17
  • 打赏
  • 举报
回复
自己先顶,别沉了!

58,454

社区成员

发帖
与我相关
我的任务
社区描述
Java Eclipse
社区管理员
  • Eclipse
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧