Fórum Ainda não consegui restringir acesso de usuario #212423
08/02/2004
0
Sei a logica mais não sei como fazer por não dominar ainda bem o uso do if e else que acredito que seja por ai que vai se fazer.
Tipo, se tem no menu cadastro = cliente, Fornecedor, livro caixa, contas a pagar
se o usuario tiver nivel 1 ele acessa todo o menu cadastro
se o usuario tiver nivel 2 ele acessa apenas cliente e fornecedor o livro caixa e contas a pagar fica desabilitado
Mais eu queria essas melhorias em cima do meu codigo abaixo, e possivel?
[color=blue:1a456d7c7a]1º No botão OK tem o seguinte
procedure Tformlogin.BitBtn1Click(Sender: TObject);
begin
if not tabelaUsuario.Locate(´senha;login´,vararrayof([editsenha.Text,editusuario.text]),[]) then
begin
Application.MessageBox(´Ops! Usuario e/ou senha não autorizados!´,´Atenção!´,mb_iconStop+mb_ok);
editsenha.clear;
editusuario.SetFocus;
editusuario.SelStart:=0;
exit;
end
else
begin
fechar:=1;
close;
end; [/color:1a456d7c7a]
Alguem pode me ajudar?[img][/img]
Wagner
Curtir tópico
+ 0Posts
08/02/2004
Wagner
Gostei + 0
09/02/2004
Godzilla_xf
No evento OnClique do botão de entrar faça:
if (UserName.text = TabUsuarioUserName.value) and (Senha.text = TabUsuarioSenha.value) and (TabUsuarioNivel.value = ´Administrador´) then
begin
Todos_os_menus.enable := true;
end
else
if (UserName.text = TabUsuarioUserName.value) and (Senha.text = TabUsuarioSenha.value) and (TabUsuarioNivel.value = ´Digitador´) then
begin
os_menus_que_quiser.enabled := true;
e_os_outros.enabled := false;
end
else
if (UserName.text = TabUsuarioUserName.value) and (Senha.text = TabUsuarioSenha.value) and (TabUsuarioNivel.value = ´Gerencia´) then
begin
Abilita_os_menus_que_vc_quiser.enabled := true;
e_os_outros.enabled := false;
end
else
application.messageBox(´Atenção, UserName ou Senha invalidos.´,´Aviso de erro´, mb_ok + mb_iconError);
[b:027612926e]não sei c é isso que vc quer mais derepente com esse exemplo simples vc possa tirar algo de util qualquer coisa me fala manda mp.
espero ter ajudado.[/b:027612926e]
falow
Gostei + 0
09/02/2004
Fabio.hc
No MainMenu1 vc coloca na propriedade tag do itens o seguinte:
Cliente1.tag = 2;
Fornecedor1.tag = 2;
LivroCaixa1 = 1;
ContasaPagar1 = 1;
Quando o usuário logar no sistema vc coloca a variavel nivel com o nivel do usuário, exemplo:
-nivel:=1 so acessa onde tag for 1 ou maior.
-nivel:=2 so acessa onde tag for 2 ou maior.
procedure Tformlogin.BitBtn1Click(Sender: TObject); begin if not tabelaUsuario.Locate(´senha;login´,vararrayof([editsenha.Text,editusuario.text]),[]) then begin Application.MessageBox(´Ops! Usuario e/ou senha não autorizados!´,´Atenção!´,mb_iconStop+mb_ok); editsenha.clear; editusuario.SetFocus; editusuario.SelStart:=0; exit; end else begin fechar:=1; nivel:=(nivel do usuario); <- close; end; end;
procedure TForm1.Cliente1Click(Sender: TObject); begin if Nivel > Cliente1.Tag then ShowMessage(´Usuário não tem permissão´) else ... end; procedure TForm1.Fornecedor1Click(Sender: TObject); begin if Nivel > Fornecedor1.Tag then ShowMessage(´Usuário não tem permissão´) else ... end; procedure TForm1.LivroCaixa1Click(Sender: TObject); begin if Nivel > LivroCaixa1.Tag then ShowMessage(´Usuário não tem permissão´) else ... end; procedure TForm1.ContasaPagar1Click(Sender: TObject); begin if Nivel > ContasaPagar1.Tag then ShowMessage(´Usuário não tem permissão´) else ... end;
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)