Personalizando a Biblioteca PowerControls

<< Clique para Mostrar o Sumário >>

 

Personalizando a Biblioteca PowerControls

Personalizar a biblioteca PowerControls requer um certo cuidado. É importante lembrar que esta biblioteca é desenvolvida e mantida pela Elipse Software, ou seja, caso o usuário realize alguma modificação em um XControl da biblioteca, esta personalização é perdida quando a biblioteca é eventualmente atualizada. Visando este cenário, este exercício demonstra a maneira recomendada para a personalização da biblioteca PowerControls, que consiste na criação de uma nova biblioteca contendo uma instância da biblioteca padrão.

Nesta aplicação, todos os Disjuntores devem conter o ícone da Proteção 79 ao lado do objeto. Para isto, vamos criar uma versão personalizada do objeto Breaker.

1.Apague o objeto ProtectionItem criado em Tela no exercício anterior.

2.Crie um novo XControl usando a opção Inserir XControl Em no item Bibliotecas de Objetos - XControls do Organizer, selecionando a opção <Nova Biblioteca>.

Opção Inserir XControl Em

Opção Inserir XControl Em

3.Configure o nome desta nova biblioteca.

4.Renomeie o objeto criado de "XControl1" para "BreakerCustom".

5.Instancie um objeto Breaker dentro do objeto BreakerCustom.

Inserir objeto Breaker

Inserir objeto Breaker

NOTA

Ao instanciar um XControl dentro de outro, cria-se uma dependência entre as bibliotecas. Agora, o objeto BreakerCustom da biblioteca criada só funciona corretamente caso a biblioteca PowerControls também esteja presente no Domínio.

 

6.Crie a propriedade SourceObject, que deve ser exatamente igual à do XControl original.

Propriedade SourceObject

Propriedade SourceObject

7.Associe a propriedade SourceObject à mesma propriedade interna da biblioteca. Para isto, selecione a aba Design do objeto BreakerCustom, clique com o botão direito do mouse no objeto Breaker1 e selecione a aba Associações. Associe a propriedade SourceObject do objeto Breaker1 à propriedade SourceObject do objeto BreakerCustom, conforme a figura a seguir.

Associação com a propriedade SourceObject

Associação com a propriedade SourceObject

8.Após este procedimento, crie os pontos referentes aos Terminais. Isto deve ser realizado com o auxílio da ferramenta Editar Pontos de Conexão Editar Pontos de Conexão. O primeiro destes deve se chamar "Terminal1", e o sufixo deve ser incrementado de acordo com o número de pontos necessários. Neste caso, "Terminal1" e "Terminal2".

Criação do Terminal 1

Criação do Terminal 1

Criação do Terminal 2

Criação do Terminal 2

9.Além da propriedade SourceObject, o Importador de Telas necessita das propriedades Orientation, ShowTerminals e ColorMode para realizar a importação dos objetos personalizados para a Tela de operação. Da mesma forma que com a propriedade SourceObject, crie as propriedades Orientation, ShowTerminals e ColorMode, conforme a figura a seguir.

Criação de propriedades

Criação de propriedades

 

NOTA

A propriedade ColorMode só está disponível em aplicações criadas a partir da versão 4.7 do Elipse Power.

 

10.Associe as propriedades criadas às respectivas propriedades internas da biblioteca, conforme mostrado anteriormente neste exercício.

Associações das novas propriedades

Associações das novas propriedades

11.Para as modificações necessárias, vamos inserir um objeto ProtectionItem. Para isto, selecione a aba Design do objeto BreakerCustom, clique com o botão direito do mouse na área cinza e selecione o item Inserir - PowerProtectionControls - ProtectionItem.

Inserir objeto ProtectionItem

Inserir objeto ProtectionItem

12.Posicione o objeto ao lado do Disjuntor.

Posicionando o objeto ProtectionItem

Posicionando o objeto ProtectionItem

13.Clique com o botão direito do mouse no objeto e selecione o item Propriedades. Na aba Associações, clique em AppBrowser à direita da propriedade ProtectionSource para abrir o AppBrowser.

14.Com o auxílio do AppBrowser, selecione a propriedade SourceObject do objeto BreakerCustom.

15.Complete a expressão digitando o texto ".Protections.[79]". A expressão final deve ser semelhante à da figura a seguir.

Propriedade SourceObject com expressão

Propriedade SourceObject com expressão

NOTA

O XControl ProtectionItem, configurado desta forma, só funciona corretamente caso exista, dentro do Disjuntor associado, uma pasta Protections e uma Proteção com o nome 79. Note que o Verificador de Domínio indica que a Associação está incorreta, colorindo a expressão em vermelho. Caso a aplicação siga esta regra proposta, esta indicação pode ser ignorada.

 

16.Salve as alterações.

17.Clique com o botão direito do mouse no item Bibliotecas de Objetos do Organizer e selecione a opção Registrar Bibliotecas Carregadas Registrar Bibliotecas Carregadas.

18.Por último, importe a Tela novamente, mas agora utilizando o objeto BreakerCustom. Para realizar esta importação, clique com o botão direito do mouse no item ConfiguracaoPower em Objetos de Servidor - Power - Configuração e selecione a opção Modelo Elétrico - Importar para Tela(s).

Opção Importar para Tela(s)

Opção Importar para Tela(s)

19.Na janela Importação para Telas, selecione a opção Preferências.

20.Na janela Preferências de Importação para Telas, desabilite a opção Usar classes padrão da biblioteca PowerControls.lib e, no objeto Disjuntor, selecione o objeto Breaker personalizado (BreakerCustom), clicando em Selecionar classe na coluna Classe.

Janela Preferências de Importação para Telas

Janela Preferências de Importação para Telas

 

NOTA

Se todas as configurações foram executadas com sucesso em propriedades e terminais, o nome da classe aparece em negrito, informando que aquela não é uma classe padrão. Caso contrário, uma mensagem é mostrada indicando quais pontos não foram configurados com sucesso.

 

21.Clique em OK e, na janela Importação para Telas, selecione a Subestação SE1 e a Tela para onde esta Subestação deve ser importada. Importe para a Tela e verifique que a Tela é importada com o objeto criado anteriormente.

22.Execute a aplicação e verifique as novas funcionalidades.

 

NOTA

Este formato de personalização de bibliotecas torna possível atualizar a biblioteca base da Elipse Software (PowerControls.Lib) e toda melhoria realizada no objeto base é aplicada automaticamente à biblioteca personalizada. Porém, caso esta característica não seja necessária e se deseje realizar a modificação mais rapidamente, pode-se simplesmente criar as novas funcionalidades na biblioteca padrão. Com isto, todas as Telas já importadas recebem estas novas funcionalidades.

 

DESAFIO XII

Crie um Display, ao lado do Disjuntor, para indicar se está em modo Local ou Remoto. Execute esta configuração dentro da biblioteca.

Esta página foi útil?