2
SSRSから一貫した回答を得ることに問題があるようです。私は状況を説明します。矛盾した結果を伴うSSRSレポート
- 私は私のデータベースに「Sales」と呼ばれるテーブルを持っています。 Salesでは、パフォーマンスと呼ばれる列があります。これは、出力された23行すべて(今日は0.80の値)で一貫しています。
- 私はVisual Studio 2012でSSDTを使用したプロジェクトを持っています。このプロジェクトには20のレポートがありますが、それらのすべてが異なることをしていますが、共通点が1つあります。左側の表にはパフォーマンス番号が表示されています。
- このパフォーマンス表は、残りのレポートとは完全に緩いです。 「Perf」というデータセットを参照するだけで、クエリは「Select * From Sales」となります。私が興味を持っているテーブルのフィールドは、
=First(Fields!Performance.Value, "Perf")
です。すべての行がパフォーマンスと同じ値を持つので、この関数を選択したので、違いはありません。 - 複数のレポートを比較すると、いくつかのレポートでは0.80の正解が返されますが、その中には0.78の回答があります。これはどのように可能ですか?私はキャッシュを取り除くために、次のコマンドを使用するレポートを実行する前
:
DBCC FREESESSIONCACHE
DBCC FREEPROCCACHE
DBCC DROPCLEANBUFFERS
私は何をしないのですか?私は何か間違っているのですか?私はSQL Server Management Studio 2012とVisual Studio 2012を使用しています。必要に応じて詳細情報を提供します。
問題は「修正」されています。 SSRSを何度も再ロードすると、パラメータを少し修正するだけでなく、それを修正したようです。この意味では、プリロードまたはキャッシュされたレポートの問題と思われます。この問題を解決する方法の1つは明らかに.rdlデータを削除することですが、レポートでパラメータを使用できる場合は、これらのパラメータを変更するとレポートが強制的にリロードされるため、多くの面で役立ちます。私はこれも皆さんのために働くことを願っています! – JeroenB
lol私はちょうど答えを掲示しましたが、あなたはそれをすでに理解していたとは気づきませんでした。あなたは正しいです、キャッシュされたファイルを削除またはリフレッシュすることができますし、特定のデータセットのパラメータを変更する場合、SSRSはキャッシュをリフレッシュする必要があることを知るのに十分スマートです。 – Bostaevski