Ir para conteúdo
Fórum Script Brasil
  • 0

Niveis De Acesso


BRUCCE

Pergunta

Bom dia Pessoal!

Tenho um BC com controle de nivel de acesso, vou precisar abrir essa banco p/ que alguns funcionários realizem consultas, como posso fazer para que usuário XX tenha acesso ao FORM YY, mas que não consiga realizar ALTERAÇÕES, INCLUSÕES OU EXCLUSÕES?

Obrigado

Link para o comentário
Compartilhar em outros sites

12 respostass a esta questão

Posts Recomendados

  • 0

Explique melhor como está desenvolvendo seu bd, você está usando o um formulário personalizado de login com uma tabela onde você cadastra os usuários ou você está utilizando a segurança do Access?

Se for personalizado dá uma olhada no seguinte tópico:

http://scriptbrasil.com.br/forum/index.php...75&hl=nivel

Link para o comentário
Compartilhar em outros sites

  • 0

MrMajl,

O meu sistema de login é baseado num formulario, onde eu cadastro os usuário, no entanto, foi você quem me ajudou a "ajeita-lo".

Estou querendo implantar um formula, para que "tal" usuário consiga consultar as informoções e que outros possam alterar...

Obrigado,

Jefferson

Explique melhor como está desenvolvendo seu bd, você está usando o um formulário personalizado de login com uma tabela onde você cadastra os usuários ou você está utilizando a segurança do Access?

Se for personalizado dá uma olhada no seguinte tópico:

http://scriptbrasil.com.br/forum/index.php...75&hl=nivel

Link para o comentário
Compartilhar em outros sites

  • 0

Fera implemente outras validações (comparações) para cada nivel de usuário que você tem, isso só quem poderá definir é você mesmo, a ideia é a mesma do exemplo, você pode criar formulários onde não seja permitido alterar e outro onde é permitido e abrir um ou outro conforme o usuário!

Link para o comentário
Compartilhar em outros sites

  • 0

não tem como fazer um codigo baseado em if ?

exemplo..

vamos supor que o cara defina niveis de acesso de 1 a 5 onde 1 é usuario e 5 é administrador

ai então o cara se loga na aplicacao.. isso já registra o nivel atual do usuario logado.

ai então ao clicar num botao de menu pra abrir um form.. rola um if

exemplo:

If Dlookup("[NIVEL]", "USUARIOS", "[uSER] ='" & Forms!LOGIN![uSER] & "'") = 1 then

msgbox "Voce não tem acesso a este item!"

ElseIf Dlookup("[NIVEL]", "USUARIOS", "[uSER] ='" & Forms!LOGIN![uSER] & "'") = 2 then

docmd.openform "formulario tal", , , ,acFormReadOnly

ElseIf Dlookup("[NIVEL]", "USUARIOS", "[uSER] ='" & Forms!LOGIN![uSER] & "'") = 3 then

docmd.openform "formulario tal", , , ,acFormAdd

ElseIf Dlookup("[NIVEL]", "USUARIOS", "[uSER] ='" & Forms!LOGIN![uSER] & "'") = 5 then

docmd.openform "formulario tal", , , ,acFormEdit

End If

alias eu to usando assim no meu BD e funciona.

Editado por Humm
Link para o comentário
Compartilhar em outros sites

  • 0

Bom dia, Humm!

Desculpe-me a ignorância, mais sou novato, não entendi...

Os nivel de acesso são, ADM e Usuários

No meu BD, uso a seguinte formula:

Else

If formSelecionado = "SEUFORM" And Me.xxx <> "Administrador" Then

MsgBox "Desculpe, você não tem acesso a esse procedimento!", vbOKOnly + vbInformation

Else

frameMain.SourceObject = formSelecionado

labTitulo.Caption = rotuloForm

Ex. Quero que no FORM "XX" os Usuários consigam consultar as Informações, mas que não consiga Adicionar, Excluir ou ALterar.

Se você preferir, posso enviar-lhe uma cópia do meu BD..

Abçs!

Valeu

Link para o comentário
Compartilhar em outros sites

  • 0

amigo, vou explicar como fiz aqui.

criei uma tabela USUARIOS onde cadastro USER, SENHA e NIVEL

então ai eu cadastro:

USER, SENHA, NIVEL

HUMM, 123, 5

OUTRO, 321, 1

nisso to considerando os numeros de nivel como:

1 - Sem permissao de nada

2 - Somente Leitura

3 - Somente Adiciona Registros

5 - Administrador

então ao iniciar a aplicacao, primeiro vem um form de LOGIN

nele o usuario se identifica e se loga no sistema.. ao se logar esse form fica automaticamente oculto e se abre o form do menu principal onde tem os botoes que abrem os diversos outros formularios.

e em cada botao, no procedimento "ao clicar" acontece isso que postei la em cima.

(aqui o dlookup vai pesquisar qual o nivel do usuario logado e o If vai comparar com o nivel 1. caso o user seja nivel 1, então virá a msgbox negando acesso.)

If Dlookup("[NIVEL]", "USUARIOS", "[uSER] ='" & Forms!LOGIN![uSER] & "'") = 1 then

msgbox "Voce não tem acesso a este item!"

(caso o user seja nivel 2, o acFormReadOnly vai abrir o form somente pra leitura.)

ElseIf Dlookup("[NIVEL]", "USUARIOS", "[uSER] ='" & Forms!LOGIN![uSER] & "'") = 2 then

docmd.openform "formulario tal", , , ,acFormReadOnly

(caso o user seja nivel 3, o acFormAdd vai abrir o form somente pra adicionar, mas negado pra editar.)

ElseIf Dlookup("[NIVEL]", "USUARIOS", "[uSER] ='" & Forms!LOGIN![uSER] & "'") = 3 then

docmd.openform "formulario tal", , , ,acFormAdd

(caso o user seja nivel 5, o acFormEdit vai abrir o liberado.)

ElseIf Dlookup("[NIVEL]", "USUARIOS", "[uSER] ='" & Forms!LOGIN![uSER] & "'") = 5 then

docmd.openform "formulario tal", , , ,acFormEdit

entendeu?

Link para o comentário
Compartilhar em outros sites

  • 0

Ola pessoal..

De todos os métodos de niveis de acesso pra serem executados no access, esse realmente é o melhor e o funcionou corretamente.. Parabens Humm.

Estou implementando esse seu metodo.. mas estou com apenas dois probleminhas...

1 - Como ocultar o form de login apos autenticar o usuario e a senha? Pois estou tendo q deixar ele ativo pra que ele possa buscar o usuario logado, não pode fecha-lo.

2 - O código de Dlookup em um botao com o evento ao clicar funciona corretamente, mas Eu possuo menus para acesso aos forms.. e qd eu clico no Menu cadastro - Formulario tal.. ele não respeita nenhuma regra. já tentei colocar em todos os eventos do form.. mas não funcionou em nenhum.. você tem alguma sugestao?

Aguardo.

Link para o comentário
Compartilhar em outros sites

  • 0

coloquei no evento após atualizar do campo da senha dentro de uma condição IF

essa condição valida o usuario.. se ele passar na senha, entra esse comando.

DoCmd.RunCommand acCmdWindowHide

sobre a questao dos menus, eu não estou usando na minha aplicação. apenas uso os botoes do dos menus formularios que fiz.

porem eu tenho certeza que tb há como condicionar, dentro de cada IF de nivel de acesso, os menus do access.. vou dar uma olhada nisso

depois vou postar somente a parte de login que criei pra posteridade.

Editado por Humm
Link para o comentário
Compartilhar em outros sites

  • 0

Amigos, sobre ocultar o form do login, coloque no ultimo evento, exemplo no botão acessar este comando que vai ocultar o form

Me.Visible = False

Sobre configurar niveis de acesso no menu, deixei um exemplo abaixo sobre definir acesso por usuario no menu.

http://www.4shared.com/file/34481865/1044c...rified=ce885920

Video aula de como fazer menus e configura acesso, este peguei na comunidade Access Brasil no Orkut

http://www.4shared.com/file/37163507/d4d46...rified=ce885920

At.

Everaldo

Link para o comentário
Compartilhar em outros sites

  • 0
Guest Visitante

Everaldo, será que você podia me ajudar a implementar nesse exemplo que você deu, controle de acessos no formulário tb, de inclusão, exclusão e alteração.

Grato,

Vandeir

vandeirr@hotmail.com

Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,3k
    • Posts
      652,5k
×
×
  • Criar Novo...