7

下面的代码获取我在为 SSRS 编写的 Windows 界面中为报告参数输入的值。但是,这仅适用于不允许 MultiValue 的参数。由于 Parameter.Value 是一个字符串,我不知道如何为其分配多值。

    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;
    }

对于上面的粗体线,我确实尝试过这个测试: parameters[i].Value = "A,B,C"; (这些是有效值)

但是报告抛出一个错误,说它需要有效值。在报告中我是这样显示的:= Join(Parameters!myParameter.Value, ", ")

任何建议表示赞赏,谢谢!

4

1 回答 1

5

使用 Visual Studio 2010,您可以使用字符串数组初始化 Report 参数

对于 2005,您可能需要多次添加具有相同名称但新值的参数。

如果只有一个多值参数,这是一个获取报表参数的过程。

  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;
    }
于 2011-02-15T00:52:11.517 回答