CONSULTA EM TREVIEW

SNNIFFER 14/04/2012 21:54:05
#399895
Bom, tenho um Treeview que é preenchido por consultas ao MySQL, preciso que ao clicar no item do Treeview seja executado uma função de consulta, ou seja, preciso capturar o Cod(id) de um item e consultar.

  


Dim RsCab As ADODB.Recordset
Dim RsItens As ADODB.Recordset

Set RsCab = New ADODB.Recordset
Set RsCab = gConexao.Execute([Ô]Select * from estoque_produtos WHERE Tipo = [ô][Ô] & [Ô]MAE[Ô] & [Ô][ô] order by cod[Ô])

Do While RsCab.EOF = False

TreeMain.Nodes.Add , , [Ô]N[Ô] & RsCab.Fields([Ô]Cod[Ô]), RsCab.Fields([Ô]cod[Ô]) & [Ô] .[Ô] & RsCab.Fields([Ô]Descricao[Ô])

Set RsItens = New ADODB.Recordset
Set RsItens = gConexao.Execute([Ô]Select * from estoque_produtos WHERE Cod_Tipo = [ô][Ô] & RsCab.Fields([Ô]Cod[Ô]) & [Ô][ô] order by cod[Ô])

Do While RsItens.EOF = False

TreeMain.Nodes.Add [Ô]N[Ô] & RsItens.Fields([Ô]Cod_Tipo[Ô]), tvwChild, , RsItens.Fields([Ô]cod[Ô]) & [Ô] .[Ô] & RsItens.Fields([Ô]descricao[Ô])

RsItens.MoveNext
Loop
RsItens.Close
RsCab.MoveNext
Loop
RsCab.Close


Desejo capturar o Cod do Item da consulta RsItens.
FILMAN 15/04/2012 01:24:59
#399900
Resposta escolhida
Bom meu amigo não sei o que pretende fazer para consultar na mesma tabela sendo que já esta listando a mesma inteira no TreeMain

Mais mesmo assim tente isso aqui vê se ajuda

Private Sub TreeMain_NodeClick(ByVal Node As MSComctlLib.Node)
MsgBox Trim(Mid(Node.Text, 1, InStrRev(Node.Text, [Ô].[Ô]) - 1))
End Sub
SNNIFFER 15/04/2012 22:19:12
#399929
Então com o código enviado não acontece nada, bom, o código que postei inicialmente está funcionando, só que está preenchendo o treeview, com os campos Cod, Descricao da tabela, eu gostaria que ao clicar no treeview captura-se o campo Cod.

Usando este código eu consigo capturar os dados do item selecionado no treeview.


         Set PrS = New ADODB.Recordset
SQL = [Ô]Select * From estoque_produtos [Ô]
PrS.Open SQL, gConexao, adOpenStatic, adLockOptimistic, adCmdText

If PrS.RecordCount = 0 Then
LblDados.Caption = [Ô]Sem dados[Ô]
Exit Sub
End If
CliCK = TreeMain.SelectedItem.Text
LblDados.Caption = CliCK
PrS.MoveFirst
PrS.Find [Ô]cod like [ô]*[Ô] & CliCK & [Ô]*[ô][Ô]
If PrS.EOF Then
Else
LblDados.Caption = PrS.Fields([Ô]cod[Ô]) & [Ô] .[Ô] & PrS.Fields([Ô]descricao[Ô])
End If


Gostaria de capturar apenas o campo Cod.
FILMAN 16/04/2012 08:06:22
#399938
Caro colega é o seguinte

Utilize o código para carregar o TreeView da sua maneira pode ser igual o que postou acima
depois o evento NodeClick coloque o que postei acima verá que é exibido somente o código do item que você selecionou
SNNIFFER 16/04/2012 17:57:30
#399993
Show de bola, era isso que queria.

Vlw
Tópico encerrado , respostas não são mais permitidas