private void Test_Load(object sender, EventArgs e)
{
try
{
string sql = "[companyid] ,[companyname] ,[Shopid] ,[shopname],[shopaddress],[shopphone],[fax], [footermsg],[footermsg_ar] FROM [shop] Where id = '1' ";
DataAccess.ExecuteSQL(sql);
DataTable dt = DataAccess.GetDataTable(sql);
ReportDataSource reportDSDetail = new ReportDataSource("DataSet1", dt);
string sqli = "SELECT [logo] FROM [logo] Where id= '1' ";
DataAccess.ExecuteSQL(sql);
DataTable dts = DataAccess.GetDataTable(sql);
string path = Application.StartupPath + @"\LOGO\";
string imagePath = path + dts.Rows[0].ItemArray[0].ToString();
ReportParameter pImageUrl = new ReportParameter("pName", "file://" + imagePath, true);
this.reportViewer1.LocalReport.ReportPath =path+@"Rep.rdlc";
this.reportViewer1.LocalReport.EnableExternalImages = true;
this.reportViewer1.LocalReport.SetParameters(new ReportParameter[] { pImageUrl });
this.reportViewer1.LocalReport.DataSources.Add(reportDSDetail);
this.reportViewer1.RefreshReport();
}
catch (Exception ex)
{
MessageBox.Show("Exception=" + ex);
}
}
在RDLC报告中,我创建了一个名为pName的参数,并与映像连接并配置了外部。 我需要在报告中同时获取参数和数据源,我尝试了很多方法但都失败了。 请帮助我解决此问题,以在RDLC报告中同时获取参数和数据源
答案 0 :(得分:0)
首先,您需要转到Report Data
,并添加 Parameters
,
添加参数 Right Click on textbox
后,要在其中显示parameters
-> Click Expression
并添加 Expression
像这样
其中Showdt
是parameter
名称
并从code behind
到data source
和parameters
一起这样
ReportDataSource rds = new ReportDataSource();//pass Your Datasource
ReportViewer1.LocalReport.DataSources.Clear();
ReportParameter p1 = new ReportParameter("Showdt", "Date : " + DateTime.Now.ToShortDateString());
//you can add multiple parameter like this
this.ReportViewer1.LocalReport.SetParameters(new ReportParameter[]{p1});
ReportViewer1.LocalReport.DataSources.Add(rds);
ReportViewer1.LocalReport.Refresh();