FUNCAO DISTINCT COM COMBOBOX DANDO ERRO

CLLEVER10 29/06/2012 13:44:22
#405198
Olá pessoal
Estou com um probleminha e não consegui achar uma solução.
Tenho um sistema que possui varios combobox que são preenchidos por uma SQL em conjunto com a função DISTINCT para que me mostre os nomes sem repetição.
O que ocorre que qd vou incluir um novo registro ,tudo funciona perfeito,mas qd vou incluir o próximo, o primeiro combo não filtra,me mostrando todos os campos.Ai tenho que clicar em sair (unload me) e clicar no menu novamente (frmisca.show)e qd clico em novo,tudo esta perfeito de novo.
O que esta faltando para que funcione corretamente?
O que mais me intriga é que é só o primeiro combo.Tentei remove-lo e ai o primeiro de novo fica errado.
Segue abaixo o codigo de cada combobox.
Dim AreaTrabalho As Workspace
Dim query As String
Dim dyn As Dynaset

Set AreaTrabalho = DBEngine.Workspaces(0)
Set xxbco = AreaTrabalho.OpenDatabase(App.Path & [Ô]\iscas artificiais.mdb[Ô], False, False)

query = [Ô]select DISTINCT fabricante from cadastro[Ô]
Set dyn = xxbco.CreateDynaset(query)

While Not dyn.EOF
txtfabricante.AddItem dyn([Ô]fabricante[Ô]) & [Ô][Ô]
dyn.MoveNext
Wend
xxbco.Close

[ô]SendKeys [Ô]%{DOWN}[Ô]
end sub


Desde já agradeço pela ajuda.

Cleverson
JERB 29/06/2012 14:48:02
#405204
só por curiosidade, comenta a linha
[ô]xxbco.Close


e experimenta


abraço
ADRIANO2605 29/06/2012 17:35:21
#405215
Resposta escolhida
Kra vc tem de chamar a função novamente. Como eu uso isso em diversos forms eu criei uma função no modulo onde eu passo o sql e informo a combo que para adcionar ai sempre que ocorre alteração eu chamo a função novamente.

De klker forma assim que vc inserir algo novo, tu tem de chamar a função para preencher a combo e tem de limpa-la antes.
CLLEVER10 29/06/2012 21:47:17
#405233
Kra vc matou a xarada.Estava faltando limpar a combo a cada nova inclusão.
Agora esta funcionando normal
Muito obrigado.
RICKSOUSA 30/06/2012 07:12:02
#405235
encerra o topico amigao
Tópico encerrado , respostas não são mais permitidas