Algu... pode.. me expl.. com.. eu faç.. pra limitar tal usu.
Alguém poderia me explicar como eu faço .para qdo eu for cadastrar um usuario no meu sistema . EX:
o usuario admin tem acesso total
o usuario atendente só consulta
o usuario caixa só inclusão ..
Muito Obrigado !!!
o usuario admin tem acesso total
o usuario atendente só consulta
o usuario caixa só inclusão ..
Muito Obrigado !!!
Anonymous
Curtidas 0
Respostas
Anonymous
07/02/2003
dentro da tabela de usuarios que voce criou...crie tbm campos para as permissoes...por ex.:
um campo chamado ACESSO...que pode ser numerico....aí vc convenciona..quem é ZERO tem acesso total...quem é UM tem um tipo de acesso e assim por diante....depois é só ficar testando esta campo para cada tela que voce cria e liberar opções...
um campo chamado ACESSO...que pode ser numerico....aí vc convenciona..quem é ZERO tem acesso total...quem é UM tem um tipo de acesso e assim por diante....depois é só ficar testando esta campo para cada tela que voce cria e liberar opções...
GOSTEI 0
Anonymous
07/02/2003
mais ai ..essa logica eu tenho ..mas na pratica que ta dificil..se vc tiver alguma rotina ..parecida ..muito obrigado pela atenção
GOSTEI 0
Skaarj
07/02/2003
Eu faço assim.. Crio uma tabela USUARIOS com os campos:
USUARIO VARCHAR(10)
SENHA VARCHAR (6)
NIVEL INTEGER
Agora digamos que tenha 3 usuários de niveis 1,2 e 3 [o maior é maior acesso]
Dae na tela de senhas assim:
[uso um dblookupcombobox pra colocar o nome dos usuários]
if dblookupcombobox1.text=IBTable1USUARIO.asstring then
begin
if edit1.text=ibtable1SENHA.asstring then
begin
if ibtable1nivel.asinteger=1 then
begin
form1.show;
form1.button2.enabled:=false;
form1.button3.enabled:=false;
form1.button1.enabled:=true;
frmsenha.hide;
end;
if ibtable1nivel.asinteger=2 then
begin
form1.show;
form1.button2.enabled:=true;
form1.button3.enabled:=false;
form1.button1.enabled:=true;
frmsenha.hide;
end;
if ibtable1nivel.asinteger=3 then
begin
form1.show;
form1.button2.enabled:=true;
form1.button3.enabled:=true;
form1.button1.enabled:=true;
frmsenha.hide;
end;
end
else
begin
application.messagebox(´Senha incorreta´,´Exemplo´,0);
end;
end
else
begin
application.messagebox(´Usuário invalido´,´Exemplo´,0);
end;
Nesse exemplo bem simples ele vai verificar se a senha e o usuário estao corretos, dae vai olhar qual o nível foi definido e liberar 1, 2 ou 3 botoes no form1..
Se for algo diferente, me fala no ICQ q a gnt tnta resolver.. Blz?
USUARIO VARCHAR(10)
SENHA VARCHAR (6)
NIVEL INTEGER
Agora digamos que tenha 3 usuários de niveis 1,2 e 3 [o maior é maior acesso]
Dae na tela de senhas assim:
[uso um dblookupcombobox pra colocar o nome dos usuários]
if dblookupcombobox1.text=IBTable1USUARIO.asstring then
begin
if edit1.text=ibtable1SENHA.asstring then
begin
if ibtable1nivel.asinteger=1 then
begin
form1.show;
form1.button2.enabled:=false;
form1.button3.enabled:=false;
form1.button1.enabled:=true;
frmsenha.hide;
end;
if ibtable1nivel.asinteger=2 then
begin
form1.show;
form1.button2.enabled:=true;
form1.button3.enabled:=false;
form1.button1.enabled:=true;
frmsenha.hide;
end;
if ibtable1nivel.asinteger=3 then
begin
form1.show;
form1.button2.enabled:=true;
form1.button3.enabled:=true;
form1.button1.enabled:=true;
frmsenha.hide;
end;
end
else
begin
application.messagebox(´Senha incorreta´,´Exemplo´,0);
end;
end
else
begin
application.messagebox(´Usuário invalido´,´Exemplo´,0);
end;
Nesse exemplo bem simples ele vai verificar se a senha e o usuário estao corretos, dae vai olhar qual o nível foi definido e liberar 1, 2 ou 3 botoes no form1..
Se for algo diferente, me fala no ICQ q a gnt tnta resolver.. Blz?
GOSTEI 0
Anonymous
07/02/2003
Você cria uma tabela com todas as permissões de um usuário, isso te dá um ótimo controle sobre os acessos, pois imagine que normalmente um caixa tem os acessos pré-definidos pelo sistema e você queira dar um acesso que não estava previsto para aquele nível de usuário. Bem aí você teria que mudar o nível dele dando acessos que você não precisava dar, então a solução é conceder acesso por acesso. Ex.:
TABELA: acessos
==========================
usuario VARCHAR(10) CHAVE PRIM.
modulo VARCHAR(4) CHAVE PRIM.
==========================
Ex.
EDUARDO CX01
EDUARDO FIN0
EDUARDO REL8
EDUARDO MANU
EDUARDO PARM
MARIA CX02
MARIA CX03
...
E aí você faz uma função que lê, quando o usuário entra no sistema, todos os acessos e coloca em um ARRAY para o acesso ficar mais rápido e marca todas as opções permitidas (em botões, menus...) como True. por ex.:
mnuCaixaVenda.Enabled := FuncaoQualquerProcAcesso(´CX01´);
TABELA: acessos
==========================
usuario VARCHAR(10) CHAVE PRIM.
modulo VARCHAR(4) CHAVE PRIM.
==========================
Ex.
EDUARDO CX01
EDUARDO FIN0
EDUARDO REL8
EDUARDO MANU
EDUARDO PARM
MARIA CX02
MARIA CX03
...
E aí você faz uma função que lê, quando o usuário entra no sistema, todos os acessos e coloca em um ARRAY para o acesso ficar mais rápido e marca todas as opções permitidas (em botões, menus...) como True. por ex.:
mnuCaixaVenda.Enabled := FuncaoQualquerProcAcesso(´CX01´);
GOSTEI 0
Anonymous
07/02/2003
Valeu ..muito obrigado pela ajuda !!!
GOSTEI 0
Qmd
07/02/2003
Se vc NAO estiver usando BDE, tabelas paradox /xBase ou similares de uma olhada em http://usercontrol.da.ru. Trata-se de um pacote de componentes freeware justamente pra controlar usuarios e permissoes de acesso.
Veja esse demo: http://pessoal.onda.com.br/qmd/ADODemo.zip
Falow
QmD
Veja esse demo: http://pessoal.onda.com.br/qmd/ADODemo.zip
Falow
QmD
GOSTEI 0