protected void TxBuscarEmpleado_TextChanged(object sender, EventArgs e)
        {
            cargarSolicitudesCanceladasSubgerente();
            String    vBusqueda = TxBuscarEmpleado.Text;
            DataTable vDatos    = (DataTable)Session["STESOLICITUDESCANCELADASSUBGERENTE"];

            if (vBusqueda.Equals(""))
            {
                GVBusquedaCanceladasSubgerente.DataSource = vDatos;
                GVBusquedaCanceladasSubgerente.DataBind();
                UpBusquedaCanceladasSubgerente.Update();
            }
            else
            {
                EnumerableRowCollection <DataRow> filtered = vDatos.AsEnumerable()
                                                             .Where(r => r.Field <String>("nombre").Contains(vBusqueda.ToUpper()));

                Boolean isNumeric = int.TryParse(vBusqueda, out int n);

                if (isNumeric)
                {
                    if (filtered.Count() == 0)
                    {
                        filtered = vDatos.AsEnumerable().Where(r =>
                                                               Convert.ToInt32(r["idSolicitud"]) == Convert.ToInt32(vBusqueda));
                    }
                }

                DataTable vDatosFiltrados = new DataTable();
                vDatosFiltrados.Columns.Add("idSolicitud");
                vDatosFiltrados.Columns.Add("nombre");
                vDatosFiltrados.Columns.Add("descripcion");
                vDatosFiltrados.Columns.Add("fechaInicio");
                vDatosFiltrados.Columns.Add("fechaFin");
                vDatosFiltrados.Columns.Add("nombreTrabajo");
                vDatosFiltrados.Columns.Add("fechaSolicitud");
                vDatosFiltrados.Columns.Add("horaAproboSubgerente");
                vDatosFiltrados.Columns.Add("motivoCanceloSubgerente");

                foreach (DataRow item in filtered)
                {
                    vDatosFiltrados.Rows.Add(
                        item["idSolicitud"].ToString(),
                        item["nombre"].ToString(),
                        item["descripcion"].ToString(),
                        item["fechaInicio"].ToString(),
                        item["fechaFin"].ToString(),
                        item["nombreTrabajo"].ToString(),
                        item["fechaSolicitud"].ToString(),
                        item["horaAproboSubgerente"].ToString(),
                        item["motivoCanceloSubgerente"].ToString()
                        );
                }
                GVBusquedaCanceladasSubgerente.DataSource = vDatosFiltrados;
                GVBusquedaCanceladasSubgerente.DataBind();
                Session["STESOLICITUDESCANCELADASSUBGERENTE"] = vDatosFiltrados;
                UpBusquedaCanceladasSubgerente.Update();
            }
        }
 protected void GVBusquedaCanceladasSubgerente_PageIndexChanging(object sender, GridViewPageEventArgs e)
 {
     try
     {
         GVBusquedaCanceladasSubgerente.PageIndex  = e.NewPageIndex;
         GVBusquedaCanceladasSubgerente.DataSource = (DataTable)Session["STESOLICITUDESCANCELADASSUBGERENTE"];
         GVBusquedaCanceladasSubgerente.DataBind();
         UpBusquedaCanceladasSubgerente.Update();
     }
     catch (Exception Ex) { Mensaje(Ex.Message, WarningType.Danger); }
 }
        void cargarSolicitudesCanceladasSubgerente()
        {
            try
            {
                DataTable vDatos = new DataTable();
                String    vQuery = "RSP_TiempoExtraordinarioGenerales 36";
                vDatos = vConexion.obtenerDataTable(vQuery);

                GVBusquedaCanceladasSubgerente.DataSource = vDatos;
                GVBusquedaCanceladasSubgerente.DataBind();
                UpBusquedaCanceladasSubgerente.Update();
                Session["STESOLICITUDESCANCELADASSUBGERENTE"] = vDatos;
            }
            catch (Exception Ex) { Mensaje(Ex.Message, WarningType.Danger); }
        }