public void GenerateReport() { BEAdmin objBEAdmin = new BEAdmin(); BAdmin objBAdmin = new BAdmin(); objBEAdmin.strCourseID = GetCourseIds(); objBEAdmin.IntUserID = Convert.ToInt32(Session[EnumPageSessions.USERID]); objBAdmin.BGetExamSummaryReportDetails(objBEAdmin); DataTable objDt = objBEAdmin.DtResult; objDt.AcceptChanges(); objDt.Columns.Remove("CourseID"); objDt.Columns.Remove("ExamID"); objDt.Columns["CourseName"].ColumnName = "Course Name"; objDt.Columns["Instructor Name"].ColumnName = "Instructor Name"; objDt.Columns["ExamName"].ColumnName = "Exam Name"; objDt.Columns["ExamStartDate"].ColumnName = "Exam Start Date"; objDt.Columns["ExamEndDate"].ColumnName = "Exam End Date"; objDt.Columns["StudentsEnrolled"].ColumnName = "Total Students"; objDt.Columns["ScheduledAppointments"].ColumnName = "Scheduled Appointments"; objDt.Columns["Unscheduledappointments"].ColumnName = "Unscheduled Appointments"; string Examsummary = Server.MapPath(ConfigurationManager.AppSettings["Reports"].ToString()) + '\\' + "Schedule status" + DateTime.Now.ToString("MM/dd/yyyy HH:mm:ss").Replace("/", "-").Replace(":", "-") + ".xls"; if (File.Exists(Examsummary)) { File.Delete(Examsummary); } FileInfo rptFileName = new FileInfo(Examsummary); // this.DeleteHistoricFiles(); ExcelSheetGenerator objExcel = new ExcelSheetGenerator(); objExcel.GenerateReport(objDt, rptFileName, " Schedule status ", "UserName"); Response.ContentType = "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet"; Response.AppendHeader("Content-Disposition", "attachment; filename=" + "Schedule status" + DateTime.Now.ToString("MM/dd/yyyy HH:mm:ss").Replace("/", "-") + ".xlsx"); Response.TransmitFile(rptFileName.ToString()); Response.End(); }
//for populating the grid protected void LoadSummaryReport(string ids) { try { BEAdmin objBEAdmin = new BEAdmin(); BAdmin objBAdmin = new BAdmin(); objBEAdmin.strCourseID = ids; objBAdmin.BGetExamSummaryReportDetails(objBEAdmin); gvReports.DataSource = objBEAdmin.DtResult; gvReports.DataBind(); ViewState["gvReports"] = objBEAdmin.DtResult; } catch (Exception Ex) { ErrorHandlers.ErrorLog.WriteError(Ex); } }
public void SendEmail() { lblResult.Text = ""; BEAdmin objBEAdmin = new BEAdmin(); BAdmin objBAdmin = new BAdmin(); objBEAdmin.strCourseID = GetCourseIds(); objBEAdmin.IntUserID = Convert.ToInt32(Session[EnumPageSessions.USERID]); objBAdmin.BGetExamSummaryReportDetails(objBEAdmin); DataTable objDt = objBEAdmin.DtResult; objDt.AcceptChanges(); objDt.Columns.Remove("CourseID"); objDt.Columns.Remove("ExamID"); objDt.Columns["CourseName"].ColumnName = "Course Name"; objDt.Columns["Instructor Name"].ColumnName = "Instructor Name"; objDt.Columns["ExamName"].ColumnName = "Exam Name"; objDt.Columns["ExamStartDate"].ColumnName = "Exam Start Date"; objDt.Columns["ExamEndDate"].ColumnName = "Exam End Date"; objDt.Columns["StudentsEnrolled"].ColumnName = "Total Students"; objDt.Columns["ScheduledAppointments"].ColumnName = "Scheduled Appointments"; objDt.Columns["Unscheduledappointments"].ColumnName = "Unscheduled Appointments"; FileInfo rptFileName = new FileInfo(Server.MapPath(System.Configuration.ConfigurationManager.AppSettings["Reports"].ToString()) + @"\Schedule status from_" + DateTime.Now.ToString("MM/dd/yyyy HH:mm:ss").Replace("/", "-").Replace(":", "-") + ".xls"); // If any file exists in this directory having name 'Sample1.xlsx', then delete it if (rptFileName.Exists) { rptFileName.Delete(); // ensures we create a new workbook rptFileName = new FileInfo(Server.MapPath(System.Configuration.ConfigurationManager.AppSettings["Reports"].ToString()) + @"\Schedule status from_" + DateTime.Now.ToString("MM/dd/yyyy HH:mm:ss").Replace("/", "-").Replace(":", "-") + ".xls"); } ExcelSheetGenerator objExcel = new ExcelSheetGenerator(); objExcel.GenerateReport(objDt, rptFileName, "Schedule status _", "UserName"); string ToEmail = txtEmail.Text; System.Net.Mail.MailMessage email = new System.Net.Mail.MailMessage(); StringBuilder body = new StringBuilder(); email.From = new MailAddress("*****@*****.**"); email.To.Add(ToEmail.Replace(" ", "")); email.Subject = "Schedule status"; body.Append("<table style='font-family:Helvetica;font-size:9pt;width:600px;'>"); body.Append(@"<tr><td>Hi,<br/><br/>Please find the enclosed Schedule status report. <br/><br/><br/>Thank you,<br/>Examity.<br/><b>***DO NOT REPLY TO THIS EMAIL***</b></td></tr>"); body.Append("</table>"); // Attachment goes here Attachment attachment = new Attachment(rptFileName.ToString()); attachment.Name = "Schedule status" + ".xlsx"; email.Attachments.Add(attachment); //add the attachment email.Body = body.ToString(); email.IsBodyHtml = true; SmtpClient obj = new SmtpClient { Host = ConfigurationManager.AppSettings["smtpServer"], Port = Convert.ToInt32(ConfigurationManager.AppSettings["smtpPort"]), EnableSsl = true, DeliveryMethod = SmtpDeliveryMethod.Network, UseDefaultCredentials = false, Credentials = new System.Net.NetworkCredential(ConfigurationManager.AppSettings["smtpUser"].ToString(), ConfigurationManager.AppSettings["Reportspassword"].ToString()) }; obj.Send(email); lblResult.Text = "<font color='Blue' size='4px'>" + "Report emailed sucessfully." + "</font>"; }