Descrição:
Como posso inserir restrições a usuários para envio de comandos via PowerExplorer e via XPowerMenuCreator?
Solução:
No PowerExplorer
1. Acesse o script do objeto Retangulo1 no XControl XPowerMenuCreator.
2. Dê um duplo clique no retângulo e acesse o script. Esse script é responsável pela criação da janela PowerExplorer e do menu de seleção, e também pela árvore de seleção de proteções, medidas e comandos.
3. Busque pelo método Show do objeto PE no script a partir do comando Procurar: (este método será encontrado 4 vezes).
4. Neste exemplo, foi criado um script que limita o envio de comandos ao grupo adm. Este script deve ser posicionado imediatamente antes do método Show do objeto PE. Para o seu caso, crie uma lógica de acordo com os grupos criados no seu aplicativo.
If Application.IsUserMemberOfGroup ("adm", Application.User) then PE.ReadOnly = True Else PE.ReadOnly = False End if
A partir do método IsUserMemberOfGroup do Viewer, o script testa se o usuário logado pertence ao grupo configurado no parâmetro GroupName do método (neste caso, adm), e concede ou não permissão para o envio de comandos.
No XPowerMenuCreator
1. Também no script do objeto Retangulo1 do XControl XPowerMenuCreator, crie um script para apagar a opção Commands da árvore:
Para isto, busque por Commands no script a partir do comando Procurar. O seguinte script deve ser encontrado:
2. Depois, crie um script que restrinja o aparecimento desta janela. Neste caso, também é possível utilizar o método IsUserMemberOfGroup para testar se o usuário logado pertence a determinado grupo. No exemplo, foi criado um script testando a presença do usuário logado no grupo adm:
auxCommand = “!Commands|”
End if
3. No exemplo acima, caso o usuário não pertença ao grupo adm, a opção Commands não será habilitada; no final, temos o seguinte script:
Para mais informações sobre os métodos IsUserMemberOfGroup e ShowPowerExplorer, consulte o Manual de Referência de Scripts do Elipse E3/Power.