我想设置TextBox1的值成的晶体的报告式场与利用相同的值成晶体的报告。
假设我Textbox1的值是“12000”,我想将它设置为公式字段和利用同放入水晶报表。 可能吗?。 是的,然后怎么样?
注: 位于CrystalReportviewer1的顶部TextBox1的。
解
这是非常简单的只是创建报告类的实例,并设置你的CrystalReportViewer源作为下的文本框的值:
PLCrystReport plc = new PLCrystReport();
plc.DataDefinition.FormulaFields["ttt"].Text = "" + textBox1.Text + "";
对于上述首先,你必须在你的水晶报表创建公式字段,并设置上面的代码,然后你的公式字段复制到水晶报表后。 它将显示文本框的指定的值代入公式字段。
注[“TTT”]是下式的字段名称。 其提供到晶体的报告。
Dim RptForm As CrystalDecisions.CrystalReports.Engine.ReportDocument
Dim T As CrystalDecisions.CrystalReports.Engine.TextObject
RptForm = New MyCrystalReport()
T = RptForm.ReportDefinition.Sections(0).ReportObjects("TXTCNAME")
T.Text = DTPTDate.Value
这里TXTCNAME存在文本框的节名(0)水晶报告
MyCrystalReport是您要使用水晶报表。
首先创建报表类的实例,然后访问成员变量和使用该变量在主界面。
假设我有一个名为ReportView的报告(类),还有我声明如下成员变量
public CrystalDecisions.CrystalReports.Engine.ReportDocument rptDocument;
现在,在显示界面报告,创建ReportView的实例,如下:
ReportView rptView = new ReportView();
rptView.rptDocument.DataDefinition.FormulaFields["formulaName"].Text = "'" + txt.Text + "'";
这里, txt
是包含一个值和一个文本框formulaName
是在报告设计生成的公式。
当Crystal报表公式字段是一个日期时间 ,然后将下面的代码可以帮助你:
CrystalDecisions.CrystalReports.Engine.ReportDocument rd = new ReportDocument();
rd.Load("AgedItems_3.rpt");
try
{
string datetext = RunDate.ToString("dd/MM/yyyy HH:mm");
rd.DataDefinition.FormulaFields["ProcessDate"].Text = "#"+datetext+"#";
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
}
crystalReportViewer2.ReportSource = rd;
只需添加'出现在文本值ex之间: reportDoc.DataDefinition.FormulaFields("NameOfFormula").Text = "'Value'"
。 这必须正常工作。