2016-12-28 30 views
0

Jaspersoft Studio 6.3.1.final私は他の要素の中でもテーブルを使ってレポートを設計しています。JasperReportのテーブルにフィールド値を水平方向に印刷する方法

デザインは以下のようになります。テーブルは列ヘッダー詳細セクションのみを持っています。

enter image description here

は今、フィールドは、このように縦方向に印刷されています

COLUMN_HEADER1 | COLUMN_HEADER2 
col1Val1  | ... 
col1Val2  | ... 
col1Val3  | ... 

しかし、私に必要なのは、このように水平にそれらを表示することです:私はネットとcouldnを検索

COLUMN_HEADER1 | col1Val1 |  col1Val2  |  col1Val3 
COLUMN_HEADER2 | ...  |  ...   |  ... 

運が得られない。

これを行う方法はありますか?私はここにこだわっています。あなたの助けが大いに評価されるでしょう!

編集:

私は(JRBeanCollectionDataSourceを生成するために、既存のJavaサービスを使用して)レポートにデータを渡す方法です。

List<Map<String, Object>> aListOfMap = ...; 
    JRDataSource jrDataSource = new JRBeanCollectionDataSource(aListOfMap); 
    HashMap<String, Object> parameters = new HashMap<>(); 
    parameters.put("DataSource", jrDataSource); 
    JasperPrint jasperPrint = getObjectPdf("reports/report.jrxml", parameters, new JREmptyDataSource()); 
+0

このレポートのデータはどのように取得しますか? – Viki888

+0

こんにちは@ Viki888、私はJRBeanCollectionDataSourceを生成するために既存のJavaサービスを使用しています。私のインライン編集を見てください。ありがとう! – blue123

答えて

1

要件この種のいずれかのデータ検索又はcrosstab成分を使用しながら達成である必要があります。

クロスタブのサンプルデザインでは、リンクworking with crosstabs in Jasper Reportsを参照できます。

リンクWorking with Tables and CrossTabs in JasperReportsも参照して、テーブルとクロスタブの機能がどのように異なるかを確認してください。

tableでこれを達成したい場合は、データ取得プロセスにpivotingを適用する必要があります。

+0

ありがとうございます。最後に、これを達成するためのリストを使用しました。オブジェクトのリストを入力しました。 – blue123

関連する問題