protected void GrdDatos_RowDeleting(object sender, GridViewDeleteEventArgs e)
 {
     Idioma = (DataTable)ViewState["TablaIdioma"];
     PerfilesGrid();
     Cnx.SelecBD();
     using (SqlConnection sqlCon = new SqlConnection(Cnx.GetConex()))
     {
         sqlCon.Open();
         using (SqlTransaction Transac = sqlCon.BeginTransaction())
         {
             string VBQuery = "EXEC SP_TablasIngenieria 15,'',@ID,@US,'','','','','Encabezado','DELETE',0,0,0,0,0,0,'01-01-1','02-01-1','03-01-1'";
             using (SqlCommand SC = new SqlCommand(VBQuery, sqlCon, Transac))
             {
                 SC.Parameters.AddWithValue("@US", Session["C77U"].ToString());
                 SC.Parameters.AddWithValue("@ID", GrdDatos.DataKeys[e.RowIndex].Value.ToString());
                 try
                 {
                     var Mensj = SC.ExecuteScalar();
                     if (!Mensj.ToString().Trim().Equals(""))
                     {
                         DataRow[] Result = Idioma.Select("Objeto= '" + Mensj.ToString().Trim() + "'");
                         foreach (DataRow row in Result)
                         {
                             Mensj = row["Texto"].ToString().Trim();
                         }
                         ScriptManager.RegisterClientScriptBlock(this.Page, this.Page.GetType(), "alert", "alert('" + Mensj + "');", true);
                         Transac.Rollback();
                         return;
                     }
                     Transac.Commit();
                     BindDataEnc(TxtBusqueda.Text);
                     GrdContdr.DataSource = null;
                     GrdContdr.DataBind();
                 }
                 catch (Exception ex)
                 {
                     Transac.Rollback();
                     DataRow[] Result = Idioma.Select("Objeto= 'MensErrEli'");
                     foreach (DataRow row in Result)
                     {
                         ScriptManager.RegisterClientScriptBlock(this.Page, this.Page.GetType(), "alert", "alert('" + row["Texto"].ToString() + "');", true);
                     }                                                                                                                                       //Error en el ingreso')", true);
                     Cnx.UpdateErrorV2(Session["C77U"].ToString(), ViewState["PFileName"].ToString().Trim(), "DELETE", ex.StackTrace.Substring(ex.StackTrace.Length - 300, 300), ex.Message, Session["77Version"].ToString(), Session["77Act"].ToString());
                 }
             }
         }
     }
 }
        //****************************** Contadores Asignados
        protected void BindDataContdr(string VbPatronM)
        {
            Idioma = (DataTable)ViewState["TablaIdioma"];
            DataTable dtbl     = new DataTable();
            string    VbTxtSql = "EXEC SP_TablasIngenieria 15,@C,'','','','','','','Detalle','SELECT',0,0,0,0,0,0,'01-01-1','02-01-1','03-01-1'";

            Cnx.SelecBD();
            using (SqlConnection SCnx = new SqlConnection(Cnx.GetConex()))
            {
                SCnx.Open();
                using (SqlCommand SC = new SqlCommand(VbTxtSql, SCnx))
                {
                    SC.Parameters.AddWithValue("@C", VbPatronM);
                    SqlDataAdapter SDA = new SqlDataAdapter();
                    SDA.SelectCommand = SC;
                    SDA.Fill(dtbl);
                }
            }
            if (dtbl.Rows.Count > 0)
            {
                GrdContdr.DataSource = dtbl;
                GrdContdr.DataBind();
            }
            else
            {
                dtbl.Rows.Add(dtbl.NewRow());
                GrdContdr.DataSource = dtbl;
                GrdContdr.DataBind();
                GrdContdr.Rows[0].Cells.Clear();
                GrdContdr.Rows[0].Cells.Add(new TableCell());
                GrdContdr.Rows[0].Cells[0].ColumnSpan = dtbl.Columns.Count;
                DataRow[] Result = Idioma.Select("Objeto= 'SinRegistros'");
                foreach (DataRow row in Result)
                {
                    GrdContdr.Rows[0].Cells[0].Text = row["Texto"].ToString();
                }
                GrdContdr.Rows[0].Cells[0].HorizontalAlign = HorizontalAlign.Center;
            }
        }
 protected void GrdDatos_RowCommand(object sender, GridViewCommandEventArgs e)
 {
     Idioma = (DataTable)ViewState["TablaIdioma"];
     PerfilesGrid();
     if (e.CommandName.Equals("AddNew"))
     {
         string VbDesc, VBQuery;
         string VbCod = (GrdDatos.FooterRow.FindControl("TxtCodPatronPP") as TextBox).Text.Trim().ToUpper();
         if (VbCod == String.Empty)
         {
             DataRow[] Result = Idioma.Select("Objeto= 'MstrMens09'");
             foreach (DataRow row in Result)
             {
                 ScriptManager.RegisterClientScriptBlock(this.Page, this.Page.GetType(), "alert", "alert('" + row["Texto"].ToString() + "');", true);
             }                                                                                                                                       //Debe ingresar el código.
             return;
         }
         VbDesc = (GrdDatos.FooterRow.FindControl("TxtDescPP") as TextBox).Text.Trim();
         if (VbDesc == String.Empty)
         {
             DataRow[] Result = Idioma.Select("Objeto= 'MstrMens06'");
             foreach (DataRow row in Result)
             {
                 ScriptManager.RegisterClientScriptBlock(this.Page, this.Page.GetType(), "alert", "alert('" + row["Texto"].ToString() + "');", true);
             }                                                                                                                                       //Debe ingresar una descripción')", true);
             return;
         }
         Cnx.SelecBD();
         using (SqlConnection sqlCon = new SqlConnection(Cnx.GetConex()))
         {
             sqlCon.Open();
             using (SqlTransaction Transac = sqlCon.BeginTransaction())
             {
                 VBQuery = "EXEC SP_TablasIngenieria 15,@Desc,@Cd,@US,'','','','','Encabezado','INSERT',0,0,0,0,0,0,'01-01-1','02-01-1','03-01-1'";
                 using (SqlCommand SC = new SqlCommand(VBQuery, sqlCon, Transac))
                 {
                     SC.Parameters.AddWithValue("@Desc", VbDesc);
                     SC.Parameters.AddWithValue("@Cd", VbCod);
                     SC.Parameters.AddWithValue("@US", Session["C77U"].ToString());
                     try
                     {
                         var Mensj = SC.ExecuteScalar();
                         if (!Mensj.ToString().Trim().Equals(""))
                         {
                             DataRow[] Result = Idioma.Select("Objeto= '" + Mensj.ToString().Trim() + "'");
                             foreach (DataRow row in Result)
                             {
                                 Mensj = row["Texto"].ToString().Trim();
                             }
                             ScriptManager.RegisterClientScriptBlock(this.Page, this.Page.GetType(), "alert", "alert('" + Mensj + "');", true);
                             Transac.Rollback();
                             GrdContdr.DataSource = null;
                             GrdContdr.DataBind();
                             return;
                         }
                         Transac.Commit();
                         BindDataEnc(TxtBusqueda.Text);
                         GrdContdr.DataSource = null;
                         GrdContdr.DataBind();
                     }
                     catch (Exception ex)
                     {
                         Transac.Rollback();
                         DataRow[] Result = Idioma.Select("Objeto= 'MensErrIng'");
                         foreach (DataRow row in Result)
                         {
                             ScriptManager.RegisterClientScriptBlock(this.Page, this.Page.GetType(), "alert", "alert('" + row["Texto"].ToString() + "');", true);
                         }                                                                                                                                       //Error en el ingreso')", true);
                         Cnx.UpdateErrorV2(Session["C77U"].ToString(), ViewState["PFileName"].ToString().Trim(), "INSERT", ex.StackTrace.Substring(ex.StackTrace.Length - 300, 300), ex.Message, Session["77Version"].ToString(), Session["77Act"].ToString());
                     }
                 }
             }
         }
     }
 }