サービス2008のレポート:レポートがレンダリングされている方法に応じて、アイテムのプロパティを変更する方法はありますか?
-
21-08-2019 - |
質問
私はPDFにうまくエクスポートしたレポートを、書いています。しかし、それは正しくWord文書(.DOC)にエクスポートされません。
(マージンがなど、フッターのテキストが欠落している、ページの区切りを台無しにヘッダ領域、では無視されます。)
この問題を回避するには、私はそれは、PDFやWord文書としてレンダリングされている場合に応じて、私のレポートでいくつかの項目を無効化、有効化、および/または再サイズにしたい。
レポートのレンダリング方法に基づいてアイテムのプロパティを設定する方法はありますか?
解決
私はあなたの問題の唯一の解決策は、このだと思う:レポートにあなたがGlobals.ReportServerUrlにアクセスすることができます。レポートを呼び出す場合は、URLにそのレンダリングタイプ(や寸法などのようにも他のもの)を指定することができます。あなたがやらなければならないことは、URLからレンダリングタイプを抽出するために、いくつかのカスタムコードを記述し、設定が完了している。
すべての可能なURLパラメータの詳細情報については、ここに行く:のhttp:/ /technet.microsoft.com/en-us/library/ms154040.aspxする
他のヒント
私はasp.netアプリでレポートビューアコントロールを使用するために必要な同様のシナリオを持っていました。私は、レポートビューアーコントロールのツールバーを非表示にし、様々なフォーマットのために私自身のドロップダウンセレクタを作成思い付いたソリューション(PDFを、Excelは、我々が現在使用して2つです)。
レポートビューアコントロールをロードするときにこの問題を回避するには、私が「RenderType = HTML」を示す私のレポートに追加PARAMTERを渡しています。要求はPDFバージョンを言ってもらうためになされた場合、私はServerReport.Render()関数を使用してExcelの同じRenderTypeパラメータとして」PDFを渡す以外、私は、同じ方法を使用します。
これは、私は、さまざまなレポート形式のための私のレポートで何かを隠す/条件付き書式/上映を行うことができます。
レポートビューアWebBrowserコントロールは、特定のページをレンダリングするための機能をサポートしているため、は/ etc背後にあるコードからズームし、レポートを操作するための当社独自の「ツールバー」を構築するためにはかなり簡単だった、と私たちのために、それはより適切なスタイリングの利点を与えましたアプリケーション(これはとにかくCSSで行うことができるが)。それが解決しもう一つの問題は、Active Xのコンポーネントを必要とする奇妙な印刷機能だった、我々はプリンターに優しい方法で出たレポートを書くために私たち自身の印刷機構を実装します。
この情報がお役に立てば幸いです。