Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Alexandre Fernandes Fadul

Popular TextBox ou Apresentar MsgBox

Recommended Posts

Galera,

 

Tenho um textbox no qual digito um Cód, caso o código exista no banco de dados, preenche os campos do formulário. Caso não exista os campos, exibe uma mensagem de erro informando que não existem dados.

 

Consegui fazer funcionar até a parte de popular os campos, porém na hora de validar se existe ou não os registros no BD, nada está acontecendo.

 

Segue abaixo todo o código que estou utilizando:

 

   Private Sub txtId_Leave(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtId.Leave
       Dim objConexao As OleDbConnection = New OleDbConnection("Provider=Microsoft.ACE.OLEDB.12.0;Data Source=DataBase\Database.accdb;Jet OLEDB:Database Password=woobainfra")
       Dim ConexaoBD As OleDbCommand = New OleDbCommand() 'Comando em SQL
       Dim Leitor As OleDbDataReader 'Leitor, que carregará os dados
       Dim Senhadoleitor As String = "" 'Inicialização do leitor, evitar erros
       Dim Imagemdoleitor As String = "" 'Inicialização do campo imagem

       ConexaoBD.Connection = objConexao 'Conecta o comando ao BD
       'Instrução SQL
       ConexaoBD.CommandText = "SELECT * FROM Login WHERE Cod = '" & txtId.Text & "'"
       objConexao.Open() 'Abre a conexão
       Leitor = ConexaoBD.ExecuteReader() 'Executa o comando no leitor

       While Leitor.Read
           If txtId.Text = Leitor("Cod") Then
               txtId.Text = Leitor("Cod")
               txtUsuario.Text = Leitor("Usuario")
               txtSenha.Text = Leitor("Senha")
               txtImagem.Text = Leitor("Imagem")
               cmbStatus.Text = Leitor("Status")
               cmbNivel.Text = Leitor("Nivel")
               Imagemdoleitor = Leitor("Imagem").ToString()
               pctFotologin.Image = System.Drawing.Image.FromFile(Imagemdoleitor)
           Else
               MsgBox("Nenhum Registro Encontrado!", MsgBoxStyle.Information, "Atencao!")
               objConexao.Close() 'Fecha a conexão
           End If
       End While
   End Sub

Compartilhar este post


Link para o post
Compartilhar em outros sites

quintelab, me desculpe! Agora que eu fui entender a sua primeira pergunta!

 

Pensei que estava perguntando se o lugar do If era realmente dentro do While.

 

Sobre o sistema funcionar até o While, sim, o código funciona e o If também.

 

 

Se eu digitar o valor de Código 1 existente no banco de dados, o sistema popula os textboxs normalmente conforme condição do If, porém se eu digitar um código que não exista no banco de dados, não exibe nenhuma mensagem dizendo que não há registros no banco, conforme deveria ser feito segundo a lógica do código.

 

Rodando o sistema pelo Debug, ele roda normal e não há nenhum erro sendo exibido.

 

Obrigado!

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.