经验1
刚装好的Report Services 管理地址有两个, 一个是刚装好的Report Services 管理地址有两个, 一个是
Web服务URL http://192.168.12.111:8099/ReportServer ///我配置的端口是8099,你的可能不一样
报表管理器URL http://192.168.12.111:8099/Reports //我配置的端口是8099,你的可能不一样
访问管理界面需要 用户名密码.
看网上的教程多数是要新建用户什么的, 于是跟着一番折腾,
新建了一个用户 ReportUserA, 登录成功了.但却总是冒出来权限问题.提示 “ReportUserA” 授予的权限不足,无法执行此操作" 至于如何彻底解决这个权限问题,
主要是在文件夹设置中要放入这个用户的权限即可.
新建用户权限的步骤如下图
先建一个用户.
访问 http://192.168.12.111:8099/Reports
剩下的应该都会了, 不贴图了
经验2 C# 加载远程SSRS的数据, 代码如下
ShowReport form = new ShowReport();
form.reportViewer.ProcessingMode = Microsoft.Reporting.WinForms.ProcessingMode.Remote;
form.reportViewer.ServerReport.ReportPath = "/Report Parts/Report1";//上传后才有
form.reportViewer.ServerReport.ReportServerUrl = "http://192.168.12.111:8099/ReportServer";
form.reportViewer.ServerReport.ReportServerCredentials.NetworkCredentials = new NetworkCredential("ReportUserA", "密码123456");
form.reportViewer.ServerReport.SetParameters(plist.ToArray());//报表需要用到的一些参数. 根据具体的rdl文件而不同.
form.Show();
form.Activate();
经验3 在rdl 设计的时候可以给sql语句传递参数. 提高查询效率
如下图 我这里使用了签入的数据集, 这个地方的变量可以通过编程
form.reportViewer.ServerReport.SetParameters(new ReportParameter[]{
new ReportParameter("ybid", "900646578912")
});// 传递数值.
经验4 Report Builder3 如果要使用共享的数据源需要如下几步操作.
http://192.168.12.111:8099/ReportServer 这个地址是 安装完 Report Services以后自动创建的. 如果不安装Report Services 那么就无法使用共享数据源, 当然如果深入的研究一下, 中间请求的信息, 估计也能自己实现一个.
如果连上报表服务器以后还是无法显示共享数据源, 需要在
http://192.168.12.111:8099/Reports/ 进入主文件夹 -> 工具条 [新建数据源] 新建好以后, 就可以在Report Builder3 中看到共享的数据源了.
经验5 vs2015 无法创建 “商业智能”或“报表服务器项目”
需要安装 SQL Server Data Tools (SSDT)
https://go.microsoft.com/fwlink/?linkid=863440