Exemple #1
0
        private void Buscar()
        {
            String campos = "";
            String query  = "select id,* from " + tipoObjetoABuscar.Name + " where ";

            if ((Boolean)chb_mostrarDeshabilitados.Checked)
            {
                campos += "estaDeshabilitado, ";
            }
            foreach (DataColumn columna in Estructura.Columns)
            {
                campos += columna.ColumnName + ", ";
            }

            campos = campos.Substring(0, campos.Length - 2);
            query  = query.Replace("*", campos);
            if (true) //buscar por todos los campos
            {
                foreach (DataColumn columna in Estructura.Columns)
                {
                    if (columna.ColumnName.StartsWith("_st_"))
                    {
                        query += columna + " like '%" + txt_busqueda.Text.Trim() + "%' or";
                    }
                    if (columna.ColumnName.StartsWith("_in_") || columna.ColumnName.StartsWith("_lo_"))
                    {
                        query += columna + " = " + txt_busqueda.Text.Trim() + " or";
                    }
                    if (columna.ColumnName.StartsWith("_dt_"))
                    {
                        query += columna + " = '" + txt_busqueda.Text.Trim() + "' or";
                    }
                }
                query = query.Substring(0, query.Length - 2);
            }
            //else
            //{
            //    query += cmb_atributos.SelectedItem.ToString() + " like '%" + txt_busqueda.Text.Trim() + "%'";
            //}

            if ((Boolean)chb_mostrarDeshabilitados.Checked)
            {
                query += " and (estaDeshabilitado = 0 or EstaDeshabilitado is null or estaDeshabilitado = '1')";
            }
            else
            {
                query += " and (estaDeshabilitado = 0 or EstaDeshabilitado is null)";
            }

            DataTable resultado = Manejador.EjecutarConsulta(query);

            foreach (DataColumn columnaPro in resultado.Columns)
            {
                columnaPro.ReadOnly = true;
            }
            dgr_InformacionObjetos.DataSource = resultado.DefaultView;
        }