2

複数の組織で使用される単一のレポートを展開しようとしています。これらの各組織は、次の場合にレポートにロゴを表示することを望んでいます。

logged_in_user.org_id = 'xxx' or 'yyy'.

さまざまなロゴを保持する複数のマスター ページを含む素敵なライブラリを作成しました。私が判断できないのは、おそらくページのinitialize()メソッドで、ユーザー データを読み込んだ後、実行時にレポートに適用するマスター ページを動的に選択する方法があるかどうかです。

以下を使用して、マスターページでハンドルを取得する方法を見つけました。

reportContext.getDesignHandle().findMasterPage("org_X_Master")

しかし、これをレポートのマスター ページとして設定する方法がわかりません。どんな助けでも大歓迎です。

4

1 に答える 1

1

非常によく似た問題がありました。他にも解決策があるかもしれませんが、以下の方法で解決しました。

レポートのコンテンツ全体 (reportX.rptdesign など) をライブラリ (reportX.rptlibrary など) に移動します。次に、マスター ページが異なる 2 つの空のレポート reportXxxx.rptdesign と reportXyyy.rptdesign を作成します。

完全なレイアウトを reportX.rptlibrary から reportXxxx と reportXyyy にドラッグします。

この方法で複製する必要があるのは初期化イベントの Javascript コードだけですが、それを外部の *.js ライブラリに移動することもできます。

注: アプリケーションから reportXxxx または reportXyyy のいずれかを呼び出す必要があるため、これは正確な質問に対する回答ではありません (レポートを呼び出すに決定が行われます)。

于 2014-02-11T08:32:51.110 に答える