Tuesday, January 15, 2013

Empty all textboxes


  public static void EmptyTextBoxes(Control parent) 
    { 
        foreach (Control c in parent.Controls) 
        { 
        if (c.GetType() == typeof(TextBox)) 
        { 
        ((TextBox)(c)).Text = string.Empty; 
        }
        else if (c.GetType() == typeof(DropDownList)) 
        { 
            ((DropDownList)(c)).SelectedIndex = 0; 
        } 
           if (c.HasControls()) 
           { 
             EmptyTextBoxes(c); 
           } 
        } 
    }

Convert Data Table to JSON string


        public string getTableJson(DataTable dt, string MethodName)
        {
            if (dt != null && dt.Rows.Count > 0)
            {
                Dictionary<string, string>[] MyJson = new Dictionary<string, string>[dt.Rows.Count];
                for (int i = 0; i < dt.Rows.Count; i++)
                {
                    MyJson[i] = new Dictionary<string, string>();

                    for (int j = 0; j < dt.Columns.Count; j++)
                    {
                        MyJson[i].Add(dt.Columns[j].ColumnName, dt.Rows[i][j].ToString());
                    }
                }
                JavaScriptSerializer js = new JavaScriptSerializer();
                return "{\"status\":{\"status\":\"1\",\"message\":\"success\"},\"" + MethodName + "\":" + js.Serialize(MyJson) + "}";
            }
            else
            {
                return "{\"status\":{\"status\":\"0\",\"message\":\"Not Success\"},\"" + MethodName + "\":[{\"Msg\":\"No Data Found\"}]}";
            }
        }

Export to Excel From Grid View in Asp.net


 protected void lnkbutExport_Click(object sender, ImageClickEventArgs e)
        {
            try
            {
                Response.Clear();
                Response.AddHeader("content-disposition", "attachment;filename=MyExcelFile.xls");
                Response.Charset = "";
                //Response.ContentType = "application/content.xls";
                StringWriter StringWriter = new System.IO.StringWriter();
                HtmlTextWriter HtmlTextWriter = new HtmlTextWriter(StringWriter);
                gvForecast.RenderControl(HtmlTextWriter);
                Response.Write(StringWriter.ToString());
                Response.End();
            }
            catch(Exception ex)
            {
            }
        }

        public override void VerifyRenderingInServerForm(Control control)
        {

        }

Import data From Excel File to Data Table


        protected void BtnUpload_Click(object sender, EventArgs e)
        {
string[] strarr = { "commodity", "forecast type", "unit of measurement", "volume","profile type", "profilecomp", "profileloc", "year", "month", "date", "hour","time zone" };
            string extension = System.IO.Path.GetExtension(FileUpload1.FileName).ToUpper();
            if (FileUpload1.HasFile)
            {
                if (extension == ".XLS" || extension == ".XLSX")
                {
                    try
                    {
                        string[] names = FileUpload1.FileName.Split('.');
                        string src = Server.MapPath("~/Upload/") + DateTime.Now.ToString("yyyyMMddhhmmss") + "." + names[names.Length - 1];
                        FileUpload1.SaveAs(src);
                        string excelConnectionString = @"Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" + src + ";Extended Properties=Excel 12.0;Persist Security Info=False";
                        //Old string excelConnectionString = @"Provider= Microsoft.Jet.OLEDB.4.0;Data Source=" + src + "; Extended Properties='Excel 8.0;HDR=Yes;'";

                        OleDbConnection con = new OleDbConnection(excelConnectionString);
                        OleDbDataAdapter da = new OleDbDataAdapter("select * from [Sheet1$]", con);
                        DataSet ds = new DataSet();
                        da.Fill(ds);

                        if (ds != null && ds.Tables.Count > 0)
                        {
                            DataTable dt = ds.Tables[0];
                            bool bl = true;
                            for (int i = 0; i < dt.Columns.Count; i++)
                            {
                                if (strarr[i] != dt.Columns[i].ColumnName.ToLower())
                                {
                                    bl = false; break;
                                }
                            }
                            if (bl)
                            {
                                dt=getTextForGrid(dt);
                                ViewState["dt"] = dt;
                                bindGrid();
                            }
                            else
                            {
                                Common.alert("File Is Not a Well Formate collumn MisMatch...!", this);
                            }
                        }
                        else
                        {
                            Common.alert("please select only excel file", this);
                        }

                    }
                    catch (Exception ex)
                    {
                        Common.alert(ex.Message, this);
                    }
                }

                else {
                    Common.alert("Only select excel file",this);
                }
            }
            else
            {
                Common.alert("select excel file",this);
            }
         
        }

Bulk Import in SQL From DataTable



  protected void BtnSave_Click(object sender, EventArgs e)
        {
            try
            {
                DataTable dt = DynamicColumns();
                SqlConnection con = new SqlConnection(ConfigurationSettings.AppSettings["ETRMDBString"]);
                SqlBulkCopy bc = new SqlBulkCopy(con.ConnectionString, SqlBulkCopyOptions.TableLock);
                bc.DestinationTableName = "ETRMForecastDetails";
                bc.BatchSize = dt.Rows.Count;
                con.Open();
                bc.WriteToServer(dt);
                bc.Close();
                con.Close();
                Common.alert("Data Save Sucessfully!", this);
                grdForcastImport.DataSource = null;
                grdForcastImport.DataBind();
                ViewState["dt"] = null;
                trSave.Visible = false;
                trupload.Visible = true;
                clearFolder(Server.MapPath("~/Upload/"));
            }
            catch (Exception ex)
            {
                Common.alert(ex.Message , this);
            }
}  
    DataTable DynamicColumns()
        {
            DataTable dt = new DataTable();
            DataColumn dc; DataRow row;
            dc = new DataColumn("FrcId"); dt.Columns.Add(dc);
            dc = new DataColumn("ForeType"); dt.Columns.Add(dc);
            dc = new DataColumn("RefUOMId"); dt.Columns.Add(dc);
            dc = new DataColumn("Volume"); dt.Columns.Add(dc);
            dc = new DataColumn("PType"); dt.Columns.Add(dc);
            dc = new DataColumn("ProfileCompID"); dt.Columns.Add(dc);
            dc = new DataColumn("ProfileLocID"); dt.Columns.Add(dc);
            dc = new DataColumn("Year"); dt.Columns.Add(dc);
            dc = new DataColumn("Month"); dt.Columns.Add(dc);
            dc = new DataColumn("Date"); dt.Columns.Add(dc);
            dc = new DataColumn("Hours"); dt.Columns.Add(dc);
            dc = new DataColumn("Createdby"); dt.Columns.Add(dc);
            dc = new DataColumn("Createddate"); dt.Columns.Add(dc);
            dc = new DataColumn("UpdatedBy"); dt.Columns.Add(dc);
            dc = new DataColumn("UpdatedDate"); dt.Columns.Add(dc);
            dc = new DataColumn("TimeZoneid"); dt.Columns.Add(dc);
            DataTable vdt = (DataTable)ViewState["dt"];

            foreach (DataRow dr in vdt.Rows)
            {
                row = dt.NewRow();
                row["FrcId"] = 0;
                row["RefUOMId"] = dr[2].ToString();
                row["ForeType"] = dr[1].ToString();
                row["Volume"] = dr[3].ToString();
                row["PType"] = dr[4].ToString();
                row["ProfileCompID"] = dr[5].ToString() == "" ? Convert.DBNull : dr[5].ToString();
                row["ProfileLocID"] = dr[6].ToString() == "" ? Convert.DBNull : dr[6].ToString();
                row["Year"] = dr[7].ToString();
                row["Month"] = dr[8].ToString();
                row["Date"] = dr[9].ToString();
                row["Hours"] = dr[10].ToString();
                row["Createdby"] = "1";
                row["Createddate"] = DateTime.Now.ToString("dd-MMM-yyyy HH:mm");
                row["UpdatedBy"] = "1";
                row["UpdatedDate"] = DateTime.Now.ToString("dd-MMM-yyyy HH:mm");
                row["TimeZoneid"] = dr[11];
                dt.Rows.Add(row);
            }

            return dt;
        }