Club Delphi  
    Paypal   FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Varios
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Coloboración Paypal con ClubDelphi

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 29-01-2026
sema31 sema31 is offline
Miembro
NULL
 
Registrado: jun 2012
Posts: 2
Poder: 0
sema31 Va por buen camino
problemas con dbgrid

Buenos días, no se si este es el apartado del foro correcto
estoy trabajando en delhi y con una base de datos de firebird, tengo un dbgrid y me da una causistica que no se como evitar
Me explico, tengo un dbgrid enlazado con una base de datos, hasta ahi sin problemas, en el dbgrid tengo desabilitado el añadir registros
cuando me posiciono en el ultimo registro, si le doy a la fecha de abajo, visualmente estoy en el ultimo registro pero cuando pulso para consultar no me deja, tengo que volver a darle a la fecha arriba para que internamente se posicione en el registro y entonces si me deja consultarlo
He probado con otros dbgrid y me ocurre lo mismo.
no se como evitar que cuando este en el ultimo registro si intento moverme mas abajo no me lo permita
Responder Con Cita
  #2  
Antiguo 29-01-2026
Avatar de Neftali [Germán.Estévez]
Neftali [Germán.Estévez] Neftali [Germán.Estévez] is offline
[becario]
 
Registrado: jul 2004
Ubicación: Barcelona - España
Posts: 19.435
Poder: 10
Neftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en bruto
En estos casos lo más sencillo es que generes un proyecto sencillo de ejemplo, donde se reproduzca el problema (sin datos reales) y lo adjuntes.
Primero, porque muchas veces al hacer lo mismo en un proyecto simple, desaparece el problema y nos damos cuenta del porqué.
Segundo, porque así con ese código los demás pueden ver qué está pasando y corregirlo.

De otra forma no sabemos exactamente porqué está pasando eso, que a primeras ya te digo que no parece un comportamiento normal.

De todas formas, en el botón/acción de [CONSULTAR] habría que ver qué código estás utilizando. Y ver si se pueden usar propiedades como Last, IsEmpty y EOF.
Pero sin ver código, difícil ayudarte...
__________________
Germán Estévez => Web/Blog
Guía de estilo, Guía alternativa
Utiliza TAG's en tus mensajes.
Contactar con el Clubdelphi

P.D: Más tiempo dedicado a la pregunta=Mejores respuestas.
Responder Con Cita
  #3  
Antiguo 29-01-2026
marco3k marco3k is offline
Miembro
 
Registrado: feb 2015
Posts: 106
Poder: 12
marco3k Va por buen camino
Cita:
Empezado por sema31 Ver Mensaje
Buenos días, no se si este es el apartado del foro correcto
estoy trabajando en delhi y con una base de datos de firebird, tengo un dbgrid y me da una causistica que no se como evitar
Me explico, tengo un dbgrid enlazado con una base de datos, hasta ahi sin problemas, en el dbgrid tengo desabilitado el añadir registros
cuando me posiciono en el ultimo registro, si le doy a la fecha de abajo, visualmente estoy en el ultimo registro pero cuando pulso para consultar no me deja, tengo que volver a darle a la fecha arriba para que internamente se posicione en el registro y entonces si me deja consultarlo
He probado con otros dbgrid y me ocurre lo mismo.
no se como evitar que cuando este en el ultimo registro si intento moverme mas abajo no me lo permita
Cuando dices "no se como evitar que cuando este en el ultimo registro si intento moverme mas abajo no me lo permita", ese comportamiento se evita poniendo el grid en modo sólo lectura, busca en el inspector de propiedades del grid y pon Readonly=True, con esto ese comportamiento desaparece.
Responder Con Cita
  #4  
Antiguo 29-01-2026
Avatar de Neftali [Germán.Estévez]
Neftali [Germán.Estévez] Neftali [Germán.Estévez] is offline
[becario]
 
Registrado: jul 2004
Ubicación: Barcelona - España
Posts: 19.435
Poder: 10
Neftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en bruto
Yo creo que sería mejor hacerlo directamente en la fuente de datos que en el control visual.
En el TClientDataset, Query, Table,... utilizar el evento BeforeInsert (por ejemplo):

Código Delphi [-]
procedure TForm4.ADOQuery1BeforeInsert(DataSet: TDataSet);
begin
  Abort;
end;
__________________
Germán Estévez => Web/Blog
Guía de estilo, Guía alternativa
Utiliza TAG's en tus mensajes.
Contactar con el Clubdelphi

P.D: Más tiempo dedicado a la pregunta=Mejores respuestas.
Responder Con Cita
  #5  
Antiguo 09-02-2026
sema31 sema31 is offline
Miembro
NULL
 
Registrado: jun 2012
Posts: 2
Poder: 0
sema31 Va por buen camino
Buenos días, gracias por contestar


He probado en el evento del dataset.beforeinsert poner abort pero sigue igual, también he probado en las propiedades del dbgrid ponerlo en readonly=true y mismo resultado,


Respecto al código que le he puesto al botón de consulta es

Código Delphi [-]
if QUERY1.Eof then EXIT;
FEDITOR_CONTRATO:=TFEDITOR_CONTRATO.Create(SELF);
FEDITOR_CONTRATO.showmodal;


donde query es una consulta y un componente TpFIBDataset (de las fibplus) enlazado con un dataset
Y Feditor_contrato es el form que se abre cuando realizo la consulta


Si en el dbgrib me posiciono en el ultimo registro y pulso la flecha abajo, ya no me funciona el boton de consulta, entiendo que es porque el puntero de la base de datos esta como si estuviese insertando un registro nuevo y al pulsar en el botom esta sentencia hace su trabajo if QUERY1.Eof then EXIT; No se como evitar que cuando este en el ultimo registro de dbgrid, el puntero se quede ahi




Un saludo

Última edición por Neftali [Germán.Estévez] fecha: 12-02-2026 a las 16:17:58.
Responder Con Cita
  #6  
Antiguo 12-02-2026
marco3k marco3k is offline
Miembro
 
Registrado: feb 2015
Posts: 106
Poder: 12
marco3k Va por buen camino
Gracias por hacernos saber. Pero yo uso la forma de poner Readonly=True en el dbgrid, es mas lo implemente en una clase form de consulta y solo uso la clase y no me preocupo de configurar el dbgrid.
Y como mencionas el dbgrid al ponerte al final de los registros de manera predeterminada esta en modo insertar, eso pasa cuando quieras llenar datos directamente del grid, pero yo particularmente lo hago desde un formulario de detalle (lo de llenar datos), asi por que eso lo pongo en Readonly=True.
La curiosidad que me da del porque no te funciona es: ¿si usas el TClientdataset vinculado a un Tdatasource y este con tu dbgrid?, asi lo uso y me funciona.
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
Problemas con DBGrid nunez_mvp Varios 11 14-10-2008 15:52:16
Dos problemas con DBGrid voci Conexión con bases de datos 2 02-04-2007 17:05:13
Problemas con dbgrid Choclito OOP 1 20-12-2004 17:09:36
Problemas Con DBGrid JANDREGUE Varios 2 29-09-2004 16:20:50
problemas con el DBGrid aip Conexión con bases de datos 3 27-11-2003 23:02:46


La franja horaria es GMT +2. Ahora son las 04:12:35.


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