Как создать отчет dail без использования всплывающего окна save
Привет всем я создаю там одно приложение я хочу показать ежедневный отчет должен быть загружен в определенное время я также написал код но он не будет работать
На самом деле то что я хочу отчет должен загружаться автоматически в указанное время
Что я уже пробовал:
На бланке загрузки я написал
private void Form3_Load(object sender, EventArgs e) { if((DateTime.Now==DateTime.Today) &&(DateTime.Now.Hour==22) &&(DateTime.Now.Minute==00)) { report_data(); } }
сделанный метод report_data
private void report_data() { OleDbConnection cnn = new OleDbConnection(); string sql = null; string data = null; int i = 0; int j = 0; Excel.Application xlApp; Excel.Workbook xlWorkBook; Excel.Worksheet xlWorkSheet; object misValue = System.Reflection.Missing.Value; xlApp = new Excel.Application(); xlWorkBook = xlApp.Workbooks.Add(misValue); xlWorkSheet = (Excel.Worksheet)xlWorkBook.Worksheets.get_Item(1); string connectionString = null; connectionString = ConfigurationManager.ConnectionStrings["AccessConnectionString"].ConnectionString; cnn.ConnectionString = connectionString; cnn.Open(); sql = "SELECT User_name,Sales_count from LOGIN order by User_ID desc"; OleDbDataAdapter dscmd = new OleDbDataAdapter(sql, cnn); DataSet ds = new DataSet(); dscmd.Fill(ds); cnn.Close(); for (i = 0; i <= ds.Tables[0].Rows.Count - 1; i++) { for (j = 0; j <= ds.Tables[0].Columns.Count - 1; j++) { xlWorkSheet.Cells[1, j + 1] = ds.Tables[0].Columns[j].Caption; data = ds.Tables[0].Rows[i].ItemArray[j].ToString(); xlWorkSheet.Cells[i + 2, j + 1] = data; } } System.Windows.Forms.SaveFileDialog saveDlg = new System.Windows.Forms.SaveFileDialog(); saveDlg.InitialDirectory = @"C:\"; saveDlg.Filter = "Excel files (*.xls)|*.xls"; saveDlg.FilterIndex = 0; saveDlg.RestoreDirectory = true; saveDlg.Title = "Export Excel File To"; xlWorkBook.Close(true, misValue, misValue); //xlWorkSheet.Name = "Daily_report" + DateTime.Now.ToString("ddMMyyyHHmmss" MessageBox.Show("File Downloaded successfully..."); xlApp.Quit(); releaseObject(xlWorkSheet); releaseObject(xlWorkBook); releaseObject(xlApp); }
Richard Deeming
Ваш пример кода является неполным - он никогда не показывает SaveFileDialog
, и он никогда не сохраняет книгу Excel.
Если вы хотите сохранить книгу по предопределенному пути без отображения диалогового окна, то удалите SaveFileDialog
код, и просто передайте заранее определенный путь к Save
метод.
Maciej Los
Вы пробовали использовать планировщик задач для ОС Windows? Видеть: Использование планировщика задач