private void PrintAll() { string date1; string date2; date1 = DtpFrom.Value.ToString("dd/MM/yyyy"); date2 = DtpTo.Value.ToString("dd/MM/yyyy"); DataTable tblRpt = new DataTable(); tblRpt.Clear(); tblRpt = db.readData("SELECT [Order_ID] as 'رقم الفاتورة',[Cust_Name] as 'اسم العميل',Products.Pro_Name as 'المنتج',[Sales_Detalis].[Qty] as 'الكمية',[Sales_Detalis].[Price_Tax] as 'السعر',[Discount] as 'الخصم',[Total] as 'الاجمالى',[TotalOrder] as 'اجمالى الفاتورة',[Madfou3] as 'المبلغ المدفوع',[Baky] as 'المتبقى',[User_Name] as 'الكاشير',[Date] as 'التاريخ' FROM [dbo].[Sales_Detalis] , Products where Products.Pro_ID = Sales_Detalis.Pro_ID and Convert(date,Date ,105 ) between '" + date1 + "' and '" + date2 + "' ", ""); try { Frm_Print frm = new Frm_Print(); frm.crystalReportViewer1.RefreshReport(); RptSalesReport rpt = new RptSalesReport(); rpt.SetDatabaseLogon("", "", @".\SQLEXPRESS", "Sales_System"); rpt.SetDataSource(tblRpt); rpt.SetParameterValue("From", date1); rpt.SetParameterValue("To", date2); frm.crystalReportViewer1.ReportSource = rpt; System.Drawing.Printing.PrintDocument printDocument = new System.Drawing.Printing.PrintDocument(); rpt.PrintOptions.PrinterName = printDocument.PrinterSettings.PrinterName; // rpt.PrintToPrinter(1, true, 0, 0); frm.ShowDialog(); } catch (Exception) { } }