レポートとして WebViewerExample を使用しています。
レポート デザイナーを使用して Eclipse 内でレポートを設計しています。
複数の列を持つテーブルがあります。データはデータベースから取得されます。
列ヘッダー名をクリックしてテーブルを動的に並べ替える簡単な方法はありますか?
ソート条件として文字列を渡そうとしましたが、役に立ちません。
何か案は?
クエリに ORDER BY を追加して、10 個のパラメータ化を試みましたか? 実行時に基になるクエリをマッサージするために、いくつかの非常に軽量なスクリプトを実行する必要がある場合があります。私たちが話しているのは、クエリのソート条件で文字列の置換を行うことだけです。
元のクエリ:
SELECT Col1, Col2, Col3, Col4
FROM Table1
WHERE Something = Something
ORDER Col1 ASC
データ セットの beforeOpen イベント:
this.queryText = this.queryText.replace("Col1", "Your new Sort Spec");
それはトリックを行います。幸運を!
デフォルトがある場合は、もっと簡単な方法があります。
最初に、ソート基準としてパラメーターを設定します。私の場合は、「ソート」と呼びました。次に、テーブルを選択し、並べ替えタブに移動して、row[params["sort"].value] という式を使用します。
これにより、渡したパラメーターでテーブルが並べ替えられます。ただし、列名が正しいことを確認する必要があります。
レポートでソートまたはフィルターパラメーターを実行しても解決策にはなりません
ビューアーを変更して、レポートではなくジョブを実行するようにします
http://dev.sonid.fr/BirtViewer/ (マウスを列ヘッダーに置きます)