2011-02-14 33 views
7

以下のコードは、SSRSのために作成したWindowsインターフェイスのレポートパラメータに入力した値を取得します。ただし、これはMultiValueを許可しないパラメータに対してのみ機能します。 Parameter.Valueは文字列なので、多値を割り当てる方法はわかりません。ラインについてSSRS:ParameterValueオブジェクトに複数の値を設定するには?

private RE2005.ParameterValue[] GetParamValueSettings() 
    { 
     var parameters = new RE2005.ParameterValue[_Parameters.Count()]; 

     for (int i = 0; i < _Parameters.Count(); i++) 
     { 
      parameters[i] = new RE2005.ParameterValue(); 
      parameters[i].Name = _Parameters[i].Name; 
      **parameters[i].Value = pnlParams.Controls[_Parameters[i].Name].Text;** 
     } 

     return parameters; 
    } 

太字私はテストとしてこれを試した上: パラメータ[I] .Valueの= "A、B、C"。(これらは有効な値です)

ただし、レポートには有効な値が必要であるというエラーが表示されます。レポートでは、これはどのように表示されますか?= Join(パラメータ!myParameter.Value、 "、")

ありがとう、ありがとう!

答えて

4

ビジュアルスタジオ2010では、initialise the Report parameter with a string arrayとすることができます。

(2005年)複数の時刻に同じ名前で新しい値を追加する必要があります。

複数のパラメータが1つしかない場合は、レポートのパラメータを取得するprocです。

private RE2005.ParameterValue[] SetParameterValue(string name, string[] values) 
    { 
     var parameters = new RE2005.ParameterValue[values.Count()]; 

     for (int i = 0; i < values.Count(); i++) 
     { 
      parameters[i] = new RE2005.ParameterValue(); 
      parameters[i].Name = name; 
      parameters[i].Value = value; 
     } 
     return parameters; 
    } 
関連する問題