7

したがって、このスレッドには、残りのページとは異なる最初のページ ヘッダーを作成する例が既に存在します。この例をダウンロードして、問題なく実行できます。

この例を真似ようとしたとき、できませんでした (明確化: ソースを自分のソースのデータベースに変更した後、ヘッダーが正しく変更されませんでした)。最終的に、レポートの個々の部分をサンプル 1 にコピーして、問題の原因を確認し始めました (明確化: 原因となった正確な違いを特定するために、レポートとサンプルの違いを一度に 1 つずつ削除しました)問題)。それは結局私のテーブルになりました。

何らかの理由で、独自の新しいデータ セットを追加し、サンプル データベースを使用してテーブルを削除し、データ セットを使用してテーブルを追加すると、うまくいきません。うまくいかないというのは、突然ヘッダーがすべてのページで同じになり、後続のページで期待どおりに変更されないことを意味します。

デバッガーを実行してスクリプトにブレークポイントを設定すると、最初と他のページのコンテンツ (以下に示す) が異なるように強制されますが、サンプル データベース テーブルでは onRender イベントがすべてのページで呼び出されます... しかし、私のテーブルでは、一度だけ呼び出されます。これにより、ページ番号変数 = 1 の場合、マスター ページは onRender スクリプトを最初に 1 回だけチェックします。 .

コードは次のとおりです。

if( pageNumber > 1 ){
    this.getStyle().display = "none";
}

あなたの助けと知識は大歓迎です、

-アサフ

4

1 に答える 1

3

あなたが示す

この例を真似ようとしましたが、できませんでした

おそらく、どこかでステップを逃したのでしょう。DevShare BIRT: Multiple Master Pagesおよびサポート ブログ エントリBIRT: Multiple Master Pages があり、プロセスをガイドする必要があります。

編集 明確化に基づいています。

「レイアウト」エディターを使用して BIRT (特にフリーウェア バージョン) の既存のレポートを変更すると、XML で常に正しく更新されるとは限りません。XML は、レポートの実際の基盤です。レポートを最初から再作成し、例をガイドとしてのみ使用すると、指定した問題が解決するはずです。

あなた (またはあなたのクライアント) がレポートが最終的にどうなるかを完全に確信していない場合、バージョニングは「元に戻す」ための安全な方法を提供します。何か新しいことを試す前に、必ずバージョン (およびレポートの説明にあるドキュメント) を保存します。

バージョン

于 2013-04-23T16:28:25.043 に答える