I am trying to display two rdlc report in same reportviewer but facing some problem with datasource. Can anyone help me?
My code is:
aspx page
form id="form1" runat="server">
<asp:DropDownList ID="DropDownList1" runat="server" AutoPostBack="True">
<asp:ListItem>Ministry_Wise_Pre_Post_06</asp:ListItem>
<asp:ListItem>MInistry_PPO_Wise_Pre_Post_06</asp:ListItem>
</asp:DropDownList>
<asp:Button ID="Button1" runat="server" Text="Button" OnClick="Button1_Click" />
<br />
<br />
<div>
<asp:ScriptManager ID="ScriptManager1" runat="server">
</asp:ScriptManager>
<rsweb:ReportViewer ID="ReportViewer1" runat="server" Font-Names="Verdana" Font-Size="8pt"
Height="425px" InteractiveDeviceInfos="(Collection)" WaitMessageFont-Names="Verdana"
WaitMessageFont-Size="14pt" Width="552px">
</rsweb:ReportViewer>
</div>
</form>
aspx.cs
protected void Page_Load(object sender, EventArgs e)
{
}
protected void Button1_Click(object sender, EventArgs e)
{
ControlCollection cc = this.ReportViewer1.Parent.Controls;
int prevIndex = cc.IndexOf(this.ReportViewer1);
cc.Remove(this.ReportViewer1);
ReportViewer1 = new Microsoft.Reporting.WebForms.ReportViewer();
ReportViewer1.Height = Unit.Parse("100%");
ReportViewer1.Width = Unit.Parse("100%");
cc.AddAt(prevIndex, ReportViewer1);
this.ReportViewer1.LocalReport.DataSources.Clear();
ReportViewer1.ProcessingMode = ProcessingMode.Local;
DataSet dataSet = new DataSet();
ReportViewer1.LocalReport.ReportPath = "";
if (DropDownList1.SelectedItem.Text == "Ministry_Wise_Pre_Post_06")
{
Ministry_Wise_Pre_Post_06TableAdapters.DataTable1TableAdapter da = new Ministry_Wise_Pre_Post_06TableAdapters.DataTable1TableAdapter();
Ministry_Wise_Pre_Post_06.DataTable1DataTable dt = da.GetData();
//DataSet1TableAdapters.tblArticleTableAdapter da = new DataSet1TableAdapters.tblArticleTableAdapter();
//DataSet1.tblArticleDataTable dt = da.GetData();
//ReportDataSource ds = new ReportDataSource();
Microsoft.Reporting.WebForms.ReportDataSource rds = new ReportDataSource("DataSet1", dt);
//Microsoft.Reporting.WebForms.ReportDataSource rds = new ReportDataSource();
ReportViewer1.LocalReport.DataSources.Add(rds);
ReportViewer1.LocalReport.Refresh();
}
switch (DropDownList1.Text)
{
case "Ministry_Wise_Pre_Post_06":
{
ReportViewer1.LocalReport.ReportPath = Server.MapPath("Ministry_Wise_Pre_Post_06.xsd");
break;
}
case "report2":
{
ReportViewer1.LocalReport.ReportPath = Server.MapPath("Report2.rdlc");
break;
}
}
What needs to be fill in datasource????