SSRS: как установить множественные значения для объекта ParameterValue?

Приведенный ниже код возвращает значения, которые я ввел для параметров отчета в интерфейсе Windows, который я написал для SSRS. Однако это работает только для параметров, которые не допускают 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(Параметры! MyParameter.Value, ", ")

Любые советы приветствуются, спасибо!

1 ответ

Решение

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;
    }
Другие вопросы по тегам