Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Conexión con bases de datos
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Conexión con bases de datos

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 09-11-2006
Avatar de magnu9
magnu9 magnu9 is offline
Miembro
 
Registrado: nov 2006
Posts: 84
Poder: 18
magnu9 Va por buen camino
dbGrid desde una Cosulta

Saludo a todos espero que se sientan bien todos.
Tengo este pequeño codigo con el cual ya creado el form llamado ctZona para consultar las zona, en dicho form tengo un dbgrid, como hago que al hacer doble click en el dato del dbgrid este me traiga los datos sobre el cual acciones el doble click. Con este codigo al colocar ya sea el codigo o la descripcion de la zona esta me trae con sigo los datos al mantenimiento de de zona.

Código Delphi [-]
procedure TmtZona.btBuscarClick(Sender: TObject);
begin
ctZona:=TctZona.Create(self);
try
ctZona.Showmodal;
finally
If ctZona.Edit1.Text <> '' then
tZona.Locate('codzon',QuotedStr(ctZona.edit1.text),[])
 
else If (ctZona.Edit1.Text='') and (ctZona.Edit2.Text <> '') then
tZona.Locate('deszon',(ctZona.edit2.Text),[]);
ctZona.Free;
 
end;
end;

Espero me entiendan.

Caral ya estoy buscando la manera de colocar el codigo en rapidShare.

Última edición por dec fecha: 09-11-2006 a las 20:17:21.
Responder Con Cita
  #2  
Antiguo 09-11-2006
Avatar de Caral
[Caral] Caral is offline
Miembro Premium
 
Registrado: ago 2006
Posts: 7.659
Poder: 25
Caral Va por buen camino
Hola
A ver, si entiendo:
Tienes un query que hace una consulta, si cambias el edit1 o el Edit2, esta cambia, bueno, lo que quieres es que al hacer dobleclick en el grid, haga la misma operacion, seleccionar los campos edit y filtrar.?
Si es asi, empecemos por creer que el query esta enlazado al grid y que se llama TZona, creo que poniendo el mismo codigo funcionaria asi:
Código Delphi [-]
procedure TmtZona.DBGrid1DblClick(Sender: TObject);
begin
    If ctZona.Edit1.Text <> '' then
begin
    tZona.Filter := 'codzon = '+QuotedStr(edit1.Text);
    tZona.Filtered := True;
end 
else 
    If (ctZona.Edit1.Text='') and (ctZona.Edit2.Text <> '') then
    tZona.Filter := 'deszon = '+QuotedStr(edit2.Text);
    tZona.Filtered := True; 
end;
end;
Bueno creo que es lo que quieres, tal vez ?
Saludos
Responder Con Cita
  #3  
Antiguo 09-11-2006
Avatar de magnu9
magnu9 magnu9 is offline
Miembro
 
Registrado: nov 2006
Posts: 84
Poder: 18
magnu9 Va por buen camino
Muy bien Caral

Estuve observando los cambios que les hiciste al codigo y me parecen correcto, hace un momento hice un hilo en impresion espero lo lea.

Al observar el nuevo codigo que me ofrece hay algo que no entiendo, mi codigo lo hago al boton Buscar del mantienimiento de Zona, pero el doble click hay dbgrid se lo debo dar al dbgrid en el form en el cual lo consulto, osea el dbgrid esta en el formulario de consulta, no en el mantenimieto, en cambio mi codigo se lo hago en el boton Buscar del mantenimiento desde el cual llamo la consulta. En conclusion es que en el form de ctZona, tengo los edit y el dbgrid.

Tmtzona= mantenimiento de Zona
TctZona= consulta de Zona
Responder Con Cita
  #4  
Antiguo 09-11-2006
Avatar de Caral
[Caral] Caral is offline
Miembro Premium
 
Registrado: ago 2006
Posts: 7.659
Poder: 25
Caral Va por buen camino
Hola
Simplemente dale la ruta a los edit en el form que tiene el dbgrid:
ctZona.edit1.text , con esto le dices que el edit esta en ctzona, si no te lo acepta, coloca una variable en ctzona y llamalo por esa variable.
Saludos
Responder Con Cita
  #5  
Antiguo 09-11-2006
Avatar de magnu9
magnu9 magnu9 is offline
Miembro
 
Registrado: nov 2006
Posts: 84
Poder: 18
magnu9 Va por buen camino
Saludo Caral

Bueno el codigo que me diste modificado, no acabo de entenderlo... pero seguire intentandolo, cuando consigalo lo que quiero te aviso.

Y gracias por la ayuda de mi pregunta de Qreport.

Una cuestion como hago referencia a las fila selecionada en el dbGrid solo es una duda, osea como asignar esos valores digamos que aun edit en este caso por que si fuera a un dbEdit se la solucion, creo que si exite seria gloria lo que deseo.... Saludo cordial y muchisisima Gracias.
Responder Con Cita
  #6  
Antiguo 09-11-2006
oscarnoe oscarnoe is offline
Miembro
 
Registrado: jul 2006
Posts: 60
Poder: 18
oscarnoe Va por buen camino
si no te entiendo mal, solo tienes que acceder al contenido del registro seleccionado ya que cuando haces un click el cursor del dataset se posiciona en el registro correspondiente,bien con los objetos creados por campo o con el metodo FieldByName del datased p.e.:
Edit1.Text:= datasetEmpleados.FieldByName('Nombre').AsString

Espero que te sea de ayuda.

Oscar Noe
__________________
No dejes camino viejo por sendero nuevo
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
Guardar datos desde un dbgrid estopi Conexión con bases de datos 9 11-01-2015 23:54:41
Imprimir desde un dbgrid rufo Impresión 1 12-09-2006 23:51:50
Imprimir desde dbgrid alastor Impresión 1 28-04-2006 17:16:07
cosulta mediante DBComboBox y TRadioGroup kryna Conexión con bases de datos 7 28-03-2005 17:45:49
Obtener datos desde un DBGRID bustio Conexión con bases de datos 3 10-06-2004 20:27:31


La franja horaria es GMT +2. Ahora son las 05:51:05.


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