在没有javascript的情况下在BIRT上动态排序表

时间:2010-04-12 02:03:24

标签: report birt

我使用WebViewerExample作为我的报告。

我正在使用报表设计器在Eclipse中设计报表。

我有一个包含多个列的表。从数据库中检索数据。

是否有一种通过单击列标题名称来动态排序表的简单方法?

我尝试将字符串作为排序条件传递,但它没有帮助。

有什么想法吗?

3 个答案:

答案 0 :(得分:2)

您是否尝试过向查询添加ORDER BY并对其进行参数化?您可能需要执行一些非常轻量级的脚本,以便在运行时按下基础查询。我们所讨论的只是在查询中对排序条件进行字符串替换。

原始查询:

SELECT Col1, Col2, Col3, Col4
FROM Table1
WHERE Something = Something
ORDER Col1 ASC

数据集上的beforeOpen事件:

this.queryText = this.queryText.replace("Col1", "Your new Sort Spec");

这样就可以了。祝你好运!

答案 1 :(得分:1)

在报告中排序或过滤参数可能不是一个解决方案

  • birt iserver with interactive web viewer do sort
  • 我尽量减少但是最简单(只是打开)

所以改变观察者来完成工作而不是报告

http://dev.sonid.fr/BirtViewer/ (将鼠标放在列标题上)

答案 2 :(得分:1)

如果你有默认的话,有一种更简单的方法。

首先设置一个参数,作为排序标准,在我的情况下,我称之为“排序”。 然后选择表,转到排序选项卡,并使用以下表达式: 行[PARAMS [ “排序”]。值]。

这将按您传入的参数对表进行排序。您需要确保列名称是正确的。