我在前端有一个文本框我想在CRYSTAL REPORT VIEWER
中显示此textBox值和我的数据表。我已成功显示数据表值,但发现显示textBox值的一些障碍。我正在使用Web应用程序(c#)。请帮助..
先谢谢..
这是我的代码 -
protected void btnExport_Click(object sender, EventArgs e)
{
ReportDocument rdt = new ReportDocument();
EmpDetail emp1 = new EmpDetail();
DataTable dt = new DataTable();
dt.TableName = "EmpDataTable";
dt = putEmployeeDetails();
emp1.Tables[0].Merge(dt);
rdt.Load(Server.MapPath("Emp.rpt"));
rdt.SetDataSource(emp1);
CrystalDecisions.CrystalReports.Engine.ReportDocument doc=rdt;
doc.DataDefinition.FormulaFields["display1"].Text = "sdfsdf";
CrystalReportViewer1.ReportSource = rdt;
}
因为这个错误 doc.DataDefinition.FormulaFields [“display1”]。Text =“sdfsdf”; as“索引无效。(HRESULT异常:0x8002000B(DISP_E_BADINDEX))”
答案 0 :(得分:1)
你可以这样做:
CrystalDecisions.CrystalReports.Engine.ReportDocument doc=load your document;
doc.DataDefinition.FormulaFields["formulafieldname"].Text = "'your text here";
请浏览此链接:textbox to Crystal Report
并访问此处了解有关Crystal报告的更多信息:Crystal Reports in ASP.NET
答案 1 :(得分:1)
编写您的查询和所有内容并填写数据集。
Dim SPATH As String = "C:\Documents and Settings\Aqeel\My Documents\Visual Studio 2008\Projects\PHARMA\PHARMA"
SPATH += "\Combinedrp.rpt"
RPT.Load(SPATH)
RPT.SetDataSource(DS2)
Dim firstName = RPT.ParameterFields("@dt1")
firstName.CurrentValues.AddValue(TextBox1.Text)
firstName.HasCurrentValue = True
Dim lastName = RPT.ParameterFields("@dt2")
lastName.CurrentValues.AddValue(TextBox2.Text)
lastName.HasCurrentValue = True
CrystalReportViewer1.ReportSource = RPT
答案 2 :(得分:0)
您始终可以在水晶报告中创建参数,然后将文本传递给这些参数。