SSRS 2005 で実行されている .RDL レポート (リモート処理) が、Web ブラウザーで表示したときに評価された式でレンダリングされるという問題があります。
http://my-server/ReportServer/Pages/ReportViewer.aspx?/Group%20Reports/Report_Lines&rs:Command=Render
ただし、C# アプリ内で (Microsoft.Reporting.WinForms.ReportViewer コントロールを介して) 実行すると、レポートに組み込まれている式を評価せずにレポートがレンダリングされるようです。
注意すべき点:
myReportViewer.ProcessingMode = Microsoft.Reporting.WinForms.ProcessingMode.Remote;
- 式は通常、条件付き書式設定の性質のものです - 値などに応じて色が変化します。
- 私が知る限り (私はグーグル/MSDN/ここなどを見て数時間を費やしました)、問題はサーバー側で式 eval を実行するときの信頼/資格情報にかかっています。
また、レポートを呼び出すときの ReportServer__06_07_2011_07_57_20.log の違い:
WEBforms
-=-=-=-=-
w3wp!library!7!06/07/2011-11:10:47:: Call to GetPermissionsAction(/Scorecard Reports/Report_Lines).
w3wp!library!7!06/07/2011-11:10:48:: Call to GetPermissionsAction(/Scorecard Reports/Report_Lines).
w3wp!library!7!06/07/2011-11:10:48:: Call to GetPermissionsAction(/Scorecard Reports/Report_Lines).
w3wp!library!7!06/07/2011-11:10:48:: Call to GetPermissionsAction(/Scorecard Reports/Report_Lines).
w3wp!library!7!06/07/2011-11:10:48:: Call to GetPermissionsAction(/Scorecard Reports).
w3wp!library!7!06/07/2011-11:10:49:: Call to GetPermissionsAction(/Scorecard Reports/Report_Lines).
w3wp!library!7!06/07/2011-11:10:49:: Call to GetPropertiesAction(/Scorecard Reports/Report_Lines, PathBased).
w3wp!library!7!07/06/2011-11:10:59:: i INFO: Call to RenderFirst( '/Scorecard Reports/Report_Lines' )
w3wp!library!7!07/06/2011-11:11:01:: i INFO: Call to RenderNext( '/Scorecard Reports/Report_Lines' )
w3wp!cache!7!07/06/2011-11:11:01:: i INFO: Session live: /Scorecard Reports/Report_Lines
w3wp!library!1!07/06/2011-11:11:03:: i INFO: Call to RenderNext( '/Scorecard Reports/Report_Lines' )
w3wp!cache!1!07/06/2011-11:11:03:: i INFO: Session live: /Scorecard Reports/Report_Lines
w3wp!library!1!07/06/2011-11:11:03:: i INFO: Call to RenderNext( '/Scorecard Reports/Report_Lines' )
w3wp!cache!1!07/06/2011-11:11:03:: i INFO: Session live: /Scorecard Reports/Report_Lines
w3wp!library!1!07/06/2011-11:11:04:: i INFO: Call to RenderNext( '/Scorecard Reports/Report_Lines' )
w3wp!cache!1!07/06/2011-11:11:04:: i INFO: Session live: /Scorecard Reports/Report_Lines
w3wp!library!1!07/06/2011-11:11:31:: i INFO: Call to RenderFirst( '/Scorecard Reports/Report_Lines' )
-=-=-=-=-
...vs...
WINforms
-=-=-=-=-
w3wp!library!7!06/07/2011-11:13:08:: i INFO: Call to RenderFirst( '/Scorecard Reports/Scorecard_Report' )
w3wp!webserver!7!06/07/2011-11:13:08:: i INFO: Processed report. Report='/Scorecard Reports/Scorecard_Report', Stream=''
-=-=-=-=-
基本的に、私はより多くの情報を求めてログ トロールに行くことを喜んで行っていますが、どこを見ればよいのか行き詰まっています。
次にどこを見ればいいのか、私に手がかりを持っている人はいますか?
tl;dr: Winforms.ReportViewerは式を評価していませんが、Webforms.ReportViewerは式を評価しています。