2013-04-18 2 views
0

Я пытаюсь передать параметры в свой отчет SSRS из приложения .NET.Отчет SSRS не запускается, если несколько параметров в URL-адресе

У меня есть 3 параметра для передачи: instanceID, EL и OL.

В моем коде-позади, у меня есть коды, как показано ниже:

 string params = Session["instanceID"].ToString() + "&EL=unhide&OL=unhide"; 
     string script = "<SCRIPT LANGUAGE='JavaScript'> "; 
     script += "OpenLink1(" + params + ");"; 
     script += "</SCRIPT>"; 
     Page.RegisterStartupScript("ClientScript", script); 

Мой Javascript код не ниже:

function OpenLink1(params) { 
    var str = "http://server/ReportServer/Pages/ReportViewer.aspx?%2f<path>%2f<report name>%2<report name>&rs:Command=Render&instanceID=" + params; 

    window.open(str, "List", "scrollbars=yes,resizable=yes,width=800,height=600"); 
    return false; 
} 

Независимо от того, что я делаю, отчет просто не запустится (выскакивать).

Параметры EL и OL должны скрывать таблицы в отчете SSRS.

например. =IIF(Parameters!EL.Value = "hide", false, true)

Если я удалю эти 2 параметра из отчета и уберу параметр в URL-адресе позади кода, отчет SSRS запускается без каких-либо проблем.

Что меня смущает, так это то, что если я прямо вхожу URL-адрес в браузере, отчет отлично работает - что заставило меня поверить, что что-то, что связано с моим кодированием и передачей параметров, неверно?

Любые идеи ?!

ответ

1

Проблема заключается в javascript, который вы генерируете в своем коде. Вам нужно поставить одинарные кавычки вокруг переменной params, когда вы создаете свой вызов функции в сгенерированном javascript.

script += "OpenLink1('" + params + "');"; 
+0

СПАСИБО СОООООО МНОГО. Я чувствую себя так глупо ... пробовал каждый трюк, который я мог придумать, чтобы исправить это ... человек! –

Смежные вопросы