Ir para conteúdo

Arquivado

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

Perfect Lion

Sistema no Access

Recommended Posts

Fala galera tudo certo?Bem é o seguinte eu programo em php e como estou sem tempo para criar um sistema que exige bastante tempo com o php resolvi criar o sistema em access...O sistema ele funciona assim:O usuario Loga pode ver os processos que foram denominado há ele e trabalhar em cima ...Bem ai que estou com problema..Gostaria de criar esse sistema de login e como amazerna uma variavel ambiente para poder usar ela no sitema ... Ex:Tenho lá o user e pass do kra cadastrado em uma tabela nessa então crio um formulario para o kra poder digitar o user e a senha depois disso quero que ele tenha as permisões contida ao grupo dele como pode ler pode excluir e pode editar. dependendo da situação sim ou não. então gostaria de amazernar o id desse usuario e com esse id toda hora que eu for precisar fazer uma comparação se ele tá logado ou se ele pertence a um tal grupo e assim por diante .. como eu faria isso?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Olá....pode ser um pouco tarde + tem jeito sim e você terá q programar isso em vb....tenho um exemplo q é o seguinte:criei 1 tabela e 1 formulário......na tabela tenho o user e o pass, no formulário tbm + a comaparação é feita pelo text do formulário.....sou péssima pra explicar ecrevendo prefiro, mostrar olhando pra pesoa pra ver se está entendendo.....de klker forma segue abaixo o meu código em vb (ainda preciso melhorar-lo + dá pra entender)Private Sub Comando6_Click()Form_frm_menucads.Visible = FalseIf ((NmUsuario = text2) And (DsSenha = text4)) ThenForm_frm_menucads.Visible = TrueElseForm_frm_menucads.Visible = FalseDim vOk As IntegervOk = MsgBox("Verifique se Login e senha estão digitados corretamente", _vbExclamation + vbOK, "Aviso")End IfEnd Subcaso ainda tenha duvidas pode perguntar, pois tentarei explicar de outro jeito...boa sorte

Compartilhar este post


Link para o post
Compartilhar em outros sites

Existem duas formas, que conheço, de se fazer isso.

 

Lembre que programação em access é bem diferente de VB ou WEB.

Existem muitas funcionalidades que facilitam e muito a programação.

 

Vamos lá:

A primeira seria cria uma variavel publica em um modulo qualquer. Ex:

public login as string

 

Quando você logar apenas faça:

login = valorQueDeseja

 

Com isso a variavel login fica disponivel em quanquer formulario.

Outra forma é colocar um controle TEXTO em um formulario que ficara aberto o tempo todo.

Assim voce acessa o controle da seguinte forma:

 

Forms![MAIN]!txtLogin

 

onde MAIN é o nome do formulario criado.

 

Veja se funciona... qualquer duvida estamos ai.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Oi....valeu pela dica, + sinceramente não entendi nada..., acho a programação do access super parecida com vb...tanto é q mta coisa q eu fazia em vb funcionou no access.....pode me explicar melho como alterar o código..., mandar alterado ....valeu

Compartilhar este post


Link para o post
Compartilhar em outros sites

Oi....valeu pela dica, + sinceramente não entendi nada..., acho a programação do access super parecida com vb...tanto é q mta coisa q eu fazia em vb funcionou no access.....pode me explicar melho como alterar o código..., mandar alterado ....valeu

Ola.Na verdade a sintaxe de programação é a mesma. Os dois utilizando a linguagem VB.Porem a maneira como se acessa os controles ou se cria uma consulta é diferente, ou pode ser otimizada pelo access.Um exemplo simples é que, voce pode colocar um valor de um controle de formulario dentro de um objeto consulta do access, assim quando você muda o valor do controle e executa a query a mesma ja é filtrada.Mas deixamos isto de lado.Fazer um sistema de login no access, não é muito recomendado. Já que você pode, a qualquer momento abrir as tabelas, consultas ou forms e alterar o que quiser. Já que não é um sistema compilado.Mas faça o seguinte.Crie um formulario com o nome MAIN e coloque um controle TEXTO. chame de USUARIO.Agora crie uma consulta no access, que fara o SELECT na tabela de usuarios.Na consulta onde normalmente colocariamos no VB:SQL = SQL & " WHERE USUARIO = '" & vUsuario & "'"Faremos assim na consulta access:select ... from ... where USUARIO = Forms!Main!USUARIOassim que executar a consulta ele ira verificar o usuario com o valor que estiver no campo texto.O formulario deve estar aberto para que funcione.Esta é uma das formas de se fazer um filtro em uma QUERY que no VB nao conseguimos fazer, a nao ser no codigo.Qualquer duvida estou a disposicao

Compartilhar este post


Link para o post
Compartilhar em outros sites

Oi....valeu pela dica, + sinceramente não entendi nada..., acho a programação do access super parecida com vb...tanto é q mta coisa q eu fazia em vb funcionou no access.....pode me explicar melho como alterar o código..., mandar alterado ....valeu

Ola.Na verdade a sintaxe de programação é a mesma. Os dois utilizando a linguagem VB.Porem a maneira como se acessa os controles ou se cria uma consulta é diferente, ou pode ser otimizada pelo access.Um exemplo simples é que, voce pode colocar um valor de um controle de formulario dentro de um objeto consulta do access, assim quando você muda o valor do controle e executa a query a mesma ja é filtrada.Mas deixamos isto de lado.Fazer um sistema de login no access, não é muito recomendado. Já que você pode, a qualquer momento abrir as tabelas, consultas ou forms e alterar o que quiser. Já que não é um sistema compilado.Mas faça o seguinte.Crie um formulario com o nome MAIN e coloque um controle TEXTO. chame de USUARIO.Agora crie uma consulta no access, que fara o SELECT na tabela de usuarios.Na consulta onde normalmente colocariamos no VB:SQL = SQL & " WHERE USUARIO = '" & vUsuario & "'"Faremos assim na consulta access:select ... from ... where USUARIO = Forms!Main!USUARIOassim que executar a consulta ele ira verificar o usuario com o valor que estiver no campo texto.O formulario deve estar aberto para que funcione.Esta é uma das formas de se fazer um filtro em uma QUERY que no VB nao conseguimos fazer, a nao ser no codigo.Qualquer duvida estou a disposicao
Oi...na boa, novamente não consegui entender onde está querendo chegar......afinal meu código está certo ou errado?se possivel me mande um exemplo com as aterações no meu código.....obrigada

Compartilhar este post


Link para o post
Compartilhar em outros sites

Private Sub Comando6_Click()Form_frm_menucads.Visible = FalseIf ((NmUsuario = text2) And (DsSenha = text4)) ThenForm_frm_menucads.Visible = TrueElseForm_frm_menucads.Visible = FalseDim vOk As IntegervOk = MsgBox("Verifique se Login e senha estão digitados corretamente", _vbExclamation + vbOK, "Aviso")End IfEnd Sub

Private Sub Comando6_Click()docmd.Close acForm, "Form_frm_menucads" If ((NmUsuario = Me.text2) And (DsSenha = Me.text4)) Thendocmd.openForm("Form_frm_menucads")Elsedocmd.openForm("Form_frm_menucads")Dim vOk As IntegervOk = MsgBox("Verifique se Login e senha estão digitados corretamente", _vbExclamation + vbOK, "Aviso")End IfEnd Subutilizamos para varias operacoes o objeto DoCmde para acessarmos o Formulario corrente utilizamos o ME, o uso não é obrigatorio, mas evita erros

Compartilhar este post


Link para o post
Compartilhar em outros sites

Private Sub Comando6_Click()docmd.Close acForm, "Form_frm_menucads" If ((NmUsuario = Me.text2) And (DsSenha = Me.text4)) Thendocmd.openForm("Form_frm_menucads")Elsedocmd.openForm("Form_frm_menucads")Dim vOk As IntegervOk = MsgBox("Verifique se Login e senha estão digitados corretamente", _vbExclamation + vbOK, "Aviso")End IfEnd Sub_________________________________________________________________________________________Oi....valeu pela ajuda....funcionou......agora tenho outro problema ese menucads não existe +......isso não tem problematenho um outro probleminha que gostaria de resolver logo, ou tentar explicar logo abaixo se puder me ajudar eu agradeço...em todas as minhas tabelas tenho três campos, no qual não será exibido ao usuário (nome do usuário, data de inclusão e data de alteração).....entãopreciso que esses campos sejam preencidos no momento que o usuário entrar no sistema, ou seja, o campo nome do usuário será preenchido logo qdo o mesmo se logar....os campos de data deverão ser preenchido com a data de qdo o usuário entrou no sistema, ou seja, deverá puxar do pc do usuário..... é basicamente isso que precisose puder me ajudar eu agradeçode klker forma obrigada pela atenção

Compartilhar este post


Link para o post
Compartilhar em outros sites

Faz o seguinte.

 

Cria uma variavel publica em um modulo de preferencia assim:

 

Option Compare DatabaseOption ExplicitPublic CdUsuario as string

As duas primeiras linhas provavelmente ja viram escritas.

 

Quando logar o usuario coloca o nome dele nesta variavel:

 

CdUsuario = Me.txtUsuario

Quando for inserir ou alterar qualquer dado passa este parametro.

Quanto aos campos de data utiliza o Date() que resolve.

 

Se nao entendeu muito bem me avisa

Compartilhar este post


Link para o post
Compartilhar em outros sites

Faz o seguinte.

 

Cria uma variavel publica em um modulo de preferencia assim:

 

Option Compare DatabaseOption ExplicitPublic CdUsuario as string
As duas primeiras linhas provavelmente ja viram escritas.

 

Quando logar o usuario coloca o nome dele nesta variavel:

 

CdUsuario = Me.txtUsuario
Quando for inserir ou alterar qualquer dado passa este parametro.

Quanto aos campos de data utiliza o Date() que resolve.

 

Oiiii.....

desculpa, + não manjo mto de acess com vb deste jeito sei somente o basico do basico, portanto não consegui ntender direito, agradeço a paciência e se puder me ajudar de outra forma...

 

ah...e o login não funcionou segue abaixo como ficou o código:

Private Sub Comando6_Click()

 

If ((NmUsuario = Me.text2) And (DsSenha = Me.text4)) Then

Else

Dim vOk As Integer

vOk = MsgBox("Verifique se Login e senha estão digitados corretamente", _

vbExclamation + vbOK, "Aviso")

 

End If

End Sub

 

ps: qdo é efetuado o login não tem q aparecer nada, somente liberar o menu q criei (q até agora não consegui bloquear).....

cheguei num ponto q não consigo sair (nada tem funcionado, e estou sendo super prescionada) se puder me ajudar vou ficar mto grata e feliz.....

 

novamente obrigada pela atenção e paciência

Compartilhar este post


Link para o post
Compartilhar em outros sites

Private Sub Comando6_Click()If ((NmUsuario = Me.text2) And (DsSenha = Me.text4)) ThenElseDim vOk As IntegervOk = MsgBox("Verifique se Login e senha estão digitados corretamente", _vbExclamation + vbOK, "Aviso")End IfEnd Sub

o que você pode fazer pra facilitar o login é o seguinte.

 

nmUsuario = DLookUp("CAMPO_NOME_USUARIO", "TABELA_USUARIO", "WHERE LOGIN='" & me.Text2 & "' AND SENHA='" & me.text4 & "'")if not isnull(nmUsuario) and trim(nmUsuario) <> "" thenElseDim vOk As IntegervOk = MsgBox("Verifique se Login e senha estão digitados corretamente", _vbExclamation + vbOK, "Aviso")End If

o comando DLookUp executa uma query rapida no banco de dados.

 

Quanto ao menu me explique melhor q tento ajudar

Compartilhar este post


Link para o post
Compartilhar em outros sites

Oi...não sei o q estou fazendo de errado + seus códigos não estão funcionando....+ deixa isso pra lá....o menu no qual citei antes foi um que fiz pelo seguinte caminhoferramentas/personalizar ....dai aprendi a criar um menu q fica parecido com o menu convencional dos programas.o q fiz foi tirar tdas as barras q existem e deixei somente o q fiz (q contém somente os forms q o usuário poderá acessar) + quero bloqueá-lo pois preciso q o usuário se identifique antes de começar a utilizar o sistema (preciso q ele se log antes por causa dos três campos q havia comentado antes e tbm não entendi como fazer (usuário e 2 campos de data))obrigada por tdops: se você tiver msn e puder conversar depois das 21h me passa, pois assim ento te explicar melhor o q estou precisandoValeu por tdo (se eu estiver sendo mto chata por favor fale, para q possa parar de te pertubar)

Compartilhar este post


Link para o post
Compartilhar em outros sites

Ola.. sobre esta parte:"quero bloqueá-lo pois preciso q o usuário se identifique antes de começar a utilizar o sistema(...)"se ainda ñ resolveu, queria sugerir:d 1 boa olhada, na Ajuda do Access, nos tópicos:- "Sobre senhas", "Criar, alterar ou remover senhas" e“Sobre a segurança em nível de usuário”..quem sabe isso ajude.. até + e boa sorte..

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.