none
Error de sintaxis: falta el operando después del operador RRS feed

  • Pregunta

  • Buenas tardes, tengo configurado un filtro de informacion para un grid view, funciona perfectamente.. este es mi codigo

     

     

       private void textBox10_TextChanged(object sender, EventArgs e)
            {
                DataTable origen;
                dg_consecutivos.DataSource = objconsecutivos.Carga_consecutivos().Tables[0];
                if (dg_consecutivos.DataSource.GetType().Name != "DataTable")
                    origen = ((DataView)dg_consecutivos.DataSource).ToTable();
                else
                    origen = (DataTable)dg_consecutivos.DataSource;
    
                string filtro = "Descripcion like '" + textBox10.Text + "*'";
                DataView dv = new DataView(origen, filtro, "Descripcion", DataViewRowState.CurrentRows);
                dg_consecutivos.DataSource = dv;
            }

     


    Mi grid view tiene tres columnas que se llaman Tipo Consecutivo, Descripcion y Prefijo, en el codigo anterior estoy filtrando la busqueda por medio de la descripcion, el erro me da cuando quiero filtrar la informacion por medio del Tipo de Consecutivo de la siguiente manera:

     

         private void textBox10_TextChanged(object sender, EventArgs e)
            {
                DataTable origen;
                dg_consecutivos.DataSource = objconsecutivos.Carga_consecutivos().Tables[0];
                if (dg_consecutivos.DataSource.GetType().Name != "DataTable")
                    origen = ((DataView)dg_consecutivos.DataSource).ToTable();
                else
                    origen = (DataTable)dg_consecutivos.DataSource;
    
                string filtro = "Tipo Consecutivo like '" + textBox10.Text + "*'";
                DataView dv = new DataView(origen, filtro, "Tipo Consecutivo", DataViewRowState.CurrentRows);
                dg_consecutivos.DataSource = dv;
            }

     

     

    El error que me da es el siguiente: Error de sintaxis: falta el operando después del operador 'Consecutivo'... ocupo ayuda de como solucionarlo gracias


    David Vega
    viernes, 7 de octubre de 2011 20:36

Respuestas

  • hola

    porque defines la columan con un espacio ?

    string filtro = "[Tipo Consecutivo] like '" + textBox10.Text + "*'";

    encierralo entre []

    consejo usa nombres de campos sin caracteres especiales y sin espacio, asi evitas problemas

    saludos


    Leandro Tuttini

    Blog
    Buenos Aires
    Argentina
    • Marcado como respuesta don2690 viernes, 7 de octubre de 2011 21:22
    viernes, 7 de octubre de 2011 20:51
  • recuerda que el nobmre de la columan es el de el datatable o sea el que definies en la query, no es el nombre que podrias visualizar en el header del datagridview

    podrias tambien poner un breakpoint en el codigo, justo despues que cargas el datatable, puede psar el mouse por sobre la variable he inspecionarla

    DataSet Visualizer

    como veras podras ver en debug que nombre de campos se cargan y son los que peudes usar, valide que este alli el que usas en el filtro

    saludos


    Leandro Tuttini

    Blog
    Buenos Aires
    Argentina
    • Marcado como respuesta don2690 viernes, 7 de octubre de 2011 21:22
    viernes, 7 de octubre de 2011 21:12

Todas las respuestas

  • si la columna Consecutivo no es string  no puedes usar el operador LIKE porque te marcara ese error.

    Salu2,


    Marvin E. Pineda

      ComboBoxMultiColumns

      NetBarControl

      TextEditor



    viernes, 7 de octubre de 2011 20:42
    Moderador
  • hola

    porque defines la columan con un espacio ?

    string filtro = "[Tipo Consecutivo] like '" + textBox10.Text + "*'";

    encierralo entre []

    consejo usa nombres de campos sin caracteres especiales y sin espacio, asi evitas problemas

    saludos


    Leandro Tuttini

    Blog
    Buenos Aires
    Argentina
    • Marcado como respuesta don2690 viernes, 7 de octubre de 2011 21:22
    viernes, 7 de octubre de 2011 20:51
  • Buenas de nuevo, ya se me arreglo el error. pero me salio uno nuevo.. sea cual sea el nombre que yo le asigne a la primera columna me dice que no encuentra la columna con ese nombre, en el mismo codigo que estoy ejecutando
    David Vega
    • Propuesto como respuesta George Diaz C lunes, 26 de enero de 2015 22:41
    • Votado como útil George Diaz C lunes, 26 de enero de 2015 22:41
    viernes, 7 de octubre de 2011 20:59
  • recuerda que el nobmre de la columan es el de el datatable o sea el que definies en la query, no es el nombre que podrias visualizar en el header del datagridview

    podrias tambien poner un breakpoint en el codigo, justo despues que cargas el datatable, puede psar el mouse por sobre la variable he inspecionarla

    DataSet Visualizer

    como veras podras ver en debug que nombre de campos se cargan y son los que peudes usar, valide que este alli el que usas en el filtro

    saludos


    Leandro Tuttini

    Blog
    Buenos Aires
    Argentina
    • Marcado como respuesta don2690 viernes, 7 de octubre de 2011 21:22
    viernes, 7 de octubre de 2011 21:12
  • Muchas gracias, ya lo revise y me sirvio. Saludos
    David Vega
    viernes, 7 de octubre de 2011 21:22
  • Buenas de nuevo, ya se me arreglo el error. pero me salio uno nuevo.. sea cual sea el nombre que yo le asigne a la primera columna me dice que no encuentra la columna con ese nombre, en el mismo codigo que estoy ejecutando
    David Vega

     buen día, me podrías decir como arreglaste el error

    Falta el operando después del operador ''

    gracias

    lunes, 26 de enero de 2015 22:43
  • Hola George,

    ¿Podrías adjuntar la instrucción donde te genera el error? El caso del que inicio este hilo fue porque definió un nombre conteniendo caracteres de espacio en blanco, para tal caso el nombre debería encerrarse entre corchetes [Mi Columna], aunque lo mas recomendable es que no se defina nombres con espacios en blanco o caracteres especiales.

    lunes, 26 de enero de 2015 23:22