1

使用事例:

ショップで販売されているアイテムにラベルを付けるために IReport を使用したいと考えています。ラベルがあるということは、各製品にラベルを付ける必要がある複数のアイテムがある可能性があるということです. したがって、製品 CarToy がデータベースの 1 つのレコード (フィールド名、説明、価格) であるとします。

質問:

ショップで CarToy の商品にラベルを付けるには、3 フィールドを含むレポートをステッカー用紙に印刷する必要があります。

通常の方法で行うと、1 つのステッカーを含むレポートになります。

私の店に5つのアイテムがある場合。それでは、レポートに5枚のステッカーを印刷したいと思います。

基本的に、レコード (データの行) を含むクエリ結果を IReport に渡し、各レコード/行を印刷/表示する回数を伝えたいと思います。プログラムから必要なパラメーター (たとえば、X 回繰り返す) を渡すことができると仮定します。

これを行う方法はありますか?

望ましくない解決策

おそらく、これはソフトウェア データ層で解決できます。たとえば、すでに複製されている/X回繰り返されている各行を含む結果セットを渡すことができます。例: CarToy をクエリします (結果は 1 レコードになります)。5 つの CarToy レコードを含む結果セットを手動で作成し、これを Jasper Report に渡します。

ただし、エンド ユーザー側でカスタマイズできる JasperReport レポート xml の形式で、エンド ユーザーにソリューションを提供したいと思います。したがって、上記は私が探している解決策ではありません。

ソフトウェアを変更する必要なく、IReport を使用してすべてを行うことができればなおさらです。これを行うには、おそらく何らかのスクリプト機能があるか、IReport で (repeat X time) パラメーターを受け入れる単純な GUI を作成できます。

ティア・ハリス

4

1 に答える 1

1

SQL で同じ行を複数回選択し、それをレポートに表示することが考えられます。

ジャスパーレポートのパラメーターとして、選択ステートメントにステッカーを印刷する回数を渡すことができます。

同じ行を複数回選択する方法については、このスタックオーバーフローの質問をご覧ください。

iReport では、レポートに必要な列数を設定することもできます。紙を節約したい場合は、3 つずつ印刷するか、最適なものを印刷してください。

[列] セクションのメイン レポートのプロパティ ウィンドウで設定できます。

于 2010-08-01T18:45:59.753 に答える