Neste artigo, serão mostradas algumas alternativas para a personalização da interface do PowerExplorer.
Acessando as propriedades e métodos do objeto
Para realizar qualquer alteração no comportamento da interface, primeiramente é necessário acessar o script do objeto XPowerMenuCreator, que é um XControl pertencente à biblioteca PowerControls.
No script do objeto Retangulo1, utilize a ferramenta Procurar do editor de scripts para encontrar o texto “ShowPowerExplorer”.
Será retornada a linha que contém este método. Ele geralmente está localizado por volta da linha 300, podendo esta posição variar de acordo com a versão da biblioteca sendo utilizada.
Logo abaixo desta linha, adicione o seguinte script:
Com isto, o objeto PowerExplorer está referenciado na variável de script PE. Assim, será possível acessar todas as suas propriedades e métodos. Os mais relevantes serão mostrados a seguir.
Comportamento de comandos intertravados
O PowerExplorer disponibiliza três comportamentos diferentes para a aba de comandos intertravados. Para isto, configure a propriedade CommandInterlockMode com um dos seguintes valores:
- 0 – cimDoNothing: não envia o comando, não mostra o aviso de intertravamento e nem desabilita o botão Operar da aba Comandos do PowerExplorer.
- 1 – cimWarning: permite o envio do comando, mas avisa ao usuário que aquela unidade de comando está intertravada. A mensagem é mostrada junto com a mensagem que pede confirmação para o envio do comando.
- 2 – cimBlockCommand: bloqueia o envio do comando, desabilitando os botões mesmo que existam scripts configurados. A exceção é o botão Cancelar, que nunca é desabilitado.
O trecho de script deve ficar assim:
PE.CommandInterlockMode = xxx ‘0, 1 ou 2
Abrindo a janela no modo Somente Leitura
Deve-se alterar a propriedade ReadOnly. Quando ela é configurada como True, não é permitido modificar as medidas nem enviar comandos (os botões Selecionar, Operar e Cancelar do comando selecionado na aba Comandos ficam desabilitados). O valor padrão desta propriedade é False.
O trecho de script deve ficar assim:
PE.ReadOnly = xxx ‘TRUE ou FALSE
Mostrando a timestamp das medidas
Deve-se alterar a propriedade ShowMeasurementTimestamp. Quando ela é configurada como True, será mostrada uma coluna a mais na janela do PowerExplorer, com o timestamp da medida. Esta configuração se aplica às três abas que mostram medidas: Analógicas, Discretas e Proteções.
O trecho de script deve ficar assim:
PE.ShowMeasurementTimestamp = xxx ‘TRUE ou FALSE
Escondendo abas
Deve-se alterar a propriedade TabsEnabled. Esta propriedade permite configurar quais abas estão visíveis na janela do PowerExplorer. Se a janela já estiver aberta, as abas são atualizadas imediatamente. A propriedade aceita uma combinação da soma dos seguintes valores:
- 1: Mostra apenas a aba Analógicas
- 2: Mostra apenas a aba Discretas
- 4: Mostra apenas a aba Comandos
- 8: Mostra apenas a aba Proteções
Por exemplo, o valor 3 mostra as abas Analógicas e Discretas e esconde as abas Comandos e Proteções; o valor 12 mostra as abas Comandos e Proteções, e esconde as abas Analógicas e Discretas. O valor especial -1 mostra sempre todas as abas (valor padrão). O valor 0 (zero) não é aceito, ou seja, não é possível esconder todas as abas (esta tentativa gera um erro de script).
O trecho de script deve ficar assim:
PE.TabsEnabled = xxx ‘valor entre 1 e 15
Adicionando abas personalizadas
Deve-se utilizar o método InsertScreenTab:
A aba é inserida sempre na última posição. Seus parâmetros são:
- TabName: indica o nome interno desta nova aba. O método gera um erro de script se o nome da aba for uma string vazia ou um nome padrão (Analogs, Discretes, Commands ou Protections).
- TabTitle: indica o título da aba. Este é o texto que será visualizado pelo operador em tela. Se este parâmetro estiver vazio, é mostrado o valor informado no parâmetro TabName.
- ScreenPath: nome da tela que será aberta quando a aba for selecionada.
- Arg: parâmetro opcional, indica o argumento que será passado para a tela quando esta for aberta. Ao clicar na aba para ativá-la, o evento OnPreShow da tela é executado, recebendo então o valor passado no parâmetro Arg.
O trecho de script deve ficar assim:
PE.InsertScreenTab “AbaAlarmes”, “Alarmes”, “Tela_Alarmes”, MeaPath
Neste exemplo, ficará disponível para o operador uma aba com o título “Alarmes” que, ao ser clicada, abre a tela “Tela_Alarmes”. O equipamento em questão foi passado como argumento, portanto cabe ao desenvolvedor capturar esta informação no evento OnPreShow da tela e utilizá-la para configurar o filtro do seu banner de alarmes.
Alterando a aba inicial da janela
Deve-se configurar a propriedade ActiveTab. Ela recebe uma string com o nome da aba desejada. Os possíveis valores para ela são: Analogs, Discretes, Commands, Protections, ou qualquer outro nome caso o usuário tenha adicionado uma aba personalizada.
O trecho de script deve ficar assim:
PE.ActiveTab = “xxxx” ‘nome da aba
É importante lembrar que todos os métodos e propriedades do objeto estão documentados na Referência de Scripts do Elipse Power, na seção Visualização–PowerExplorer. Este artigo apresenta os mais relevantes, mas a leitura atenta da documentação do Elipse Power é recomendada para maiores informações sobre este assunto.