LER DADOS COMBOBOX

ICMOREI 01/07/2013 22:09:00
#425435
Olá Amigos !

Sou iniciante em VB, e gostaria de pedir uma ajuda. Criei um sistema para abertura de chamado, com dois níveis de acesso, ADMINISTRADOR E TECNICO.

Porém na hora de logar, não consigo ler os dados do usuário TECNICO da minha tabela SQL através do VB para chamar o FORM do tecnico, somente do administrador

Segue a minha programação:

inicia()
Dim opcao As Integer

opcao = cbacesso.SelectedIndex
Dim sqlcmd As New SqlCommand([Ô]select * from administrador where email_admin[ô][Ô] & txtemail.Text & [Ô][ô][Ô], cn)
Dim result As SqlDataReader = sqlcmd.ExecuteReader

Select Case opcao
Case 0

If result.Read Then
If result([Ô]senha_admin[Ô]) = txtsenha.Text Then
MsgBox([Ô]Bem Vindo ao Sistema - [Ô] & UCase(result([Ô]nome_admin[Ô])), MsgBoxStyle.Information, [Ô]Autenticação[Ô])
FrmCadastro.lblusuario.Text = UCase(result([Ô]nome_admin[Ô]))
FrmCadastro.lblcodigo.Text = result([Ô]id_admin[Ô])
FrmCadastro.Show()
Me.Close()
Else
MsgBox([Ô]Senha incorreta[Ô], MsgBoxStyle.Critical, [Ô]Login[Ô])
End If
Else
MsgBox([Ô]E-mail não Cadastrado![Ô], MsgBoxStyle.Information, [Ô]Autenticação[Ô])

End If

Case 1


If result.Read Then
If result([Ô]senha_tecnico[Ô]) = txtsenha.Text Then
MsgBox([Ô]Bem Vindo ao Sistema - [Ô] & UCase(result([Ô]nome_tecnico[Ô])), MsgBoxStyle.Information, [Ô]Autenticação[Ô])
Frmmenutec.lbluset.Text = UCase(result([Ô]nome_tecnico[Ô]))
Frmmenutec.lblcodigot.Text = result([Ô]id_tecnico[Ô])



Frmmenutec.Show()
Me.Close()
Else
MsgBox([Ô]Senha incorreta[Ô], MsgBoxStyle.Critical, [Ô]Login[Ô])
End If
Else
MsgBox([Ô]E-mail não Cadastrado![Ô], MsgBoxStyle.Information, [Ô]Autenticação[Ô])

End If
fechar()
End Select

End Sub

Eu gostaria de saber como faço através do SELECT para chamar os dados da tabela TECNICO.

Alguem poderia me ajuda ?

Obrigado

FILMAN 01/07/2013 23:11:34
#425439
Resposta escolhida
inicia()
Dim opcao As Integer

opcao = cbacesso.SelectedIndex

Select Case opcao
Case 0
Dim sqlcmd As New SqlCommand([Ô]select * from administrador where email_admin[ô][Ô] & txtemail.Text & [Ô][ô][Ô], cn)
Dim result As SqlDataReader = sqlcmd.ExecuteReader

If result.Read Then
If result([Ô]senha_admin[Ô]) = txtsenha.Text Then
MsgBox([Ô]Bem Vindo ao Sistema - [Ô] & UCase(result([Ô]nome_admin[Ô])), MsgBoxStyle.Information, [Ô]Autenticação[Ô])
FrmCadastro.lblusuario.Text = UCase(result([Ô]nome_admin[Ô]))
FrmCadastro.lblcodigo.Text = result([Ô]id_admin[Ô])
FrmCadastro.Show()
Me.Close()
Else
MsgBox([Ô]Senha incorreta[Ô], MsgBoxStyle.Critical, [Ô]Login[Ô])
End If
Else
MsgBox([Ô]E-mail não Cadastrado![Ô], MsgBoxStyle.Information, [Ô]Autenticação[Ô])

End If

Case 1
Dim sqlcmd As New SqlCommand([Ô]select * from tecnico where email_tecnico[ô][Ô] & txtemail.Text & [Ô][ô][Ô], cn)
Dim result As SqlDataReader = sqlcmd.ExecuteReader

If result.Read Then
If result([Ô]senha_tecnico[Ô]) = txtsenha.Text Then
MsgBox([Ô]Bem Vindo ao Sistema - [Ô] & UCase(result([Ô]nome_tecnico[Ô])), MsgBoxStyle.Information, [Ô]Autenticação[Ô])
Frmmenutec.lbluset.Text = UCase(result([Ô]nome_tecnico[Ô]))
Frmmenutec.lblcodigot.Text = result([Ô]id_tecnico[Ô])



Frmmenutec.Show()
Me.Close()
Else
MsgBox([Ô]Senha incorreta[Ô], MsgBoxStyle.Critical, [Ô]Login[Ô])
End If
Else
MsgBox([Ô]E-mail não Cadastrado![Ô], MsgBoxStyle.Information, [Ô]Autenticação[Ô])

End If
fechar()
End Select

End Sub


Tente fazer assim, dentro de cada opção do CASE eu estipulei a Query de consulta uma para ADMIN e outra para TéCNICO. Verifique se o nome da tabela técnico esta certa e os campos tbm.


Espero ter ajudado
Tópico encerrado , respostas não são mais permitidas