Fórum controle de menu #373899
20/08/2009
0
e o seguinte
estou criando um sitema de comercio onde tenho um formulario principal um formulario de Acesso onde esse Acesso vem de Usuarios= vendedores onde vao acessar o sistema ate ai esta tudo bem
fiz uma tabela detalhe para q seja detalhe da tabela vendedor essa tabela e uma tabela chamada perfil de usuarios onde ela eu tenho os campos
(Nome) onde esse nome eu pego todas as acoes q estao dentro de um ActionManager ligado a um ActionMaiMenuBar e um campo (Permissao) onde onde vao ficar os Valores S ou N referente ao nome da acao do menu ate ai consegui fazer o codigo q é o seguinte;
var
i: integer;
begin
for i:=1 to pred (fprincipal.acao.ActionCount) do
begin
with datasource3.DataSet do
begin
append;
FieldByName (´nome´).AsString:= (fprincipal.acao.Actions[i].Name);
FieldByName (´permissao´).AsString:= ´F´;
post;
aki carrego valores da acao e ponho tudo pra F para aparecer tudo desabilitado
gostaria de saber como faço no formulario princiapal ele verificar na tabela perfil a ação pelo nome e se o campo permissao estiver em F ele desabilitar aquela ação dentro do actionManager e no caso se For S ele deixar Habilitado isso nao to conseguindo implementar
logo de Antemao nao quero usar o tal Componente UserControl queria saber o codigo ou alguma ideia posso ate usar user control mas assim nunca vo ser um progrador de verdade ja q estou em faze de iniciamento ainda
agradeço a qualquer atenção
Keliniciante
Curtir tópico
+ 0Posts
20/08/2009
Facc
O site do componente [url]www.usercontrol.net[/url]
Gostei + 0
20/08/2009
Keliniciante
Gostei + 0
20/08/2009
Facc
[url]http://www.linhadecodigo.com.br/Artigo.aspx?id=822[/url]
tem um outro componente, mas te dou uma dica... opte por soluções que facilitam sua vida.
Gostei + 0
20/08/2009
Keliniciante
Gostei + 0
20/08/2009
Martins
Como está seu código?
vc poderia acrescentar a ele algo como:
ActionManager1.Action4.Enabled:= False;
Não testei esse código, mas é uma idéia e vc poderia ver o que consegue.
Qualquer coisa, retorne aqui.
Boa sorte e bons códigos.
Gostei + 0
20/08/2009
Martins
Como está seu código?
vc poderia acrescentar a ele algo como:
ActionManager1.Action4.Enabled:= False;
Não testei esse código, mas é uma idéia e vc poderia ver o que consegue.
Qualquer coisa, retorne aqui.
Boa sorte e bons códigos.
Gostei + 0
21/08/2009
Osocram
Fiz uma tela de segurança no meu sistema....
Dae por exemplo fiz uma rotina que trazia todas as telas abertas do sistema, dae eu verificava se tinha ou não no meu segurança... e perguntava se o usuario queria cadastrar ou atualizar.
Ao selecionar o formulario tinha uma funçao que pegava todos os TActionList do form (pegava o Nome, Caption); geralmente o caption era p facilicar a vida do usuario p saber qual action era aquilo.. então sempre deixava caption ´entendivel´.
Dae no evento ONUpdate do ActionList eu disparava uma função que fazia um select no banco trazendo aquele tela, os action e eu setava .enable true ou false.
Não sei se ficou claro.
Tbm não sei se respondi a sua pergunta.
Ja adiantando essas rotias eu perdi numa formatação
:(
Incluisive iria precisar dele p um projeto novo.. e vou ter q refazer novamente
Gostei + 0
24/08/2009
Keliniciante
O Q SE RESOLVE DE VERDADE E CODIGO DENTRO DA LOGICA EM QUE VALE A PERGUNTA
DEPOIS DE MUITO QUEBRAR A CABEÇA ESTA AKI
dataset.first;
while not dataset.eof do begin
TAction(FindComponent( dataset.FieldByName(´nome´).AsString )).enabled := (dataset.FieldByName(´nome´).AsString = ´V´);
dataset.next;
NO ONSHOW DO FORMULARIO FAZ COM Q BLOQUEIE ACOES Q NAO ESTEJAM COM V NO CASO O F
MESMO ASSIM VALEU A ATENÇÃO DE VOCES
Gostei + 0
24/08/2009
Fabiojt
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)