我正在尝试使用ReportViewer在我的网页上打开ssrs报告。对于Report Serverl URL,我有:
http://db_servers/ReportsServer_SENSORSQLSERVER
对于我的报告路径,我有:
http://db_servers/ReportsServer_SENSORSQLSERVER/Pages/ReportViewer.aspx?%2fCustomer1&rs:Command=Render.
我查看了许多网站和教程,了解如何添加网址但我仍然收到错误消息:我的链接长度必须低于260个字符。 (rsInvalidItemPath)。我还想提一下我的报表服务器处于纯模式。我的报表服务器位于另一台计算机上,因此我确保报表查看器上的处理模式是远程的。每当我访问收件人网址时,我都能清楚地看到我的报告列表,当我点击报告时我也可以看到它,所以我知道我的网址是正确的。我试过在我的报告路径url前面加一个斜杠,用空格替换“2%f”。似乎没什么用。任何的想法?感谢。
答案 0 :(得分:11)
您需要将服务器的URL分开,报告路径并将参数添加到参数数组中。
以下是一个示例:
protected void Page_Init(object sender, EventArgs e)
{
if (!Page.IsPostBack)
{
// Set the processing mode for the ReportViewer to Remote
reportViewer.ProcessingMode = ProcessingMode.Remote;
ServerReport serverReport = reportViewer.ServerReport;
// Set the report server URL and report path
serverReport.ReportServerUrl =
new Uri("http://<Server Name>/reportserver");
serverReport.ReportPath =
"/AdventureWorks Sample Reports/Sales Order Detail";
// Create the sales order number report parameter
ReportParameter salesOrderNumber = new ReportParameter();
salesOrderNumber.Name = "SalesOrderNumber";
salesOrderNumber.Values.Add("SO43661");
// Set the report parameters for the report
reportViewer.ServerReport.SetParameters(
new ReportParameter[] { salesOrderNumber });
}
}
答案 1 :(得分:1)
您应该将"2%f"
替换为"/"
。
问题在于您的ReportPath属性,例如:
%2fCustomer1
- &gt; /Customer1
答案 2 :(得分:1)
这是一个古老的,但我碰到了一个客户。为了获取报告URL,我发现最简单的方法是通过SSMS连接到运行Report Server的SQL实例,然后打开ReportServer数据库,并在目录表中查询路径字段。
答案 3 :(得分:0)
打开SSRS的非常简单的方法:
0