O QUE TEM DE ERRADO NO MEU CODIGO?

USUARIO.EXCLUIDOS 01/06/2007 13:07:03
#219349
o que tem de errado nesse código?
preciso que ele carregue produtos numa listview.
digito o código do produto numa text e ele carrega na lista.
produtos com códigos de 6 números ou com 14 numeros.

Obs:esta acontecendo que ele traz produtos cadastrados com seus códigos.Mas tb ele carrega na lista
qualquer numero q vc digitar.
Ex:na tabela tem um produto com o código:12345678901234
conforme eu digito o código qdo chega no 123456 ele carrega na lista o o numero sem precedentes,etc.
O que Acontece? Veja o meu código;
Grato á todos!!

If Len(txtCod.Text) >= 6 Or Len(txtCod.Text) >= 1 Then
Chama
End If


Public Sub Chama()

Dim recTabela As ADODB.Recordset
Dim sql As String
Dim lv As ListItem


sql = "SELECT Cpu FROM Tab_Cpu WHERE Id_Codigo='" & txtCod.Text & "'"
Set recTabela = bd.Execute(sql, adOpenForwardOnly)
If recTabela.EOF = False Then
txtDesc.Text = recTabela("Cpu")
'Else
'MsgBox "Não exite produtos na base,com esse código"
'txtCod.SetFocus
'txtCod.Text = ""
'txtDesc.Text = ""
''Set lv = Nothing
End If
recTabela.Close

Set lv = lista.ListItems.Add(, , txtCod.Text)


lv.SubItems(1) = txtDesc.Text



Set recTabela = Nothing
End Sub

[S34]
ALEXANDREMOTA 01/06/2007 13:16:00
#219351
Poderia por favor postar aqui sua base de dados para eu tentar consertar.
USUARIO.EXCLUIDOS 01/06/2007 13:19:37
#219352
Não testei, mas tente implementar as mudanças abaixo:

Public Sub Chama()

Dim recTabela As ADODB.Recordset
Dim sql As String
Dim lv As ListItem


sql = "SELECT Cpu FROM Tab_Cpu WHERE Id_Codigo='" & txtCod.Text & "'"
Set recTabela = bd.Execute(sql, adOpenForwardOnly)

If recTabela.EOF = False Then
Set lv = lista.ListItems.Add(, , txtCod.Text)
lv.SubItems(1) = txtDesc.Text
'Else
'MsgBox "Não exite produtos na base,com esse código"
'txtCod.SetFocus
'txtCod.Text = ""
'txtDesc.Text = ""
''Set lv = Nothing
End If
recTabela.Close




Set recTabela = Nothing
USUARIO.EXCLUIDOS 01/06/2007 13:24:53
#219356
Access 2003
Nome da Tabela: Tab_Cpu

ESTA NUM MODULO.BAS ASSIM
bd.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & App.Path & "\Computadores.MDB"


VALEU!!
PDIAS 01/06/2007 16:49:02
#219411
CLAUDIF , voce tem que usar o like.
sql = "SELECT Cpu FROM Tab_Cpu WHERE Id_Codigo like %" & txtCod.Text & "%"
USUARIO.EXCLUIDOS 01/06/2007 17:22:32
#219418
POR VC NÃO USA UMA COMOBOX NA PESQUISA FICA MELHOR

USUARIO.EXCLUIDOS 01/06/2007 20:51:53
#219427
alguem tem outra ideia de como eu fazer essa consulta?
Valeu!
Tópico encerrado , respostas não são mais permitidas