5

新車と中古車の2つのサブレポートを含むレポートを作成しようとしています。

JavaBeans仕様に従ってビークルBeanを定義しました。JRBeancollectionデータソースをマスターレポートとサブレポートの投稿に渡すで説明したように、パラメータマップを使用して、メインレポートを介してこのデータをサブレポートに渡すことを考えていました。

これまでに行った手順は次のとおりです。

最初のステップ-コレクションをパラメーターとして渡す

Map<String, Object> jasperParameter = new HashMap<String, Object>();
jasperParameter.put("new_Vehicles", createNewVehicles()); //returns a collection of vehicles.

2番目のステップ-メインレポートでパラメーターを作成し、データ型として設定しますnew_VehiclesCollection

3番目のステップ-サブレポートのデータソース式を次のように作成します net.sf.jasperreports.engine.data.JRBeanCollectionDataSource($P{new_Vehicles})

4番目のステップ-サブレポートでフィールドを作成します(フィールドを追加する前にこれを機能させるためだけに) 。vehicleId

私が抱えている質問/問題は次
のとおりです。a)コンパイルすると、上記のデータソースをタイプに解決できないというエラーメッセージが表示されます。私は間違って何をしていますか?

さて、データ式の前に「new」を追加することで、例外を乗り越えたのではないかと思いますnew net.sf.jasperreports.engine.data.JRBeanCollectionDataSource($P{new_Vehicles})

しかし、今、私がリストに追加する2つの新しい車両がある場合、その印刷は2ページ、基本的にはリストの要素ごとに1ページになります。私の列ヘッダーは列ヘッダーバンドにあり、私のフィールドは詳細バンドにあります。

リスト内の各要素が別のページに配置されないようにする方法についての提案はありますか?

4

1 に答える 1

3

未使用のバンドを削除するか、詳細バンドをフィールドと同じ高さに調整します。

于 2012-08-02T10:36:09.483 に答える