Following steps are given to create a SSRS(RDLC) Report in ASP.NET
1)
Create table "UserList" in Database
2)
Create Connection String in Web.Config
<connectionStrings>
<add name="constr" connectionString="<Databaseconnection>" ProviderName="System.Data.SqlClient"/>
</connectionStrings>
3)
Add httphandler to web.config.
<system.web>
<httpHandlers>
<add path="Reserved.ReportViewerWebControl.axd" verb="*"
type="Microsoft.Reporting.WebForms.HttpHandler,
Microsoft.ReportViewer.WebForms, Version=10.0.0.0,
Culture=neutral,
PublicKeyToken=b03f5f7f11d50a3a" validate="false"
/>
</httpHandlers>
</system.web>
<system.webServer>
<handlers>
<add name="ReportViewerWebControlHandler"
preCondition="integratedMode"
verb="*" path="Reserved.ReportViewerWebControl.axd"
type="Microsoft.Reporting.WebForms.HttpHandler,
Microsoft.ReportViewer.WebForms, Version=10.0.0.0,
Culture=neutral,
PublicKeyToken=b03f5f7f11d50a3a"
/>
</handlers>
</system.webServer>
4)
Create empty ASP.NET Application.
5)
Crate Report Folder, Named it “Reports”
6)
Add SSRS Report(.rdlc) in report folder, Named
it “MyReport”.
7)
Add Dataset (.xsd) in report folder, Named it “MyReportUser”.
8)
Design Dataset (add Datatable and add column in
datatable as same in SQL Table.
9)
Open Myreport.rdlc file and add DataSet “MyReportUser”
in Report Data Section.
10)
Design report as per your requirement.
11)
Add script manager and report viewer to aspx page as shown below:
<form id="form1" runat="server">
<asp:ScriptManager runat="server">
</asp:ScriptManager>
<div>
<rsweb:ReportViewer Width="100%" ShowToolBar="false" ID="rptvMyReport" runat="server">
</rsweb:ReportViewer>
</div>
</form>
12) Add
following namespaces
using
System.Configuration;
using
System.Data;
using
System.Data.SqlClient;
using
Microsoft.Reporting.WebForms;
using SSRSReportExample.Reports; //To Access Reports folder Dataset
13) Add to Code Behind
string str = ConfigurationManager.ConnectionStrings["constr"].ToString();
DataSet ds;
protected void
Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
getUserList();//Call report at page load
}
}
private void
getUserList()
{
SqlConnection con = new
SqlConnection();//Create
SQL Connection Object
MyReportUser dsUserList = new
MyReportUser();//Create
DataSet Object
try
{
con.ConnectionString = str;
SqlDataAdapter sda = new SqlDataAdapter("select * from UserList", con);
con.Open();
sda.Fill(dsUserList, "UserList");//bind data to DataSet
if
(dsUserList.Tables[0].Rows.Count > 0)//if bind is successfull then execute
{
rptvMyReport.ProcessingMode = ProcessingMode.Local;
rptvMyReport.LocalReport.ReportPath = Server.MapPath("~/Reports/MyReport.rdlc");
rptvMyReport.LocalReport.DataSources.Clear();//Clear
previous applied Datasource
ReportDataSource rptDataSource = new ReportDataSource("UserList", dsUserList.Tables[0]);//Create Report Datasource and add Dataset in it.
rptvMyReport.LocalReport.DataSources.Add(rptDataSource);
}
}
catch { }
finally { con.Close(); }
}
14) Build your application and check
the result.
No comments:
Post a Comment