Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Bases de datos > Firebird e Interbase
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 08-06-2011
_CALI _CALI is offline
Miembro
 
Registrado: mar 2008
Posts: 99
Poder: 17
_CALI Va por buen camino
como usar un componente Data-Aware para buscar registros

Hola amigos un gusto como siempre, pues ahora me da otra inquietud con respecto a lo siguiente:


en un formulario tengo varios componentes que estan enlazados a un una tabla de clientes, mi tabla consta de 3 campos (codigo, nombre,direccion)

DBEdit1 para el campo código,
DBEdit2 para el campo nombre,
DBEdit3 para el campo direccion

mi pregunta es la siguiente: Se puede utilizar al componente asociado al campo codigo: DBEdit1,
para poder ingresar un codigo para buscar a los clientes, es decir utilizar al DBEdit1 tanto para enlazar, visualizar y editar el campo, como tambien para introducir texto para q este se use para hacer la busqueda requerida???



optaba por usar un TEdit normal, porque el DBEdit no me permite ingresar texto. Alguna idea o sugerencia gracias de antemano!!!
Responder Con Cita
  #2  
Antiguo 08-06-2011
Avatar de ecfisa
ecfisa ecfisa is offline
Moderador
 
Registrado: dic 2005
Ubicación: Tres Arroyos, Argentina
Posts: 10.508
Poder: 36
ecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to behold
Hola _CALI.

Cita:
Se puede utilizar al componente asociado al campo codigo: DBEdit1, para poder ingresar un codigo para buscar a los clientes,
Si se puede, indicándole ántes que acción queremos hacer. Esta es una forma:
Código Delphi [-]
type
  TForm1 = class(TForm)
  ...
  private
     procedure CodigoSetSetText(Sender: TField; const Text: string);       
  public
  end;
...
implementation

procedure TForm1.CodigoSetSetText(Sender: TField; const Text: String);
begin
  if not DataSet.Locate('NAME',Text,[]) then
    ShowMessage('No encontrado');
end;

procedure TForm1.btnBuscarClick(Sender: TObject);
begin
 DataSet.FieldByName('NAME').OnSetText:= DataSetSetText;
end;

procedure TForm1.btnEditarClick(Sender: TObject);
begin
  DataSet.FieldByName('NAME').OnSetText:= nil;
  DataSet.Edit;
end;

procedure TForm1.btNuevoClick(Sender: TObject);
begin
  DataSet.FieldByName('NAME').OnSetText:= nil;
  DataSet.Append;
end;


...
En este ejemplo el TButton btnBuscar se vale del evento OnSetText del campo. Que ocurre cuando el texto recibe un nuevo valor (pero antes de ser almacenado), para realizar una busqueda, posicionándose en el registro o informando si no se encontró.
Los TButton btnEditar y btnNuevo ponen el DataSet en modo Edit e Insert respectivamente desvinculando el método CodigoSetSetText del evento OnSetText.

Ahora una cosa es que se pueda y otra si es recomendable.
Particularmente creo que es un modo rebuscado y se presta para confundir al usuario además de complicar el código.

Saludos.
__________________
Daniel Didriksen

Guía de estilo - Uso de las etiquetas - La otra guía de estilo ....

Última edición por ecfisa fecha: 08-06-2011 a las 22:25:31.
Responder Con Cita
  #3  
Antiguo 08-06-2011
Avatar de Casimiro Notevi
Casimiro Notevi Casimiro Notevi is offline
Moderador
 
Registrado: sep 2004
Ubicación: En algún lugar.
Posts: 32.057
Poder: 10
Casimiro Notevi Tiene un aura espectacularCasimiro Notevi Tiene un aura espectacular
Si no he entendido mal:

Puedes controlar al salir del edit que está enlazado con el código para hacer una búsqueda, si existe se presentan los datos. Si no existe se dan de alta.
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

Temas Similares
Tema Autor Foro Respuestas Último mensaje
Componente para buscar registros, para no repetir codigo. flystar Conexión con bases de datos 9 28-04-2010 23:16:15
Dudas de conexión a Data Aware components alquimista_gdl Conexión con bases de datos 0 09-03-2009 04:16:22
Uso de componentes Data-aware Gbyte Varios 5 02-08-2008 03:05:35
Data-aware o no data-aware... esa es la cuestión! __marcsc Debates 22 09-07-2006 21:32:36
Data Aware vs Clases Carlosj Varios 1 10-05-2006 15:04:26


La franja horaria es GMT +2. Ahora son las 12:47:38.


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