2013-08-06 89 views
9

No、Name、Address、Phone、Emailカラムを持つテーブルがあります。私はNo列にパラメータを渡すことなく、私のJavaクラスを設定せずに自動番号を設定したいと思います。 JasperReportにはELなどがあります。私はバージョン5.1を使用しています。ジャスパーレポートテーブルの自動行番号

注:単純な表として、私はソースとテンプレートを提供しませんでした。

+0

No DB、私は 'JRBeanCollectionDataSource(personList)'として 'Person List'を渡します。 – CycDemo

+4

* REPORT_COUNT' *組み込み変数を使用しようとしましたか? –

+0

thz、それは問題ありません。私は組み込みの変数がどれか分からない。 – CycDemo

答えて

18

この

を試してみては、テキストフィールドを入れて、式エディタの下で、この$V{REPORT_COUNT}を貼り付け

$V{REPORT_COUNT}が内蔵されている変数碧玉jrxmlを保存して実行します。

最終値に興味がある場合は、テキストフィールドの評価時間を「レポート」に設定します。

+0

このref、しかし、私はどの変数が組み込まれているのかわかりません。 thz。 – CycDemo

+0

アルファベットとして印刷する方法はありますか? –

0

整数値の代わりにアルファベットを印刷することもできます。つまり、1,2,3 ...

私たちはシーケンス番号のために印刷したいアルファベットのリストを渡す必要があります。ここで私は使用するつもりです以下の文字のリストを作成するためのコード、

List<String> characters = new ArrayList<String>(26); 
for (char c = 'a'; c <= 'z' ; c++) { 
    characters.add(String.valueOf(c)); 
}     
parametersMap.put("charactersList", characters); 

、デザインに数字の代わりにアルファベットで結果を表示するには、次の式を追加し、

<textFieldExpression><![CDATA[$P{charactersList}.get(($V{REPORT_COUNT}-1)%26)]]></textFieldExpression> 

これはリストに保存されているアルファベットとシーケンスをレンダリングします特定のインデックスで

関連する問題