![]() |
![]() |
| 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 |
|
#21
|
||||
|
||||
|
Hola
Que pena por que me hubiera gustado echarle un vistazo al programa para ayudar mejor. Pregunto: Por que si el filtro te esta dando tantos problemas por que no haces la consulta con un AdoQuery via sql, ademas sera mucho mas eficiente y rapida. Saludos
__________________
Siempre Novato |
|
#22
|
|||
|
|||
|
Mira ahora mismo voy de salida ya del trabajo,e ste es un proyecto de la universidad que tengo que terminar en este mes :S:s y para todos los diferentes ventanas utilizo a fuerza buscar por el ID de usuario, ticket, departamento etc etc, entonces si no me queda de otra tendre que ver como hacerle pero con el ADOquery como dices, lo que pasa es que el Grid esta relacionado pero con el ADOTable entonces, si lo cambio a un ADOquery tendre, supongo no se mucho de Delphi, que si cambio a ADOquery, tendria que cambiar muchas cosas por que todo lo demas esta relacionado al ADOTable utilizo componentes DBEdits y cosas que estan relacionadas directamente al ADOtable, por eso es mi complicacion cambiarme por que tendria que cambiar algunas partes de codigo, ya ya voy a terminar, de todos modos muchas gracias enserio, y probare en casa a hacer una consulta, o sino esperare a ver si alguien tiene una idea, sino entonces empezare a hacer pruebas, gracias Caral
|
|
#23
|
||||
|
||||
|
Hola
Puedes usar un adoquery, presentar los datos en el dbgrid, enlazar el adotable etc., etc., etc, sin tener que hacer grandes cambios, es sencillo. La consulta sql seria muy sencilla. Saludos PD: Si insistes en el filtro le entramos y lo resolvemos, todo tiene solucion.
__________________
Siempre Novato |
|
#24
|
||||
|
||||
|
Hola
Vamos a resolver esto paso a paso: 1- Tienes que filtrar o un dato (interger) o un dato (string) en el mismo adotable. 2- Tratamos de usar OR pero se niega. ![]() Entonces lo podemos atacar por otro lado, definiendo el filtro dependiendo de si es uno u otro: Primero creamos una variable global, esta la colocamos publica: Esta variable nos servira para que guarde simplemente un numero. Ahora nos colocaremos en el evento onKeyPress del edit (edtBuscar) que es el que da el dato al filtro. En ese evento colocamos esto: Esto lo que hace es simplemente indicar si escribimos numeros o letras, de ser numeros el valor de Tipo sera 1 de lo contrario 0. Bien ahora si hacemos el filtro: Bien, creo que es un codigo mas claro. Primero definimos si queremos filtrar por numeros o letras. Segundo con el valor generado en la variable hacemos o un filtro u otro. Espero que si no te sirve por lo menos ayas aprendido algo mas, aunque sea sencillo. Saludos
__________________
Siempre Novato |
|
#25
|
|||
|
|||
|
Cara que tal, muchisimas gracias pro la ayuda enserio, y entiendo lo que dices muy bien, muy buena idea eso de usar expresiones regulares para detectar si es numerico o string, pero el detalle es que lo que queria era que con el OR me trajera los datos parecidos ya sean del campo, TicketID(Numerico) o Usuario(String), era como una busqueda dinamica, enserio te lo agradesco el esfuerzo, solo que de plano en este caso no aplicaria, pro que como te digo la idea es hacer la busqueda en ambos si yo busco 1, me traiga de TicketID los resultadosqu etengan en si el numero 1, y tambien todos los registros del campo Usuario, que contengan el 1, la opcion que me das te la agradesco y esta bien, solo que me trae ya sea de un campo o del otro, pero no de ambos
hoy tratare de hacer como quedamos con el ADOquery, muchas gracias se agradece la ayuda enserio |
|
#26
|
||||
|
||||
|
Perdon por no poner el codigo marcado como codigo, son mis primeros mensajes
.En serio mejor haz consulta con parametros. En el componente ADO en el commandtext (SQL):
Y en el codigo (usa ADODATASET en vez de ADOTABLE):
Quitas el autofilter, ese usalo poco es mejor hacer consultas SQL. Usando el TADODataset, pones la sentencia SQL dento de commandtext y solo debes cerrar cambiar parametros y volver a abrir, te recomiendo pongas indices en las columnas que usas para las consultas (where) y el ordenamiento (order by). Asi tu codigo de se redujo y encapsulas codigo donde debe ir. Saludos
__________________
OEsqueda |
|
#27
|
||||
|
||||
|
No quiero equivocarme pero el like no deberia usarse en un campo numerico asi
Corrijanme por favor
__________________
OEsqueda |
|
#28
|
|||
|
|||
|
Gracias Oesqueda, por la ayuda, y no lo he probado pero en el trabajo ya estoy fuera de tiempo para entregar el proyecto, me dijeron que asi lo dejara (con busquedas por string unicamente) pero personalmente no me siento bien, ya que en un futuro se que volvera a presentarse esto, de todos modos me dijeron que si fuera a hacer algo seria con ADOTable por Filtro, les agradesco a todos la ayuda, pero por el momento asi me quedare ya, y en mi tiempo libre buscare la solucion pro el momento no quiero detenerme aqui por que aun me faltan otros detalles mas, y no me quiero complicar de mas, saludos a todos y muchas gracias por la ayuda.
|
![]() |
| Herramientas | Buscar en Tema |
| Desplegado | |
|
|
Temas Similares
|
||||
| Tema | Autor | Foro | Respuestas | Último mensaje |
| Como calcular el resto de dividir un string numerico | veronica | Varios | 3 | 26-09-2005 13:35:18 |
| Ayuda por favor... Urge..!! | manuel Suarez | MS SQL Server | 2 | 22-07-2005 23:15:27 |
| Relacion campo numérico vs campo string | JorgeBec | Varios | 1 | 11-04-2005 18:26:51 |
| Me Urge Un Programador | ADRIAN_2004 | API de Windows | 1 | 27-10-2004 19:38:51 |
| urge. apagar windows XP | mrmanuel | API de Windows | 3 | 06-09-2003 05:09:24 |
|