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 Buscar Temas de Hoy Marcar Foros Como Leídos

Conexión con bases de datos

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 29-06-2005
(VIH)Lestat (VIH)Lestat is offline
Miembro
 
Registrado: abr 2005
Posts: 95
Poder: 22
(VIH)Lestat Va por buen camino
Mi DBgird lo lleno por medio de un query en sql entonces su propiedad datasource pues tiene el valor del ibquery que lo llena.. pero al hacerle doble click al registro este dbgrid lo unico que me va a proporcionar son los parametros del dni del alumno que se encuentra en la columna 0 .. no se si me entendiste... pero el caso es que en mi dbgrid el usuario no pueda modificar ningun dato y pues lo que quiero despues de almacenar el parametro de la matricula del alumno es que ese registro se borre del dbgrid o que desaparezca pues!!!!

Si me entendiste????
Responder Con Cita
  #2  
Antiguo 29-06-2005
(VIH)Lestat (VIH)Lestat is offline
Miembro
 
Registrado: abr 2005
Posts: 95
Poder: 22
(VIH)Lestat Va por buen camino
ya probe de esta manera y tampoco funciona me sigue marcando el mismo error.. 'No esta en modo de edicion'

Código Delphi [-]
 //Se limpia el registro que fue almacenado
             alumnos.EditorMode:=true;
             alumnos.Fields[0].Text:='';
             alumnos.Fields[1].Text:='';
             alumnos.Fields[2].Text:='';
             alumnos.Fields[3].Text:='';
             alumnos.Fields[4].Text:='';
             alumnos.Fields[5].Text:='';
             alumnos.Fields[6].Text:='';
             alumnos.Refresh; //se actualiza el DBGRid
Responder Con Cita
  #3  
Antiguo 29-06-2005
Avatar de jachguate
jachguate jachguate is offline
Miembro
 
Registrado: may 2003
Ubicación: Guatemala
Posts: 6.254
Poder: 30
jachguate Va por buen camino
Que es alumnos?
El dbGrid?

Un dbGrid, al igual que todos los controles asociados a datos no es mas que una representación visual de los mismos... pero estos están contenidos y son administrados por un descendiente de TDataSet.

Si queres que un DBGrid muestre una nueva fila, lo que corresponde es crear un nuevo registro en el dataset asociado y rellenarlo como te convenga y el DBGrid se actualizará solito, que es precisamente una de las ventajas de usar controles DBAware.

Un ejemplo, suponiendo que Query1 esta asociado a dbGrid1:

Código Delphi [-]
Begin
  // quiero que aparezca una nueva fila en dbGrid1
  Query1.Append;
  Query1.FieldByName('Nombre').AsString := 'Juan';
  Query1.FieldByName('Apellido').AsString := 'Pérez';
  Query1.Post;
  // No tuve que hacer nada con el dbGrid1, al salir de aqui mostrará esa nueva
  // fila al usuario.!
end;

Hasta luego.

__________________
Juan Antonio Castillo Hernández (jachguate)
Guía de Estilo | Etiqueta CODE | Búsca antes de preguntar | blog de jachguate
Responder Con Cita
  #4  
Antiguo 29-06-2005
(VIH)Lestat (VIH)Lestat is offline
Miembro
 
Registrado: abr 2005
Posts: 95
Poder: 22
(VIH)Lestat Va por buen camino
ok jachguate pero lo que quiero no es introducir datos al DBGRID alumnos si no es hacer que desaparezcan las filas ...

mira te voy a explicar...

Yo tengo mi DBGRID llamado alumnos.. este lo lleno por medio del IBquery o lo tengo enlazado el query ... entonces cuando le doy doble click me guarda un valor de una columna del dbgrid en una tabla... asta aki todo bien ... pero quiero que el registro al que le di doble clik desaparezca del DBGRId ... como le hago????

Tengo que eliminar el registro del QUERY que llena el dbgrid???? como le hago??? como le hago para borrar un registro del query??' ya que este query es para hacer consulta.....
Responder Con Cita
  #5  
Antiguo 29-06-2005
Avatar de jachguate
jachguate jachguate is offline
Miembro
 
Registrado: may 2003
Ubicación: Guatemala
Posts: 6.254
Poder: 30
jachguate Va por buen camino
Si te interesa borrar el registro de la BD y la consulta es actualizable, podes llamar al método delete del query directamente:

Código Delphi [-]
Procedure TForm1.AlumnosDblClick(Sender : TObject);

Begin
  RegistrarBorrado;
  Query1.Delete;
end;

Si no es actualizable, pues borra el registro por ejemplo lanzando otro query sobre la base de datos y luego cerras y volves a abrir el query conectado a la rejilla:

Código Delphi [-]
Procedure TForm1.AlumnosDblClick(Sender : TObject);

Begin
  RegistrarBorrado;
  BorrarRegistro;
  Query1.Close;
  Query1.Open;
end;

Hasta luego.

__________________
Juan Antonio Castillo Hernández (jachguate)
Guía de Estilo | Etiqueta CODE | Búsca antes de preguntar | blog de jachguate

Última edición por jachguate fecha: 29-06-2005 a las 23:24:44.
Responder Con Cita
  #6  
Antiguo 30-06-2005
(VIH)Lestat (VIH)Lestat is offline
Miembro
 
Registrado: abr 2005
Posts: 95
Poder: 22
(VIH)Lestat Va por buen camino
Ahora que si no te entendi..... pero será que yo pueda borrar un registro de un query que es producto de una consulta, es decir si un query es una representacion de una tabla, puesto que una consulta en sql los valores que me devuelve los hace en una tabla,, entonces será que se puedan borrar estos valores que me arroja el query.....

o solo estoy fantasiando.. pero alguien me podria decir lo contrario???
Responder Con Cita
  #7  
Antiguo 01-07-2005
(VIH)Lestat (VIH)Lestat is offline
Miembro
 
Registrado: abr 2005
Posts: 95
Poder: 22
(VIH)Lestat Va por buen camino
¿como se pueden borrar valores de una consulta???
es decir .. tengo un DBGRID que es llenado por medio de un query de consulta .. este query selecciona los datos de los alumnos que su estatus sea 'Nuevo Ingreso' o 'Activo' .. hasta aqui todo bien... el DBGrid se llena correctamente..

Pero cuando yo le doy doble click a una fila quiero que me almacene la clave del alumno y el nombre del grupo en una tabla... esto ya lo concegui... pero el problema es este..:: quiero que cuando la informacion del alumno seleccionado haya sido guardada en la tabla este registro se borre del data grid y no vuelva a aparecer...??? como le hago... es decir se puede utilizar la clausula DELETE sin que se borre el registro de mi base de datos???
Responder Con Cita
  #8  
Antiguo 29-06-2005
Avatar de vtdeleon
vtdeleon vtdeleon is offline
Miembro
 
Registrado: abr 2004
Ubicación: RD & USA
Posts: 3.236
Poder: 26
vtdeleon Va por buen camino
Saludos

Tengo entendido que un componente Query es de solo lectura :-S
No se puede hacer Append, Insert, Edit :-S
Intente hacer un append ahora mismo y me dio un "FATALITY" (ERROR)

o Estoy equivocado
__________________
Van Troi De León
(Not) Guía, Code vB:=Delphi-SQL, ¿Cómo?
Viajar en el tiempo no es teóricamente posible, pues si lo fuera, ya estarían aqui contándonos al respecto!
Responder Con Cita
Respuesta


Herramientas Buscar en Tema
Buscar en Tema:

Búsqueda Avanzada
Desplegado

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 19:47:29.


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