Club Delphi  
    Paypal   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 03-10-2006
jorllazo jorllazo is offline
Miembro
 
Registrado: sep 2006
Ubicación: Valencia, España
Posts: 83
Poder: 20
jorllazo Va por buen camino
Cita:
Empezado por Ade
Algunas dudas, pues no te entendi muy bien,
Tu query devuelve 4 campos pero cuantos registro? 1 o mas de 1??
si devuelve mas de uno entonces aparecen en el dbgrid, y seleccionas una fila y entonces es cuando guardas el ID del Cliente para el Loadfromdatabase?
Aqui te refieres a la propiedad datasource del dbgib??
La Query devuelve el numero de registros en Base a la Clausula 'WHERE' de la sentencia SQL, de momento los devuelve todos, osea el total de registros de la tabla

Código SQL [-]
         
         SELECT [PersonID], [Name], [TradeName], [NIF]
          FROM [Persons] 
          WHERE isCustomer = 0 
          AND isEmployee = 0
          AND isProvider = 0




De este modo saco de la tabla todos los contactos
si quiero sacar los clientes pongo isCustomer = 1 y omite contactos etc, etc

Esta es la sentencia que le paso al componente TADOQuery, mas concretamente a su propiedad SQL,
y este es el codigo que la usa y devuelve todos los contactos.


Código Delphi [-]
        
             Query1.SQL.Clear;
             Query1.SQL.Add(strSQL);
             Query1.Open;
                 if not (Query1.Bof and Query1.Eof) then          
                         Query1.First; //Si no esta vacio lo muevo al primer registro             
             DataSource1.DataSet := Query1;
             DbGrid1.dataSource := DataSource1;

La propiedad DataSource del DBGrid indica de donde tomara los datos que muestra en su rejilla.



Con esto, si tenias algun registro que cumple la clausula WHERE de tu sentencia deberia verse visible en la grid, a la que previamente yo le añado las columnas necesarias en su propiedad "Columns" en la que indico el titulo de la columna y el nombre del campo al que ira Ligada.

Cita:
Empezado por Ade
en el dbgid te aparece una flechita negra a la izquierda de algun registro ??
La Flechita negra es la que te indicara en que registro estas en ese momento, si no te aparece tienes que cambiar su propiedad dgIndicator = true de su lista de propiedades "Options"

Cita:
Empezado por Ade
Para que sirve Toolbar??
dond pones las instrucciones
El toolBar es la típica barra de herramientas como por ejemplo si levantas la vista veras en el Explorador de Internet (botones que hacen algo) . Si añades botones (los necesarios para cumplir los cometidos de tu formulario) y haces doble click en ellos, tendras un evento en el cual podras colocar codigo como por ejemplo


Código Delphi [-]
      procedure TfrmMain.tbFirstClick(Sender: TObject);
       begin
             Query1.First; //SE desplaza al 1 registro.
       end;




Espero que ahora te haya solucionado algo mas....
__________________
Gracias de Antemano
Responder Con Cita
  #2  
Antiguo 03-10-2006
Ade Ade is offline
Miembro
 
Registrado: jul 2006
Ubicación: Murcia
Posts: 70
Poder: 20
Ade Va por buen camino
ok, mi problema era la flechita negra, tengo su propiedad dgIndicator = true,

solo q yo trataba de seleccionar otra fila distinta,(q no fuera la q llevaba la flechita) con el raton sobre el dbgid directamente ( para ello a lo mejor tendria q hacer uso de algun evento del raton y en el moverme a ese registro, es lo unico que se me ocurre), y tu esto lo haces mediante el toolbar, voy a probar hacerlo como tu y loq se me acaba de ocurrir.

gracias, te mantendre informado
Responder Con Cita
  #3  
Antiguo 04-10-2006
Ade Ade is offline
Miembro
 
Registrado: jul 2006
Ubicación: Murcia
Posts: 70
Poder: 20
Ade Va por buen camino
nada con las instrucciones:
Código Delphi [-]
ZQuery1.First;
ZQuery1.prior;
me sigue dando el derbordamiento de pila ( stack overflow)
Responder Con Cita
  #4  
Antiguo 04-10-2006
Ade Ade is offline
Miembro
 
Registrado: jul 2006
Ubicación: Murcia
Posts: 70
Poder: 20
Ade Va por buen camino
Problema solucionado, algunas veces lo mejor es eliminar los componentes y volver a empezar, pues hice tantas modificaciones para q funcionara que no modifique algo q no debia, pues probé en un proyecto nuevo y funcionaba, asi q empece.

Saludos y gracias
Responder Con Cita
  #5  
Antiguo 04-10-2006
jorllazo jorllazo is offline
Miembro
 
Registrado: sep 2006
Ubicación: Valencia, España
Posts: 83
Poder: 20
jorllazo Va por buen camino
A ti, me alegro de haber podido servir de ayuda
__________________
Gracias de Antemano
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
Hacer una pausa fuera del evento OnTimer y sin usar Sleep DarkByte Varios 9 28-06-2007 04:08:00
Llamar evento desde otro evento nachito_tuc OOP 1 23-08-2006 21:37:43
TQuery nenufer Conexión con bases de datos 2 22-05-2006 16:41:03
Usar o no Usar un DBGrid Anabel Conexión con bases de datos 13 13-01-2006 20:05:21
RequestLive de TQuery no puede, q mas puedo usar? nefy SQL 3 21-06-2004 19:19:19


La franja horaria es GMT +2. Ahora son las 03:53:22.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi