DbLookup combobox no Delphi 2010
14/12/2015
0
Boa tarde, amigos delphianos!
Tenho pesquisado muito sobre o DbLookup, mas só encontro respostas para uso no Delphi 7, só que eu uso o Delphi 2010 e nele não encontrei a configuração completa mostrada no Delphi 7, conforme abaixo:
DataSource Ligar o DataSource da Tabela ao qual vai receber o valor do registro selecionado;
DataField Ligar o campo de ligação entre as duas tabelas, ao qual vai receber o valor do registro
selecionado;
ListSource Ligar o DataSource da Tabela ao qual vai Ter o registro selecionado;
ListField Ligar o campo que será listado quando o usuário abrir a janela para seleção do registro;
KeyField Ligar o campo de ligação entre as duas tabelas, ao qual terá o seu valor enviado para
gravação.
Para estes três últimos, no Delphi 2010, existe parecido: LOOKUP SOURCE, LOOKUP FIELD e LOOKUP DIASPLAY, mas por eles dá o seguinte erro:
"Lookup source must be connected to TTable component."
Como iniciante no Delphi, gostaría muito que alguém me ajudasse.
Muito obrigado,
Estenio Oliveira
Tenho pesquisado muito sobre o DbLookup, mas só encontro respostas para uso no Delphi 7, só que eu uso o Delphi 2010 e nele não encontrei a configuração completa mostrada no Delphi 7, conforme abaixo:
DataSource Ligar o DataSource da Tabela ao qual vai receber o valor do registro selecionado;
DataField Ligar o campo de ligação entre as duas tabelas, ao qual vai receber o valor do registro
selecionado;
ListSource Ligar o DataSource da Tabela ao qual vai Ter o registro selecionado;
ListField Ligar o campo que será listado quando o usuário abrir a janela para seleção do registro;
KeyField Ligar o campo de ligação entre as duas tabelas, ao qual terá o seu valor enviado para
gravação.
Para estes três últimos, no Delphi 2010, existe parecido: LOOKUP SOURCE, LOOKUP FIELD e LOOKUP DIASPLAY, mas por eles dá o seguinte erro:
"Lookup source must be connected to TTable component."
Como iniciante no Delphi, gostaría muito que alguém me ajudasse.
Muito obrigado,
Estenio Oliveira
Estenio Oliveira
Curtir tópico
+ 1
Responder
Post mais votado
14/12/2015
Estenio,
É estranho você comentar que seu DBLookUpComboBox no Delphi 2010, apresenta essas opções de LookUp relacionadas à TTable.
Fiz um teste aqui e mesmo conectando um componente DBLookUpComboBox a um DataSource relacionado a um TTable, essas opções de LookUp ( Source, Field e Display ) não aparecem aqui pra mim...
TTable é um tipo de componente descontinuado no Delphi 2010 e existe apenas por questões de compatibilidade com as versões anteriores da IDE, quando essas suportavam o BDE para acesso à dados externos.
Para uso desse componente nas versões mais recentes do Delphi, você deve usar ListSource, ListField e ListFieldIndex : Quando seu componente for apenas para leitura de dados ( combo de consulta )
E / OU
Usar DataSource, DataField e KeyField : quando seu componente também suportar ( de modo direto ) a edição dos dados listados ( via um DataSource diferente do DataSource definido na opção "ListSource" )
DBLookUpComboBox sempre deve estar relacionado à DataSources conectados ,ao database, através de dispositivos de acesso mais "moderno" : ADO, DbExpress, DataSnap, ...
Segue um desses componentes, que tenho em um um dos meus sistemas... apenas para confirmar as opções que tenho aqui :
[img]http://arquivo.devmedia.com.br/forum/imagem/378439-20151214-192134.png[/img]
É estranho você comentar que seu DBLookUpComboBox no Delphi 2010, apresenta essas opções de LookUp relacionadas à TTable.
Fiz um teste aqui e mesmo conectando um componente DBLookUpComboBox a um DataSource relacionado a um TTable, essas opções de LookUp ( Source, Field e Display ) não aparecem aqui pra mim...
TTable é um tipo de componente descontinuado no Delphi 2010 e existe apenas por questões de compatibilidade com as versões anteriores da IDE, quando essas suportavam o BDE para acesso à dados externos.
Para uso desse componente nas versões mais recentes do Delphi, você deve usar ListSource, ListField e ListFieldIndex : Quando seu componente for apenas para leitura de dados ( combo de consulta )
E / OU
Usar DataSource, DataField e KeyField : quando seu componente também suportar ( de modo direto ) a edição dos dados listados ( via um DataSource diferente do DataSource definido na opção "ListSource" )
DBLookUpComboBox sempre deve estar relacionado à DataSources conectados ,ao database, através de dispositivos de acesso mais "moderno" : ADO, DbExpress, DataSnap, ...
Segue um desses componentes, que tenho em um um dos meus sistemas... apenas para confirmar as opções que tenho aqui :
[img]http://arquivo.devmedia.com.br/forum/imagem/378439-20151214-192134.png[/img]
Marcos P
Responder
Mais Posts
14/12/2015
Estenio Oliveira
Realmente, Marcos, estou vendo aí no seu delphi as propriedades iguais as que todos citam. Porém, no meu aqui, no lugar delas aparecem essas outras.
Vou desinstalar o Delphi e instalar novamente pra ver se aparece. Vai ver que mexi na configuração e mudei sem querer estas propriedades.
Valeu pela resposta.
Se tiver uma sugestão melhor, agradeço muito.
Bom trabalho pra você.
Vou desinstalar o Delphi e instalar novamente pra ver se aparece. Vai ver que mexi na configuração e mudei sem querer estas propriedades.
Valeu pela resposta.
Se tiver uma sugestão melhor, agradeço muito.
Bom trabalho pra você.
Responder
Clique aqui para fazer login e interagir na Comunidade :)