2016-06-27 14 views
2

Crystal ReportsをC#windowsフォームアプリケーションで使用するのが初めてです。私のCrystalレポートをmysqlサーバ "11.0.65.185"に接続します。エクスポートCrystal Reportsからpdfへのデータをc#windowsフォームアプリケーションを使用して

私は水晶レポートに(EmpName、EmpId、DOB、DOJ、住所、市)のこの6列を持っています。私は(fromdateとtodate)として私のレポートにパラメータを追加します

このリンクは、DOJの列http://stackoverflow.com/questions/37391112/filter-data-in-crystal-report-using-datetimepicker/37525275#37525275のおかげでstackoverflowのおかげでフィルタに役立ちます。

ここではエクスポートオプションに問題があります。私は最大1000のデータを持っています。私がDOJでデータをフィルタリングするとき、Datetimepicker1はfromdateとDatetimepicker2を持っています。私はデータの間をレポートに入れます。

私はそのフィルタのデータだけをエクスポートする必要があります。しかし、グーグルで検索すると、データベーステーブルにある完全なデータをエクスポートするコードがあります。

CrystalReport1 crys = new CrystalReport1(); 
crys.ExportToDisk(ExportFormatType.PortableDocFormat, "C:\\Users\\Downloads\\ReportAsPDF.pdf"); 
       MessageBox.Show("Report Export Into PDF File"); 

このコードは、C#crystal reportの全データをエクスポートするのに役立ちます。お友達にフィルタリングされたデータのみをPDFにエクスポートするのを助けてください。

ありがとうございました。

答えて

2

レポート

   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"); 
のフィルタデータと同じようにこれを試してみてください