quinta-feira, janeiro 14

Criando um Controle de Acesso em VB


Nessa postagem você aprederá a programar um controle de acesso em um sistema Visual Basic.
Ferramentas: Visual Basic 2005 e MSaccess 2007.


Formulário

O formulário de acesso deverá controlar o acesso dos clientes e adminitradores ao sistema e dando as devidas permissões aos usuários do mesmo.

1ª Etapa - O Banco de Dados

Para o Gerenciamento do sistema será criada uma tabela no banco de dados com os seguintes campos:

Campos
Login,   Tipo Texto, Tamanho = 10
Senha,  Tipo Texto, Tamanho =  8
Tipo,    Tipo Texto, Tamanho = 15
Index
A tabela deverá ser indexada por todos os campos já que se trata de um controle de usuários.

O index deverá ser adicionado na seguinte ordem: Login, Senha, Tipo.
OBS.: O campo tipo foi criado com o intuito de controlar as permissões dos usuários do sistema.

2ª Etapa -  Nomeclatura dos Objetos


A nomeclatura dos objetos é de grande importância na hora da programação, o ideal é alterar a nomeclatura dos objetos para que programação fique de facil entendimento e bem organizada.

3ª Etapa - A Programação


Variáveis
General declarations
Dim banco As Database
'declaração da variável responsável por criar a conexão do Banco de dados com o VB.
Dim senha As Recordset

'declaração da variável responsável por criar uma conexão com uma tabela do BD.

OBS.: Ao declarar variáveis globais no vb deverá ser habilitada a biblioteca abaixo:

Menu Project / References... / Microsoft DAO 2.5/3.51 Compatibility Library


Formulário
Private Sub Form_Load()
Set banco = OpenDatabase(App.Path & "\banco.mdb")
' Conexão com o BD

Set senha = banco.OpenRecordset("senha")
' Conexão com a Tabela Senha
While Not senha.EOF
cmblogin.AddItem senha("nome")
senha.MoveNext
Wend
'O Comando While insere o nome dos usuários contidos na tabela no formulário em execução
cmbtipo.Text = "Administrador"

cmbtipo.AddItem "Administrador"
cmbtipo.AddItem "Usuário"
End Sub

Botão Confirmar
Private Sub btnconfimar_Click()
senha.Index = "indsenha"
senha.Seek "=", cmblogin.Text, txtsenha.Text, cmbtipo.Text
' Verifica se os dados informados no formulário corresponde ao do BD
If Not senha.NoMatch Then
MsgBox "Bem-Vindo ao Sistema: " & " " & cmblogin.Text & "!!!", vbInformation, "Senha"
'Caso os dados sejam valido é enviada uma mensagem de boas vindas.
If cmbtipo.Text = "Administrador" Then

Unload Me
MenuSGM.Show
' Se o usuário do sistema for um Administrador ele terá uma acesso total ao sistema
Else

MenuSGM.Internet.Enabled = False
MenuSGM.opsenha.Enabled = False
MenuSGM.opbackup.Enabled = False
MenuSGM.Enabled = False
Unload Me
MenuSGM.Show
'Caso o usuário não seja Adminitrador seram desabilitados alguns forms do sistema.
End If

Else
MsgBox "Dados Incorretos", vbInformation, "Senha"
cmblogin.Text = ""
txtsenha.Text = ""
cmbtipo.Text = ""
End If
' Caso o usuário erre algum dado na hora da autenticação, o sistema lhe gera uma mensagem de erro e limpa os dados antigos
End Sub


Botão Cancelar
Private Sub btncancelar_Click()
If MsgBox("Deseja Sair do Sistema???", vbYesNo, "Sair") = vbYes Then
End
Else
MsgBox "Ação Cancelada !!!", vbInformation, "Sair"
End If
' No botão cancelar foi adicionada uma mensagem perguntado se o usuário deseja sair do sistema.
End Sub





Em Breve mais postagens de Visual Basic.
Bons Estudos!

2 comentários: