!!Problemas con IF y sus valores !!
Hola amigos del clubdelphi espero que estén muy bien
Bueno lo que pasa es que tengo un problema el cual va mas o menos así Trata de hacer una búsqueda secuencial y por tabla La búsqueda secuencial ya esta y trabajo muy bien la cual funciona así en el evento onchange de un edit le pongo el siguiente código
ok todo eso esta muy bien pero que pasa si quiero buscar en diferentes tablas :confused: bueno con mi poca experiencia manejando delphi trato de hacer lo que busco en el evento onchange de un edit pongo este codigo
tengo 3 CheckBox y supuesta mente a mi entender el evento onchange deve de ejecutar la parte de codigo que cumpla con lo requerido que en este caso es si al CheckBox esta en true lo mas curioso es que ya lo implemente pero solo me da resultado con la primer tabla (mitabla) pero cuando le pongo en otro CheckBox no hace nada alguien me podria ayudar de ante mano muchas gracias :) |
Hola Darkseratul.
Creo que el problema está que en todos los casos estas asignando a la propiedad Filter del mismo 'ADOTable1' las cadenas: mitabla, mitabla2, mitabla3 y en ningún momento veo que cambies la propiedad TableName. Es decir que si en el TADOTable tenes asignado como TableName 'mitabla' no va a funcionar filtrar por 'mitabla2'. Un saludo. |
Hola,
Además de lo que te ha comentado ecfisa que también creo que pueda ser el error, debes intentar estructurar el código para tenerlo más claro. Por ejemplo:
|
Cita:
cuando se hace el filtro, se hace por un campo verdad? quiza los campos se llaman mitabla1, mitabla2, mitabla3, en ese caso deberia funcionarle, quiza no esta referscando el resultado |
Hola
El problema es que si contiene algo el edit, pero no se activa ningun check dara error ya que el comienzo y fin siempre termina con la activacion del filtro. Me parece que la idea es buena, solo que por que no completar el codigo, ser mas especificos: Saludos |
Hola
Por supuesto, es de logica pensar que el adotable tiene que estar ligado a la tabla que se quiere filtrar. Es de suponer que mitabla1, 2, 3 en realidad son campos de cada tabla, de lo contrario estamos perdiendo el tiempo y es caro.:D Saludos |
Hola
La logica del proceso es esta: Saludos EDITO: Por supuesto teniendo en cuenta abrir y cerrar la tabla correspondiente.:p EDITO2: Me faltaron comillas jejeje |
Cita:
Un saludo. |
Muchas gracias
Discúlpenme pero si me confundí diablos siempre que trato de explicar mi problema se me van las patas
Ciertamente como ya lo comentaron quise desir micampo1, micampo2, micampo3 Es solo una tabla con tres campos diferentes gracias a todos por su ayuda y paciencia :D siempre meto la pata Coral tu ejemplo es mas o menos lo que quise hacer pero en el se asumen varias tablas pero en mi caso solo es una con 3 campos
Muchas gracias a todos :):) |
q bueno
pero es caral no coral....:D:D:D |
ahora te hago una pregunta...
que pasa si marcan 2 o mas Checks ????? |
Bueno eso no pasa
Cita:
algo asi
no se si es la forma correcta pero así me funciono y si es caral :D:D cuando me fije ya la avía posteado :D:D |
Ya probé el código pero me sale error
:confused:
He adecuado el código que me facilitaron a mi proyecto
con el campo Nombre si me hace la búsqueda pero con el campo Numero me sale un error de que el Filtro no se puede abrir Alguien sabe a que se debe ?????:confused::confused::confused: ayuda por favor y muchas gracias |
Hola
Saludos |
Muchas gracias caral
Cita:
Muchas gracias Caral solo que hay un problema al hacer la búsqueda en el campo numero me da resultados nulos o que no hay nada tengo como 10 registros que tengo con números como 42541 pero al poner el 4 en la búsqueda no me da ningún resultado :confused::confused::confused: |
Hola
Es access ? Saludos |
si claro
Cita:
a un soy muy novato pero tu me enseñaste como conectarse a una base de datos acces con tu ejemplo de restaurante :o y bueno si es acces por que usted la utiliza en la mayoría de los ejemplos y es la única forma que se para conectarme a una base de datos y bueno te doy las gracias por que sin tu ayuda muchos de nosotros no supiéramos nada esta es la primera ves que me ayudas en un problema personal y te lo agradezco mucho te admiro mucho y muchas gracias :D |
Hola
Ya puedes subir adjuntos. Quitale el exe al programa, ponlo en un zip con la base de datos y le doy una revisada, si te parece. Saludos |
Muchas gracias
Cita:
ya esta mi programa en el login selecciona un usuario y la contraseña es 1 espero que me puedas ayudar y muchas pero muchas gracias |
Hola
Dame un momento y lo reviso. Saludos |
Hola
Que pena pero no encuentro el error. Se salta el Like y hace como si fuera un =. He probado con todo lo que se me ocurre y nada, he quitado, puesto, cambiado, usado Quotedtr, todo...... No se, me extraña mucho. He revisado la BD y todo esta bien, no lo entiendo. Lo siento. Saludos PD: Seria muy bueno que cuando empezáis no usarais todos esos componentes para la apariencia, es engorroso tener que ir quitan dolos para correr el programa. Solo como sugerencia. |
oooo que mala suerte
Cita:
se que ya has hecho mucho, y sin querer abusar de tu confianza no hay otra forma que se te ocurra ??? para lograr el objetivo objetivo: hacer una búsqueda en una tabla con varios campos poder elegir el campo para la búsqueda no se te ocurre algo que pueda hacer ???:o |
que raro no puedo bajar el archivo
|
Cita:
pero ya lo subí a un servidor http://www.megaupload.com/?d=UIV9DR7O muchas gracias por tu interés ;) |
Hola
Mira este codigo: Es lo mismo que quieres hacer tu. Lo he usado siempre y nunca me ha dado ningun problema. Como Te imagiraras CodCliente es Numerico y me filtra sin problemas. CBFiltro es un combobox que me elige las opciones. Trata de ver que se te ocurre, estoy seguro que tarde o temprano sale esto. Saludos |
Muchas gracias caral
Cita:
Muchas gracias maestro :D |
Hola
Estoy convencido que algo tiene que ver la conexion con la tabla en el adotable, no veo otra razon. Mas tarde si tengo tiempo voy a usar tu BD y hacer algo similar a ver donde esta el problema. Esto no tiene sentido, tiene que haber una explicacion logica. Saludos PD: oscarac tiene muy buenas ideas, esperemos a ver que dice. |
exactamente cual es el problema?
|
Hola
Que no sabemos amigo, que no sabemos :D:D:D Saludos |
Muchas gracias
Cita:
|
Ese es el mayor de mis problemas
Cita:
gracias a ustedes cada ves entiendo mejor :) |
jajajaja no pues caral
segun veo yo el meollo del asunto esta en el edit y los filtros mas facil seria (y sigo diciendo creo yo) utilizar otro tipo de artificio es mis epocas de programar en Fox 2.5 diseñe una rutina muy buena de busqueda, la cual he implementado en delphi tambien la idea es la siguiente una Tabla una grilla un edit lo que escribo en el edit, debe buscarlo en la tabla siempre he sido enemigo de los sistemas que preguntan el criterio de busqueda (quiere buscar opr codigo? quiere buscar por descripcion? quiere buscar por numero de cedula?, quiere buscar por tipo de sangre?, etc) entonces se me ocurrio lo siguiente
la logica es bastante sencilla (aunque falta mejorar), y añado, que es nua rutina solo de busqueda, no es para filtrar, soy enemigo de los filtros porque en tablas con pocos datos son rapidos, pero en tablas con miles de registros ya no lo son tanto |
Hola
Lo que pasa es que cuando quieres ir filtrando poco a poco (por ejemplo los empezados con A), no conozco otra forma que no sea por filtros. Saludos |
solo es un detalle pero no se
Cita:
la tabla tienes tres campos yo tenia la idea de especificar en que campo si hiciera la búsqueda con unos checkbox con este código
como podrás darte cuenta todo depende de los checkbox el error es cuando se usa el checkbox2, me dice caral que se salta el like y por eso no a parece nada en la busqueda espero explicarme bien y bueno caral ya medio otro ejemplo lo estoy tratando alguna idea ????? tu rutina esta muy bien pero no entiendo nada del codigo que has puesto ????? :confused: disculpa me ignorante persona :confused: |
no es complicado
mas bien me corrijo uso un query una grilla un edit si te das cuenta, las instrucciones se repiten
y dice..... si lo que escribo edtSearch.Text esta en el campo KOD, entonces ubicame en el registro localizado para que se ejecute tras cada letra digitada, coloco esa instruccion en el evento Onchange del edit te doy otro consejito.... que lei el otro dia en este mismo foro sal a la calle relajate unos 20 min. tomate un cafe... si tienes mujer.. metete un polvito, pon tu cabeza en otra cosa y regresa |
Claro lo tomo con calma
Cita:
muchas gracias por su tiempo amigos a Caral que es el maestro oscarac me llevas por un sendero que para mi es oscuro (query) se que se configuran con secuencias SQL lamentablemente no se SQL y mi tirada es primero hacer algo sencillo para ir escalando tendre que a prender SQL mucho antes de lo que esperaba :o pero bueno muchas gracias amigos |
bueno es la curva del aprendizaje
a mi tambien me costo algo de tiempo.. la ventaja es que yo ya venia programando en otros lenguajes y tenia las nociones y las ideas, pero con calma, otra cosa que te puedo decir viendo el ejemplo que pusiste trata de utilizar al menos en la etapa de aprendizaje, los componentes que vienen con delphi, veo que estas usando Jedi, OJO no estoy diciendo que sea malo, solo que si queremos caminar primero debemos gatear espero se entienda siempre trata de optimizar tu codigo, si tienes varios if trata de usar case, lee y sobre todo practica |
Hola
Pregunto: El campo Numero tiene que ser numerico ?, no puede ser texto ?. Saludos |
Muchas gracias
Cita:
me podrias explicar eso de los case o darme un ejemplo corto :D |
Pues numerico
Cita:
puse tu ejemplo en practica
cuando lo pongo en nombre me da este error argumentos incorrectos, fuera del intervalo permitido o en conflicto con otros y cuando le pongo en numero me dice no se puede abrir filtro de seguro estoy haciendo algo mal pero que sera ??? |
La franja horaria es GMT +2. Ahora son las 03:48:42. |
Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi