![]() |
![]() |
| Paypal | FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
|||||||
| Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Buscar | Temas de Hoy | Marcar Foros Como Leídos |
|
|
Herramientas | Buscar en Tema | Desplegado |
|
#7
|
|||
|
|||
|
Hola,
Cita:
Pero, si es por una mala construcción en el SQL, ¿por que sólo me falla cuando no resultan registros de la busqueda?, esto es, cuando, por ejemplo aparece un espacio de algo que no tiene que tenerlo, o estoy buscando en un campo de text algo que comience por 'Mn' y no encuentra nada en la tabla que comience así. En cualquier caso, este es el código que tengo para la busqueda: //para, dependiendo del campo por el que vamos a querer que nos ordene la tabla //así añadir el código IF EditBuscar.Text = '' THEN BEGIN //Si no hay datos en el campo de texto para buscar //Salimos del procedure Exit; ShowMessage ('No ha insertado parámetros de busqueda'); END ELSE BEGIN //si hay parámetros de búsqueda Try FrmDModule.TbAlumnos.DisableControls; FrmDModule.TbAlumnos.Close; FrmDModule.TbAlumnos.SelectSQL.Clear; //le asignamos el SQL que tenía al inicio la tabla FrmDModule.TbAlumnos.SelectSQL.Add(FrmDModule.VAlumnosSQL); // Dependiendo del campo en el que vayamos a buscar así hacemos la busqueda con un where = o un where like IF (RCampo = 'NUMALU') THEN BEGIN //Los datos introducidos en el campo //tienen que ser numéricos //insertamos los parámetros de búsqueda en la sentencia selectSQL FrmDModule.TbAlumnos.SelectSQL.Add('WHERE ' + RCampo + ' = ' + EditBuscar.Text ); //ordenamos por ... FrmDModule.TbAlumnos.SelectSQL.Add( 'ORDER BY ' + RCampo); //abrimos la tabla END ELSE BEGIN //buscamos en campos con texto //insertamos los parámetros de búsqueda en la sentencia selectSQL FrmDModule.TbAlumnos.SelectSQL.Add('WHERE ' + RCampo + ' LIKE ''' + EditBuscar.Text + '%'' ' ); //ordenamos por ... FrmDModule.TbAlumnos.SelectSQL.Add( 'ORDER BY ' + RCampo); //abrimos la tabla END; //una vez que se ha creado la consulta es cuando abrimos la tabla FrmDModule.TbAlumnos.Open; Finally //volvemos a habilitar los controles de la tabla FrmDModule.TbAlumnos.EnableControls; End; END; Por cierto, ¿hay algún sitio donde me pueda documentar mejor sobre la manipulación de los errores?, vamos, para tener claro lo que implica el código que me has recomendado, y así poder manejarlo según mis necesidades. Muchas gracias por la ayuda, Virginia
__________________
Sonrie al mundo, y el mundo te sonreirá :) |
| Herramientas | Buscar en Tema |
| Desplegado | |
|
|
|