Fórum Repetição de Registros #256878

02/11/2004

0

Tenho um dbgrid que lista os registros de uma tabela.

Estou tendo problemas com este dbgrid, pois quando é feito a navegação pelos registros, no meio da tabela são mostrados os registros duplicados, apesar de que, ao olhar os dados diretamente na tabela estes registros não estão duplicados.

Existe alguma configuração que deve ser feita, relacionada a tamanho de buffer?

Estou utilizando o Delphi 6 + Firebird 1.5 + TSQLConection + TSQLDataSet + TDataSetProvider + TClientDataSet + TDataSource


Daaneto

Daaneto

Responder

Posts

08/11/2004

Daaneto

Pessoal, ainda estou tendo problemas com a listagem destes registros.

Esta tabela tem atualmente uns 5000 registros, antes tinha colocado no ClientDataSet um PacketRecords=1000.

Já realizei testes com vários tamanhos, o que melhorou substancialmente o problea, mas não solucionou.

Agora PacketRecords está igual a 1 e está sendo exibido apenas os primeiros registros como sendo duplicados.

Há alguma configuração adicional que deva ser realizada?


Responder

Gostei + 0

08/11/2004

Osocram

coloque no sql do TSQLDataSet
select distinct

ou post aqui o seu sql pod ser q esta faltando alguma comparacao


Responder

Gostei + 0

08/11/2004

Daaneto

A solução que encontrei foi colocar um PacketRecords com um número bem maior que o previsto de registros. Estão sendo esperados 10.000 e coloquei 50.000. Acho que não deve estar certo, mas está funcionando.


Em relação ao distinct row, no banco não é repetido os registros, mas apenas na exibição pelo grid.


Responder

Gostei + 0

08/11/2004

Osocram

isso esta realmente estranho... PacketRecord tem outra funcao... q eh d trazer os registros num pacote... e vc determinar o tamanho deste pacote....

se vc puder postar o seu sql aqui.. agente pod tentar ajudar.


Responder

Gostei + 0

08/11/2004

Daaneto

Segue a instrução SQL:

"select * from SELECAO"


Estou utilizando um SQLConection + SQLDataSet (que contém este SQL) + DataSetProvider + ClientDataSet + DataSource


SELECAO é o nome da tabela que tem os registros que aparecem no grid duplicados, mas indo olhar no banco não estão repetidos.


Responder

Gostei + 0

08/11/2004

Osocram

ihhhh

Enton tah dificil achar o prob.

Bom uma coisa q vc poderia testar eh usar o SQLQuery no lugar do SQLDataset


Responder

Gostei + 0

08/11/2004

Maxadens

Amigo

Tenta excluir os componentes e fazer novamente. Isso ja resolvei alguns problemas meus.


Responder

Gostei + 0

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar