Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > OOP
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Grupo de Teaming del ClubDelphi

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 14-05-2003
Avatar de superhopi
superhopi superhopi is offline
Miembro
 
Registrado: may 2003
Ubicación: Valencia
Posts: 128
Poder: 21
superhopi Va por buen camino
otro problema...

Ayer comentaba que tenia un problema con un dbgrid, ya que uno de los campos era memo. Finalmente solucione el problema y se visualiza el texto en el dbgrid (gracias a yudoboy y cadetill).
Pero! ahora tengo que hacer búsquedas, y el problema es que me dijo yudoboy que con querys no se puede hacer...
¿y ahora como hago yo busquedas y que los resultados (uno de ellos es un memo) se me visualicen en un grid? Si no se puede, ¿con que otro componente puedo hacer que se visualicen los datos de la consulta?
Gracias.
__________________
Si me ves durmiendo no me despiertes, podría estar soñando que soy libre.
Responder Con Cita
  #2  
Antiguo 14-05-2003
__cadetill __cadetill is offline
Miembro
 
Registrado: may 2003
Posts: 3.387
Poder: 25
__cadetill Va por buen camino
Para hacer busquedas en una Query, tienes la clausula where de la misma

select * from tabla where condiciones

Y luego puedes volver a utilizar lo que te comento yudoboy

Si no te sirve el tema del where, siempre puedes utilizar el Locate (pero dependiendo del SGBD que utilices y de lo grande que sea la tabla, te puede ir muuuuuy lento).
Responder Con Cita
  #3  
Antiguo 14-05-2003
judoboy judoboy is offline
Miembro
 
Registrado: may 2003
Ubicación: Valencia
Posts: 139
Poder: 21
judoboy Va por buen camino
Pues eso que aki el menda"y"udoboy, para poder mostrar memos en una búsqueda, yo creo que deberías usar locate, si quieres los memos, por que así los datos los coge de un TTable, pero bueno tiene el inconveniente que te ha dicho cadetill.
Responder Con Cita
  #4  
Antiguo 14-05-2003
Avatar de superhopi
superhopi superhopi is offline
Miembro
 
Registrado: may 2003
Ubicación: Valencia
Posts: 128
Poder: 21
superhopi Va por buen camino
vale, ahora enseguida lo pruebo
gracias a los dos

PD: yudoboy... creo que te conozco y tu a mi tb ^_^, el mundo es un pañuelo, ¿eh?
__________________
Si me ves durmiendo no me despiertes, podría estar soñando que soy libre.
Responder Con Cita
  #5  
Antiguo 14-05-2003
judoboy judoboy is offline
Miembro
 
Registrado: may 2003
Ubicación: Valencia
Posts: 139
Poder: 21
judoboy Va por buen camino
Pues es posible, porque eres de Valencia, y si eres del poli y encima estas haciendo las prácticas de LIS...
Responder Con Cita
  #6  
Antiguo 14-05-2003
__cadetill __cadetill is offline
Miembro
 
Registrado: may 2003
Posts: 3.387
Poder: 25
__cadetill Va por buen camino
Cita:
Posteado originalmente por judoboy
Pues eso que aki el menda"y"udoboy,
Lo siento "y"udoboy, jejeje, me equivoque al escribir (mirando el mensaje del amigo superhopi). Un pequeño fallo tecnico, lo siento
Responder Con Cita
  #7  
Antiguo 14-05-2003
Avatar de superhopi
superhopi superhopi is offline
Miembro
 
Registrado: may 2003
Ubicación: Valencia
Posts: 128
Poder: 21
superhopi Va por buen camino
Exclamation

Vamos a ver (agarraros porque viene fuerte)
Respecto al query de antes:

La consulta que tengo que hacer, la hago en tiempo de ejecución, ya que quiero utilizar un unico query para muchas consultas.

Yo por ejemplo pongo:
select *
from tabla
where x

.... y el resultado se lo adjudico a mi queridisimo dbgrid.

Claro, ahora tengo el problema que el memo me sale como tal, y no me sale el texto.
Yo voy al query, intento "add fields..." y no me deja porque la consulta "is empty" (logicamente)

Entonces, si no se puede hacer asi, lo hago con el locate, pero... ¿que es y como se usa el locate?
__________________
Si me ves durmiendo no me despiertes, podría estar soñando que soy libre.
Responder Con Cita
  #8  
Antiguo 14-05-2003
__cadetill __cadetill is offline
Miembro
 
Registrado: may 2003
Posts: 3.387
Poder: 25
__cadetill Va por buen camino
Bueno, si quieres utilizar una Query, porque no utilizas un unico componente TQuery para este caso en particular? Asi podras añadir los TFields y hacer lo que te comento judoboy

El tema de Locate (que te sirve tanto para TTables como TQuery ya que este metodo lo tiene TDataSet y estos derivan de el) es para hacer una busqueda en un Dataset

Sacado de la ayuda de Delphi

Cita:
Implements a virtual method for searching a dataset for a specified record and making it the active record.

function Locate(const KeyFields: string; const KeyValues: Variant; Options: TLocateOptions
): Boolean; virtual;

Description

This function

Checks whether the dataset is unidirectional, and if so, raises an EDatabaseError exception.
Returns False, indicating that a matching record was not found and the active record was not changed.

Descendant classes that are not unidirectional override this method so that it locates the record where the fields identified by the semicolon-separated list of fields in KeyFields have the values specified by the Variant or Variant array KeyValues. Options indicates whether the search is case insensitive and whether partial matches are supported. Locate returns True if a record is found that matches the specified criteria and that record is now active.
Responder Con Cita
  #9  
Antiguo 15-05-2003
Ruben_Cu Ruben_Cu is offline
No confirmado
 
Registrado: oct 2003
Ubicación: Mariel, Cuba
Posts: 271
Poder: 0
Ruben_Cu Va por buen camino
Hola a todos, entiendo que superhopi desea hacer una busqueda que le devuelva un conjunto de registros y mostrarlos en el DBGrid asociado, el uso de la función Locate no es aplicable a este caso puesto que como bien se lee en el texto de la ayuda ella solo busca la coincidencia de valores de los campos y devuelve true de existir, convirtiendo ese registro en el registro actual y devolviendo falso en caso de no existir coincidencia.
O sea tal y como la veo no devuelve el conjunto de registros deseados.
¿No te vale el uso de un DBMemo para visualizar el contenido del campo?
Si buscas en el histórico recuperado encontraras hilos con propuesta de soluciones a este tema incluso con otras componentes existentes.
Saludos
Responder Con Cita
  #10  
Antiguo 15-05-2003
Avatar de superhopi
superhopi superhopi is offline
Miembro
 
Registrado: may 2003
Ubicación: Valencia
Posts: 128
Poder: 21
superhopi Va por buen camino
en un dbmemo si qu elo podria hacer, y ojalá y lo pudiera dejar asi, pero el problema es que tengo que hacerlo como me han mandado ... asi que como dicen los cromos el 99% de las veces: seguiré intentando
__________________
Si me ves durmiendo no me despiertes, podría estar soñando que soy libre.
Responder Con Cita
Respuesta



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro


La franja horaria es GMT +2. Ahora son las 02:31:48.


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
Copyright 1996-2007 Club Delphi