2011-02-24 13 views
13

HY! Visual Studio 2010でフォームアプリケーションがあり、レポートビューアでレポートを作成し、いくつかのパラメータを追加したいと考えています。コードからパラメータを追加しようとしましたが、うまくいきませんでした。私はこのエラーがあります:レポートビューアでパラメータを追加する方法は?

TablixのFilterExpression式 'Tablix1'は、 'datastart'フィールドを参照しています。レポート項目式は、現在のデータセットスコープ内のフィールド、または集計内にある場合は指定されたデータセットスコープを参照することができます。 Report2.rdlc:error rsParameterReference:Tablix 'Tablix1'のFilterValue式は、存在しないレポートパラメータ 'datastart'を参照しています。私のコードで

この操作を行います。

private void SetReportParameters() 
    { 
     ReportParameter[] parameters = new ReportParameter[2]; 
     parameters[0] = new ReportParameter("datastart", dateTimePickerStartRaport.Text); 
     parameters[1] = new ReportParameter("dataStop", dateTimePickerStopRaport.Text); 
     this.reportViewer1.LocalReport.SetParameters(parameters); 
    } 

とレポートビューア

reportViewer1.RefreshReport();   

にリフレッシュを行い、このメソッドを呼び出した後、私はまた、他のフォーラムを見て、私は私が持っていることを見たがレポートにパラメータを追加するが、私はこれをどうやらなければならないのかを管理していない。また、レポートのプロパティウィンドウに、値が

=Parameters!datastart.Value  

のフィルタを追加しようとしましたが、これもうまくいきませんでした。

答えて

16

エラーは、フィールドのようにパラメータを指定しようとしているためです。表現デザイナーには、「パラメーター」という特別なカテゴリーがあります。そこからパラメータにアクセスできます。 構文は=Parameters![FieldName].Valueです。たとえば、=Parameters!datastart.Valueのような場合です。

また、パラメータは、[レポートデータ]ウィンドウの[パラメータ]で宣言する必要があります。あなたのレコードセットを宣言するのと同じウィンドウですが、パラメータの特別なカテゴリもあります。データ型にはいくつかのオプションがあり、パラメータの指定が必須である場合もあります。

+1

レポートデータウィンドウはどこですか? – user599977

+10

ビジュアルスタジオのViewMenuでは、最後のメニュー項目:「レポートデータ」 – HCL

+0

*レポートデータ*ウィンドウは、** Ctrl ** + ** Alt ** + ** D **ショートカットでも使用できます。それはあなたがメニューでそれを見つけることができない場合に役立つはずです。 –

2

したがって、レポート定義(rdlまたはrdlcファイル)を作成するときは、まったく同じ名前のパラメータを追加する必要があります。あなたの場合はdatastartdataStopのパラメータを追加する必要があります。これを行うには、Report Data WindowのParametersをクリックし、Add newをクリックします。

関連する問題