使用iframe嵌入SSRS报表
<iframe width="100%"
height="100%"
src="报表路径?rs:Embed=true&筛选条件=值"></iframe>
注意事项:rs:Embed=true 这个参数一定要带,如果不带就会报下图的错
筛选条件可以自己传。(键=值)即可。
ReportView嵌入
Nuget包安装:
Microsoft.ReportingServices.ReportViewerControl.WebForms
安装完成之后创建一个aspx页面,打开工具箱拖出来使用就行了
<%@ Register Assembly="Microsoft.ReportViewer.WebForms"
Namespace="Microsoft.Reporting.WebForms"
TagPrefix="rsweb" %>
<asp:ScriptManager ID="ScriptManager1" runat="server"></asp:ScriptManager>
<div style="position: absolute; display: inline-block; height: 97%;" id="report">
<rsweb:ReportViewer ID="ReportViewer" runat="server" Font-Names="Verdana"
Font-Size="8pt" interactivedeviceinfos="(集合)" ProcessingMode="Remote"
ShowBackButton="true" ShowExportControls="true"
ShowPrintButton="true"
ShowFindControls="true"
ShowRefreshButton="true" ShowZoomControl="true" ZoomMode="Percent"
InternalBorderColor="#2B6EDA" InternalBorderWidth="0px"
ShowCredentialPrompts="false"
ShowWaitControlCancelLink="true" ShowParameterPrompts="true" AsyncRendering="true"
ShowToolBar="true"
Width="100%" Height="100%" ToolBarItemBorderStyle="Dashed"
InteractivityPostBackMode="AlwaysSynchronous"
ShowPageNavigationControls="true">
</rsweb:ReportViewer>
</div>
后台代码
if (!IsPostBack)
{
string connectionStringDW = Utilities.Common.ConfigHelper.GetConfigStr("dbConDW");
Utilities.DBUtility.DbHelperSQL dbHelperDW = new Utilities.DBUtility.DbHelperSQL(connectionStringDW);
//报表级参数
string Month = Request.QueryString["Month"].CastToString();
//系统级参数
string Account = ConfigHelper.GetConfigStr("SSRS_Account"), //查看报表的身份权限
PassWord = ConfigHelper.GetConfigStr("SSRS_PassWord"),
Area = ConfigHelper.GetConfigStr("SSRS_Area");
ReportViewer.ShowPageNavigationControls = true;
ReportViewer.Visible = true;
ReportViewer.ServerReport.ReportPath = ConfigHelper.GetConfigStr("SSRS_ReportURL_IMSDDDHospital_Perf"); //报表路径
string serverUri = ConfigHelper.GetConfigStr("SSRS_ServerURL"); //报表服务器路径
ReportViewer.ServerReport.ReportServerUrl = new Uri(serverUri);
//报表身份权限
MyReportViewerCredential myCredential = new MyReportViewerCredential(Account, PassWord, Area);
ReportViewer.ServerReport.ReportServerCredentials = myCredential;
ReportViewer.ShowCredentialPrompts = false;
//填写参数
ReportParameter Month_Par = new ReportParameter();
Month_Par.Name = "Month";
Month_Par.Values.Add(Month);
//添加参数
ReportViewer.ServerReport.SetParameters(new ReportParameter[]{
Month_Par
});
//刷新报表
ReportViewer.ServerReport.Refresh();