2017-01-27 7 views
1

私のSSRS rdlレポートは、ASP.NETアプリケーションのReportViewerではBIDSとは異なるレンダリングをしています(このプロジェクトはSQL Server 2008 R2とBIDSです)。私はそれをBIDSにしたいのですが、レポートビューアはいくつかのテキストボックスの配置を変更します。具体的には、いくつかのテキストボックスをページの下に押し出し、大きな空白領域を作成しています。SSRSはVisual StudioよりもReportViewerでレンダリングの方法が異なると報告しています

レポートビューアDLLのバージョン10.0.0.0を使用しています。

SSRSのReportManager Web UIでレポートを実行すると、レポートビューアと同じ方法でレポートが表示されます。

BIDSはSQL Server 2008 R2 SP3上にあります。

これを軽減する方法のアイデアはありますか?

+0

Visual StudioとReportViewerの両方で、レポートデザインとレンダリングされた出力のスクリーンショットを追加してください。 – iamdave

答えて

1

SSRSレポート要素は、HTMLなどの特定の形式でレンダリングされると、VS /レポートビルダのプレビューやPDFなどの形式ではオーバーラップできません。

このため、これらの重複を避けるようにあまり注意を払わないと、SSRSが重複を取り除くためにレポートアイテムを「プッシュ」したReportViewerに異なるレイアウトが表示されます。

1

類似の問題がありますが、SSRSのバージョンは異なります。 This pageなど多くの類似した情報がレンダリングに関する情報を提供しますが、どれも「このテキストはこのボックスに収まるのですか? 「この箱はどれくらい大きくなるの?」 IE、Chrome、Safari、Word、およびPDFへのレンダリングは、特にVisual StudioとReport Builderが異なる点を考慮すると、不満と妥協の練習となりました。いずれの場合も、テキストボックスの高さと幅が変更され、フォントサイズが変更され、テキストの周りのスペースが変更されました。

私たちのテクニックは、さまざまな出力フォーマットに優先順位を付け、それらの優先順位に基づいて最適な出力を生成する設定を見つけることでした。これを考えると、ユーザーはVisual Studioで見たよりも優れた(しかしそれでもまだ完全ではありません)結果が得られます。

0

レンダリング中にSSRSが要素のサイズを変更するシナリオを最小限に抑えることで、私たちの特定の問題の解決策を見つけることができました。たとえば、キャンバス上のデフォルトの高さ(テキストの1行の高さ)を持つテキストボックスがありました。テキストには、複数の改行を含むHTMLコンテンツの式がありました。これにより、SSRSはテキストボックスのサイズを変更し、他の要素を移動せずに塗りつぶすスペースがあったとしても、他の要素をページの下に押し出しました。私がキャンバス上のテキストボックスの高さを利用可能なスペースを埋めるように増やしたとき、SSRSは他の要素をページ上で移動させませんでした。

私が教訓を得たのは、レンダリング時にどのくらいの大きさになるかに基づいてキャンバス上の要素のサイズを設定することでした。 SSRSは、要素のサイズを大きくする必要があると判断した場合、キャンバス上の他の要素の移動を開始します。

関連する問題