2011-07-07 3 views
2

WPFアプリケーションのWindowsFormsHostタグにReportViewerコントロールがあります。このコードを使用する場合:WPFのレポートビューアコントロールのデータソース

rptViewer1.LocalReport.ReportPath = ... 

    List<ReportParameter> parms = new List<ReportParameter>(); 
    parms.Add(new ReportParameter("regionID", "01")); 
    rptViewer1.LocalReport.SetParameters(parms); 

    rptViewer1.RefreshReport(); 

データソースインスタンスが提供されていないというエラーが表示されます。 )(私は手動でストアドプロシージャを実行することができ、その後、データソースオブジェクト、などを移入するためにそれを使用する...

var dt = DAL.GetData() 
var rds = new ReportDataSource("DataSet1", dt); 
rptViewer1.LocalReport.DataSources.Add(rds); 

そして、これは、表示するレポートが発生しますが、その後私は、GetDataのに自分のパラメータを渡していますメソッドではなく、これは正しいとは思わない。私のSSRSプロジェクトでは、共有データソースを使用しており、期待通りにレポートフロントエンドのパラメータを渡すことができます。私は間違って何をしていますか?

答えて

1

ProcessingMode = Localを使用している場合、あなたは報告書の大部分を担当します。ユーザーまたはアプリケーションは、どのパラメーターがあるか、データのロード方法、&サブレポートまたはドリルスルー・イベントの機能を定義しました。これらを明示的にコーディングする必要があります。 ProcessingMode = Remoteの場合、これらの要素はすべてReporting Serverによって処理されます。マイクロソフトでは、これをMSDNで非常に明確に説明していませんが、「アプリケーションでレポートをホストする場合は、すべての詳細について責任を負うことができます」という正当な理由がわかります。

関連する問題