master detail2

01/09/2009

Uma duvida eu tenho uma tabela onde ha alguns itens referenciando outra tabela mais os itens eu mostro num dbgrid x usando lookup so que os lookups ficaram inviaveis tem uma forma melhor de fazer isso? tipo tem muitos itens no dbgrid pq eu gravo so os ids e mostro a descricao num lookup, so q ja tem muitos itens e ta deixando muito lento a aplicacao tipo ja tem mais de 50000 mil itens tem como fazer de uma forma mais viavel?
Paulo Silva

Paulo Silva

Curtidas 0

Respostas

Wesley Yamazack

Wesley Yamazack

01/09/2009

Olá amigo,
   O que você pode fazer é colocar dois edits, um para o código e outro para descrição.
   E usar o locate do ClientDataSet, ex.
   cdscliente.locate('Nome', Edtdescricao.text,[]);
   Pois trabalhar com lookup para muitos registro fica muito massante para a aplicação.


Abraço

Wesley Y
GOSTEI 0
Paulo Silva

Paulo Silva

01/09/2009

preciso mostrar num dbgrid os dados pois estou gravando so as ids tipo mostrar as descricoes numa grid dos registros que se referenciam
GOSTEI 0
Wesley Yamazack

Wesley Yamazack

01/09/2009

Olá meu caro, fiz um exemplo como uso nas minhas aplicaçãoes.

   http://www.4shared.com/file/129600984/21f607e/master_detail2.html

Veja se te atende, senão monte um pequeno exemplo, e me mande, para entender melhor sua necessidade.

Um abraço

Wesley Y

GOSTEI 0
Paulo Silva

Paulo Silva

01/09/2009

na consulta de cheques vc usou um campo tipo lookup no db grid isso eu fiz tb e por isso que lentidou pensa bem abrir um dataset q tem 60 mil produtos onde tem um relacionamento itens da nota recebe id do produto depois eu mostro num lookup a descricao mais isso tava deixando a aplicacao lenta pra carregar esse e o problema!
GOSTEI 0
Wesley Yamazack

Wesley Yamazack

01/09/2009

Olá ,
  Se você ver logo em cima tem um label escrito dizendo que isso é o que você tem hoje, e ao lado é como eu faço, ou seja do lado esquerdo é como esta hoje, e ao lado direito seria a forma de consulta direta, no ClientDataSet, o campo lookup é so para te mostrar hoje como você trabalha, mas o que te exemplifiquei foi o lado direito, digitando uma parte do nome no edit, e clicando no botão, sendo assim ele irá localizar no clientdataset. Sacou ? Não uso lookup e sim a pesquisa é feita pelo edit, no clientdataset.

Abraço

Wesley Y
GOSTEI 0
Devmedia

Devmedia

01/09/2009

Paulo,
a resposta do consultor foi suficiente? Podemos encerrar o chamado?
GOSTEI 0
Wesley Yamazack

Wesley Yamazack

01/09/2009

Paulo, fechamos o chamado por falta de resposta.
   Mas estamos a disposição, caso tenha alguma outra duvida.

Att,

Wesley Y
GOSTEI 0
POSTAR