Prerequisites:
Configured Report Server
Note:
To check the configuration of the report server type the URL
http://<Server IP>/Reports
Steps
to create a SQL Report:
1. Create
a New project in VS of 'Report Server project Wizard' in 'SQL Server Bussiness
Development Studio' Template.
2. Set
the Database credentials and define the connection string.
3. Set
SQL Query or set the SP name and its Parameters.
4. Set
the Report Type(Tabular or Matrix)
5. Select
the Report Fields.
6. Choose
the deployment location and set the deployment folder .
7. Provide
the Report Name and Finish.
8. Set the properties of Project by
right clicking on the project in Sol. Explorer and set the TargetDatasourceFolder='WhateverYouWant',
TargetReportFolder='WhateverYouWant' and TargetServerURL='http://<Server
IP>/ReportServer
9. Build the project and deploy it on
the Report Server by Right Clicking on
the project and clicking on Deploy.
Steps
to Integrate the Report with web application:
1. Create
a new Web application.
2. Add
a button on the Page.
3. Add
the Microsoft Report Viewer Control on
the Page.
On
the Code file of the project add the assembly reference: Microsoft.Reporting.WebForms
4. Add
the buton click handler and add the given below code:
ReportParameter[] parm = newReportParameter[2];
parm[0] = newReportParameter("ParameterName", "ParameterValue");
parm[1] = newReportParameter("ParameterName",
"ParameterValue");
ReportViewer1.ShowCredentialPrompts = false;
ReportViewer1.ServerReport.ReportServerCredentials = newReportCredentials("UserName", "Password","HostName");
ReportViewer1.ProcessingMode = Microsoft.Reporting.WebForms.ProcessingMode.Remote;
ReportViewer1.ServerReport.ReportServerUrl = new
System.Uri("http://<Report
Server IP>/ReportServer");
ReportViewer1.ServerReport.ReportPath = "/<ReportFolder>/<ReportName>";
ReportViewer1.ServerReport.SetParameters(parm);
ReportViewer1.ServerReport.Refresh();
5. Add the Given Below Class in the Project.
publicclassReportCredentials
: Microsoft.Reporting.WebForms.IReportServerCredentials
{
string
_userName, _password, _domain;
public
ReportCredentials(string userName, string password, string
domain)
{
_userName = userName;
_password = password;
_domain = domain;
}
public
System.Security.Principal.WindowsIdentity
ImpersonationUser
{
get
{
returnnull;
}
}
public
System.Net.ICredentials NetworkCredentials
{
get
{
returnnew System.Net.NetworkCredential(_userName,
_password, _domain);
}
}
publicbool GetFormsCredentials(out
System.Net.Cookie authCoki, outstring userName, outstring password, outstring authority)
{
userName = _userName;
password = _password;
authority = _domain;
authCoki = new
System.Net.Cookie(".ASPXAUTH",".ASPXAUTH", "/", "Domain");
returntrue;
}
}
}
6. Now
Build the Application the Run the same page and click on the button.