예제 #1
0
        protected void btnExportExcel_Click(object sender, EventArgs e)
        {
            string ReportName;

            if (Session["ReportName"] != null)
            {
                ReportName = Session["ReportName"].ToString();
            }
            else
            {
                ReportName = "";
            }
            HtmlForm form = new HtmlForm();

            Response.Clear();
            Response.Buffer  = true;
            Response.Charset = "";
            Response.AddHeader("content-disposition", string.Format("attachment;filename={0}", ReportName + ".xls"));
            Response.ContentType = "application/ms-excel";
            StringWriter   sw = new StringWriter();
            HtmlTextWriter hw = new HtmlTextWriter(sw);

            //BindGridDetails(gvCheckList);
            form.Attributes["runat"] = "server";
            switch (ReportName)
            {
            case "Skill Count":
                gvSkillCount.AllowPaging = false;
                form.Controls.Add(gvSkillCount);
                break;

            case "Skill Detail":
                gvSkillDetail.AllowPaging = false;
                form.Controls.Add(gvSkillDetail);
                break;

            case "Skill Type Count":
                gvSkillTypeCount.AllowPaging = false;
                form.Controls.Add(gvSkillTypeCount);
                break;

            case "Skill Type Detail":
                gvSkillTypeDetail.AllowPaging = false;
                form.Controls.Add(gvSkillTypeDetail);
                break;

            default:

                break;
            }

            this.Controls.Add(form);
            form.RenderControl(hw);
            string style = @"<!--mce:2-->";

            Response.Write(style);
            Response.Output.Write(sw.ToString());
            Response.Flush();
            Response.End();
        }
 protected void btnExcel_Click(object sender, EventArgs e)
 {
     try
     {
         ChangeControlsToValue(gvDeposits);
        // gvDeposits.Columns[13].Visible = false;
         Response.ClearContent();
         Response.AddHeader("content-disposition", "attachment; filename=AgentDeposits.xls");
         Response.ContentType = "application/excel";
         StringWriter sWriter = new StringWriter();
         HtmlTextWriter hTextWriter = new HtmlTextWriter(sWriter);
         HtmlForm hForm = new HtmlForm();
         gvDeposits.Parent.Controls.Add(hForm);
         hForm.Attributes["runat"] = "server";
         hForm.Controls.Add(gvDeposits);
         hForm.RenderControl(hTextWriter);
         StringBuilder sBuilder = new StringBuilder();
         sBuilder.Append("<html xmlns:v=\"urn:schemas-microsoft-com:vml\" xmlns:o=\"urn:schemas-microsoft-com:office:office\" xmlns:x=\"urn:schemas-microsoft-com:office:excel\" xmlns=\"http://www.w3.org/TR/REC-html40\"> <head><meta http-equiv=\"Content-Type\" content=\"text/html;charset=windows-1252\"><!--[if gte mso 9]><xml><x:ExcelWorkbook><x:ExcelWorksheets><x:ExcelWorksheet><x:Name>ExportToExcel</x:Name><x:WorksheetOptions><x:Panes></x:Panes></x:WorksheetOptions></x:ExcelWorksheet></x:ExcelWorksheets></x:ExcelWorkbook></xml><![endif]--></head> <body>");
         sBuilder.Append(sWriter + "</body></html>");
         Response.Write(sBuilder.ToString());
         Response.End();
         //gvDeposits.Columns[13].Visible = true;
     }
     catch (Exception ex)
     {
         //lblMsg.InnerHtml = ex.Message;
         throw ex;
     }
 }
예제 #3
0
        //Export to Excel from a gridview
        public static void ExportToExcel(GridView gv, Page pag)
        {
            char c  = (char)34;
            char bk = '\n';

            System.Web.HttpContext.Current.Response.Clear();
            System.Web.HttpContext.Current.Response.Buffer      = true;
            System.Web.HttpContext.Current.Response.ContentType = "application/vnd.ms-excel";
            System.Web.HttpContext.Current.Response.AddHeader("content-disposition", "attachment; filename=RotationPublications.xls");
            System.Web.HttpContext.Current.Response.Write("<!DOCTYPE html>" + bk +
                                                          "<html>" + bk +
                                                          "<head>" + bk + "<meta http-equiv='Content-Type' content='text/html; charset=utf-8'>" + bk + "</head><body>");

            pag.EnableViewState = false;

            System.IO.StringWriter       sw  = new System.IO.StringWriter();
            System.Web.UI.HtmlTextWriter htw = new System.Web.UI.HtmlTextWriter(sw);
            HtmlForm frm = new HtmlForm();

            pag.Controls.Add(frm);
            frm.Controls.Add(gv);
            frm.RenderControl(htw);

            System.Web.HttpContext.Current.Response.Write(sw.ToString());
            System.Web.HttpContext.Current.Response.End();
        }
예제 #4
0
        protected void btnPrintPDF_Click(object sender, EventArgs e)
        {
            string attachment = "attachment; filename=Export.xls";

            Response.ClearContent();
            Response.AddHeader("content-disposition", attachment);
            Response.ContentType = "application/ms-excel";
            StringWriter   sw  = new StringWriter();
            HtmlTextWriter htw = new HtmlTextWriter(sw);
            // Create a form to contain the grid
            HtmlForm frm = new HtmlForm();

            divMon.Parent.Controls.Add(frm);
            frm.Attributes["runat"] = "server";
            frm.Controls.Add(divMon);
            frm.RenderControl(htw);

            //GridView_Merge_Header.Parent.Controls.Add(frm);
            //frm.Attributes["runat"] = "server";
            //frm.Controls.Add(GridView_Merge_Header);
            //frm.RenderControl(htw);

            ////GridView_Merge_Header.RenderControl(htw);


            Response.Write(sw.ToString());
            Response.End();
        }
예제 #5
0
        protected void btnWord_Click(object sender, EventArgs e)
        {
            HtmlForm form = new HtmlForm();

            Response.Clear();
            Response.Buffer  = true;
            Response.Charset = "";
            Response.AddHeader("content-disposition", string.Format("attachment;filename={0}", "Student.doc"));
            Response.ContentType = "application/ms-msword";
            StringWriter   sw = new StringWriter();
            HtmlTextWriter hw = new HtmlTextWriter(sw);

            GridView1.AllowPaging = false;
            BindGridDetails(GridView1);
            form.Attributes["runat"] = "server";
            form.Controls.Add(GridView1);
            this.Controls.Add(form);
            form.RenderControl(hw);
            string style = @"<style> .textmode { mso-number-format:\@;}</style>";

            Response.Write(style);
            Response.Output.Write(sw.ToString());
            Response.Flush();
            Response.End();
        }
 protected void BtnDownloadAttendanceAsExcel_Click(object sender, EventArgs e)
 {
     if (int.Parse(DDLSemester.SelectedValue.ToString()) % 2 == 0)
         LblSemesterType.Text = "EVEN SEMESTER";
     else
         LblSemesterType.Text = "ODD SEMESTER";
     LblDepartment.Text = Session["Department"].ToString();
     LblFromDate.Text = TxtBxFromDate.Text;
     LblToDate.Text = TxtBxToDate.Text;
     LblSection.Text = DDLSection.SelectedItem.Text;
     LblSemester.Text = DDLSemester.SelectedItem.Text;
     string name = DDLSection.SelectedItem.ToString().Replace("   ", "") + ".xls";
     HtmlForm form = new HtmlForm();
     string attachment = "attachment; filename=" + name;
     Response.ClearContent();
     Response.AddHeader("content-disposition", attachment);
     Response.ContentType = "application/ms-excel";
     StringWriter stw = new StringWriter();
     HtmlTextWriter htextw = new HtmlTextWriter(stw);
     form.Controls.Add(ListHeader);
     form.Controls.Add(GridView1);
     this.Controls.Add(form);
     form.RenderControl(htextw);
     Response.Write(stw.ToString());
     Response.End();
 }
        protected void Page_Load(object sender, EventArgs e)
        {
            if (Request.QueryString["EventID"] != null)
            {
                long eventId = Convert.ToInt64(Request.QueryString["EventID"]);

                var eventCustomerReportingService = IoC.Resolve <IEventCustomerReportingService>();
                var rescheduledCustomers          = eventCustomerReportingService.GetRescheduleAppointmentsForEvent(eventId);

                BindCustomerList(rescheduledCustomers);

                HtmlForm newForm = this.form1;
                newForm.Controls.Clear();
                newForm.Controls.Add(div1);

                var sb       = new System.Text.StringBuilder();
                var htWriter = new HtmlTextWriter(new System.IO.StringWriter(sb));

                newForm.RenderControl(htWriter);

                string strRenderedHtml = sb.ToString();
                strRenderedHtml = strRenderedHtml.Substring(strRenderedHtml.IndexOf("<div id=\"div1\""), strRenderedHtml.LastIndexOf("</div") - strRenderedHtml.IndexOf("<div id=\"div1\"") + 6);
                Response.Write(strRenderedHtml);
            }
            Response.End();
        }
예제 #8
0
 protected void img_btnmacexcel_Click(object sender, ImageClickEventArgs e)
 {
     lock (thisLock)
     {
         try
         {
             Response.ClearContent();
             Response.Buffer = true;
             Response.AddHeader("content-disposition", string.Format("attachment; filename={0}", "Machine.xls"));
             Response.ContentType = "application/ms-excel";
             StringWriter   sw  = new StringWriter();
             HtmlTextWriter htw = new HtmlTextWriter(sw);
             GridView1.HeaderRow.Style.Add("background-color", "#FFFFFF");
             //Applying stlye to gridview header cells
             for (int i = 0; i < GridView1.HeaderRow.Cells.Count; i++)
             {
                 GridView1.HeaderRow.Cells[i].Style.Add("background-color", "#df5015");
             }
             GridView1.AllowPaging = false;
             HtmlForm frm = new HtmlForm();
             GridView1.Parent.Controls.Add(frm);
             frm.Attributes["runat"] = "server";
             frm.Controls.Add(GridView1);
             frm.RenderControl(htw);
             Response.Write(sw.ToString());
             Response.End();
         } catch (Exception ex)
         {
             ExceptionLogging.SendExcepToDB(ex);
         }
         finally
         {
         }
     }
 }
예제 #9
0
    private void ExportGridToExcel()
    {
        HtmlForm form = new HtmlForm();

        Response.Clear();
        Response.Buffer = true;
        Response.ClearContent();
        Response.ClearHeaders();
        Response.Charset = "";
        string         FileName       = "Defaulters" + DateTime.Now.ToShortDateString() + ".xls";
        StringWriter   strwritter     = new StringWriter();
        HtmlTextWriter htmltextwrtter = new HtmlTextWriter(strwritter);

        Response.Cache.SetCacheability(HttpCacheability.NoCache);
        Response.ContentType = "application/vnd.ms-excel";
        Response.AddHeader("Content-Disposition", "attachment;filename=" + FileName);
        gvdaybook.GridLines             = GridLines.Both;
        gvdaybook.HeaderStyle.Font.Bold = true;
        gvdaybook.RenderControl(htmltextwrtter);
        gvdaybook.AllowPaging    = false;
        form.Attributes["runat"] = "server";
        form.Controls.Add(gvdaybook);
        this.Controls.Add(form);
        form.RenderControl(htmltextwrtter);
        Response.Write(strwritter.ToString());
        Response.End();
    }
        private void ExportGridView(RadGrid whichgrid)
        {
            string attachment = "attachment; filename=Routes.xls";

            Response.ClearContent();

            Response.AddHeader("content-disposition", attachment);

            Response.ContentType = "application/ms-excel";

            StringWriter sw = new StringWriter();

            HtmlTextWriter htw = new HtmlTextWriter(sw);



            // Create a form to contain the grid

            HtmlForm frm = new HtmlForm();

            whichgrid.Parent.Controls.Add(frm);

            frm.Attributes["runat"] = "server";

            frm.Controls.Add(whichgrid);
            frm.RenderControl(htw);

            Response.Write(sw.ToString());
            Response.End();
        }
예제 #11
0
    private void ExportToExcel()
    {
        //ToolScriptManager

        Response.Clear();
        Response.Charset = "";
        //Response.ContentType = "application/vnd.ms-excel"
        Response.ContentType = "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet";
        Response.AddHeader("Content-Disposition", "attachment; filename=Invoice_" + invoiceNo.ToString() + ".xls");

        System.IO.StringWriter       sw = new System.IO.StringWriter();
        System.Web.UI.HtmlTextWriter hw = new System.Web.UI.HtmlTextWriter(sw);

        dg = new DataGrid();
        dg = item_list;

        dg.GridLines             = GridLines.None;
        dg.HeaderStyle.Font.Bold = true;
        dg.Visible      = true;
        dg.AllowPaging  = false;
        dg.AllowSorting = false;

        LoadView();

        HtmlForm frm = new HtmlForm();

        dg.Parent.Controls.Add(frm);
        frm.Attributes["runat"] = "server";
        frm.Controls.Add(dg);

        frm.RenderControl(hw);

        Response.Write(sw);
        Response.End();
    }
예제 #12
0
        //protected void gvCalendar_RowDataBound(object sender, GridViewRowEventArgs e)
        //{

        //}

        protected void btnExportExcel_Click(object sender, EventArgs e)
        {
            HtmlForm form = new HtmlForm();

            Response.Clear();
            Response.Buffer  = true;
            Response.Charset = "";
            Response.AddHeader("content-disposition", string.Format("attachment;filename={0}", "LARPCalendar.xls"));
            Response.ContentType = "application/ms-excel";
            StringWriter   sw = new StringWriter();
            HtmlTextWriter hw = new HtmlTextWriter(sw);

            gvCalendar.AllowPaging = false;
            //BindGridDetails(gvCalendar);
            form.Attributes["runat"] = "server";
            form.Controls.Add(gvCalendar);
            this.Controls.Add(form);
            form.RenderControl(hw);
            string style = @"<!--mce:2-->";

            Response.Write(style);
            Response.Output.Write(sw.ToString());
            Response.Flush();
            Response.End();
        }
 protected void Button4_Click(object sender, EventArgs e)
 {
     try
     {
         if (GridView1.Visible == true)
         {
             Response.ContentType = "application/pdf";
             Response.AddHeader("content-disposition", "attachment;filename=Meal_Calculation.pdf");
             //  Response.Cache.SetCacheability(HttpCacheability.NoCache);
             StringWriter   sw = new StringWriter();
             HtmlTextWriter hw = new HtmlTextWriter(sw);
             //  GridView1.AllowPaging = false;
             HtmlForm frm = new HtmlForm();
             GridView1.Parent.Controls.Add(frm);
             //  frm.Attributes["runat"] = "server";
             frm.Controls.Add(GridView1);
             frm.RenderControl(hw);
             //  GridView1.DataBind();
             StringReader             sr     = new StringReader(sw.ToString());
             iTextSharp.text.Document pdfDoc = new iTextSharp.text.Document(PageSize.A4, 10f, 10f, 10f, 10f);
             HTMLWorker htmlparser           = new HTMLWorker(pdfDoc);
             PdfWriter.GetInstance(pdfDoc, Response.OutputStream);
             pdfDoc.Open();
             htmlparser.Parse(sr);
             pdfDoc.Close();
             Response.Write(pdfDoc);
             Response.End();
         }
     }
     catch (Exception ex)
     {
         Response.Write("Please select date");
     }
 }
예제 #14
0
        protected void btnWord_Click(object sender, EventArgs e)
        {
            HtmlForm form = new HtmlForm();

            //Response.Clear();
            //Response.Buffer = true;
            Response.AddHeader("content-disposition",
                               "attachment;filename=GridViewExport.doc");
            Response.ContentType     = "application/ms-word";
            Response.Charset         = "UTF-8";
            Response.ContentEncoding = System.Text.Encoding.UTF8;
            //set font
            HttpContext.Current.Response.Write("<font style='font-size:10.0pt; font-family:Calibri;'>");
            HttpContext.Current.Response.Write("<BR><BR><BR>");
            //Response.BinaryWrite(System.Text.Encoding.UTF8.GetPreamble());
            StringWriter   sw = new StringWriter();
            HtmlTextWriter hw = new HtmlTextWriter(sw);

            // Bỏ phân trang - Nếu chỉ muỗn Export Trang hiện hành thì chọn =true
            form.Controls.Add(grDSSum);
            this.Controls.Add(form);
            form.RenderControl(hw);
            //grDSSum.RenderControl(hw);
            //Thay đổi Style
            hw.WriteLine("<meta http-equiv=\"Content-Type\" content=\"text/html; charset=utf-8\">");
            Response.Write(sw.ToString());
            //Response.Flush();
            Response.End();
        }
예제 #15
0
    protected void Export_Excel(object sender, EventArgs e)
    {
        Response.Clear();
        Response.Buffer = true;
        Response.ClearContent();
        Response.ClearHeaders();
        Response.Charset = "";
        string       FileName   = "RestausantsExcel_" + DateTime.Now + ".xls";
        StringWriter strwritter = new StringWriter();

        HtmlTextWriter htmltextwrtter = new HtmlTextWriter(strwritter);



        Response.Cache.SetCacheability(HttpCacheability.NoCache);
        Response.ContentType = "application/vnd.ms-excel";
        Response.AddHeader("Content-Disposition", "attachment;filename=" + FileName);
        HtmlForm form1 = new HtmlForm();

        Page.Controls.Add(form1);



        GridView1.GridLines             = GridLines.Both;
        GridView1.HeaderStyle.Font.Bold = true;
        GridView1.AllowPaging           = false;
        GridView1.AllowSorting          = false;
        form1.Controls.Add(GridView1);

        form1.RenderControl(htmltextwrtter);
        Response.Write(strwritter.ToString());
        Response.End();
        GridView1.AllowPaging  = true;
        GridView1.AllowSorting = true;
    }
 protected void Button3_Click(object sender, EventArgs e)
 {
     if (GridView1.Visible == true)
     {
         try {
             HtmlForm form = new HtmlForm();
             Response.Clear();
             Response.Buffer  = true;
             Response.Charset = "";
             Response.AddHeader("content-disposition", string.Format("attachment;filename={0}", "Meal_Calculation.xls"));
             Response.ContentType = "application/ms-excel";
             StringWriter   sw = new StringWriter();
             HtmlTextWriter hw = new HtmlTextWriter(sw);
             GridView1.AllowPaging = false;
             //  BindGridDetails(GridView1);
             form.Attributes["runat"] = "server";
             form.Controls.Add(GridView1);
             this.Controls.Add(form);
             form.RenderControl(hw);
             string style = @"<!--mce:2-->";
             Response.Write(style);
             Response.Output.Write(sw.ToString());
             Response.Flush();
             Response.End();
         }
         catch (Exception ex)
         {
             Response.Write("Please select date");
         }
     }
 }
예제 #17
0
        public void ExportPdf(System.Web.UI.WebControls.GridView exportGV, System.Web.HttpResponse Response, System.Web.UI.HtmlControls.HtmlForm htmlForm)
        {
            string strFileName = "PDFReport-" + System.DateTime.Now.Date.ToString("dd") + System.DateTime.Now.AddMonths(0).ToString("MM") + System.DateTime.Now.AddYears(0).ToString("yyyy");

            Response.ContentType = "application/pdf";
            Response.AddHeader("content-disposition", "attachment;filename=" + strFileName + ".pdf");
            Response.Cache.SetCacheability(HttpCacheability.NoCache);
            StringWriter   sw  = new StringWriter();
            HtmlTextWriter hw  = new HtmlTextWriter(sw);
            HtmlForm       frm = new HtmlForm();

            exportGV.Parent.Controls.Add(frm);
            frm.Attributes["runat"] = "server";
            frm.Controls.Add(exportGV);
            frm.RenderControl(hw);

            StringReader sr         = new StringReader(Regex.Replace(sw.ToString(), "<script.*?</script>", "", RegexOptions.Singleline | RegexOptions.IgnoreCase));
            Document     pdfDoc     = new Document(PageSize.A4, 10f, 10f, 10f, 0f);
            HTMLWorker   htmlparser = new HTMLWorker(pdfDoc);

            PdfWriter.GetInstance(pdfDoc, Response.OutputStream);

            pdfDoc.Open();
            htmlparser.Parse(sr);
            pdfDoc.Close();
            Response.Write(pdfDoc);
            Response.End();
        }
예제 #18
0
    private void ExportGridView()
    {
        string attachment = "attachment; filename=Dist_Peace_Leadership_Registration_Cheque_Report.xls";

        Response.ClearContent();

        Response.AddHeader("content-disposition", attachment);

        Response.ContentType = "application/ms-excel";

        StringWriter sw = new StringWriter();

        HtmlTextWriter htw = new HtmlTextWriter(sw);

        // Create a form to contain the grid

        HtmlForm frm = new HtmlForm();

        GridView1.Parent.Controls.Add(frm);

        frm.Attributes["runat"] = "server";

        frm.Controls.Add(GridView1);

        frm.RenderControl(htw);

        //GridView1.RenderControl(htw);

        Response.Write(sw.ToString());

        Response.End();
    }
예제 #19
0
파일: CCWeb.cs 프로젝트: raushan790/test
    public void ExportToExcelG(GridView GridName, HtmlForm frmForm, string StrHeading, string ExcelWord)
    {
        string attachment;

        System.Text.StringBuilder sb = new System.Text.StringBuilder();
        sb.Append("<Head align='center' style='font-weight:bold;font-family:Arial;font-size:16'>" + StrHeading + " </head>");
        HtmlForm form = new HtmlForm();

        if (ExcelWord == "Word")
        {
            attachment = "attachment; filename=" + GridName.ID + ".doc";
            HttpContext.Current.Response.ContentType = "application/ms-word";
        }
        else if (ExcelWord == "pdf")
        {
            attachment = "attachment; filename=" + GridName.ID + ".pdf";
            HttpContext.Current.Response.ContentType = "application/pdf";
        }
        else
        {
            attachment = "attachment; filename=" + GridName.ID + ".xls";
            HttpContext.Current.Response.ContentType = "application/ms-excel";
        }
        HttpContext.Current.Response.ClearContent();
        HttpContext.Current.Response.AddHeader("content-disposition", attachment);
        StringWriter   stw    = new StringWriter(sb);
        HtmlTextWriter htextw = new HtmlTextWriter(stw);

        GridName.BorderWidth = 0;
        form.Controls.Add(GridName);
        frmForm.Controls.Add(form);
        form.RenderControl(htextw);
        HttpContext.Current.Response.Write(stw.ToString());
        HttpContext.Current.Response.End();
    }
        private void ExportGridView(string Filetype)
        {
            LatestValuationdate = Convert.ToDateTime(ViewState["Valuationdate"].ToString());
            //LatestValuationdate = Convert.ToDateTime(ValuationDate.Value.ToString());

            HtmlForm frm = new HtmlForm();

            frm.Controls.Clear();
            frm.Attributes["runat"] = "server";
            if (Filetype == "Excel")
            {
                gvMFMIS.Columns.Remove(this.gvMFMIS.Columns[0]);
                string temp       = rmVo.FirstName + rmVo.LastName + "'s_MF_MIS.xls";
                string attachment = "attachment; filename=" + temp;
                Response.ClearContent();
                Response.AddHeader("content-disposition", attachment);
                Response.ContentType = "application/ms-excel";
                StringWriter   sw  = new StringWriter();
                HtmlTextWriter htw = new HtmlTextWriter(sw);


                //Add details for the header

                Response.Output.Write("<table border=\"0\"><tbody><tr><td>");
                Response.Output.Write("Report  : ");
                Response.Output.Write("</td>");
                Response.Output.Write("<td><b>");
                Response.Output.Write("AMC/Schemewise AUM</b>");
                Response.Output.Write("</td></tr><tr><td>");
                Response.Output.Write("As on Date : ");
                Response.Output.Write("</td><td><b>");
                System.DateTime tDate1 = LatestValuationdate;
                Response.Output.Write(tDate1.ToShortDateString());
                Response.Output.Write("</b></td></tr>");
                Response.Output.Write("</tbody></table>");


                PrepareGridViewForExport(gvMFMIS);
                if (gvMFMIS.HeaderRow != null)
                {
                    PrepareControlForExport(gvMFMIS.HeaderRow);
                }
                foreach (GridViewRow row in gvMFMIS.Rows)
                {
                    PrepareControlForExport(row);
                }
                if (gvMFMIS.FooterRow != null)
                {
                    PrepareControlForExport(gvMFMIS.FooterRow);
                }

                gvMFMIS.Parent.Controls.Add(frm);
                frm.Controls.Add(gvMFMIS);
                frm.RenderControl(htw);
                HttpContext.Current.Response.Write(sw.ToString());
                HttpContext.Current.Response.End();
            }
        }
예제 #21
0
    protected void btnExport_Click(object sender, EventArgs e)
    {
        try
        {
            Response.Clear();

            Response.Buffer = true;

            string attachment = null;

            attachment = "attachment; filename=Product.xls";

            Response.ClearContent();

            Response.AddHeader("content-disposition", attachment);

            Response.ContentType = "application/vnd.ms-excel";

            StringWriter sw = null;

            sw = new StringWriter();

            HtmlTextWriter htw = default(HtmlTextWriter);

            htw = new HtmlTextWriter(sw);



            HtmlForm frm = default(HtmlForm);

            frm = new HtmlForm();

            grdData.HeaderStyle.Width = Unit.Pixel(20);  //here use your gridview control id

            grdData.Parent.Controls.Add(frm);            //here use your gridview control id

            frm.Attributes["runat"] = "server";

            frm.Controls.Add(grdData);            //here use your gridview control id

            grdData.AllowPaging = false;          //here use your gridview control id

            grdData.AllowSorting = false;         //here use your gridview control id

            frm.RenderControl(htw);

            Response.Write(sw.ToString());

            Response.End();
        }

        catch { }

        finally { }
    }
예제 #22
0
        private void ExportGridView(string Filetype)
        {
            {
                HtmlForm frm = new HtmlForm();
                System.Web.UI.WebControls.Table tbl = new System.Web.UI.WebControls.Table();
                frm.Controls.Clear();
                frm.Attributes["runat"] = "server";
                if (Filetype.ToLower() == "excel")
                {
                    string temp       = "Equity_Transactions.xls";
                    string attachment = "attachment; filename=" + temp;
                    Response.ClearContent();
                    Response.AddHeader("content-disposition", attachment);
                    Response.ContentType = "application/ms-excel";
                    StringWriter   sw  = new StringWriter();
                    HtmlTextWriter htw = new HtmlTextWriter(sw);


                    Response.Output.Write("<table border=\"0\"><tbody ><caption align=\"left\"><FONT FACE=\"ARIAL\"  SIZE=\"4\">");
                    Response.Output.Write("Equity Transactions for " + convertedFromDate.ToString("MMM-dd-yyyy") + " to " + convertedToDate.ToString("MMM-dd-yyyy") + "</FONT></caption>");
                    Response.Output.Write("<tr><td>");
                    Response.Output.Write("Report Generated on  : ");
                    Response.Output.Write(DateTime.Now.ToString("MMM-dd-yyyy hh:ss tt"));
                    Response.Output.Write("</td></tr>");
                    Response.Output.Write("</tbody></table>");

                    PrepareGridViewForExport(gvMFTransactions);

                    if (gvMFTransactions.HeaderRow != null)
                    {
                        PrepareControlForExport(gvMFTransactions.HeaderRow);
                    }
                    foreach (GridViewRow row in gvMFTransactions.Rows)
                    {
                        PrepareControlForExport(row);
                    }
                    if (gvMFTransactions.FooterRow != null)
                    {
                        PrepareControlForExport(gvMFTransactions.FooterRow);
                    }


                    gvMFTransactions.Parent.Controls.Add(frm);
                    frm.Controls.Add(gvMFTransactions);
                    frm.RenderControl(htw);
                    Response.Write(sw.ToString());
                    Response.End();
                }
            }
        }
    private void ExportGridView()
    {
        string attachment = "attachment; filename=TRF_Seminar_Reg_Club_Wise_Report.xls";

        Response.ClearContent();

        Response.AddHeader("content-disposition", attachment);

        Response.ContentType = "application/ms-excel";

        StringWriter sw = new StringWriter();

        HtmlTextWriter htw = new HtmlTextWriter(sw);

        // Create a form to contain the grid

        HtmlForm frm = new HtmlForm();

        GridView1.Parent.Controls.Add(frm);

        frm.Attributes["runat"] = "server";


        string paymentType = rbtnType.SelectedValue.ToString();

        if (paymentType == "0")
        {
            frm.Controls.Add(GridView1);
        }

        if (paymentType == "1")
        {
            frm.Controls.Add(GridView2);
        }

        if (paymentType == "2")
        {
            frm.Controls.Add(GridView3);
        }


        frm.RenderControl(htw);

        //GridView1.RenderControl(htw);

        Response.Write(sw.ToString());

        Response.End();
    }
예제 #24
0
        private void RenderCalendarData()
        {
            HtmlForm calendarForm = form1;

            calendarForm.Controls.Clear();
            calendarForm.Controls.Add(dvCalendar);
            var formatProvider = new StringBuilder();
            var htmlTextWriter = new HtmlTextWriter(new StringWriter(formatProvider));

            calendarForm.RenderControl(htmlTextWriter);
            string renderedHtml = formatProvider.ToString();

            renderedHtml = renderedHtml.Substring(renderedHtml.IndexOf("<div id=\"dvCalendar\""), renderedHtml.LastIndexOf("</div>") - renderedHtml.IndexOf("<div id=\"dvCalendar\"") - 92);
            Response.Write(renderedHtml);
        }
예제 #25
0
 protected void ExportDupes(object sender, EventArgs e)
 {
     Response.Clear();
     Response.AddHeader("content-disposition", "attachment; filename=Duplicates.xls");
     Response.Charset = "";
     Response.ContentType = "application/vnd.xls";
     StringWriter stringWrite = new StringWriter();
     HtmlTextWriter htmlWrite = new HtmlTextWriter(stringWrite);
     HtmlForm newForm = new HtmlForm();
     this.Controls.Add(newForm);
     newForm.Controls.Add(gvDupes);
     newForm.RenderControl(htmlWrite);
     Response.Write(stringWrite.ToString());
     Response.End();
     this.Dispose();
 }
예제 #26
0
        protected void btnSearch1_Click(object sender, EventArgs e)
        {
            DataTable dt1           = new DataTable();
            GridView  GrdReportData = new GridView();

            GrdReportData.AllowPaging = false;


            string Status = GetCheckBoxValues(ddlStatus);

            dt1 = CM_Main.CM_SelectTotalRecords(DtStartDate.SelectedDate.Value, DtEndDate.SelectedDate.Value, ddlBranch.SelectedItem.Value, ddlSystemType.SelectedItem.Value, Status, "");


            GrdReportData.DataSource = dt1;
            GrdReportData.DataBind();


            HtmlForm form       = new HtmlForm();
            string   attachment = "attachment; filename=TotalIT_Register.xls";

            Response.ClearContent();
            Response.AddHeader("content-disposition", attachment);
            Response.ContentType = "application/ms-excel";

            StringWriter   stw    = new StringWriter();
            HtmlTextWriter htextw = new HtmlTextWriter(stw);

            form.Controls.Add(GrdReportData);
            this.Controls.Add(form);
            form.RenderControl(htextw);

            string headerTable = "Total Records Report";

            Response.Write(headerTable);
            string StartDate1 = "--Start Date:" + DtStartDate.SelectedDate.Value;
            string EndDate1   = "--End Date:" + DtEndDate.SelectedDate.Value;
            string rows       = "--Total Records:" + GrdReportData.Rows.Count.ToString();

            Response.Write(StartDate1);
            Response.Write(EndDate1);
            Response.Write(rows);
            Response.Write(stw.ToString());



            Response.End();
        }
예제 #27
0
    protected void Button2_Click(object sender, EventArgs e)
    {
        HtmlForm form = new HtmlForm();

        Response.Clear();

        Response.Buffer = true;

        //  string filename="GridViewExport_"+DateTime.Now.ToString()+".xls";

        string filename = pcode + "-" + "Agent Id:" + d1 + "RateChartName:" + DateTime.Now.ToString() + ".xls";

        Response.AddHeader("content-disposition",

                           "attachment;filename=" + filename);

        Response.Charset = "";

        Response.ContentType = "application/vnd.ms-excel";

        StringWriter sw = new StringWriter();

        HtmlTextWriter hw = new HtmlTextWriter(sw);

        GridView1.AllowPaging = false;

        GridView1.DataBind();

        form.Controls.Add(GridView1);

        this.Controls.Add(form);

        form.RenderControl(hw);

        //style to format numbers to string

        string style = @"<style> .textmode { mso-number-format:\@; } </style>";

        Response.Write(style);

        Response.Output.Write(sw.ToString());

        Response.Flush();

        Response.End();
    }
예제 #28
0
    protected void btnIncomeExpence_Click(object sender, EventArgs e)
    {
        Response.ClearContent();
        Response.AddHeader("content-disposition", "attachment; filename=IncomeExpense.xls");
        Response.ContentType = "application/ms-excel";
        StringWriter   sw  = new StringWriter();
        HtmlTextWriter htw = new HtmlTextWriter(sw);
        HtmlForm       frm = new HtmlForm();
        GridView       grd = gvIncomeExpense;

        grd.Parent.Controls.Add(frm);
        frm.Attributes["runat"] = "server";
        frm.Controls.Add(grd);
        frm.RenderControl(htw);
        Response.Write(sw.ToString());
        Response.End();
    }
예제 #29
0
    protected void Button2_Click(object sender, EventArgs e)
    {
        HtmlForm form       = new HtmlForm();
        string   attachment = "attachment; filename=Patients.xls";

        Response.ClearContent();
        Response.AddHeader("content-disposition", attachment);
        Response.ContentType = "application/ms-excel";
        StringWriter   stw    = new StringWriter();
        HtmlTextWriter htextw = new HtmlTextWriter(stw);

        form.Controls.Add(gridview1);
        this.Controls.Add(form);
        form.RenderControl(htextw);
        Response.Write(stw.ToString());
        Response.End();
    }
예제 #30
0
    protected void Button1_Click(object sender, EventArgs e)
    {
        string attachment = "attachment; filename=User.xls";

        Response.ClearContent();
        Response.AddHeader("content-disposition", attachment);
        Response.ContentType = "application/ms-excel";
        StringWriter   sw  = new StringWriter();
        HtmlTextWriter htw = new HtmlTextWriter(sw);
        HtmlForm       frm = new HtmlForm();

        GridView1.Parent.Controls.Add(frm);
        frm.Attributes["runat"] = "server";
        frm.Controls.Add(GridView1);
        frm.RenderControl(htw);
        Response.Write(sw.ToString());
        Response.End();
    }
예제 #31
0
        private void RenderCalendarDetail()
        {
            HtmlForm newForm = this.form1;

            newForm.Controls.Clear();
            newForm.Controls.Add(divPodCalendar);

            System.Text.StringBuilder sb       = new System.Text.StringBuilder();
            HtmlTextWriter            htWriter = new HtmlTextWriter(new System.IO.StringWriter(sb));


            newForm.RenderControl(htWriter);

            string strRenderedHTML = sb.ToString();

            strRenderedHTML = strRenderedHTML.Substring(strRenderedHTML.IndexOf("<div id=\"divPodCalendar\""), strRenderedHTML.LastIndexOf("</div") - strRenderedHTML.IndexOf("<div id=\"divPodCalendar\"") + 6);
            Response.Write(strRenderedHTML);
        }
예제 #32
0
        protected void ButtonSpeakerNominationExport_Click(object sender, EventArgs e)
        {
            DateTime regDate  = DateTime.Now;
            string   strDate  = regDate.ToString("ddMMMyyyy");
            string   fileName = "SpeakerNomination_Export" + strDate + ".xls";

            // activate the full data GridView
            gvSpeakerNominationAll.Visible = true;


            // Let's hide all unwanted stuffing
            gvSpeakerNominationAll.AllowPaging  = false;
            gvSpeakerNominationAll.AllowSorting = false;
            // gvShortCourseAll.Columns(0).Visible = False


            // Let's bind data to GridView
            SqlDataSourceSpeakerNominationExport.DataBind();
            gvSpeakerNominationAll.DataBind();

            // Let's output HTML of GridView
            Response.Clear();

            Response.AddHeader("Transfer-Encoding", "identity"); // This line added 06-08-2018 to fix Chrome file download Network Failed error
            Response.ContentType     = "application/vnd.xls";
            Response.ContentEncoding = System.Text.Encoding.Unicode;
            Response.AddHeader("content-disposition", "attachment;filename=" + fileName);
            Response.BinaryWrite(System.Text.Encoding.Unicode.GetPreamble());

            StringWriter   swriter = new StringWriter();
            HtmlTextWriter hwriter = new HtmlTextWriter(swriter);

            HtmlForm frm = new HtmlForm();

            gvSpeakerNominationAll.Parent.Controls.Add(frm);
            frm.Attributes["runat"] = "server";
            frm.Controls.Add(gvSpeakerNominationAll);
            frm.RenderControl(hwriter);

            Response.Write(swriter.ToString());
            Response.End();

            gvSpeakerNominationAll.Visible = false;
        }
    public void grid2()
    {
        HtmlForm form = new HtmlForm();

        Response.Clear();

        Response.Buffer = true;

        string filename1 = pcode + "-" + "Missing Agent From:" + txt_FromDate.Text + " To: " + txt_ToDate.Text + ".xls";

        Response.AddHeader("content-disposition",

                           "attachment;filename=" + filename1);

        Response.Charset = "";

        Response.ContentType = "application/vnd.ms-excel";

        StringWriter sw = new StringWriter();

        HtmlTextWriter hw = new HtmlTextWriter(sw);

        GridView2.AllowPaging = false;

        GridView2.DataBind();

        form.Controls.Add(GridView2);

        this.Controls.Add(form);

        form.RenderControl(hw);

        //style to format numbers to string

        string style = @"<style> .textmode { mso-number-format:\@; } </style>";

        Response.Write(style);

        Response.Output.Write(sw.ToString());

        Response.Flush();

        Response.End();
    }
예제 #34
0
 protected void btnExportWarning_Click(object sender, EventArgs e)
 {
     Response.Clear();
     Response.AddHeader("content-disposition", "attachment; filename=NotFound.xls");
     Response.Charset = "";
     Response.ContentType = "application/vnd.xls";
     DataTable dtNotFound = CareerCruisingWeb.CCLib.Common.DataAccess.GetDataTable("Select oldUserName, newUserName from Port_UsernameReplaceGroup where PortfolioID is null");
     StringWriter stringWrite = new StringWriter();
     HtmlTextWriter htmlWrite = new HtmlTextWriter(stringWrite);
     HtmlForm newForm = new HtmlForm();
     this.Controls.Add(newForm);
     gvWarnings.DataSource = dtNotFound;
     gvWarnings.DataBind();
     newForm.Controls.Add(gvWarnings);
     newForm.RenderControl(htmlWrite);
     Response.Write(stringWrite.ToString());
     Response.End();
     this.Dispose();
 }
예제 #35
0
 protected void Btn_ClickExport(object sender, EventArgs e)
 {
     if (((DataTable)Session["WorkingPIDs"]).Rows.Count > 0)
     {
         DataTable dtTemp = (DataTable)Session["WorkingPIDs"];
         System.Text.StringBuilder sbPIDs = new System.Text.StringBuilder();
         sbPIDs.Append("(0");
         for (int c = 0; c < dtTemp.Rows.Count; c++)
             sbPIDs.Append("," + dtTemp.Rows[c][0]);
         sbPIDs.Append(")");
         System.Text.StringBuilder sbExportSQL = new System.Text.StringBuilder();
         sbExportSQL.Append("SELECT  p.PortfolioID,UserName ,[PassWord] ,FirstName, LastName, GradeNumber, GenderID, Active,SchoolID,");
         sbExportSQL.Append("LastLogin,s.Percentage,EmailAddress,Address1 ,City ,StateProv, CreateDate,TransferSchoolId ,TransferUserName ,Transferdate,");
         sbExportSQL.Append("SchoolUserName ,SchoolPassword FROM dbo.Portfolio p");
         sbExportSQL.Append(" JOIN PCSStatus s on p.PortfolioID=s.PortfolioID where p.PortfolioID in " + sbPIDs.ToString());
         if (hidSort.Value.Length > 0)
         {
             sbExportSQL.Append(" order by " + hidSort.Value);
             if (!(hidSort.Value == "LastName"))
                 sbExportSQL.Append(" , LastName");
         }
         else
             sbExportSQL.Append(" order by Username, LastName, FirstName ");
         DataTable dtExport = DataAccess.GetDataTable(sbExportSQL.ToString());
         gvExport.DataSource = dtExport;
         gvExport.DataBind();
         // Export the data table
         Response.Clear();
         Response.AddHeader("content-disposition", "attachment; filename=Export.xls");
         Response.Charset = "";
         Response.ContentType = "application/vnd.xls";
         StringWriter stringWrite = new StringWriter();
         HtmlTextWriter htmlWrite = new HtmlTextWriter(stringWrite);
         HtmlForm newForm = new HtmlForm();
         this.Controls.Add(newForm);
         newForm.Controls.Add(gvExport);
         newForm.RenderControl(htmlWrite);
         Response.Write(stringWrite.ToString());
         Response.End();
         this.Dispose();
     }
 }
예제 #36
0
 protected void Btn_ClickExport(object sender, EventArgs e)
 {
     if (((DataTable)Session["WorkingPIDs"]).Rows.Count > 0)
     {
         DataTable dtTemp = (DataTable)Session["WorkingPIDs"];
         System.Text.StringBuilder sbPIDs = new System.Text.StringBuilder();
         sbPIDs.Append("(0");
         for (int c = 0; c < dtTemp.Rows.Count; c++)
             sbPIDs.Append("," + dtTemp.Rows[c][0]);
         sbPIDs.Append(")");
         System.Text.StringBuilder sbExportSQL = new System.Text.StringBuilder();
         sbExportSQL.Append("Select [ID],CourseName,CourseCredit, CourseTerm, CourseType, CourseCategory, CourseNumber, SchoolID,");
         sbExportSQL.Append("CourseDesc, Okay9, Okay10, Okay11, Okay12 FROM PortfolioCourse ");
         sbExportSQL.Append(" where [ID] in " + sbPIDs.ToString());
         if (hidSort.Value.Length > 0)
         {
             sbExportSQL.Append(" order by " + hidSort.Value);
             if (!(hidSort.Value == "CourseName"))
                 sbExportSQL.Append(" , CourseName");
         }
         else
             sbExportSQL.Append(" order by CourseName");
         DataTable dtExport = DataAccess.GetDataTable(sbExportSQL.ToString());
         gvExport.DataSource = dtExport;
         gvExport.DataBind();
         // Export the data table
         Response.Clear();
         Response.AddHeader("content-disposition", "attachment; filename=Export.xls");
         Response.Charset = "";
         Response.ContentType = "application/vnd.xls";
         StringWriter stringWrite = new StringWriter();
         HtmlTextWriter htmlWrite = new HtmlTextWriter(stringWrite);
         HtmlForm newForm = new HtmlForm();
         this.Controls.Add(newForm);
         newForm.Controls.Add(gvExport);
         newForm.RenderControl(htmlWrite);
         Response.Write(stringWrite.ToString());
         Response.End();
         this.Dispose();
     }
 }
    protected void Page_Load(object sender, EventArgs e)
    {
        Server.ScriptTimeout = 1000000;

        if (!IsPostBack)
        {
            if (Strings.GetFormString("hidExportType").Length > 0)
            {
                #region export file
                Response.Write("Export the file.");

                string strExportType = Strings.GetFormString("hidExportType");
                string strExportSQL = GetExportSQL(strExportType);
                DataTable dtExport = DataAccess.GetDataTable(strExportSQL);
                gvExport.DataSource = dtExport;
                gvExport.DataBind();
                Response.Clear();
                Response.AddHeader("content-disposition", "attachment; filename=Errors.xls");
                Response.Charset = "";
                Response.ContentType = "application/vnd.xls";
                StringWriter stringWrite = new StringWriter();
                HtmlTextWriter htmlWrite = new HtmlTextWriter(stringWrite);
                HtmlForm newForm = new HtmlForm();
                this.Controls.Add(newForm);
                newForm.Controls.Add(gvExport);
                newForm.RenderControl(htmlWrite);
                Response.Write(stringWrite.ToString());
                Response.End();
                this.Dispose();
                #endregion
            }
            else
            {
                string strGroupID = Strings.GetQueryString("G");
                GroupInfo.GroupID = strGroupID;
                hidGroupID.Value = strGroupID;
                hidImportType.Value = Strings.GetQueryString("T");
            }

        }
        else
        {
            GroupInfo.GroupID = hidGroupID.Value;
            pnlEmailChoice.Visible = true;
            pnlEmailOptions.Visible = false;

            if (hidImportConfirmed.Value == "1")
            {
                strSchoolGroupList = GetSchoolListSQL(hidGroupID.Value);
                System.Text.StringBuilder sbInsertSQL = new System.Text.StringBuilder();
                // do the import
                if (hidImportType.Value == "5")
                {
                    // Insert new Portfolios
                    sbInsertSQL.Append(GetInsertSQL(rdIncludeEmails1.Checked));

                    sbInsertSQL.Append(";Update Port_AutoImportExecutions set ExecutionDate=GetDate() where ExecutionID=" + hidExecutionID.Value);
                    sbInsertSQL.Append(";Insert Port_AutoImportStats (StatText,StatNumber,ExecutionID) VALUES ('Portfolios Added'," + lblStudentsAdded.Text + "," + hidExecutionID.Value + ")");
                }
                else if (hidImportType.Value == "4")
                {

                    // deactivate existing portfolios that have duplicate rows in the imoprt file
                    sbInsertSQL.Append("update Portfolio set Active=0 from Port_AutoImportHoldingTank2 a ");
                    sbInsertSQL.Append("join Portfolio p WITH (NOLOCK) on a.PortfolioID=p.PortfolioID where ErrorMsg='Duplicate Username in File'");

                    if (hidIncEmails.Value == "1" && hidOverwrite.Value == "1")
                    {
                        // Include & Override emails
                        sbInsertSQL.Append(";update Portfolio set EmailAddress= a.Email, Active=1,GradeNumber = a.Grade, Grade='Grade ' + cast(a.Grade as varchar(3)), SchoolID=a.SchoolIDFromCode, SchoolUsername=a.SchoolUserName, SchoolPassword=a.SchoolPassword ");
                        sbInsertSQL.Append("from Port_AutoImportHoldingTankView a join Portfolio p WITH (NOLOCK) on a.PortfolioID=p.PortfolioID join Userinfo u on u.SchoolID=p.SchoolID where a.ErrorMsg is null and u.CPSystemNameID=" + hidGroupID.Value);

                    }
                    else
                    {
                        // Don't include emails in update
                        sbInsertSQL.Append(";update Portfolio set Active=1,GradeNumber = a.Grade, Grade='Grade ' + cast(a.Grade as varchar(3)), SchoolID=a.SchoolIDFromCode, SchoolUsername=a.SchoolUserName, SchoolPassword=a.SchoolPassword ");
                        sbInsertSQL.Append("from Port_AutoImportHoldingTankView a join Portfolio p WITH (NOLOCK) on a.PortfolioID=p.PortfolioID join Userinfo u WITH (NOLOCK) on u.SchoolID=p.SchoolID where a.ErrorMsg is null and u.CPSystemNameID=" + hidGroupID.Value);
                    }

                    // WARNING: This step has the potential to turn off thousands of portfolios!
                    // Deactivate Portfolios that aren't in the import file
                    sbInsertSQL.Append(";update Portfolio set Active=0 where SchoolID in " + strSchoolGroupList + " and PortfolioID not in ");
                    sbInsertSQL.Append(" (select PortfolioID from Port_AutoImportHoldingTank2 where PortfolioID is not null);");

                    // Insert new Portfolios
                    sbInsertSQL.Append(GetInsertSQL(hidIncEmails.Value == "1"));

                    sbInsertSQL.Append(";Update Port_AutoImportExecutions set ExecutionDate=GetDate() where ExecutionID=" + hidExecutionID.Value);
                    sbInsertSQL.Append(";Insert Port_AutoImportStats (StatText,StatNumber,ExecutionID) VALUES ('Portfolios Added'," + lblStudentsAdded.Text + "," + hidExecutionID.Value + ")");
                    sbInsertSQL.Append(";Insert Port_AutoImportStats (StatText,StatNumber,ExecutionID) VALUES ('Portfolios Deactivated'," + lblStudentsDeactivated.Text + "," + hidExecutionID.Value + ")");
                    sbInsertSQL.Append(";Insert Port_AutoImportStats (StatText,StatNumber,ExecutionID) VALUES ('Portfolios Changed Grade'," + lblStudentsChangedGrades.Text + "," + hidExecutionID.Value + ")");
                    sbInsertSQL.Append(";Insert Port_AutoImportStats (StatText,StatNumber,ExecutionID) VALUES ('Portfolios Changed School'," + lblStudentsChangedSchools.Text + "," + hidExecutionID.Value + ")");

                }
                //Response.Write(sbInsertSQL.ToString());
                SqlConnection insertConnection = new SqlConnection(ConfigurationManager.AppSettings["strConLocal"]);
                SqlCommand insertCommand = new SqlCommand(sbInsertSQL.ToString(), insertConnection);
                insertCommand.CommandTimeout = 24000;
                insertConnection.Open();
                insertCommand.ExecuteNonQuery();
                insertConnection.Close();
                insertCommand = null;
                insertConnection = null;
                string strPCSSQL = "Insert PCSChangedSchools (SchoolID, ChangeTime) SELECT SchoolID, GETDATE() FROM userinfo WHERE CPSystemNameID=" + hidGroupID.Value;
                DataAccess.ExecuteDb(strPCSSQL);

                pnlEmailChoice.Visible = false;
                pnlExport.Visible = false;
                pnlEmailOptions.Visible = false;
                pnlValidationStats.Visible = true;
                pnlErrorsIssues.Visible = false;
                trFinished.Visible = true;
            }
            else
            {
                if (fuFile.FileName.Length > 0)
                {
                    //string strFile = fuFile.FileName;
                    //string strPath = "d:\\Transfer\\ImportUploads\\" + strFile;
                    //DataAccess.ExecuteDb("Truncate table Port_AutoImportHoldingTank2");
                    //fuFile.SaveAs(strPath);
                    // Get the password type!!!
                    //string strPwdType = DataAccess.GetValue("SELECT Passwordtype FROM dbo.CP_SystemName WHERE SystemNameID=" + hidGroupID.Value).ToString();

                    //DataTable ImportData = PopulateDataTable(strFile);
                    //if (strPwdType == "1")
                    //{
                        // Random passwords need to be added and columns re-arranged
                    //    ImportData.Columns[7].SetOrdinal(5);
                    //}
                    //string strConnectionString = System.Configuration.ConfigurationSettings.AppSettings["strConLocal"].ToString();
                    //using (SqlBulkCopy MoveXLSData = new SqlBulkCopy(strConnectionString))
                   // {
                     //   MoveXLSData.DestinationTableName = "Port_AutoImportHoldingTank2";
                       // MoveXLSData.WriteToServer(ImportData);
                 //   }
                //
                  //  System.IO.File.Delete(strPath);

                    // Update errors, stats, validate
                    pnlEmailChoice.Visible = false;
                    DataTable dtGroupSchools = CareerCruisingWeb.CCLib.Common.DataAccess.GetDataTable("Select SchoolID from UserInfo where CPSystemNameID=" + hidGroupID.Value);
                    string strPrefix = CareerCruisingWeb.CCLib.Common.DataAccess.GetValue("Select UsernamePrefix from CP_SystemName where SystemNameID=" + hidGroupID.Value).ToString();
                    string strBeginSQL = "Update port_autoimportholdingtank2 set StudentID=Replace(StudentID,'" + strPrefix + "','');Update port_autoimportholdingtank2 set StudentID='" + strPrefix + "' + StudentID;";
                    strBeginSQL += "update Port_AutoImportHoldingTank2 set SchoolIDFromCode = u.SchoolID from Userinfo u join Port_AutoImportHoldingTank2 p on p.AIExternalCode=u.AutoImportExternalCode and u.CPSystemNameID=" + hidGroupID.Value + ";Insert Port_AutoImportExecutions (PackageID, GroupID) Values (" + hidImportType.Value + " , " + hidGroupID.Value + ");select @@identity";
                    int intExecutionID = CareerCruisingWeb.CCLib.Common.DataAccess.ExecuteDbWithIntResult(strBeginSQL);
                    hidExecutionID.Value = intExecutionID.ToString();
                    if (dtGroupSchools.Rows.Count > 0)
                    {
                        strSchoolGroupList = GetSchoolListSQL(hidGroupID.Value);

                        System.Text.StringBuilder sbSQL = new System.Text.StringBuilder();
                        sbSQL.Append("update port_autoimportholdingtank2 set PortfolioID=a.PortfolioID from Portfolio a WITH (NOLOCK) join port_autoimportholdingtank2 b WITH (NOLOCK) on b.StudentID=a.Username  and a.SchoolID in " + strSchoolGroupList);
                        // Disabled error for usernames in file but not in group
                        //sbSQL.Append("update Port_UsernameReplaceGroup set ErrorMsg='Username does not exist in group' where PortfolioID is null");
                        sbSQL.Append(";update port_autoimportholdingtank2 set ErrorMsg='Username cannot be the same as password' where StudentID=PassWord");
                        sbSQL.Append(";update port_autoimportholdingtank2 set ErrorMsg='Username/Password combination exists in the Portfolio table'  from Portfolio a WITH (NOLOCK) join port_autoimportholdingtank2 b WITH (NOLOCK) on a.Username=b.StudentID and a.Password=b.Password and (a.PortfolioID<>b.PortfolioID OR b.PortfolioID IS NULL)");
                        sbSQL.Append(";update port_autoimportholdingtank2 set ErrorMsg='Username/Password combination already exists in Port_Parent_KY table' from Port_Parent_KY a WITH (NOLOCK) join port_autoimportholdingtank2 b WITH (NOLOCK) on a.Username=b.StudentID and a.Password=b.Password");
                        sbSQL.Append(";update port_autoimportholdingtank2 set ErrorMsg='Username/Password combination already exists in Userinfo table' from Userinfo a WITH (NOLOCK) join port_autoimportholdingtank2 b WITH (NOLOCK) on a.Username=b.StudentID and a.Password=b.Password");
                        //sbSQL.Append(";update port_autoimportholdingtank2 set ErrorMsg='New username would create a username conflict within the school' from Portfolio a join port_autoimportholdingtank2 b on a.Username=b.newUserName and a.SchoolID=b.SchoolID and a.PortfolioID<>b.PortfolioID");
                        sbSQL.Append(";update port_autoimportholdingtank2 set ErrorMsg='Username appears twice in input file' where StudentID in (Select StudentID from port_autoimportholdingtank2 WITH (NOLOCK) group by StudentID having count(StudentID) > 1)");
                        sbSQL.Append(";update port_autoimportholdingtank2 set ErrorMsg='Invalid Gender' where Gender not in ('M','F')");
                        sbSQL.Append(";update port_autoimportholdingtank2 set ErrorMsg='Invalid Grade' where Grade not in (SELECT gradenumber FROM dbo.GradeNumberLookup)");
                        sbSQL.Append(";update port_autoimportholdingtank2 set ErrorMsg='Invalid School Codes' where SchoolIDFromCode is null or SchoolIDFromCode not in" + strSchoolGroupList);
                        sbSQL.Append(";update port_autoimportholdingtank2 set ErrorMsg='Duplicate Username in File' where StudentID in (Select StudentID from port_autoimportholdingtank2 WITH (NOLOCK) group by StudentID having count(StudentID) > 1)");
                        DataAccess.ExecuteDb(sbSQL.ToString());
                        sbSQL.Remove(0, sbSQL.Length);
                        // sbSQL = new System.Text.StringBuilder();
                        //System.Text.StringBuilder sbSQL = new System.Text.StringBuilder();

                        if (hidImportType.Value == "4")
                        {

                            //Changed Grade
                            sbSQL.Append("select count(h.RecordID) from Port_AutoImportHoldingtank2 h WITH (NOLOCK) join Portfolio p WITH (NOLOCK) on h.PortfolioID=p.PortfolioID where h.Grade<>p.GradeNumber");
                            //Changed School
                            sbSQL.Append(";select count(h.RecordID) from Port_AutoImportHoldingTank2 h WITH (NOLOCK) join Portfolio p WITH (NOLOCK) on h.PortfolioID=p.PortfolioID where h.SchoolIDFromCode<>p.SchoolID");
                            //Invalid Grade
                            sbSQL.Append(";select count(RecordID) from Port_AutoIMportHoldingTank2 WITH (NOLOCK) where Grade not in (SELECT gradenumber FROM dbo.GradeNumberLookup)");
                            //Invalid Gender
                            sbSQL.Append(";select count(RecordID) from Port_AutoImportHoldingTank2 WITH (NOLOCK) where Gender not in ('M','F')");
                            //Invalid SchoolIDs
                            sbSQL.Append(";select count(RecordID) from Port_AutoImportHoldingTank2 WITH (NOLOCK) where SchoolIDFromCode is null or SchoolIDFromCode not in" + strSchoolGroupList);
                            // Username appears more then once in file
                            sbSQL.Append(";Select count(RecordID) from port_autoimportholdingtank2 WITH (NOLOCK) where ErrorMsg='Duplicate username in File' ");
                            // Username appears more than once in Portfolio table for group
                            sbSQL.Append(";Select count(Username) from Portfolio WITH (NOLOCK) where SchoolID IN " + strSchoolGroupList + " group by Username having count(Username) > 1 ");
                            sbSQL.Append(";Select count(StudentID) from port_autoimportholdingtank2 WITH (NOLOCK) where ErrorMsg is null and SchoolIDFromCode in " + strSchoolGroupList + " and PortfolioID is null");
                            sbSQL.Append(";Select count(p.PortfolioID) from Portfolio p WITH (NOLOCK) join Userinfo u WITH (NOLOCK) on p.SchoolID=u.SchoolID where p.Active=1 and u.CPSystemNameID=" + hidGroupID.Value + " and p.Username not in (Select StudentID from Port_AutoImportHoldingTank2 WITH (NOLOCK) )");
                            sbSQL.Append(";Select count(RecordID) from Port_AutoImportHoldingTank2 WITH (NOLOCK) where ErrorMsg='Username/Password combination exists in the Portfolio table'");
                            DataTable[] dtsStats = DataAccess.GetDataTables(sbSQL.ToString());

                            lblStudentsChangedGrades.Text = (dtsStats[0].Rows.Count > 0) ? dtsStats[0].Rows[0][0].ToString() : "0";
                            lblStudentsChangedSchools.Text = (dtsStats[1].Rows.Count > 0) ? dtsStats[1].Rows[0][0].ToString() : "0";
                            lblStudentsInvalidGrades.Text = (dtsStats[2].Rows.Count > 0) ? dtsStats[2].Rows[0][0].ToString() : "0";
                            lblStudentsInvalidGender.Text = (dtsStats[3].Rows.Count > 0) ? dtsStats[3].Rows[0][0].ToString() : "0";
                            lblStudentsInvalidSchool.Text = (dtsStats[4].Rows.Count > 0) ? dtsStats[4].Rows[0][0].ToString() : "0";
                            lblDuplicateUsernames.Text = (dtsStats[6].Rows.Count > 0) ? dtsStats[6].Rows.Count.ToString() : "0";
                            lblStudentsQuarantined.Text = (dtsStats[5].Rows.Count > 0) ? dtsStats[5].Rows[0][0].ToString() : "0";
                            lblStudentsAdded.Text = dtsStats[7].Rows[0][0].ToString();
                            lblStudentsDeactivated.Text = dtsStats[8].Rows[0][0].ToString();
                            lblUPConflicts.Text = dtsStats[9].Rows[0][0].ToString();
                        }
                        else if (hidImportType.Value == "5")
                        {
                            //Invalid Grade
                            sbSQL.Append("select count(RecordID) from Port_AutoIMportHoldingTank2 where Grade not in (5,6,7,8,9,10,11,12)");
                            //Invalid Gender
                            sbSQL.Append(";select count(RecordID) from Port_AutoImportHoldingTank2 where Gender not in ('M','F')");
                            //Invalid SchoolIDs
                            sbSQL.Append(";select count(RecordID) from Port_AutoImportHoldingTank2 where SchoolIDFromCode is null or SchoolIDFromCode not in" + strSchoolGroupList);
                            // Username appears more then once in file
                            sbSQL.Append(";Select count(RecordID) from port_autoimportholdingtank2  where ErrorMsg='Duplicate username in File'");
                            // Username appears more than once in Portfolio table for group
                            sbSQL.Append(";Select count(Username) from Portfolio WITH (NOLOCK) where SchoolID IN " + strSchoolGroupList + " group by Username having count(Username) > 1 ");
                            sbSQL.Append(";Select count(RecordID) from port_autoimportholdingtank2 WITH (NOLOCK) where SchoolIDFromCode in " + strSchoolGroupList + " and PortfolioID is null and ErrorMsg is null");
                            sbSQL.Append(";Select count(RecordID) from port_autoimportholdingtank2 WITH (NOLOCK) where PortfolioID is not null");
                            sbSQL.Append(";Update Port_AutoImportHoldingTank2 set ErrorMsg='Insert WITH (NOLOCK) Would Create Duplicate' where PortfolioID is not null");
                            DataTable[] dtsStats = DataAccess.GetDataTables(sbSQL.ToString());
                            lblStudentsInvalidGrades.Text = (dtsStats[0].Rows.Count > 0) ? dtsStats[0].Rows[0][0].ToString() : "0";
                            lblStudentsInvalidGender.Text = (dtsStats[1].Rows.Count > 0) ? dtsStats[1].Rows[0][0].ToString() : "0";
                            lblStudentsInvalidSchool.Text = (dtsStats[2].Rows.Count > 0) ? dtsStats[2].Rows[0][0].ToString() : "0";
                            lblDuplicateUsernames.Text = (dtsStats[4].Rows.Count > 0) ? dtsStats[4].Rows.Count.ToString() : "0";
                            lblStudentsQuarantined.Text = (dtsStats[3].Rows.Count > 0) ? dtsStats[3].Rows[0][0].ToString() : "0";
                            lblStudentsAdded.Text = dtsStats[5].Rows[0][0].ToString();
                            if (Convert.ToInt32(dtsStats[6].Rows[0][0]) > 0)
                            {
                                hlImport.Visible = false;
                                lblDisabled.Visible = true;
                            }
                            trInsertOnly.Visible = true;
                            lblCreatedDupes.Text = dtsStats[6].Rows[0][0].ToString();

                        }

                        if (Convert.ToInt32(lblDuplicateUsernames.Text) > 0)
                        {
                            hlImport.Visible = false;
                            lblDisabled.Visible = true;
                        }
                    }

                    pnlValidationStats.Visible = true;

                }
                else
                {
                    string strOverride = "";
                    if (Strings.GetFormString("rdIncludeEmails") == "1")
                        strOverride = Strings.GetFormString("rdOverrideEmails");
                    lblEmailChoices.Text = GetEmailOptionsText(Strings.GetFormString("rdIncludeEmails"), strOverride);
                    hidIncEmails.Value = Strings.GetFormString("rdIncludeEmails");
                    hidOverwrite.Value = strOverride;
                }
            }
        }
    }
예제 #38
0
파일: divindex.aspx.cs 프로젝트: hpie/hpie
    protected void LinkButton1_Click(object sender, EventArgs e)
    {
        string attachment = "attachment; filename=Contacts.xls";

        Response.ClearContent();

        Response.AddHeader("content-disposition", attachment);

        Response.ContentType = "application/ms-excel";

        StringWriter sw = new StringWriter();

        HtmlTextWriter htw = new HtmlTextWriter(sw);

        HtmlForm frm = new HtmlForm();

        GridView1.Parent.Controls.Add(frm);

        frm.Attributes["runat"] = "server";

        frm.Controls.Add(GridView1);

        frm.RenderControl(htw);

        Response.Write(sw.ToString());

        Response.End();
    }
    /*
    public override void VerifyRenderingInServerForm(Control control)
    {
    }
     * */
    private void export2Excel(String sFilename)
    {
        Response.Clear();
        Response.Buffer = true;
        Response.AddHeader("content-disposition", string.Format("attachment;filename={0}.xls", sFilename));
        Response.Charset = "UTF-8";
        Response.ContentType = "application/vnd.ms-excel";
        System.IO.StringWriter stringWrite = new System.IO.StringWriter();
        System.Web.UI.HtmlTextWriter htmlWrite = new HtmlTextWriter(stringWrite);
        //bind lại gv
        GridParent.AllowPaging = false;
        napGridParent();

        HtmlForm frm = new HtmlForm();
        GridParent.Parent.Controls.Add(frm);
        frm.Attributes["runat"] = "server";
        frm.Controls.Add(GridParent);
        frm.RenderControl(htmlWrite);

        Response.Write("<table cellSpacing='0' cellPadding='0' width='100%' align='center' border='1'");
        Response.Write(stringWrite.ToString());
        Response.Write("</table>");
        Response.End();
    }
    protected void btnExport_Click(object sender, EventArgs e)
    {
        //try
        //{
        //    ChangeControlsToValue(GvFlightsReports);
        //    GvFlightsReports.Columns[13].Visible = false;
        //    Response.ClearContent();
        //    Response.AddHeader("content-disposition", "attachment; filename=Tickets.xls");
        //    Response.ContentType = "application/excel";
        //    StringWriter sWriter = new StringWriter();
        //    HtmlTextWriter hTextWriter = new HtmlTextWriter(sWriter);
        //    HtmlForm hForm = new HtmlForm();
        //    GvFlightsReports.Parent.Controls.Add(hForm);
        //    hForm.Attributes["runat"] = "server";
        //    hForm.Controls.Add(GvFlightsReports);
        //    hForm.RenderControl(hTextWriter);
        //    StringBuilder sBuilder = new StringBuilder();
        //    sBuilder.Append("<html xmlns:v=\"urn:schemas-microsoft-com:vml\" xmlns:o=\"urn:schemas-microsoft-com:office:office\" xmlns:x=\"urn:schemas-microsoft-com:office:excel\" xmlns=\"http://www.w3.org/TR/REC-html40\"> <head><meta http-equiv=\"Content-Type\" content=\"text/html;charset=windows-1252\"><!--[if gte mso 9]><xml><x:ExcelWorkbook><x:ExcelWorksheets><x:ExcelWorksheet><x:Name>ExportToExcel</x:Name><x:WorksheetOptions><x:Panes></x:Panes></x:WorksheetOptions></x:ExcelWorksheet></x:ExcelWorksheets></x:ExcelWorkbook></xml><![endif]--></head> <body>");
        //    sBuilder.Append(sWriter + "</body></html>");
        //    Response.Write(sBuilder.ToString());
        //    Response.End();
        //    GvFlightsReports.Columns[13].Visible = true;
        //}
        //catch (Exception ex)
        //{
        //    //lblMsg.InnerHtml = ex.Message;
        //    throw ex;
        //}

        if (ddlserviceName.SelectedValue == "DomesticFlights")
        {

            try
            {
                ChangeControlsToValue(GvFlightsReports);
                GvFlightsReports.Columns[13].Visible = false;
                Response.ClearContent();
                Response.AddHeader("content-disposition", "attachment; filename=Tickets.xls");
                Response.ContentType = "application/excel";
                StringWriter sWriter = new StringWriter();
                HtmlTextWriter hTextWriter = new HtmlTextWriter(sWriter);
                HtmlForm hForm = new HtmlForm();
                GvFlightsReports.Parent.Controls.Add(hForm);
                hForm.Attributes["runat"] = "server";
                hForm.Controls.Add(GvFlightsReports);
                hForm.RenderControl(hTextWriter);
                StringBuilder sBuilder = new StringBuilder();
                sBuilder.Append("<html xmlns:v=\"urn:schemas-microsoft-com:vml\" xmlns:o=\"urn:schemas-microsoft-com:office:office\" xmlns:x=\"urn:schemas-microsoft-com:office:excel\" xmlns=\"http://www.w3.org/TR/REC-html40\"> <head><meta http-equiv=\"Content-Type\" content=\"text/html;charset=windows-1252\"><!--[if gte mso 9]><xml><x:ExcelWorkbook><x:ExcelWorksheets><x:ExcelWorksheet><x:Name>ExportToExcel</x:Name><x:WorksheetOptions><x:Panes></x:Panes></x:WorksheetOptions></x:ExcelWorksheet></x:ExcelWorksheets></x:ExcelWorkbook></xml><![endif]--></head> <body>");
                sBuilder.Append(sWriter + "</body></html>");
                Response.Write(sBuilder.ToString());
                Response.End();
                GvFlightsReports.Columns[13].Visible = true;
            }
            catch (Exception ex)
            {
                //lblMsg.InnerHtml = ex.Message;
                throw ex;
            }
            //ds=objbal.

        }
        else
            if (ddlserviceName.SelectedValue == "InterNationalFlights")
            {
                try
                {
                    ChangeControlsToValue(GvFlightsReports);
                    GvFlightsReports.Columns[13].Visible = false;
                    Response.ClearContent();
                    Response.AddHeader("content-disposition", "attachment; filename=Tickets.xls");
                    Response.ContentType = "application/excel";
                    StringWriter sWriter = new StringWriter();
                    HtmlTextWriter hTextWriter = new HtmlTextWriter(sWriter);
                    HtmlForm hForm = new HtmlForm();
                    GvFlightsReports.Parent.Controls.Add(hForm);
                    hForm.Attributes["runat"] = "server";
                    hForm.Controls.Add(GvFlightsReports);
                    hForm.RenderControl(hTextWriter);
                    StringBuilder sBuilder = new StringBuilder();
                    sBuilder.Append("<html xmlns:v=\"urn:schemas-microsoft-com:vml\" xmlns:o=\"urn:schemas-microsoft-com:office:office\" xmlns:x=\"urn:schemas-microsoft-com:office:excel\" xmlns=\"http://www.w3.org/TR/REC-html40\"> <head><meta http-equiv=\"Content-Type\" content=\"text/html;charset=windows-1252\"><!--[if gte mso 9]><xml><x:ExcelWorkbook><x:ExcelWorksheets><x:ExcelWorksheet><x:Name>ExportToExcel</x:Name><x:WorksheetOptions><x:Panes></x:Panes></x:WorksheetOptions></x:ExcelWorksheet></x:ExcelWorksheets></x:ExcelWorkbook></xml><![endif]--></head> <body>");
                    sBuilder.Append(sWriter + "</body></html>");
                    Response.Write(sBuilder.ToString());
                    Response.End();
                    GvFlightsReports.Columns[13].Visible = true;
                }
                catch (Exception ex)
                {
                    //lblMsg.InnerHtml = ex.Message;
                    throw ex;
                }
            }
            else
                if (ddlserviceName.SelectedValue == "Hotels")
                {

                    try
                    {
                        ChangeControlsToValue(GridView1);
                        GridView1.Columns[13].Visible = false;
                        Response.ClearContent();
                        Response.AddHeader("content-disposition", "attachment; filename=Tickets.xls");
                        Response.ContentType = "application/excel";
                        StringWriter sWriter = new StringWriter();
                        HtmlTextWriter hTextWriter = new HtmlTextWriter(sWriter);
                        HtmlForm hForm = new HtmlForm();
                        GridView1.Parent.Controls.Add(hForm);
                        hForm.Attributes["runat"] = "server";
                        hForm.Controls.Add(GridView1);
                        hForm.RenderControl(hTextWriter);
                        StringBuilder sBuilder = new StringBuilder();
                        sBuilder.Append("<html xmlns:v=\"urn:schemas-microsoft-com:vml\" xmlns:o=\"urn:schemas-microsoft-com:office:office\" xmlns:x=\"urn:schemas-microsoft-com:office:excel\" xmlns=\"http://www.w3.org/TR/REC-html40\"> <head><meta http-equiv=\"Content-Type\" content=\"text/html;charset=windows-1252\"><!--[if gte mso 9]><xml><x:ExcelWorkbook><x:ExcelWorksheets><x:ExcelWorksheet><x:Name>ExportToExcel</x:Name><x:WorksheetOptions><x:Panes></x:Panes></x:WorksheetOptions></x:ExcelWorksheet></x:ExcelWorksheets></x:ExcelWorkbook></xml><![endif]--></head> <body>");
                        sBuilder.Append(sWriter + "</body></html>");
                        Response.Write(sBuilder.ToString());
                        Response.End();
                        GridView1.Columns[13].Visible = true;
                    }
                    catch (Exception ex)
                    {
                        //lblMsg.InnerHtml = ex.Message;
                        throw ex;
                    }

                }

                else
                    if (ddlserviceName.SelectedValue == "Bus")
                    {

                        try
                        {
                            ChangeControlsToValue(gvBookings);
                            gvBookings.Columns[13].Visible = false;
                            Response.ClearContent();
                            Response.AddHeader("content-disposition", "attachment; filename=Tickets.xls");
                            Response.ContentType = "application/excel";
                            StringWriter sWriter = new StringWriter();
                            HtmlTextWriter hTextWriter = new HtmlTextWriter(sWriter);
                            HtmlForm hForm = new HtmlForm();
                            gvBookings.Parent.Controls.Add(hForm);
                            hForm.Attributes["runat"] = "server";
                            hForm.Controls.Add(gvBookings);
                            hForm.RenderControl(hTextWriter);
                            StringBuilder sBuilder = new StringBuilder();
                            sBuilder.Append("<html xmlns:v=\"urn:schemas-microsoft-com:vml\" xmlns:o=\"urn:schemas-microsoft-com:office:office\" xmlns:x=\"urn:schemas-microsoft-com:office:excel\" xmlns=\"http://www.w3.org/TR/REC-html40\"> <head><meta http-equiv=\"Content-Type\" content=\"text/html;charset=windows-1252\"><!--[if gte mso 9]><xml><x:ExcelWorkbook><x:ExcelWorksheets><x:ExcelWorksheet><x:Name>ExportToExcel</x:Name><x:WorksheetOptions><x:Panes></x:Panes></x:WorksheetOptions></x:ExcelWorksheet></x:ExcelWorksheets></x:ExcelWorkbook></xml><![endif]--></head> <body>");
                            sBuilder.Append(sWriter + "</body></html>");
                            Response.Write(sBuilder.ToString());
                            Response.End();
                            gvBookings.Columns[13].Visible = true;
                        }
                        catch (Exception ex)
                        {
                            //lblMsg.InnerHtml = ex.Message;
                            throw ex;
                        }

                    }
                    else
                        if (ddlserviceName.SelectedValue == "Recharge")
                        {

                            try
                            {
                                ChangeControlsToValue(gvMobile);
                                //gvMobile.Columns[13].Visible = false;
                                Response.ClearContent();
                                Response.AddHeader("content-disposition", "attachment; filename=Tickets.xls");
                                Response.ContentType = "application/excel";
                                StringWriter sWriter = new StringWriter();
                                HtmlTextWriter hTextWriter = new HtmlTextWriter(sWriter);
                                HtmlForm hForm = new HtmlForm();
                                gvMobile.Parent.Controls.Add(hForm);
                                hForm.Attributes["runat"] = "server";
                                hForm.Controls.Add(gvMobile);
                                hForm.RenderControl(hTextWriter);
                                StringBuilder sBuilder = new StringBuilder();
                                sBuilder.Append("<html xmlns:v=\"urn:schemas-microsoft-com:vml\" xmlns:o=\"urn:schemas-microsoft-com:office:office\" xmlns:x=\"urn:schemas-microsoft-com:office:excel\" xmlns=\"http://www.w3.org/TR/REC-html40\"> <head><meta http-equiv=\"Content-Type\" content=\"text/html;charset=windows-1252\"><!--[if gte mso 9]><xml><x:ExcelWorkbook><x:ExcelWorksheets><x:ExcelWorksheet><x:Name>ExportToExcel</x:Name><x:WorksheetOptions><x:Panes></x:Panes></x:WorksheetOptions></x:ExcelWorksheet></x:ExcelWorksheets></x:ExcelWorkbook></xml><![endif]--></head> <body>");
                                sBuilder.Append(sWriter + "</body></html>");
                                Response.Write(sBuilder.ToString());
                                Response.End();
                                gvMobile.Columns[13].Visible = true;
                            }
                            catch (Exception ex)
                            {
                                //lblMsg.InnerHtml = ex.Message;
                                throw ex;
                            }

                        }
                        else if (ddlserviceName.SelectedValue == "ALL")
                        {

                            try
                            {
                                ChangeControlsToValue(gdAllservicesreports);
                               // gdAllservicesreports.Columns[13].Visible = false;
                                Response.ClearContent();
                                Response.AddHeader("content-disposition", "attachment; filename=Tickets.xls");
                                Response.ContentType = "application/excel";
                                StringWriter sWriter = new StringWriter();
                                HtmlTextWriter hTextWriter = new HtmlTextWriter(sWriter);
                                HtmlForm hForm = new HtmlForm();
                                gdAllservicesreports.Parent.Controls.Add(hForm);
                                hForm.Attributes["runat"] = "server";
                                hForm.Controls.Add(gdAllservicesreports);
                                hForm.RenderControl(hTextWriter);
                                StringBuilder sBuilder = new StringBuilder();
                                sBuilder.Append("<html xmlns:v=\"urn:schemas-microsoft-com:vml\" xmlns:o=\"urn:schemas-microsoft-com:office:office\" xmlns:x=\"urn:schemas-microsoft-com:office:excel\" xmlns=\"http://www.w3.org/TR/REC-html40\"> <head><meta http-equiv=\"Content-Type\" content=\"text/html;charset=windows-1252\"><!--[if gte mso 9]><xml><x:ExcelWorkbook><x:ExcelWorksheets><x:ExcelWorksheet><x:Name>ExportToExcel</x:Name><x:WorksheetOptions><x:Panes></x:Panes></x:WorksheetOptions></x:ExcelWorksheet></x:ExcelWorksheets></x:ExcelWorkbook></xml><![endif]--></head> <body>");
                                sBuilder.Append(sWriter + "</body></html>");
                                Response.Write(sBuilder.ToString());
                                Response.End();
                                gdAllservicesreports.Columns[13].Visible = true;
                            }
                            catch (Exception ex)
                            {
                                //lblMsg.InnerHtml = ex.Message;
                                throw ex;
                            }

                        }
    }
    protected void BtnDownloadAttendanceAsExcel_Click(object sender, EventArgs e)
    {
        BtnGetAttendance_Click(sender, e);
        LblSectionGroup1.Text = LblSectionGroup.Text;
        LblSectionGroup2.Text = DDLSectionGroup.SelectedItem.ToString();
        LblFromDate.Text = TxtBxFromDate.Text;
        LblToDate.Text = TxtBxToDate.Text;
        LblSubjectName.Text = DDLSubjects.SelectedItem.Text;
        sql = "SELECT FacultyName from Faculty WHERE FacultyID='" + int.Parse(Session["FacultyID"].ToString()) + "'";
        c = new Connect(sql);
        LblFacultyName.Text = c.ds.Tables[0].Rows[0]["FacultyName"].ToString();
        string name = DDLSectionGroup.SelectedItem.ToString().Replace("   ", "") + ".xls";
        HtmlForm form = new HtmlForm();
        string attachment = "attachment; filename=" + name;
        Response.ClearContent();
        Response.Buffer = true;
        Response.AddHeader("content-disposition", attachment);
        Response.ContentType = "application/ms-excel";
        StringWriter stw = new StringWriter();
        HtmlTextWriter htextw = new HtmlTextWriter(stw);
        form.Controls.Add(ListHeader);
        if (GridView1.Visible == true)
            form.Controls.Add(GridView1);
        if (GridView2.Visible == true)
        {
            foreach (GridViewRow row in GridView2.Rows)
            {
                foreach (TableCell cell in row.Cells)
                {
                    if (row.RowIndex % 2 == 0)
                    {
                        cell.BackColor = GridView1.AlternatingRowStyle.BackColor;
                    }
                    else
                    {
                        cell.BackColor = GridView1.RowStyle.BackColor;
                    }
                    cell.CssClass = "textmode";
                    List<Control> controls = new List<Control>();

                    //Add controls to be removed to Generic List
                    foreach (Control control in cell.Controls)
                    {
                        controls.Add(control);
                    }

                    //Loop through the controls to be removed and replace then with Literal
                    foreach (Control control in controls)
                    {

                        switch (control.GetType().Name)
                        {
                            case "Label":
                                cell.Controls.Add(new Literal { Text = (control as Label).Text });
                                break;
                            case "TextBox":
                                cell.Controls.Add(new Literal { Text = (control as TextBox).Text });
                                break;
                            case "LinkButton":
                                cell.Controls.Add(new Literal { Text = (control as LinkButton).Text });
                                break;
                            case "CheckBox":
                                cell.Controls.Add(new Literal { Text = (control as CheckBox).Text });
                                break;
                            case "RadioButton":
                                cell.Controls.Add(new Literal { Text = (control as RadioButton).Text });
                                break;
                        }
                        cell.Controls.Remove(control);
                    }
                }
            }
            form.Controls.Add(GridView2);
        } this.Controls.Add(form);
        form.RenderControl(htextw);
        Response.Write(stw.ToString());
        Response.End();
    }
예제 #42
0
    protected void Page_Load(object sender, EventArgs e)
    {
        Server.ScriptTimeout = 1000000;

        if (!IsPostBack)
        {
            if (Strings.GetFormString("hidExportType").Length > 0)
            {
                #region export file
                Response.Write("Export the file.");

                string strExportType = Strings.GetFormString("hidExportType");
                string strExportSQL = GetExportSQL(strExportType);
                DataTable dtExport = DataAccess.GetDataTable(strExportSQL);
                gvExport.DataSource = dtExport;
                gvExport.DataBind();
                Response.Clear();
                Response.AddHeader("content-disposition", "attachment; filename=Errors.xls");
                Response.Charset = "";
                Response.ContentType = "application/vnd.xls";
                StringWriter stringWrite = new StringWriter();
                HtmlTextWriter htmlWrite = new HtmlTextWriter(stringWrite);
                HtmlForm newForm = new HtmlForm();
                this.Controls.Add(newForm);
                newForm.Controls.Add(gvExport);
                newForm.RenderControl(htmlWrite);
                Response.Write(stringWrite.ToString());
                Response.End();
                this.Dispose();
                #endregion
            }
            else
            {
                string strGroupID = Strings.GetQueryString("G");
                GroupInfo.GroupID = strGroupID;
                hidGroupID.Value = strGroupID;
                hidImportType.Value = Strings.GetQueryString("T");
            }

        }
        else
        {
            GroupInfo.GroupID = hidGroupID.Value;
            pnlEmailChoice.Visible = true;
            pnlEmailOptions.Visible = false;

            if (hidImportConfirmed.Value == "1")
            {
                // !!! Intercept here for scheduled executions
                System.Text.StringBuilder sbScheduleSQL = new System.Text.StringBuilder();
                sbScheduleSQL.Append(@"INSERT dbo.Port_AutoImportScheduled ( ExecutionId , GroupId , SchoolList ,
          IncludeEmails , hidUsernamesValue ,isCcSpark , PackageId ,DateValidated, FileName, OverwriteEmails ) VALUES  ( " + hidExecutionID.Value + @" ,
          " + hidGroupID.Value + @" , '" + GetSchoolListSQL(hidGroupID.Value) + @"' , " + hidIncEmails.Value + @" , " + hidUsernames.Value + @" ,
          " + hidSpark.Value + @" , " + hidImportType.Value + @" , GetDate(), '" + hidFileName.Value + "','" + hidOverwrite.Value + "' )");

                //
                DataAccess.ExecuteDb(sbScheduleSQL.ToString());
                Response.Write("The import has been successfully scheduled to run.<br /><br />");
                Response.Write("<a href='/admin/autoimport/ImportActionMain.aspx'>Schedule Another</a>");
                Response.End();

                strSchoolGroupList = GetSchoolListSQL(hidGroupID.Value);
                System.Text.StringBuilder sbInsertSQL = new System.Text.StringBuilder();
                // do the import
                if (hidImportType.Value == "5")
                {
                    // Insert new Portfolios
                    sbInsertSQL.Append(GetInsertSQL(rdIncludeEmails1.Checked, hidUsernames.Value != "0", hidSpark.Value));

                    sbInsertSQL.Append(";Update Port_AutoImportExecutions set ExecutionDate=GetDate() where ExecutionID=" + hidExecutionID.Value);
                    sbInsertSQL.Append(";Insert Port_AutoImportStats (StatText,StatNumber,ExecutionID) VALUES ('Portfolios Added'," + lblStudentsAdded.Text + "," + hidExecutionID.Value + ")");
                }
                else if (hidImportType.Value == "4")
                {

                    // deactivate existing portfolios that have duplicate rows in the imoprt file
                    sbInsertSQL.Append("update Portfolio set Active=0 from Port_AutoImportHoldingTank2 a ");
                    sbInsertSQL.Append("join Portfolio p WITH (NOLOCK) on a.PortfolioID=p.PortfolioID where ErrorMsg='Duplicate Username in File'");
                    DataAccess.ExecuteDb(sbInsertSQL.ToString());

                    // sbInsertSQL.Clear() was giving an error on Web3rdParty (old version of .net)?
                    sbInsertSQL.Remove(0,sbInsertSQL.Length);

                    string strRowSQL = @"UPDATE dbo.Port_AutoImportHoldingTank2
                                SET NeedsUpdate=1 FROM dbo.Portfolio p JOIN dbo.Port_AutoImportHoldingTank2 d ON p.PortfolioID = d.PortfolioID AND d.ErrorMsg IS NULL
                                JOIN dbo.UserInfo u on p.SchoolID=u.SchoolID and u.IsDemo=0
                                WHERE p.EmailAddress<>d.Email OR p.Active=0 OR p.GradeNumber<>d.Grade OR p.SchoolID<>d.SchoolIDFromCode ";
                    if (hidIncEmails.Value == "1" && hidOverwrite.Value == "1")
                        strRowSQL += " OR p.EmailAddress<>d.Email";
                    if (hidUsernames.Value != "0")
                        strRowSQL += " OR p.StudentId<>d.StudentIDText";
                    DataAccess.ExecuteDb(strRowSQL);
                    DataTable dtNeedsUpdate = DataAccess.GetDataTable("SELECT PortfolioID from Port_AutoImportHoldingTank2 where NeedsUpdate=1");

                    if (hidIncEmails.Value == "1" && hidOverwrite.Value == "1")
                    {
                        if (hidUsernames.Value != "0")
                        {
                            for (int c = 0; c < dtNeedsUpdate.Rows.Count; c++ )
                            {
                                string strUpdateSQL = "update Portfolio set EmailAddress= a.Email, Active=1,GradeNumber = a.Grade, Grade='Grade ' + cast(a.Grade as varchar(3)), SchoolID=a.SchoolIDFromCode, SchoolUsername=a.SchoolUserName, SchoolPassword=a.SchoolPassword, ";
                                strUpdateSQL += "StudentID=a.StudentIDText from Port_AutoImportHoldingTankView a WITH (NOLOCK) join Portfolio p WITH (NOLOCK) on a.PortfolioID=p.PortfolioID where p.PortfolioID=" + dtNeedsUpdate.Rows[c]["PortfolioID"];
                                DataAccess.ExecuteDb(strUpdateSQL);
                            }
                        }
                        else
                        {
                            // Include & Override emails
                            for (int c = 0; c < dtNeedsUpdate.Rows.Count; c++)
                            {
                                string strUpdateSQL = "update Portfolio set EmailAddress= a.Email, Active=1,GradeNumber = a.Grade, Grade='Grade ' + cast(a.Grade as varchar(3)), SchoolID=a.SchoolIDFromCode, SchoolUsername=a.SchoolUserName, SchoolPassword=a.SchoolPassword ";
                                strUpdateSQL += "from Port_AutoImportHoldingTankView a WITH (NOLOCK) join Portfolio p WITH (NOLOCK) on a.PortfolioID=p.PortfolioID where p.PortfolioID=" + dtNeedsUpdate.Rows[c]["PortfolioID"];
                                DataAccess.ExecuteDb(strUpdateSQL);
                            }
                        }
                    }
                    else
                    {
                        if (hidUsernames.Value != "0")
                        {
                            for (int c = 0; c < dtNeedsUpdate.Rows.Count; c++)
                            {
                                string strUpdateSQL = "update Portfolio set Active=1,GradeNumber = a.Grade, Grade='Grade ' + cast(a.Grade as varchar(3)), SchoolID=a.SchoolIDFromCode, SchoolUsername=a.SchoolUserName, SchoolPassword=a.SchoolPassword, ";
                                strUpdateSQL += " StudentID=a.StudentIDTextfrom Port_AutoImportHoldingTankView a WITH (NOLOCK) join Portfolio p WITH (NOLOCK) on a.PortfolioID=p.PortfolioID where p.PortfolioID=" + dtNeedsUpdate.Rows[c]["PortfolioID"];
                                DataAccess.ExecuteDb(strUpdateSQL);
                            }
                        }
                        else
                        {
                            // Don't include emails in update
                            for (int c = 0; c < dtNeedsUpdate.Rows.Count; c++)
                            {
                                string strUpdateSQL = "update Portfolio set Active=1,GradeNumber = a.Grade, Grade='Grade ' + cast(a.Grade as varchar(3)), SchoolID=a.SchoolIDFromCode, SchoolUsername=a.SchoolUserName, SchoolPassword=a.SchoolPassword ";
                                strUpdateSQL += "from Port_AutoImportHoldingTankView a WITH (NOLOCK) join Portfolio p WITH (NOLOCK) on a.PortfolioID=p.PortfolioID where p.PortfolioID=" + dtNeedsUpdate.Rows[c]["PortfolioID"];
                                DataAccess.ExecuteDb(strUpdateSQL);
                            }
                        }
                    }

                    // WARNING: This step has the potential to turn off thousands of portfolios!
                    // Deactivate Portfolios that aren't in the import file
                    sbInsertSQL.Append(";update Portfolio set Active=0 where SchoolID in " + strSchoolGroupList + " and PortfolioID not in ");
                    sbInsertSQL.Append(" (select PortfolioID from Port_AutoImportHoldingTank2 where PortfolioID is not null);");

                    DataAccess.ExecuteDb(sbInsertSQL.ToString());
                    sbInsertSQL.Remove(0,sbInsertSQL.Length);

                    // Insert new Portfolios
                    sbInsertSQL.Append(GetInsertSQL(hidIncEmails.Value == "1", hidUsernames.Value != "0", hidSpark.Value));

                    sbInsertSQL.Append(";Update Port_AutoImportExecutions set ExecutionDate=GetDate() where ExecutionID=" + hidExecutionID.Value);
                    sbInsertSQL.Append(";Insert Port_AutoImportStats (StatText,StatNumber,ExecutionID) VALUES ('Portfolios Added'," + lblStudentsAdded.Text + "," + hidExecutionID.Value + ")");
                    sbInsertSQL.Append(";Insert Port_AutoImportStats (StatText,StatNumber,ExecutionID) VALUES ('Portfolios Deactivated'," + lblStudentsDeactivated.Text + "," + hidExecutionID.Value + ")");
                    sbInsertSQL.Append(";Insert Port_AutoImportStats (StatText,StatNumber,ExecutionID) VALUES ('Portfolios Changed Grade'," + lblStudentsChangedGrades.Text + "," + hidExecutionID.Value + ")");
                    sbInsertSQL.Append(";Insert Port_AutoImportStats (StatText,StatNumber,ExecutionID) VALUES ('Portfolios Changed School'," + lblStudentsChangedSchools.Text + "," + hidExecutionID.Value + ")");

                }
                //Response.Write(sbInsertSQL.ToString());
                SqlConnection insertConnection = new SqlConnection(ConfigurationManager.AppSettings["strConLocal"]);
                SqlCommand insertCommand = new SqlCommand(sbInsertSQL.ToString(), insertConnection);
                insertCommand.CommandTimeout = 24000;
                insertConnection.Open();
                insertCommand.ExecuteNonQuery();
                insertConnection.Close();

                insertCommand = null;
                insertConnection = null;
                pnlEmailChoice.Visible = false;
                pnlExport.Visible = false;
                pnlEmailOptions.Visible = false;
                pnlValidationStats.Visible = true;
                pnlErrorsIssues.Visible = false;
                trFinished.Visible = true;
            }
            else
            {
                if (fuFile.FileName.Length > 0)
                {
                    string strFile = fuFile.FileName;
                    string strPath = "//CC-SRV-01/schoolusername/" + strFile;
                    hidFileName.Value = strFile;
                    DataAccess.ExecuteDb("Truncate table Port_AutoImportHoldingTank2");
                    fuFile.SaveAs(strPath);
                    // Get the password type!!!
                    string strPwdType = DataAccess.GetValue("SELECT Passwordtype FROM dbo.CP_SystemName WHERE SystemNameID=" + hidGroupID.Value).ToString();
                    WebClient client = new WebClient();
                    string strSuccess = client.DownloadString("http://172.16.10.19/admin/AutoImportStudentMain.aspx?G=" + strPwdType + "&E=" + hidIncEmails.Value + "&F=" + strFile + "&U=" + hidUsernames.Value);

                    // Don't delete the file anymore because it needs to be there for importing later on.
                    //System.IO.File.Delete(strPath);
                    if (strSuccess == "1")
                    {
                        // Update errors, stats, validate
                        pnlEmailChoice.Visible = false;
                        DataTable dtGroupSchools = CareerCruisingWeb.CCLib.Common.DataAccess.GetDataTable("Select SchoolID from UserInfo where CPSystemNameID=" + hidGroupID.Value);

                        string strPrefix = CareerCruisingWeb.CCLib.Common.DataAccess.GetValue("Select UsernamePrefix from CP_SystemName where SystemNameID=" + hidGroupID.Value).ToString();
                        string strBeginSQL = "Update port_autoimportholdingtank2 set StudentID=Replace(StudentID,'" + strPrefix + "','');Update port_autoimportholdingtank2 set StudentID='" + strPrefix + "' + StudentID;";
                        strBeginSQL += "update Port_AutoImportHoldingTank2 set SchoolIDFromCode = u.SchoolID from Userinfo u join Port_AutoImportHoldingTank2 p on p.AIExternalCode=u.AutoImportExternalCode and u.CPSystemNameID=" + hidGroupID.Value + ";Insert Port_AutoImportExecutions (PackageID, GroupID) Values (" + hidImportType.Value + " , " + hidGroupID.Value + ");select @@identity";
                        int intExecutionID = CareerCruisingWeb.CCLib.Common.DataAccess.ExecuteDbWithIntResult(strBeginSQL);
                        hidExecutionID.Value = intExecutionID.ToString();
                        if (dtGroupSchools.Rows.Count > 0)
                        {
                            strSchoolGroupList = GetSchoolListSQL(hidGroupID.Value);

                            System.Text.StringBuilder sbSQL = new System.Text.StringBuilder();
                            sbSQL.Append("update port_autoimportholdingtank2 set PortfolioID=a.PortfolioID from Portfolio a WITH (NOLOCK) join port_autoimportholdingtank2 b on b.StudentID=a.Username  and a.SchoolID in " + strSchoolGroupList);
                            // Disabled error for usernames in file but not in group
                            //sbSQL.Append("update Port_UsernameReplaceGroup set ErrorMsg='Username does not exist in group' where PortfolioID is null");
                            sbSQL.Append(";update port_autoimportholdingtank2 set ErrorMsg='Username cannot be the same as password' where StudentID=PassWord");
                            sbSQL.Append(";update port_autoimportholdingtank2 set ErrorMsg='Username/Password combination exists in the Portfolio table'  from Portfolio a WITH (NOLOCK) join port_autoimportholdingtank2 b on a.Username=b.StudentID and a.Password=b.Password and (a.PortfolioID<>b.PortfolioID OR b.PortfolioID is null)");
                            sbSQL.Append(";update port_autoimportholdingtank2 set ErrorMsg='Username/Password combination already exists in Port_Parent_KY table' from Port_Parent_KY a join port_autoimportholdingtank2 b on a.Username=b.StudentID and a.Password=b.Password");
                            sbSQL.Append(";update port_autoimportholdingtank2 set ErrorMsg='Username/Password combination already exists in Userinfo table' from Userinfo a WITH (NOLOCK) join port_autoimportholdingtank2 b on a.Username=b.StudentID and a.Password=b.Password");
                            //sbSQL.Append(";update port_autoimportholdingtank2 set ErrorMsg='New username would create a username conflict within the school' from Portfolio a join port_autoimportholdingtank2 b on a.Username=b.newUserName and a.SchoolID=b.SchoolID and a.PortfolioID<>b.PortfolioID");
                            sbSQL.Append(";update port_autoimportholdingtank2 set ErrorMsg='Username appears twice in input file' where StudentID in (Select StudentID from port_autoimportholdingtank2 group by StudentID having count(StudentID) > 1)");
                            sbSQL.Append(";update port_autoimportholdingtank2 set ErrorMsg='Invalid Gender' where Gender not in ('M','F')");
                            if (hidSpark.Value == "1")
                                sbSQL.Append(";update port_autoimportholdingtank2 set ErrorMsg='Invalid Grade' where Grade not in (0,1,2,3,4,5)");
                            else
                                sbSQL.Append(";update port_autoimportholdingtank2 set ErrorMsg='Invalid Grade' where Grade not in (5,6,7,8,9,10,11,12,70)");
                            sbSQL.Append(";update port_autoimportholdingtank2 set ErrorMsg='Invalid School Codes' where SchoolIDFromCode is null or SchoolIDFromCode not in" + strSchoolGroupList);
                            sbSQL.Append(";update port_autoimportholdingtank2 set ErrorMsg='Duplicate Username in File' where StudentID in (Select StudentID from port_autoimportholdingtank2 group by StudentID having count(StudentID) > 1)");
                            DataAccess.ExecuteDb(sbSQL.ToString());
                            sbSQL.Remove(0, sbSQL.Length);
                            // sbSQL = new System.Text.StringBuilder();
                            //System.Text.StringBuilder sbSQL = new System.Text.StringBuilder();

                            if (hidImportType.Value == "4")
                            {

                                //Changed Grade
                                sbSQL.Append("select count(h.RecordID) from Port_AutoImportHoldingtank2 h WITH (NOLOCK) join Portfolio p WITH (NOLOCK) on h.PortfolioID=p.PortfolioID where h.Grade<>p.GradeNumber");
                                //Changed School
                                sbSQL.Append(";select count(h.RecordID) from Port_AutoImportHoldingTank2 h WITH (NOLOCK) join Portfolio p WITH (NOLOCK) on h.PortfolioID=p.PortfolioID where h.SchoolIDFromCode<>p.SchoolID");
                                //Invalid Grade
                                sbSQL.Append(";select count(RecordID) from Port_AutoIMportHoldingTank2 WITH (NOLOCK) where Grade not in (5,6,7,8,9,10,11,12)");
                                //Invalid Gender
                                sbSQL.Append(";select count(RecordID) from Port_AutoImportHoldingTank2 WITH (NOLOCK) where Gender not in ('M','F')");
                                //Invalid SchoolIDs
                                sbSQL.Append(";select count(RecordID) from Port_AutoImportHoldingTank2 WITH (NOLOCK) where SchoolIDFromCode is null or SchoolIDFromCode not in" + strSchoolGroupList);
                                // Username appears more then once in file
                                sbSQL.Append(";Select count(RecordID) from port_autoimportholdingtank2 WITH (NOLOCK) where ErrorMsg='Duplicate username in File' ");
                                // Username appears more than once in Portfolio table for group
                                sbSQL.Append(";Select count(Username) from Portfolio WITH (NOLOCK) where SchoolID IN " + strSchoolGroupList + " group by Username having count(Username) > 1 ");
                                sbSQL.Append(";Select count(StudentID) from port_autoimportholdingtank2 WITH (NOLOCK) where ErrorMsg is null and SchoolIDFromCode in " + strSchoolGroupList + " and PortfolioID is null");
                                sbSQL.Append(";Select count(p.PortfolioID) from Portfolio p WITH (NOLOCK) join Userinfo u WITH (NOLOCK) on p.SchoolID=u.SchoolID where p.Active=1 and u.CPSystemNameID=" + hidGroupID.Value + " and p.Username not in (Select StudentID from Port_AutoImportHoldingTank2)");
                                DataTable[] dtsStats = DataAccess.GetDataTables(sbSQL.ToString());

                                lblStudentsChangedGrades.Text = (dtsStats[0].Rows.Count > 0) ? dtsStats[0].Rows[0][0].ToString() : "0";
                                lblStudentsChangedSchools.Text = (dtsStats[1].Rows.Count > 0) ? dtsStats[1].Rows[0][0].ToString() : "0";
                                lblStudentsInvalidGrades.Text = (dtsStats[2].Rows.Count > 0) ? dtsStats[2].Rows[0][0].ToString() : "0";
                                lblStudentsInvalidGender.Text = (dtsStats[3].Rows.Count > 0) ? dtsStats[3].Rows[0][0].ToString() : "0";
                                lblStudentsInvalidSchool.Text = (dtsStats[4].Rows.Count > 0) ? dtsStats[4].Rows[0][0].ToString() : "0";
                                lblDuplicateUsernames.Text = (dtsStats[6].Rows.Count > 0) ? dtsStats[6].Rows.Count.ToString() : "0";
                                lblStudentsQuarantined.Text = (dtsStats[5].Rows.Count > 0) ? dtsStats[5].Rows[0][0].ToString() : "0";
                                lblStudentsAdded.Text = dtsStats[7].Rows[0][0].ToString();
                                lblStudentsDeactivated.Text = dtsStats[8].Rows[0][0].ToString();
                            }
                            else if (hidImportType.Value == "5")
                            {
                                //Invalid Grade
                                sbSQL.Append("select count(RecordID) from Port_AutoIMportHoldingTank2 where Grade not in (5,6,7,8,9,10,11,12)");
                                //Invalid Gender
                                sbSQL.Append(";select count(RecordID) from Port_AutoImportHoldingTank2 where Gender not in ('M','F')");
                                //Invalid SchoolIDs
                                sbSQL.Append(";select count(RecordID) from Port_AutoImportHoldingTank2 where SchoolIDFromCode is null or SchoolIDFromCode not in" + strSchoolGroupList);
                                // Username appears more then once in file
                                sbSQL.Append(";Select count(RecordID) from port_autoimportholdingtank2  where ErrorMsg='Duplicate username in File'");
                                // Username appears more than once in Portfolio table for group
                                sbSQL.Append(";Select count(Username) from Portfolio WITH (NOLOCK) where SchoolID IN " + strSchoolGroupList + " group by Username having count(Username) > 1 ");
                                sbSQL.Append(";Select count(RecordID) from port_autoimportholdingtank2 where SchoolIDFromCode in " + strSchoolGroupList + " and PortfolioID is null and ErrorMsg is null");
                                sbSQL.Append(";Select count(RecordID) from port_autoimportholdingtank2 where PortfolioID is not null");
                                sbSQL.Append(";Update Port_AutoImportHoldingTank2 set ErrorMsg='Insert Would Create Duplicate' where PortfolioID is not null");
                                DataTable[] dtsStats = DataAccess.GetDataTables(sbSQL.ToString());
                                lblStudentsInvalidGrades.Text = (dtsStats[0].Rows.Count > 0) ? dtsStats[0].Rows[0][0].ToString() : "0";
                                lblStudentsInvalidGender.Text = (dtsStats[1].Rows.Count > 0) ? dtsStats[1].Rows[0][0].ToString() : "0";
                                lblStudentsInvalidSchool.Text = (dtsStats[2].Rows.Count > 0) ? dtsStats[2].Rows[0][0].ToString() : "0";
                                lblDuplicateUsernames.Text = (dtsStats[4].Rows.Count > 0) ? dtsStats[4].Rows.Count.ToString() : "0";
                                lblStudentsQuarantined.Text = (dtsStats[3].Rows.Count > 0) ? dtsStats[3].Rows[0][0].ToString() : "0";
                                lblStudentsAdded.Text = dtsStats[5].Rows[0][0].ToString();
                                if (Convert.ToInt32(dtsStats[6].Rows[0][0]) > 0)
                                {
                                    hlImport.Visible = false;
                                    lblDisabled.Visible = true;
                                }
                                trInsertOnly.Visible = true;
                                lblCreatedDupes.Text = dtsStats[6].Rows[0][0].ToString();

                            }

                            if (Convert.ToInt32(lblDuplicateUsernames.Text) > 0)
                            {
                                hlImport.Visible = false;
                                lblDisabled.Visible = true;
                            }
                        }

                        pnlValidationStats.Visible = true;
                    }
                }
                else
                {
                    string strOverride = "";
                    if (Strings.GetFormString("rdIncludeEmails") == "1")
                        strOverride = Strings.GetFormString("rdOverrideEmails");
                    lblEmailChoices.Text = GetEmailOptionsText(Strings.GetFormString("rdIncludeEmails"), strOverride);
                    hidIncEmails.Value = Strings.GetFormString("rdIncludeEmails");
                    hidOverwrite.Value = strOverride;
                    hidUsernames.Value = CareerCruisingWeb.CCLib.Common.Strings.GetFormString("cbUsernameStudent");
                    hidSpark.Value = (cbSpark.Checked) ? "1" : "0";
                    lblUseAsIds.Text = GetStudentIDsText(CareerCruisingWeb.CCLib.Common.Strings.GetFormString("cbUsernameStudent"));
                    lblSpark.Text = (hidSpark.Value == "1") ? "Yes" : "No";
                }
            }
        }
    }
    private void export2Excel(String sFilename)
    {
        Response.Clear();
        Response.Buffer = true;
        Response.AddHeader("content-disposition", string.Format("attachment;filename={0}.xls", sFilename));
        Response.Charset = "UTF-8";
        Response.ContentType = "application/vnd.ms-excel";

        System.IO.StringWriter stringWrite = new System.IO.StringWriter();
        System.Web.UI.HtmlTextWriter htmlWrite = new HtmlTextWriter(stringWrite);
        INVI.INVILibrary.INVIHelper.PrepareGridViewForExport(grvTinh);
        HtmlForm frm = new HtmlForm();

        grvTinh.Parent.Controls.Add(frm);
        frm.Attributes["runat"] = "server";
        frm.Controls.Add(grvTinh);
        frm.RenderControl(htmlWrite);

        Response.Write("<table cellSpacing='0' cellPadding='0' width='100%' align='center' border='1'");
        Response.Write(stringWrite.ToString());
        Response.Write("</table>");
        Response.End();
    }