2

A4固定レイアウト1ページに商品(行)を表示する表を表示しようとしています。ヘッダー/詳細/フッター セクションを含むテーブルを追加することはできますが、詳細セクションの最小の高さ (たとえば 150mm) を設定できません。詳細行に 150mm の高さを設定すると、各行の高さは 150mm になります。私が望むのは、各行の高さを最小限にすることです(一部の列のコンテンツが折り返されている場合、複数の行になる可能性があります)。

        +---------+--------+--------------+
Tbl Hdr | col1    | col2   |   col3       |
        +---------+--------+--------------+
Tbl Dtl | [val1]  | [val2] | [val3]       |
        +---------+--------+--------------+
        |                                 |  <-should have a variable heigth
        +---------+--------+--------------+
Tbl Ftr |         |        |     Total    |
        +---------+--------+--------------+

詳細行に高さが設定されていない場合、フッターはページの下部にくっつくのではなく、詳細行のすぐ下に表示されます。

これが理にかなっていることを願っています (そうでない場合は、詳細を提供できます)。どんな助けでも大歓迎です。

4

2 に答える 2

1

フッターを使用してもうまくいかない場合の代替手段:

行の高さが固定された固定のテーブル サイズを希望する顧客がいます。最終的に10行表示されました。

自動フォーマッタを回避するには:

スクリプトで変数var rowCount = 0; reportContext.setGlobalVariable("rowCount",rowCount); を作成しInitializeます。

fetch スクリプトで、rowCount++;直前にを追加しますreturn(true);。次に、if(!lineDataSet.fetch())ステートメントを次のように変更します。

if(!lineDataSet.fetch()){
    if(rowCount % 10 >0){
        row["column1"] = "";
        rowCount++;
        return(true);
    }
    return(false);
}

これは、テーブルを埋めるために偽のデータを作成する必要がある多くのシナリオで便利です (日付の欠落など)。

于 2013-12-03T13:38:21.293 に答える
1

BIRT レポートは、自動レイアウト エンジンを使用して、現在のコンテキストに合わせてコンテンツを最適化します。これは、ディスプレイ/画面に関係なく、レポートの見栄えをできるだけ良くするように設計されています。実際、保持しようとしている非常に空白を排除しない場合でも、最小限に抑えることを目的としています。

検討できることの 1 つは、2 番目の詳細行を追加することです。次に、この詳細行に固定の高さを与え、残りの空白を消費させることができます。または、マスター ページのフッターに 2 つ目のテーブルを配置して、必要なデータをレンダリングし、ページの下部にバインドします。これには、ページの種類 (レター、A4 など) に関係なく、ページの下部に貼り付けられるという利点があります。

于 2010-05-07T14:14:00.070 に答える