2

我使用 WebViewerExample 作为我的报告。

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

我有一张有几列的桌子。从数据库中检索数据。

是否有一种简单的方法可以通过单击列标题名称对表格进行动态排序?

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

有任何想法吗?

4

3 回答 3

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");

那会成功的。祝你好运!

于 2010-04-14T16:58:24.710 回答
1

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

  • 带有交互式 Web 查看器的 birt iserver 进行排序
  • 我尽量少做但最简单(刚打开)

所以改变查看器来完成工作而不是报告

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

于 2011-10-21T21:24:38.900 回答
1

如果您有默认设置,则有一种更简单的方法。

首先设置一个参数,作为排序标准,在我的例子中,我称之为“排序”。然后选择表格,转到排序选项卡,并使用以下表达式:row[params["sort"].value]。

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

于 2012-08-02T11:50:46.023 回答