我是在 C# Windows 窗体应用程序中使用 Crystal Report 的新手。我将 Crystal Report 连接到 mysql 服务器“11.0.65.185”。
我的 Crystal 报告中有(EmpName、EmpId、DOB、DOJ、地址、城市)这 6 列。然后我在报告中添加一个参数(起始日期和截止日期)
此链接帮助我过滤 DOJ 栏 http://stackoverflow.com/questions/37391112/filter-data-in-crystal-report-using-datetimepicker/37525275#37525275感谢 stackoverflow。
但我在导出选项中遇到问题。我最多有 1000 个数据。当我使用 Datetimepicker1 过滤 DOJ 中的数据时,我的报告中包含了 fromdate 和 Datetimepicker2 之间的数据。
我只需要导出该过滤器数据。但是当我通过谷歌搜索时,我得到了一个代码来导出数据库表中存在的完整数据。
CrystalReport1 crys = new CrystalReport1();
crys.ExportToDisk(ExportFormatType.PortableDocFormat, "C:\\Users\\Downloads\\ReportAsPDF.pdf");
MessageBox.Show("Report Export Into PDF File");
此代码帮助我导出 C# Crystal 报表中的全部数据。请 friend 帮助我仅将过滤后的数据导出为 PDF。
感谢您的帮助。
最佳答案
尝试与报告中过滤数据相同的操作
TableLogOnInfos crtableLogoninfos = new TableLogOnInfos();
TableLogOnInfo crtableLogoninfo = new TableLogOnInfo();
ConnectionInfo crConnectionInfo = new ConnectionInfo();
Tables CrTables;
ParameterFieldDefinitions crParameterFieldDefinitions;
ParameterFieldDefinition crParameterFieldDefinition;
ParameterValues crParameterValues = new ParameterValues();
ParameterDiscreteValue crParameterDiscreteValue = new ParameterDiscreteValue();
crParameterDiscreteValue.Value = dateTimePicker1.Text;
crParameterFieldDefinitions = crys.DataDefinition.ParameterFields;
crParameterFieldDefinition = crParameterFieldDefinitions["fromdate"];
crParameterValues = crParameterFieldDefinition.CurrentValues;
crParameterValues.Clear();
crParameterValues.Add(crParameterDiscreteValue);
crParameterFieldDefinition.ApplyCurrentValues(crParameterValues);
crParameterDiscreteValue.Value = dateTimePicker2.Text;
crParameterFieldDefinitions = crys.DataDefinition.ParameterFields;
crParameterFieldDefinition = crParameterFieldDefinitions["todate"];
crParameterValues = crParameterFieldDefinition.CurrentValues;
crParameterValues.Add(crParameterDiscreteValue);
crParameterFieldDefinition.ApplyCurrentValues(crParameterValues);
crParameterValues.Add(crParameterDiscreteValue);
crParameterFieldDefinition.ApplyCurrentValues(crParameterValues);
crConnectionInfo.ServerName = "****";
crConnectionInfo.DatabaseName = "****"; ;
crConnectionInfo.UserID = "root";
crConnectionInfo.Password = "******";
CrTables = crys.Database.Tables;
foreach (CrystalDecisions.CrystalReports.Engine.Table CrTable in CrTables)
{
crtableLogoninfo = CrTable.LogOnInfo;
CrTable.ApplyLogOnInfo(crtableLogoninfo);
}
DateTime date = DateTime.Now;
int t = date.Hour;
int t1 = date.Minute;
int t2 = date.Second;
int m = date.Month;
int d = date.Day;
int y = date.Year;
crys.ExportToDisk(ExportFormatType.PortableDocFormat, "C:\\Downloads\\ReportAsPDF Time" + t + " - " + t1 + " - " + t2 + " Date " + d + " - " + m + " - " + y + ".pdf");
MessageBox.Show("Export Successfully");
关于c# - 使用 C# Windows 窗体应用程序将过滤后的数据从 Crystal 报表导出到 pdf,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38048413/