Saludos, tengo el siguiente problema:
cuando inserto un registro en una tabla... normalmente en el debgrid (correspondiente a la tabla) aparecen los registros ya almacenados anteriormente, lo que necesito hacer esque cuando se inserte un registro no aparezcan todos los registros que contiene la tabla en el dbgrid, solamente que aparezca el dbgrid1 limpio, simulando que fuera una tabla vacia
saludos gracias
Publicado:
Sab Ene 20, 2007 9:41 pm
alonsojpd Administrador/Moderador
Registrado: Sep 16, 2003 Mensajes: 2687
Asunto: Re: punto de venta dbgrid
Anuncios
rober escribió:
Saludos, tengo el siguiente problema:
cuando inserto un registro en una tabla... normalmente en el debgrid (correspondiente a la tabla) aparecen los registros ya almacenados anteriormente, lo que necesito hacer esque cuando se inserte un registro no aparezcan todos los registros que contiene la tabla en el dbgrid, solamente que aparezca el dbgrid1 limpio, simulando que fuera una tabla vacia
saludos gracias
Una forma rápida y sencilla es que añadas un filtro al origen de datos del dbgrid (TTable), asegurándote de que nunca lo pueda cumplir ningún registro. Lo aplicas en el evento AfterInsert del TTable y lo quitas en el evento BeforePost del TTable. Es una forma rápida de simular lo que nos indicas.
Para añadir un filtro a un TTable:
Código:
operador := '=';
valor := '99999999';
campo := 'codigo';
ttable1.filter := Format ('[%s] %s %s', [campo, operador, valor]);
ttable1.filtered := true;
ttable1.refresh;
Para desactivar el filtro:
Código:
ttable1.filtered := false;
ttable1.refresh;
Publicado:
Sab Ene 20, 2007 10:03 pm
rober Buen usuario
Registrado: Aug 14, 2005 Mensajes: 9
Asunto:
Grcias ya me hizo la simulacion del dbgrid limpio, pero tengo otro problemita, ahora no puedo escribir nada en el dbgrid y ya cerre el filttro en before post.
tengo un boton para insertar:
procedure TForm1.Button1Click(Sender: TObject);
begin
table1.Insert;
end;
cuando doy click a este boton si me filtra pero no me deja escribr nada sobre el debgrid
saludos
Publicado:
Sab Ene 20, 2007 10:47 pm
alonsojpd Administrador/Moderador
Registrado: Sep 16, 2003 Mensajes: 2687
Asunto:
Ciertamente nos hemos equivocado anteriormente en los eventos, deberás poner en el evento AfterPost el código para desactivar el filtro y en el evento BeforeInsert el código para activar el filtro.
Te mostramos el código fuente completo del ejemplo que hemos realizado para probar lo que nos comentas (funciona correctamente):
Puede publicar nuevos temas en este foro No puede responder a temas en este foro No puede editar sus mensajes en este foro No puede borrar sus mensajes en este foro No puede votar en encuestas en este foro
Visita nuestro nuevo sitio web con programas y contenidos actualizados: Proyecto A