【问题标题】:Passing parameter to SSRS url issue when parameter value have '&'当参数值具有“&”时,将参数传递给 SSRS url 问题
【发布时间】:2019-02-05 10:42:29
【问题描述】:

我想在 ssrs url 中传递报告参数,但是参数的值之一包含&,所以 url 不起作用。

例子

https://myrshost/ReportServer?/AdventureWorks2008R2/Employee_Sales_Summary_2008R2&ReportMonth=3&&Category=cup&saucer&ReportYear=2008

在此示例中,参数 Category 的值为 &

目前,作为一种解决方法,我正在将传递给类别的值替换为

REPLACE(CategoryParameterValue,"&","(and)") 

然后在数据集中我将替换(和)回&。这种解决方法可以正常工作,但我想检查是否有任何其他解决方案可以解决此问题。

请帮忙。

【问题讨论】:

    标签: sql-server url reporting-services parameters ssrs-2017


    【解决方案1】:

    & 必须在传入 URL 之前进行编码。编码形式为%26

    参考文献

    【讨论】:

      【解决方案2】:

      我通过将参数值中的& 替换为'+escape('&')+' 解决了这个问题

      【讨论】:

      • escape('&') 给出了%26 作为我提到的结果
      • 嗨@Hadi,当使用 javascript:void(window.open()) 将 url 作为弹出窗口调用时,替换为 %26 将不起作用,因为 '%26' 被转换回 '& ' 在函数的 url 中。但是 escape('&') 有效。
      • 你是对的。但是你没有提到你正在使用js。 +1
      猜你喜欢
      • 1970-01-01
      • 2021-07-30
      • 1970-01-01
      • 1970-01-01
      • 2012-11-18
      • 1970-01-01
      • 1970-01-01
      • 2021-03-12
      • 2021-03-04
      相关资源
      最近更新 更多