Используйте join(Parameters!<name>.Value,"&<param_name>=")
в URL для многозначных параметров.
Если вы передаете эти параметры в набор данных, вам нужно сделать join(Parameters!<param name>.Value)
при передаче параметра, а затем использовать функцию разделения в SQL. Этот работает хорошо:
ALTER FUNCTION [dbo].[fnSplitParam]
(@RepParam nvarchar(4000), @Delim char(1)= ',')
RETURNS @Values TABLE (Param nvarchar(4000))AS
BEGIN
DECLARE @chrind INT
DECLARE @Piece nvarchar(100)
SELECT @chrind = 1
WHILE @chrind > 0
BEGIN
SELECT @chrind = CHARINDEX(@Delim,@RepParam)
IF @chrind > 0
SELECT @Piece = LEFT(@RepParam,@chrind - 1)
ELSE
SELECT @Piece = @RepParam
INSERT @Values(Param) VALUES(CAST(@Piece AS VARCHAR))
SELECT @RepParam = RIGHT(@RepParam,LEN(@RepParam) - @chrind)
IF LEN(@RepParam) = 0 BREAK
END
RETURN
END
Я рекомендую использовать метод с одним значением, если конечный пользователь не должен выбирать параметры напрямую, поскольку он экономит 2 символа на параметр в URL.