198
© 2010 Elipse Software Ltda. Todos os direitos reservados. 28/01/2010 - Versão 3.2 Tutorial do E3

Tutorial do E3 - Professor GERSONgerson.luqueta.com.br/index_arquivos/e3tutorial_ptb.pdf · 14 Iniciando a Aplicação In 3 iciando a Aplicação CAPÍTULO Após instalar o software,

Embed Size (px)

Citation preview

© 2010 Elipse Software Ltda. Todos os direitos reservados.28/01/2010 - Versão 3.2

Tutorial do E3

Sumário1 Apresentação 6

61.1 A Elipse

71.2 O Treinamento

81.3 Módulos do E3

91.4 Anotações

2 Elipse Knowledgebase 10

112.1 Elipse Knowledgebase

112.2 Busca no Knowledgebase

122.3 Categorias

3 Iniciando a Aplicação 14

153.1 Criando sua Aplicação

173.2 Área de Trabalho

263.3 Execução de um Domínio

263.4 Exercícios

283.5 Exercícios Complementares

293.6 Anotações

4 Comunicação 30

304.1 Driver de Comunicação

344.2 Driver de Comunicação OPC

374.3 Exercícios Complementares

384.4 Anotações

5 Servidor de Dados 39

405.1 Regras para Nomes de Tags

405.2 Exercícios

425.3 Exercícios Complementares

445.4 Anotações

6 Telas e Quadros 45

456.1 Tela

466.2 Quadros

486.3 Viewer

526.4 Exercícios

566.5 Objetos de Tela

576.6 Controles Microsoft Forms

586.7 Galeria

596.8 Exercícios

646.9 Exercícios Complementares

656.10 Anotações

7 Associações 66

677.1 Tipos de Associação

747.2 Valores Booleanos

757.3 Exercícios

777.4 Exercícios Complementares

787.5 Anotações

8 Bibliotecas ElipseX 79

808.1 Criação de Bibliotecas de Usuário

848.2 Quando Criar um ElipseX

848.3 Exercícios

938.4 Exercícios Complementares

948.5 Anotações

9 Scripts 95

959.1 Definindo Scripts

1039.2 Eventos

1059.3 Métodos

1069.4 Propriedades

1069.5 Exercícios

1109.6 Exercícios Complementares

1119.7 Anotações

10 Banco de Dados 112

11210.1 Exercícios

11410.2 Exercícios Complementares

11510.3 Anotações

11 Alarmes 116

11611.1 Servidor de Alarmes

11611.2 Configuração de Alarmes

12111.3 E3Alarm

12311.4 Exercícios

13011.5 Exercícios Complementares

13211.6 Anotações

12 Históricos 133

13312.1 Chave Primária

13412.2 Índices

13512.3 Exercícios

13712.4 Exercícios Complementares

13812.5 Anotações

13 Consultas 139

14013.1 Criando uma Consulta

14213.2 E3Browser

14413.3 Exercícios

14913.4 Exercícios Complementares

15013.5 Anotações

14 E3Chart 151

15214.1 Configurações das Penas

15414.2 Exercícios

16114.3 Exercícios Complementares

16214.4 Anotações

15 Relatórios 163

16515.1 Objetos do Relatório

16615.2 Exercícios

17015.3 Exercícios Complementares

17215.4 Anotações

16 Fórmulas 173

17316.1 Exercícios

17616.2 Exercícios Complementares

17816.3 Anotações

17 Segurança 179

18017.1 Usuários

18117.2 Grupos

18217.3 Permissões

18417.4 Proteção

18617.5 Exercícios

18817.6 Exercícios Complementares

18917.7 Anotações

18 Exercícios de Revisão 190

19018.1 Exercícios

19318.2 Resolução

19718.3 Anotações

6 Apresentação

1Apresentação

CAPÍTULO

Este tutorial serve como apoio ao módulo de treinamento para execução eprogramação do E3. Com ele, você acompanhará o conteúdo do curso. Durante asaulas, fique à vontade para praticar o que você aprendeu e para resolver suas dúvidascom o instrutor. No treinamento, é apresentado um estudo de caso que simula umaaplicação real, um sistema de supervisão e controle.

1.1 A Elipse

A Elipse Software é uma empresa genuinamente brasileira, com foco na produção desoftware de supervisão para automação industrial, surgida em Porto Alegre no iníciodos anos 90.

Seu primeiro produto foi o Elipse 21, um software para a plataforma DOS, que eraconhecido por sua facilidade de operação e compatibilidade com diferentesfabricantes.

Em 1996, a Elipse lançou a primeira versão do Elipse Windows, que mais tarde setornaria o Elipse SCADA. Desde essa época, foram instaladas cerca de 3.500 cópiasdesse software no Brasil.

Em 2000, a Elipse iniciou o desenvolvimento do E3, a terceira geração de software desupervisão da empresa. Desde seu lançamento comercial em 2001, cerca de 500licenças desse software já foram instaladas e o E3 vem sendo utilizando em sistemasdiversos, como Centros de Operação de empresas elétricas, plantas industriais dediversas finalidades, sistemas de telemedição e controle de energia, automação econtrole predial, mineração, etre outros.

A Elipse Software trabalha em parceria com distribuidores internacionais localizadosem países estratégicos como Alemanha, Holanda, Taiwan, Índia, Canadá e outros,além de manter escritório próprio nos Estados Unidos, na cidade de Avon, Carolina doNorte.

Apresentação 7

1.2 O Treinamento

A sequência de aprendizado a ser seguida neste tutorial reflete o que a ElipseSoftware considera o conjunto de melhores práticas no desenvolvimento deaplicativos de supervisão e controle, tanto para o E3 (o objeto de estudo destetutorial) quanto para o Elipse SCADA ou outros softwares de supervisão.

A base do roteiro desse manual é uma aplicação hipotética, que apresenta osrecursos mais importantes do software E3. Essa aplicação hipotética não cobre todasas possibilidades de desenvolvimento oferecidas pela ferramenta; no entanto, aquantidade e qualidade das informações apresentadas neste primeiro contato com osoftware são suficientes para que você aprenda a utilizá-lo com autonomia para criarsuas próprias aplicações.

A sequência do treinamento é a seguinte:

· Apresentação da ferramenta.

· Comunicação de dados: uso de drivers e uso de OPC.

· Telas e Objetos de Tela: como criar interfaces gráficas para suas aplicações.

· Uso de Associações: um modo fácil e efetivo de mostrar informações ou criaranimações em Telas.

· Uso de Bibliotecas ElipseX: poderosa ferramenta de bibliotecas funcionaisdisponível apenas no E3.

· Integração a Bancos de Dados: uso de funções e ferramentas para acesso econsulta a Bancos de Dados, com foco em processos.

· Alarmes: uso e controle de Alarmes no E3.

· Fórmulas: módulo de receitas desenvolvido especialmente para garantirflexibilidade ao seu uso.

· Relatórios: poderosa ferramenta incorporada ao E3, traz facilidade e grandequantidade de recursos para a criação de relatórios.

· Recursos Avançados: redundância, acesso ao aplicativo através de browser,configurações de segurança de usuários, entre outros.

Sua participação é muito importante para nós. Ao final do treinamento, serásolicitado que você avalie diversos aspectos do curso, como a qualidade e aquantidade das informações transmitidas em aula e pelo tutorial, além do trabalho

8 Apresentação

do instrutor e a qualidade das instalações. Qualquer sugestão ou crítica é bem-vindapela equipe de desenvolvimento desse tutorial.

A Elipse Software deseja a você um ótimo treinamento, e uma boa experiência detrabalho com o E3!

1.3 Módulos do E3

Inicialmente, será visto que o E3 é composto de quatro módulos, descritos a seguir.

1.3.1 E3 Server

É o Servidor de Aplicações, onde os principais processos são executados, incluindo acomunicação em tempo real com os equipamentos de controle. O servidor também éresponsável por enviar dados e Telas aos clientes conectados em qualquer parte darede (Intranet e Internet). O servidor pode executar vários projetos ao mesmo tempoe conversar com outros E3 Servers para realizar um failover (standby) ou distribuircargas de processamento entre as máquinas. Foi desenvolvido para ser executadosobre os sistemas operacionais Windows XP, 2003 e Vista.

1.3.2 E3 Studio

Ferramenta única de configuração, agindo como plataforma universal dedesenvolvimento, que possui um ambiente moderno e amigável, incluindo umcompleto editor gráfico e de scripts (VBScript). Permite que um projeto seja editadopor várias pessoas ao mesmo tempo ou que vários E3 Studios estejam conectados aomesmo servidor remoto, com múltiplas configurações.

1.3.3 E3 Viewer

O Viewer permite operar as aplicações residentes no servidor em qualquercomputador com o programa executável Viewer (Windows XP, 2003 e Vista) ou comum navegador de Internet. Em ambos os casos, não é necessário instalar a aplicaçãona máquina cliente, pois todos os componentes (Telas, bibliotecas, controles ActiveX)serão baixados e registrados automaticamente.

1.3.4 E3 Admin

É o módulo responsável pela interface do E3 Server e de outros módulos do E3 com ousuário. Através dele o usuário pode enviar comandos ao E3 Server, utilizando o íconena Área de Notificação da Barra de Tarefas do Windows, e controlar o Domínio pelalinha de comando.

Apresentação 9

1.4 Anotações

10 Elipse Knowledgebase

2Elipse Knowledgebase

CAPÍTULO

O Elipse Knowledgebase tem como finalidade ajudar o usuário dos softwares da Elipsea encontrar respostas rápidas para dúvidas ou problemas que esteja enfrentandodurante a sua utilização. Seja no desenvolvimento de aplicações ou depois de tê-lasprontas. Este espaço nada mais é do que um portal onde muitas informações técnicase dicas estão concentradas. A sua base de informações é constantemente atualizadae tem uma linguagem simples que visa o rápido entendimento de quem estáutilizando.

Após acessar o endereço kb.elipse.com.br você estará na página inicial:

Página inicial do Knowledgebase

Elipse Knowledgebase 11

2.1 Elipse Knowledgebase

No cabeçalho da página existem as opções:

· Glossário: permite acessar todo o glossário de palavras que a ferramenta possui.

· Contato: permite que o usuário entre em contato com a Elipse através de umformulário que será aberto.

· Favoritos: link que mostra todos os artigos da base de dados que estão assinaladoscomo favoritos.

· Login: serve apenas para uso da Elipse.

2.2 Busca no Knowledgebase

Este campo busca em toda a base de dados pela palavra ou palavras que o usuáriodigitar, retornando todos os artigos que possuem a palavra alvo da busca. Bastadigitar a palavra que se deseja buscar e então apertar o botão Busca.

Busca no Knowledgebase

Ainda existe a possibilidade de utilizar a Busca Avançada, que permite refinar aconsulta. Basta acessar a opção Busca Avançada.

12 Elipse Knowledgebase

Busca Avançada

Na opção de Busca Avançada o usuário pode digitar a palavra ou palavras que desejabuscar, filtrar por categoria específica, autor e ainda pela classificação do artigo. Istoé, se ele ajudou muito, apenas ajudou, não ajudou ou ajudou pouco.

2.3 Categorias

Existe a possibilidade de o usuário acessar todos os artigos escolhendo diretamente acategoria a que ele pertence. Para isto, no campo Categorias, basta selecionar acategoria em que se deseja buscar os artigos e então clicar no botão Ir.

Categorias

Todos os artigos desta categoria serão retornados como resultado da busca.

É importante ressaltar que toda a base de conhecimento está dividida em duascategorias principais: Inglês e Português.

Dentro delas existem as categorias Elipse E3, Elipse Scada, Elipse 21 DOS, Elipse DriversOPC, Altus TCP/IP e Drivers.

Dentro destas cinco categorias existem diversas outras, cada uma delas tratando deum tema específico.

Acessando os artigos pela categoria Português - Elipse E3 tem-se:

Elipse Knowledgebase 13

Categoria Português - Elipse E3

Note que dentro de cada uma destas subcategorias aparece um número. Este númeroindica a quantidade de artigos existentes dentro da categoria.

As demais seções existentes na página principal do Knowledgebase são:

· Artigos Em Destaque: Mostra todos os artigos que estão classificados paraaparecerem em destaque. Normalmente esta seção é utilizada para ressaltaralgum artigo que merece uma atenção especial por parte dos usuários dossoftwares da Elipse.

· Artigos Mais Lidos: Mostra a lista dos 10 artigos mais lidos no Knowledgebase.

· Últimos Artigos Adicionados: Mostra a lista dos últimos 10 artigos que foramadicionados na base de dados do Knowledgebase.

· Buscas Mais Utilizadas: Mostra as 10 palavras que mais foram utilizadas como buscapela ferramenta de busca do Knowledgebase.

14 Inic iando a Aplicação

3Iniciando a Aplicação

CAPÍTULO

Após instalar o software, você terá em sua máquina um grupo de programas chamado

Elipse E3, com um ícone para acessar o E3 Studio.

Quando o E3 é iniciado, o sistema abre uma caixa de diálogo com algumas opções doprojeto:

Caixa de diálogo inicial do E3

As opções disponíveis são:

Opções disponíveis na caixa de diálogo inicial do E3

OPÇÃO DESCRIÇÃO

Iniciar o E3 Studio Inicia o E3 Studio, mas não abre nenhum Domínio.

Inic iando a Aplicação 15

Criar um domínionovo

Cria um novo Domínio através do Assistente de aplicaçõesdo E3. Serão requisitados o nome e caminho do novoDomínio.

Abrir um domínioexistente

Abre um Domínio existente dentre os últimos editados.Clicando em Outros arquivos você pode localizar um Domínioem um diretório específico.

3.1 Criando sua Aplicação

Para criar uma nova aplicação, utilize o Assistente de Aplicações. Para acessá-lo,

clique no botão Novo na barra de ferramentas Padrão.

Assistente de Aplicações

O E3 trabalha com três tipos de arquivos de projeto, descritos a seguir.

16 Inic iando a Aplicação

3.1.1 Projetos

Contêm definições de objetos, Tags, Telas e outros componentes de uma aplicação.Os arquivos .prj são criados através das opções Aplicação Padrão e Aplicação emBranco. A primeira opção cria um projeto pré-configurado com alguns objetos básicose um assistente de criação de projeto, enquanto que a segunda opção cria um projetovazio a ser implementado pelo usuário.

3.1.2 Bibliotecas

Contêm definições de objetos criados pelo usuário (ElipseX) para serem utilizados emprojetos. Essas bibliotecas podem ser reutilizadas em diferentes projetos, masmantem vínculos com a aplicação. Ou seja, se a biblioteca for alterada, todos osobjetos dessa biblioteca serão atualizados nos projetos automaticamente.

3.1.3 Configuração do Domínio

Armazena quatro tipos de informações: opções de configuração do domínio; lista dearquivos .prj e .lib; configurações dos servidores que irão rodar o domínio; econfigurações de segurança (usuários e permissões). Sem esse arquivo, um projetonão pode ser executado no E3. Esse item será visto mais adiante.

Inic iando a Aplicação 17

3.2 Área de Trabalho

A figura a seguir mostra a aparência da Área de Trabalho do E3 Studio após a criaçãode um novo projeto.

Área de Trabalho

A Barra de Título mostra o caminho e o nome da sua aplicação, bem como o título daTela sendo mostrada correntemente na área de trabalho.

A Barra de Menus mostra as diversas ações que podem ser executadas pelo usuário.

A Barra de Status mostra informações sobre a ação sendo executada pelo usuário nomomento.

A Barra de Ferramentas mostra os objetos, componentes e demais recursos quepodem ser utilizados pelo usuário. Os botões da Barra de Ferramentas permitem quevocê execute determinadas tarefas rapidamente, sem precisar utilizar os menus.Desta forma, você pode criar objetos de Tela ou chamar o Organizer através de umbotão (ver tabela a seguir).

18 Inic iando a Aplicação

Barra de Ferramentas Padrão

ÍCONE FUNÇÃO AÇÃO

Novo Cria um novo projeto.

Abrir projeto Abre um projeto existente.

Salvar Salva o item que está sendo editado.

Salvar tudo (CTRL + S) Salva todo o projeto.

Recortar (SHIFT + DEL) Remove a informação selecionada de umobjeto e a transfere para a Área deTransferência.

Copiar (CTRL + C) Copia o conteúdo de um objeto para a Áreade Transferência.

Colar (CTRL + V) Transfere o conteúdo da Área deTransferência para um objeto.

Desfazer (ALT + BACKSPACE) Desfaz a última ação executada.

Refazer (CTRL + Y) Refaz a última ação executada.

Organizer Mostra ou esconde a janela do Organizer.

Galeria Mostra ou esconde a Galeria.

Lista de propriedades Mostra ou esconde a janela da Lista dePropriedades.

Mostrar no EditorMostra o objeto na view do objeto, se esteestiver selecionado no Organizer.

Mostrar no OrganizerMostra o objeto no Organizer, se este estiverselecionado na view do objeto.

Executar aplicativo Salva todos os objetos, executa o Domínio eabre o E3 Viewer.

Rodar/Parar domínio Roda ou pára o servidor.

Executar/Parar E3 Viewer Executa ou pára o E3 Viewer.

Verificar Domínio Verifica se o Domínio contém erros.

Inic iando a Aplicação 19

ÍCONE FUNÇÃO AÇÃO

Erro anterior Mostra o erro anteriormente encontrado noDomínio.

Próximo erro Mostra o próximo erro encontrado noDomínio.

Sobre Mostra a tela Sobre do sistema.

Desfragmentar arquivos Desfragmenta todos os arquivos do Domínio.

Procurar no domínio(CTRL + F)

Procura todas as ocorrências de umdeterminado texto por todo o Domínio.

Documentação de scripts Serve para auxiliar o usuário na organização edocumentação dos scripts da aplicação.

Relatório de versões Permite a visualização das versões ecomentários dos projetos e bibliotecasabertos, pertencentes ou não ao Domínio.

WatchWindow Permite a visualização do valor corrente dequalquer propriedade ou tag em tempo deexecução no Studio.

20 Inic iando a Aplicação

3.2.1 Organizer

O Organizer permite uma visão simples e organizada de toda a sua aplicação,ajudando na edição e configuração de todos os objetos envolvidos no sistema atravésde uma árvore hierárquica de opções. Possui dois modos de visualização, Domínio eExplorer.

Inic iando a Aplicação 21

Organizer

O modo Domínio mostra apenas as informações dos objetos abertos pertencentes aoDomínio, organizadas em quatro grupos, Configuração, Bibliotecas de Objetos,Visualização e Objetos de Servidor.

O modo Explorer mostra projetos e bibliotecas abertos no E3 Studio, pertencentes ounão ao Domínio. Os objetos são mostrados no projeto ou biblioteca ao qual

22 Inic iando a Aplicação

pertencem, ordenados alfabeticamente dentro de cada projeto ou biblioteca.

3.2.1.1 Opções do Menu de Contexto

Clicando com o botão direito do mouse sobre o nome do projeto, pode-se acessar ummenu com as seguintes opções:

Opções do menu de contexto

OPÇÃO DESCRIÇÃO

Fechar Fecha o projeto ou biblioteca corrente.

Atualizar Atualiza as configurações do projeto ou biblioteca.

Registrar Registra a biblioteca para que as modificações feitasfiquem disponíveis.

Salvar Como Abre uma caixa de diálogo para que o projeto ou bibliotecaseja salvo no local indicado.

Desfragmentar Desfragmenta arquivos (.lib ou .prj), isto é, faz com que osespaços criados desnecessariamente (por exclusão deitens do sistema, importação de arquivos, inclusão derecursos, etc.) sejam apagados. Após a desfragmentação,uma janela será exibida contendo as seguintesinformações: tamanho original do arquivo, tamanhodesfragmentado e percentual de compactação.

Proteção Protege o conteúdo de um arquivo .prj ou .lib contra aedição, visualização ou execução não autorizada. Maioresinformações no capítulo Segurança.

Nova Pasta Cria uma nova pasta no sistema.

Inserir Insere objetos disponíveis no E3 no projeto ou biblioteca.Mais informações sobre essa opção nos respectivoscapítulos de cada objeto.

Inserir Recurso Insere recursos no projeto ou biblioteca.

Habilitar/Desabilitarprojeto

Habilita ou desabilita o projeto selecionado. Paradesabilitar o projeto, selecione seu nome e acesse a opção Desabilitar projeto. Observe que o nome e o ícone doprojeto aparecerão na cor cinza, indicando que o projetoestá desabilitado. Para habilitar o projeto, selecionenovamente o projeto e escolha a opção Habilitar projeto.

Inic iando a Aplicação 23

OPÇÃO DESCRIÇÃO

Adicionar/Remover doDomínio

Adiciona ou remove o projeto ou a biblioteca do Domínio.Para remover o projeto ou a biblioteca, selecione seu nomee acesse a opção Remover do Domínio. Para adicioná-los aoDomínio, selecione-os novamente e escolha a opção Adicionar ao Domínio.

Procurar/Substituir Busca por trechos de texto e os substitui por outros, se for ocaso.

Importar/Exportar Auxilia o usuário na importação e exportação de objetos,associações e coleções.

Documentar Scripts Auxilia o usuário com a documentação dos scripts daaplicação.

Verificar Verifica os erros ocorridos na aplicação.

Editar Associações Muda uma ou mais associações, eventos de usuário epropriedades do tipo Link feitas na aplicação de forma maisrápida do que pela janela tradicional. Maiores informaçõessobre essa opção no capítulo sobre Associações.

Copiar/ColarAssociações

Copia ou cola associações de um objeto para o outro. Asegunda opção só é mostrada se o que estiver copiado naÁrea de Transferência do Windows for uma associação. Se apropriedade em questão já possuir uma associação, émostrada uma mensagem ao usuário perguntando se aassociação deve ser sobrescrita ou não.

Se as associações copiadas na Área de Transferência foremcoladas em um objeto que não possua alguma daspropriedades, essas serão listadas para o usuário em umamensagem informando o problema. As propriedades queexistirem terão as associações criadas corretamente.Associações de propriedades escondidas dos ElipseX nãosão copiadas.

Propriedades Abre a Janela de Propriedades do objeto. Quando essaopção é chamada pelo menu, a primeira aba a ser abertaserá a de configurações do objeto. Mais informações sobreessa opção nos respectivos capítulos de cada objeto.

Carregar Todos osObjetos

Carrega todos os objetos do grupo selecionado.

Fechar Todos osObjetos

Fecha todos os objetos do grupo selecionado.

24 Inic iando a Aplicação

OPÇÃO DESCRIÇÃO

Salvar Todos os Objetos Salva todos os objetos do grupo selecionado.

Novo Arquivo deAplicação (.prj)

Cria um novo arquivo .prj e o inclui no Domínio.

Nova Biblioteca deObjetos (.lib)

Cria um novo arquivo .lib e o inclui no Domínio.

Registrar bibliotecascarregadas

Registra todas as bibliotecas.

Abrir Todos osArquivos

Percorre todos os arquivos .prj e .lib do Domínio. Se algumarquivo fechado for encontrado, ele será aberto. Se oarquivo estiver protegido com senha de edição, seráperguntada a sua senha. O E3 Studio tenta utilizar a mesmasenha em todos os arquivos protegidos. Se a senha falharcom algum arquivo, ela é perguntada novamente.

Fechar Todos osArquivos

Fecha todos os arquivos .prj e .lib do Domínio. Se algumarquivo tiver alterações não salvas, é perguntado para ousuário se ele deseja salvá-las.

Editar a Ordem deAtivação

Permite editar a ordem de ativação dos objetos de Servidorno Domínio.

3.2.2 Lista de Propriedades

A Lista de Propriedades é uma janela que mostra todas as propriedades do objeto emuso, permitindo a sua configuração de forma simples e rápida. Sempre que umapropriedade for configurada na Lista de Propriedades, seu valor não será mudadoautomaticamente, a menos que se construa uma associação (que será vista adiante).

A Lista de Propriedades pode ser acessada pelo menu Visualizar - Lista de

Propriedades ou pelo botão na Barra de Ferramentas.

Inic iando a Aplicação 25

Lista de Propriedades

3.2.3 App Browser

O App Browser é uma ferramenta criada para facilitar a edição de scripts e a criaçãode associações. Ela permite copiar propriedades e métodos dos objetos, bem comodo VBScript apenas com um clique, sem a necessidade da digitação de seus nomes.

Essa característica é importante pois, como será visto mais adiante, dependendo deonde será usado um objeto, seu nome será construído de modo diferente.

26 Inic iando a Aplicação

App Browser

3.3 Execução de um Domínio

Para executar ou visualizar um projeto no E3, é necessário que o Domínio sejacolocado em execução. Para isso, existem os seguintes botões no E3 Studio:

· Executar aplicativo: Salva todas as configurações dos projetos e bibliotecas, eexecuta o Viewer.

· Rodar/Parar Domínio: Roda a aplicação ou pára a execução do Domínio.

· Executar/Parar o E3 Viewer: Executa o Viewer ou pára a sua execução.

3.4 Exercícios

Esta seção contém exercícios sobre o conteúdo deste capítulo.

Inic iando a Aplicação 27

3.4.1 Domínio

1. Inicie o E3 Studio selecionando a opção Criar um domínio novo. O Assistente deAplicações será aberto.

Caixa de diálogo inicial do E3

2. No Assistente de Aplicações, clique em Avançar, selecione a opção AplicaçãoPadrão e nomeie o projeto como TreinamentoE3.

3. Ajuste o caminho da aplicação para C:\TreinamentoE3 e clique em Avançar.

4. Na próxima janela do assistente, selecione a opção Criar um novo domínio e use omesmo nome do projeto.

5. Escolha a resolução das telas em 1024x768.

28 Inic iando a Aplicação

Resolução de tela

6. Ao fim destes procedimentos, você terá acesso à área de trabalho do Studio.

3.5 Exercícios Complementares

Esta seção contém exercícios complementares sobre o conteúdo deste capítulo.

3.5.1 KB

· KB-28984: Qual o tempo de execução do domínio e comunicação do E3 com umalicença somente Studio.

Inic iando a Aplicação 29

3.6 Anotações

30 Comunicação

4Comunicação

CAPÍTULO

O E3 permite a comunicação com equipamentos de aquisição de dados,controladores, CLPs (Controladores Lógicos Programáveis), UTRs (Unidades TerminaisRemotas), ou qualquer outro tipo de equipamento, através de Drivers deComunicação ou Servidores OPC, de acordo com o tipo do equipamento ou tipo decomunicação necessária. Os drivers de comunicação e servidores OPC funcionamnesse caso como servidores de variáveis, ou seja, eles fornecem as informações domundo externo para o E3 para que a supervisão do processo se realize. As variáveisenvolvidas no processo são conhecidas como Tags e podem ser de vários tipos, deacordo com a utilização desejada. No E3 podem ser inseridos dois tipos de drivers: Driver de Comunicação (arquivos .dll) e Driver de Comunicação OPC.

4.1 Driver de Comunicação

O Driver de Comunicação é o módulo do E3 que possibilita a comunicação com umdeterminado equipamento usando os drivers .dll fornecidos pela Elipse Software. Ummanual é fornecido juntamente com cada driver, contendo informações importantesa respeito da configuração dos seus parâmetros [P] e outras propriedades. Os tipos deobjetos de driver disponíveis para comunicação são os seguintes:

Objetos disponíveis no Driver PLC

OBJETOS DESCRIÇÃO

Pasta Define grupos e subdiretórios para a organização de variáveis.Não tem relação direta com o equipamento de campo.

Tag decomunicação

Utilizado para definir a comunicação com uma variável (umendereço de memória) do equipamento de aquisição.

Bloco decomunicação

Utilizado para definir a comunicação com diversas variáveis(vários endereços de memória em sequência) do equipamentode aquisição.

Elementos debloco

Representam cada um dos endereços de um bloco e sãoutilizados como se fossem tags de comunicação. Os elementosde bloco podem apontar para cada índice dentro de um bloco(correspondendo a cada variável de interesse).

Comunicação 31

4.1.1 Exercícios

Os exercícios sobre comunicação serão feitos sob orientação do instrutor, já que cadalocal onde o curso é ministrado pode contar com diferentes equipamentos parailustrar esse capítulo. Ainda assim, podemos citar o procedimento para configuraçãodos tags de comunicação utilizando um driver Elipse.

1. Clique com o botão direito do mouse sobre a pasta Drivers e OPC e escolha InserirDriver de Comunicação em - TreinamentoE3.prj.

2. Selecione o arquivo do driver (.dll) na caixa de diálogo que se abre para a seleção dearquivos.

3. Caso caixa de diálogo não seja aberta automaticamente, escolha o arquivo dedriver na propriedade DriverLocation.

Propriedade DriverName

4. Verifique se a propriedade DriverName foi preenchida.

5. Configure os parâmetros de P1 a P4 do driver inserido. Estes parâmetros sãodescritos no manual do driver. Os drivers mais recentes não utilizam os parâmetros[P]. Nesses, todas as configurações de comunicação devem ser realizadas nasjanelas de configurações extras do IOKit, que é um componente compartilhado

32 Comunicação

utilizado pelos drivers de comunicação do E3.

6. Para os drivers que utilizam o IOKit, a interface de configuração é aberta através dobotão Configurar o Driver na barra de ferramentas do driver.

Configurar o Driver deComunicação

7. A seguinte janela será aberta.

Outros parâmetros

8. Na aba Setup, escolha na lista de opção da propriedade Physical Layer a interfacefísica que será utilizada. As opções são Serial, Ethernet, Modem e RAS.

Comunicação 33

9. Configure o tempo que o driver aguardará uma resposta do equipamento no campo Timeout.

10.Após a escolha da opção Physical Layer, todas as outras abas serão desabilitadas,sendo necessário apenas configurar a interface escolhida. A partir deste ponto, odriver estará configurado para acessar o meio físico, como configurado nosparâmetros de P1 a P4 ou na interface de configuração do IOKit. Depois dessaetapa, deve-se configurar os tags de comunicação, como descrito a seguir.

11.Clique com o botão direito do mouse no Driver e acesse a opção Inserir - Tag deComunicação ou clique no botão Adicionar na barra de ferramentas do driver.

Inserir Tag de Comunicação

12.Escolha a quantidade de tags a serem inseridos e seu nome.

Nome e quantidade de tags

13.Configure as propriedades de N1/B1 a N4/B4 conforme o manual do driver.

14.Clique novamente com o botão direito do mouse no Driver e escolha o item AtivarComunicação para testar as configurações ou aperte o botão Ativar/Desativar

comunicação . Caso as configurações estejam corretas, a linha do tag deveráficar na cor azul.

34 Comunicação

Teste de comunicação

15.Crie os outros tags e blocos e configure suas propriedades de N1/B1 a N4/B4.

16.Ajuste o tempo de varredura para cada tag conforme a necessidade.

17.Ajuste a escala dos tags, quando necessário.

4.2 Driver de Comunicação OPC

O Driver de Comunicação OPC é o módulo responsável por coletar dados deequipamentos externos através de um Servidor OPC, que pode ser desenvolvido porqualquer empresa com conhecimentos da rede e do protocolo usados por umdeterminado equipamento. Os tags OPC podem ser importados para o Driver OPC noE3 (o Driver OPC no E3 atua como um cliente OPC), ou ainda podem ser criados no E3.Nesse caso é necessário conhecer o ItemId de cada tag.

Objetos disponíveis no Servidor OPC

OBJETOS DESCRIÇÃO

Pasta OPC Definem grupos ou subdiretórios para a organização dasvariáveis.

Grupo OPC Agrupa uma série de tags OPC que compartilham os mesmosparâmetros de atualização (tempo de varredura e banda morta).É obrigatório existir um grupo OPC para poder criar tags OPC.

Tag OPC Objeto para leitura ou escrita de valores em um equipamento. Aleitura do tag é feita automaticamente pelo Servidor OPC, comtempo de varredura definido no grupo OPC onde ele estáinserido.

Bloco OPC Possibilita a leitura ou escrita de um conjunto de valores. Parafazer uma escrita, deve-se apenas atribuir um novo valor àpropriedade Value.

Elemento deBloco OPC

Possibilita a leitura ou escrita de um dos elementos do BlocoOPC onde ele está inserido. O Bloco OPC lê uma tabela de dadose esse objeto estará sempre associado à posição definida porsua propriedade Index, correspondendo a uma variável deinteresse.

Comunicação 35

4.2.1 Exercícios

Neste exercício será mostrado como configurar um driver de comunicação OPC. O E3funcionará como servidor OPC e também como cliente OPC. Assim como no exercícioanterior, esse exercício serve para mostrar como funciona a configuração do driverOPC, já que o procedimento é semelhante para qualquer servidor OPC que estejasendo utilizado. O roteiro é descrito nos passos seguintes:

1. Clique com o botão direito do mouse sobre a pasta Drivers e OPC e escolha InserirDriver de Comunicação OPC em - TreinamentoE3.prj.

2. Clique com o botão direito do mouse sobre o driver OPC inserido, selecione aopção Propriedades e vá até a aba OPC Driver.

3. Clique sobre o botão Selecionar. Será aberta uma janela com as opções de OPCServer na sua máquina local ou na rede. Selecione o Elipse OPC Server da máquinado instrutor na opção Servidores na rede e pressione o botão OK.

4. Ao voltar a janela de propriedades do Driver OPC, pressione o botão AtivarComunicação. A partir deste ponto, é possível verificar a comunicação com oservidor clicando sobre a opção Informações.

5. O próximo passo para a configuração é a importação de tags. Feche a janela depropriedades e clique com o botão direito do mouse sobre o driver OPC cadastrado.Selecione a opção Importar Tags. Com isso, o assistente de importação de tags doE3 será aberto.

36 Comunicação

Importação de tags do Servidor OPC

6. A figura anterior mostra a aparência da janela de importação: do lado direito a listade tags do servidor e do lado esquerdo, a área de importação para o E3. Paraimportar, primeiro ajuste os filtros, selecione o item e arraste-o até o grupo OPC dedestino.

7. Depois de importar alguns tags ou propriedades, verifique o funcionamento dostags importados.

8. Assim como no caso da configuração de drivers Elipse, o roteiro para trabalhar como servidor OPC da Elipse é o mesmo para qualquer servidor que seja utilizado.

Comunicação 37

4.3 Exercícios Complementares

Esta seção contém exercícios complementares sobre o conteúdo deste capítulo.

4.3.1 KB

· KB-14918: Como saber quantos tags tem dentro de um driver de comunicação?

· KB-25284: Como configurar escala em tags de comunicação?

38 Comunicação

4.4 Anotações

Servidor de Dados 39

5Servidor de Dados

CAPÍTULO

O Servidor de Dados é o módulo responsável pela execução e gerenciamento de tags eobjetos que não estejam envolvidos diretamente com a comunicação. Através doServidor de Dados pode-se configurar tags internos e tags de simulação, além deinserir XObjects, que são os objetos de dados das bibliotecas ElipseX (vistas maisadiante).

Alguns dos objetos que podem ser inseridos no servidor de dados são os seguintes:

Objetos que podem ser inseridos no Servidor de Dados

OBJETOS DESCRIÇÃO

TagContador

Objeto que faz a contagem de tempo (em segundos) até atingir umvalor pré-determinado, ou que faz uma certa contagemindefinidamente.

TagDemo

Objeto que gera valores de acordo com a forma de onda. É utilizadopara simulação de valores. Permite gerar curvas definidas ou valoresaleatórios.

TagInterno

Objeto de propósito genérico, utilizado para guardar valores dequalquer tipo, incluindo números, textos e outros objetos.

TagTimer

Objeto para contagem de tempo e programação de atividades.Estabelece horários (com repetições) para executar ações.

Pasta deDados

Define grupos e subdiretórios para a organização das informações.Novas pastas podem ser inseridas dentro de outras, conforme anecessidade.

Para inserir tags em um Servidor de Dados é necessário clicar com o botão direito domouse sobre o servidor e selecionar a opção Inserir.

NOTA: Os objetos inseridos no Servidor de Dados serão executados pelo E3 Server,

40 Servidor de Dados

portanto estarão presentes no Servidor. Esta informação retrata o modo como o E3trabalha.

Para inserir um XObject em um servidor de dados, proceda da mesma forma explicadapara os tags, como explicado na seção Área de Trabalho.

5.1 Regras para Nomes de Tags

Ao especificar o nome dos tags, alguns detalhes devem ser levados em conta:

· O nome do tag não pode ser estritamente numérico.

· O nome do tag não pode conter operadores lógicos ou aritméticos: (/ * + -)

· O nome da variável não pode conter caracteres reservados: / ? . , { } [ ]º - etc. Esses caracteres são trocados pelo caractere sublinhado. Assim, osistema aplica a Regra dos Colchetes, explicada a seguir.

5.1.1 Regra dos Colchetes

Ao fazer referência a um objeto por script ou ao usá-lo em alguma associação, deve-selevar em conta as seguintes regras:

· Se o primeiro caractere não for uma letra ou um caractere sublinhado, o nomedeve estar entre colchetes.

· Se algum dos demais caracteres (do segundo em diante) não for uma letra, umnúmero ou um caractere sublinhado, o nome também deve estar entre colchetes.

· Caso existam caracteres especiais (por exemplo, acentos), o nome deve estar entrecolchetes.

5.2 Exercícios

Esta seção contém exercícios sobre o conteúdo deste capítulo.

Servidor de Dados 41

5.2.1 Horário do Sistema

1. Para obter o horário corrente do sistema é necessário criar um tag demo queacesse essa informação. Na pasta Dados do TreinamentoE3 insira um Tag Democom o nome HoraAtual. Configure a propriedade Type do tag demo para 3 -CurrentTime.

Inserir Tag Demo

42 Servidor de Dados

5.2.2 Simulação de Valores

Muitas vezes precisamos de valores que simulem os movimentos. Normalmenteesses valores são reais e vem de Tags de Comunicação, mas nos exercícios do Tutorialusaremos tags do tipo Demo.

1. Na pasta Dados insira os Tags Demo com as seguintes propriedades configuradas:

NAME MINIMUM MAXIMUM PERIOD SCAN TYPE

Anima 0 100 5000 100 4 - RampUp

Nivel1 0 100 2000 100 0 - Random

Nivel2 0 100 2000 100 0 - Random

5.2.3 Tanques

A aplicação representa uma fábrica que utiliza como matéria-prima as tintasvermelho, verde e azul, produzindo as demais tintas como combinação dessas três.

1. Na pasta Dados crie uma pasta de dados chamada Tanque1 e insira três tagsinternos, Vermelho, Verde e Azul.

2. Crie uma cópia da pasta Tanque1 para criar o Tanque2.

Tags internos

5.3 Exercícios Complementares

Esta seção contém exercícios complementares sobre o conteúdo deste capítulo.

Servidor de Dados 43

5.3.1 KB

· KB-25590: Como funciona um TagTimer.

44 Servidor de Dados

5.4 Anotações

Telas e Quadros 45

6Telas e Quadros

CAPÍTULO

Telas são janelas para monitoramento de processos, onde são inseridos objetos quefarão a interface do operador com o sistema. Cada aplicação pode ter um númeroilimitado de Telas.

Quadros são objetos para a organização e a estruturação da interface, criandovisualizações compostas para o usuário dentro da janela principal do Viewer ou doseu navegador.

6.1 Tela

A Tela é o objeto básico de interface com o usuário. Nela pode-se inserir os seguintesobjetos:

· Primitivas do editor gráfico (retas, círculos, retângulos, polígonos, etc.).

· Controles ActiveX fornecidos pela Elipse (E3Alarm, E3Chart, E3Browser).

· Controles ActiveX fornecidos por terceiros.

· Imagens não vetoriais (Arquivos BMP, JPG, GIF, etc.).

· Imagens vetoriais (Arquivos WMF, EMF, etc).

· Controles padrão do Windows (Lista, Editor de Texto, Lista de Seleção, etc.).

· Bibliotecas gráficas do E3 (XControl) compostas de quaisquer objetos acima.

As Telas utilizam como padrão para o tamanho e coordenadas as unidades Himetric,dadas em 1/100 mm, não em pixels. Neste sistema, ao se adicionar um valor positivoem x, a coordenada x move-se para a direita. Quando se adiciona um valor positivo emy, a coordenada y move-se para baixo, sendo a origem dada pelo canto superioresquerdo da Tela.

As Telas podem ser abertas em modo Full-Screen, ocupando toda a área do Viewer, ouainda como Telas Modais, ocupando somente o tamanho de suas coordenadas dealtura e de largura.

46 Telas e Quadros

Exemplo de Tela

6.2 Quadros

O Quadro é o objeto que organiza e estrutura a interface, criando visualizaçõescompostas para o usuário dentro da janela principal do Viewer ou do navegador.

No Quadro, pode-se criar Divisores para visualizar diferentes telas ao mesmo tempo.Cada Divisor também pode mostrar uma URL, uma planilha do Excel, um documentodo Word ou um arquivo PDF.

A disposição dos Divisores dentro do Quadro pode ser horizontal ou vertical. Dentrode cada divisor podem ser inseridos outros divisores. A cada par de novos Divisorescriados pelas opções Dividir Horizontalmente e Dividir Verticalmente, há sempre umDivisor Principal e um Divisor Secundário. Apenas o Divisor Principal terá valores quedefinem explicitamente o seu posicionamento, ficando o Divisor Secundário com ovalor restante.

Para utilizar esse recurso, siga estes procedimentos:

1. Clique com o botão direito do mouse no nome do projeto em Viewers e Quadros eescolha a opção Inserir Quadro.

2. Para criar um divisor, clique com o botão direito do mouse sobre o quadro aberto e

Telas e Quadros 47

selecione o tipo de divisão (horizontal ou vertical).

Inserindo um divisor horizontal

3. Arraste a barra de divisão com o mouse para a posição desejada e clique com obotão esquerdo do mouse para fixá-la.

Divisores em um Quadro

48 Telas e Quadros

6.3 Viewer

O objeto Viewer configura o modo como o E3 Viewer será visualizado.

O E3 Viewer pode ser rodado a partir de qualquer ponto da rede que tenha acesso aoE3 Server. Não é necessário copiar o aplicativo para as máquinas onde os E3 Viewersserão executados, pois as Telas e bitmaps são trazidos do servidor conforme anecessidade, em tempo de execução.

NOTA: Só poderá existir um objeto Viewer em um domínio.

Na aba Visualizador da Janela de Propriedades são definidas as configurações devisualização do Viewer.

Propriedades do Viewer

Telas e Quadros 49

As opções disponíveis são as seguintes:

Opções de configuração do Viewer

OPÇÃO DESCRIÇÃO

Título Determina o título do Viewer. Este campo equivale àpropriedade Caption do objeto Viewer.

Tela ou Quadro Inicial Determina a Tela ou quadro em que o Viewer irá iniciar.

Clicando no botão , o sistema abre uma janela deconfiguração, pela qual chamará o AppBrowser, onde seráespecificada a Tela inicial de visualização do sistema. Essecampo equivale à propriedade InitialScreen do objetoViewer.

Zoom Permite preencher toda a área de visualização com a tela,esticar a largura ou a altura, ou determinar o percentualde zoom.

Habilitar barra derolagem na Tela Inicial

Habilita a barra de rolagem na página inicial.

Exibir o menu do Zoomao clicar com o botãodireito do mouse

Habilita a exibição do menu de Zoom com o botão direitodo mouse em tempo de execução. Esse campo equivale àpropriedade EnableZoomMenu do objeto Viewer.

Manter Telas carregadasna memória

Habilita o Viewer a manter as Telas carregadas namemória. Esse campo equivale à propriedade CacheEnabledo objeto Viewer.

Verificar inatividadeapós ... minutos

Define o tempo máximo de espera, em minutos, por umevento de mouse ou de teclado para o período deinatividade. Esse campo equivale à propriedade EnableInactivity do objeto Viewer.

Número de retentativaspara confirmação deusuário ou senha

Estabelece o número de vezes que o diálogo de login seráexibido além da primeira vez. Este campo equivale àpropriedade LoginRetries do objeto Viewer.

Através da aba Configuração, pode-se editar as opções relativas à janela, ao título e àresolução do Viewer.

50 Telas e Quadros

Aba Configuração

Cada campo da aba Configuração possui uma propriedade correspondente. As opçõesdisponíveis são as seguintes:

Opções disponíveis na aba Configuração

OPÇÃO DESCRIÇÃO

Iniciar Maximizada /Minimizada /Janelada

Determina o estilo da janela do Viewer. Esse campo equivaleà propriedade WindowStyle e possui as seguintes opções:

Telas e Quadros 51

· 0 - Maximized: A Tela inicia maximizada.

· 1 - Windowed: Estilo janelada, isto é, pode ser configuradaa altura e a largura da Tela.

· 2 - Minimized: A Tela inicia minimizada.

Desabilita a troca dejanelas

Desabilita a troca de janelas enquanto o Viewer estiverrodando. É importante tomar cuidado com estaconfiguração, certificando-se de que a aplicação possuaalguma forma de fechar o Viewer. Esse campo equivale àpropriedade DisableTaskSwitching do objeto Viewer.

Barra de título Habilita ou desabilita a barra de título. Esse campo equivaleà propriedade TitleBar do objeto Viewer.

Botão de Fechar Habilita ou desabilita o botão de fechar. Esse campoequivale à propriedade CloseButton do objeto Viewer.

Botão de Minimizar Habilita ou desabilita o botão de minimizar. Esse campoequivale à propriedade MinimizeButton do objeto Viewer.

Botão de Maximizar Habilita ou desabilita o botão de maximizar. Esse campoequivale à propriedade MaximizeButton do objeto Viewer.

Resolução da Tela Seleciona a resolução da Tela: 640 x 480, 800 x 600, 1024 x768, 1280 x 1024, ou 1600 x 1200 pixels.

Avançado Abre a janela para configurações avançadas.

Na aba Erros de comunicação, pode-se configurar um padrão para que os Displays eSetpoints de toda a aplicação indiquem erros de comunicação.

52 Telas e Quadros

Aba Erros de Comunicação

Também é possível inserir tags do tipo Interno ou Demo no Viewer.

6.4 Exercícios

Existem dois tipos de atalhos que podem ser criados para rodar uma aplicação E3.

Para rodar o Servidor sem o Viewer:

"C:\...\Elipse E3\Bin\E3Admin.exe" "C:\...\NomeDoArquivoDeDominio.dom"

Para rodar o Servidor com o Viewer:

"C:\...\Elipse E3\Bin\E3Admin.exe" "C:\...\NomeDoArquivoDeDominio.dom" -Viewer

6.4.1 Telas e Quadros

1. Clique com o botão direito do mouse sobre a pasta Viewer e Quadros e escolha aopção Inserir Quadro em - TreinamentoE3.prj.

2. Na área de visualização do quadro, clique com o botão direito do mouse eselecione a opção Dividir Horizontalmente, conforme figura.

Telas e Quadros 53

Inserir divisão de Quadro

3. Posicione a barra que aparece a cerca de 10% da Tela, a partir de seu limitesuperior, e pressione o botão esquerdo do mouse para fixar a posição da barra.

4. Chame a divisão criada de Cabeçalho. Para trocar o nome de um objeto, existemtrês opções:

· Selecione o objeto no Organizer e pressione a tecla F2. Será habilitada aedição do nome.

· Selecione o objeto no Organizer e, na Lista de Propriedades do objeto, altere apropriedade Name.

· Clique com o botão direito do mouse sobre o objeto no Organizer e selecione aopção Renomear.

5. Configure o tamanho do divisor para 2600 na propriedade SplitValue.

DICA: Para informar o valor em pixels, basta acrescentar "px" após o número. Sedesejar informar o valor em unidades himetric, use o sufixo "hm". Por exemplo, "100px".

6. Divida horizontalmente o quadro inferior a cerca de 10 % da tela a partir do limiteinferior. Chame as divisões de Central e Rodape.

Divisões do Quadro

54 Telas e Quadros

7. Configure o Divisor Rodape como Principal. Isso faz com que o E3 obedeça otamanho do divisor Rodape, e o restante da Tela será o tamanho do Divisorcentral. Clique com o botão direito do mouse no Rodape e escolha a opçãoConfigurar como Divisor Principal.

Configurar Divisor Principal

8. Configure o tamanho do Divisor Rodape como 2600 (SplitValue).

9. Clique com o botão direito do mouse sobre a pasta Telas e escolha a opção InserirTela em - TreinamentoE3.prj.

Inserir Tela

10.Escolha na lista de seleção o Divisor Cabecalho. Isso faz com que a Tela sejacriada com o tamanho exato desse Divisor. Marque a opção Configurar como Tela

Telas e Quadros 55

inicial do Divisor e no campo Nome digite TelaMenu.

Tamanho da Tela

11.Crie a TelaAlarmes para ser aberta no Divisor Rodape como Tela inicial doDivisor e a TelaEventos para ser aberta no Divisor Central.

12.Crie as seguintes Telas: TelaEventos, TelaGrafico e TelaSinotico paraserem abertas no Divisor Central; Marque a TelaSinotico como Tela inicaldo Divisor.

13.Crie a TelaComando com o tamanho de 150 x 150 px.

14.Verifique qual a Tela configurada como Inicial para o Quadro. Configure a TelaMenu no Cabeçalho, TelaSinotico no Central e a TelaAlarmesno Rodape. Para alterar a Tela associada, clique com o botão direito do mouse noDivisor e escolha a opção Selecionar Tela ou Quadro.

15.Para testar a configuração do Quadro1, é necessário configurá-lo como Tela ouFrame Inicial no Viewer. Clique com o botão direito do mouse no Viewer e escolha aopção Propriedades. Na aba Visualizador, escolha o Quadro1 no campo Tela ouQuadro Inicial.

56 Telas e Quadros

Propriedades do Viewer

16.Execute a aplicação pressionando o botão na Barra de Ferramentas.

6.5 Objetos de Tela

Os Objetos de Tela são elementos gráficos que podem ser inseridos nas Telas paracriar a interface visual com o processo. Podem ser criados a partir da barra deferramentas Objetos ou através do menu Objetos.

Uma vez selecionado o objeto que se deseja criar, mantenha o botão esquerdo do

Telas e Quadros 57

mouse pressionado na área da Tela, enquanto movimenta o mouse (um retângulopontilhado mostra o tamanho e a forma do objeto). Ao soltar o botão, o objeto seráposicionado dentro da área especificada.

6.6 Controles Microsoft Forms

Os objetos ActiveX são componentes de software baseados na tecnologia COM (Component Object Model) da Microsoft. O E3 instala e utiliza os controles MicrosoftForms, que são objetos ActiveX criados pela Microsoft. Eles podem ser inseridos nastelas da aplicação para realizar diversas tarefas. A seguir temos a descrição dosobjetos Microsoft Forms.

Controles Microsoft Forms

ÍCONE OBJETO DESCRIÇÃO

Caixa de Seleção (CheckBox)

Utilizado para dar ao usuário uma escolha entredois valores, tais como Sim e Não, True e False ouOn e Off.

Botão de Opções (OptionButton)

Utilizado para mostrar se um item individual deum grupo está selecionado.

Botão de Comando(Command Button)

Utilizado para executar uma ação específica aopressioná-lo.

Texto (Label) Utilizado para exibir um texto descritivo, comotítulos, legendas, etc.

Lista (List Box) Exibe uma lista de valores.

Barra de Rolagem (ScrollBar)

Retorna ou define o valor da propriedade deoutro objeto de acordo com a posição da caixa derolagem.

Botão Incremento-Decremento (Spin Button)

Utilizado para incrementar e decrementar umvalor.

Editor de Texto (Text Box) Utilizado para exibir informações digitadas pelousuário na Tela.

Botão Liga-Desliga (ToggleButton)

Semelhante ao Botão de comando, porémnecessita um segundo comando do usuário paravoltar ao estado normal.

Lista de Seleção (ComboBox)

Combina os recursos de uma Lista e de um Editorde Texto. O usuário pode digitar um novo valor ou

58 Telas e Quadros

ÍCONE OBJETO DESCRIÇÃO

selecionar um valor existente.

NOTA: Outros objetos ActiveX de terceiros também podem ser utilizados no E3,desde que sejam devidamente registrados. Eles podem ser adicionados através domenu Ferramentas - Adicionar ActiveX.

6.7 Galeria

A Galeria é uma biblioteca de símbolos vetoriais, divididos em categorias, que podemser arrastados para as telas.

Depois de inserido, o objeto pode ser livremente editado e trabalhado de acordo comas características descritas para os objetos de imagem (pode-se, por exemplo, mudara cor de preenchimento através das propriedades OverrideFillMode,OverrideFillColor e OverrideLineColor sem a necessidade de transformar o objeto emum objeto gráfico do E3).

Além da biblioteca de símbolos, a Galeria também mostra os XControls pertencentesas bibliotecas do Domínio corrente.

Telas e Quadros 59

Galeria

NOTA: Ao executar o E3 Studio em modo Demo (sem licença), apenas o primeiroelemento de cada conjunto de categorias de símbolos estará disponível.

6.8 Exercícios

Todas as figuras utilizadas nesta aplicação serão salvas em uma pasta dentro doprojeto principal para que não seja necessário preocupar-se com os caminhos dasfiguras ao executar a aplicação em outro computador.

60 Telas e Quadros

6.8.1 Figuras

1. Clique com o botão direito do mouse em Recursos e escolha Inserir Recurso em -TreinamentoE3.prj.

Inserir Recurso

2. Escolha todos as figuras da pasta C:\TreinamentoE3\Figuras.

Telas e Quadros 61

6.8.2 Tela Inicial

A Tela Inicial terá o seguinte aspecto.

Tela Inicial

1. Configure a propriedade FillStyle para 12 - bkPicture, para habilitar uma figura defundo.

2. Para colocar a figura FundoTelaInicial como fundo, arraste o bitmap de Recursosaté a propriedade PictureFile da Tela. Isto faz com que o E3 utilize o recursoinserido e não o arquivo da imagem (que é externo à aplicação). Para escolher amelhor posição da figura, pode-se alterar a propriedade PicturePosition.

3. Crie um objeto Texto com a palavra "Login", e outro com a palavra "Sair".

4. Copie o texto arrastando-o e segurando a tecla CTRL. Clique com o botão direito domouse em cima do objeto criado, selecione Editar Texto, e altere o texto de "Login"para "Sair".

5. No centro da tela, posicione o texto "Treinamento E3 Studio".

62 Telas e Quadros

DICA: Utilize os botões Centralizar Horizontalmente e CentralizarVerticalmente.

6. Logo abaixo do texto "Treinamento E3 Studio", insira um segundo texto com amensagem "Elipse Software Ltda".

6.8.3 TelaMenu

Tela Menu

1. Na TelaMenu, coloque como figura de fundo a imagem FundoTelaMenu.

6.8.4 TelaAlarmes

Esta tela exibirá os alarmes ativos da aplicação.

1. Escolha uma cor de fundo para a Tela.

6.8.5 TelaComando

1. Configure a Tela na cor de sua preferência, altura 4000, e largura 4000.

6.8.6 TelaEventos

1. Configure a Tela com fundo branco.

2. Insira no canto superior direito da Tela um objeto bitmap . Clique no botãoCancelar na caixa de mensagem que aparecerá, e arraste o E3Logo de Recursospara a propriedade FileName. Clique com o botão direito do mouse sobre o objeto eselecione a opção Tamanho Original.

Telas e Quadros 63

6.8.7 TelaGrafico

1. Configure a tela com fundo branco.

6.8.8 TelaSinotico

TelaSinotico

1. Na TelaSinotico, coloque como figura de fundo a imagem FundoTelaSinotico.

2. Sobre os tanques de cores, insira Setpoints onde será digitada a quantidade decada componente de cor.

· Habilite os limites do Setpoint alterando a propriedade EnableLimits paraTrue.

· Configure a propriedade MaxLimit para 255 e MinLimit para 0.

Configurando os limites

3. Sobre a esteira, insira, a partir da biblioteca de objetos gráficos (Galeria), a figura5GallonBucket, que está na pasta Tanks.

64 Telas e Quadros

4. Sobre os tanques à direita, desenhe um objeto retângulo, e configure as seguintespropriedades: BackgroundStyle = 1 - opaque; BackgroundColor = (0, 0, 0) (preto);VerticalPercentFill = 20.

6.9 Exercícios Complementares

Esta seção contém exercícios complementares sobre o conteúdo deste capítulo.

6.9.1 KB

· KB-16979: Como copiar telas pelo Studio?

· KB-27655: Como roda uma aplicação sem a barra de titulo na aplicação?

· KB-27542: Disponibilizando figuras na Galeria do E3.

Telas e Quadros 65

6.10 Anotações

66 Assoc iações

7Associações

CAPÍTULO

Associações (ou conexões) são ligações feitas entre propriedades e objetos ou entreoutras propriedades. As associações trazem grande facilidade ao criar animações eoutros tipos de lógicas comuns, minimizando a utilização de scripts.

Através da aba Associações da janela de Propriedades, tem-se acesso a todas aspropriedades disponíveis do objeto a ser tratado e todos os tipos possíveis deassociação para essas propriedades.

Aba de Associações

As opções disponíveis na aba Associações são as seguintes:

Opções disponíveis na aba Associações

OPÇÃO DESCRIÇÃO

Propriedad Lista as propriedades disponíveis no objeto.

Assoc iações 67

es

Conexão Determina o(s) tipo(s) de conexão que a propriedade selecionadapossui. Os tipos de conexões disponíveis são: simples, bidirecional,analógica, digital, por tabela e reversa.

Fonte Variável que será associada à propriedade.

Pode-se associar um objeto ou criar uma expressão. Ao criar uma expressão ouassociar um objeto ou propriedade ao campo Fonte, o texto aparecerá na cor azul,caso esse corresponda a um item existente ou carregado no E3 Studio. Se o item nãoexistir, ou pertencer a um módulo não existente no domínio, o texto aparecerá emvermelho, e esse item será mostrado como um erro, até ser corrigido ou excluído coma opção Verificar Domínio.

7.1 Tipos de Associação

Esta seção contém informações sobre os tipos de associações.

68 Assoc iações

7.1.1 Conexão Simples

Na conexão Simples, o valor do campo Fonte é copiado para a propriedade toda vezque a fonte for modificada.

Conexão simples

Assoc iações 69

7.1.2 Conexão Bidirecional

Na conexão Bidirecional acontece o mesmo que na conexão simples, porém casotambém haja uma variação na propriedade, seu valor será copiado para o campo Fonte, gerando assim um caminho de duas direções.

Conexão Bidirecional

70 Assoc iações

7.1.3 Conexão Digital

Já na conexão Digital, é possível estabelecer que, caso a variável ou expressão docampo Fonte seja uma propriedade digital, seus estados verdadeiro e falso serãomapeados para certos valores no Destino, incluindo a opção de Pisca (alternância devalores).

Conexão digital

Assoc iações 71

7.1.4 Conexão Analógica

A conexão Analógica permite estabelecer uma escala de conversões entre a variávelfonte e a variável destino. Através de quatro valores especificados, é feita uma escalalinear entre os valores da propriedade e os valores da fonte.

Conexão analógica

72 Assoc iações

7.1.5 Conexão por Tabela

Pode-se estabelecer condições entre a variável, os valores e o destino. Na tabela sãoespecificados valores mínimos e máximos, e valores para a propriedade referente aessas condições.

Conexão por tabela

Assoc iações 73

7.1.6 Conexão Reversa

A conexão Reversa é uma associação unidirecional do objeto para a fonte.

Conexão Reversa

7.1.7 Edição de associações

O E3 possui uma ferramenta para edição das associações, chamada Edição deAssociações. Assim, é possível mudar uma ou mais associações feitas na aplicação deforma mais rápida do que pela janela tradicional. O acesso a essa ferramenta podeser feito clicando com o botão direito do mouse sobre um ou mais objetos eselecionando a opção Editar Associações.

74 Assoc iações

Edição de associações

7.2 Valores Booleanos

Em VBScript, o 0 é considerado como Falso e qualquer valor diferente de 0 éconsiderado Verdadeiro.

Considere, por exemplo, um tag que representa uma entrada ou saída digital,portanto seus valores são 0 ou 1.

Ao usar o valor do tag para associações com propriedades do tipo Boolean, o E3considerará:

TAG VBSCRIPT

0 Falso

1 Verdadeiro

Ao utilizar o comando NOT, ficará:

TAG NOT TAG VBSCRIPT

0 -1 Verdadeiro

1 -2 Verdadeiro

Assoc iações 75

Portanto, NOT de 1 não é Falso pois seu valor não é igual a 0.

Caso deseje utilizar o comando NOT, primeiro converta o valor do tag para umbooleano com o método CBool:

TAG CBOOL(TAG) NOT CBOOL(TAG)

0 Falso Verdadeiro

1 Verdadeiro Falso

Exemplo de Associação

Outra opção seria trabalhar com o Bit00 do tag, que já é uma propriedade do tipoBoolean, em vez de trabalhar com a propriedade Value do tag.

Exemplo de Associação

7.3 Exercícios

Esta seção contém exercícios sobre o conteúdo deste capítulo.

7.3.1 TelaMenu

1. No canto direito da tela, insira um Display .

2. Acesse as propriedades do objeto e selecione a aba Formatação. Defina o formatocomo Hora, e no item Tipo, escolha 13:06:03. Essa formatação mostrará ashoras, os minutos e os segundos.

3. Para visualizar a configuração feita no exercício anterior, acesse a propriedade Value do display e escolha a opção Date.

4. Acesse as propriedades do Display, aba Associações. Na propriedade Value, busquena coluna Fonte, com o auxílio do AppBrowser, o tag Demo HoraAtual (Servidor -Dados). À direita, selecione a propriedade Value e clique no botão Copiar. Ainformação vai do tag para o Display, logo a associação é simples (Propriedade < --

76 Assoc iações

Fonte).

Associação

7.3.2 TelaSinótico

1. Para simular o movimento do líquido no tanque, crie uma associação dapropriedade VerticalPercentFill do corte do tanque com a propriedade Value dotag Nivel1.

Associação

2. Para cada Setpoint, crie uma associação bidirecional com o seu tag respectivo, vermelho, verde e azul.

3. Para pode modificar a cor do líquido crie a associação da figura a seguir.

Associação

4. Repita o procedimento para o segundo tanque.

7.3.3 Animação

1. Selecione o objeto galão e aperte o botão para inserir uma animação comtranslação.Uma sombra do objeto aparecerá. Mova-a até onde desejar.

Animar com Translação

2. Clique com o botão direito do mouse na animação e acesse suas propriedades. Crieuma associação na propriedade Value com o tag Anima.

Assoc iações 77

Associação Simples

3. Altere as propriedades Enabled e EnabledSlider da animação para False.

7.4 Exercícios Complementares

Esta seção contém exercícios complementares sobre o conteúdo deste capítulo.

7.4.1 KB

· KB-26250: Como criar uma associação com dois tags (tipo Boolean) na fonte.

78 Assoc iações

7.5 Anotações

Bibliotecas ElipseX 79

8Bibliotecas ElipseX

CAPÍTULO

O E3 possui ferramentas que permitem transformar qualquer objeto ou conjunto deobjetos de sua aplicação em uma biblioteca do usuário. A idéia das bibliotecas deusuários (chamadas de ElipseX) vem das linguagens de programação orientadas aobjetos, onde diversos componentes podem ser compartilhados entre projetos semque seja necessário desenvolver novamente cada um dos objetos.

O uso de bibliotecas no E3 é altamente recomendável devido ao ganho deprodutividade que elas trazem. Algumas das vantagens dos ElipseX:

· Reutilização de códigos.

· Minimização de testes durante o desenvolvimento.

· Criação de interface padrão para os objetos desenvolvidos.

· Diminuição do tempo de desenvolvimento de novos projetos.

· Proteção do conteúdo do projeto.

O uso de bibliotecas é recomendado na maioria das aplicações.

80 Bibliotecas ElipseX

Bibliotecas no Organizer

8.1 Criação de Bibliotecas de Usuário

Os objetos ElipseX podem conter, além de um desenho, variáveis internas que podemser exportadas para a aplicação, além de lógicas de programação (scripts) que vãoestar presentes em todas as cópias do objeto que está sendo criado, diminuindo anecessidade de repetição de código em diversas partes do aplicativo.

Para criar uma nova biblioteca no E3, siga estes procedimentos:

1. Acesse o menu Arquivo, selecione o item Novo Projeto e clique em Próximo.

2. Na opção Tipo de Aplicação, selecione a opção Biblioteca de componentes do E3.

Bibliotecas ElipseX 81

Criação de uma biblioteca do usuário (ElipseX)

3. Determine o nome da sua biblioteca e a pasta onde ela será salva, e clique em Avançar.

4. Determine as especificações referentes ao Domínio.

5. Clique em Concluir.

Dentro de uma biblioteca ElipseX podem ser inseridos dois tipos de objetos: osobjetos gráficos XControls e os objetos de dados XObjects.

Podem ser inseridos nos XControls todos os itens disponíveis para as Telas, descritosnos respectivos capítulos. Entre esses itens estão as primitivas de desenho, objetosgráficos vetoriais, incluindo objetos da biblioteca de símbolos (WMF, EMF, etc.),objetos gráficos não vetoriais (BMP, JPEG, GIF, etc.), controles ActiveX do E3 (E3Chart,E3Browser, E3Alarm), controles ActiveX de terceiros e outros XControls.

Já as bibliotecas de dados podem conter quaisquer tipos de objetos não gráficos, quesão executados no E3 Server. Pode-se inserir em um XObject os seguintes objetos:Driver de Comunicação, Servidor de Dados, Banco de Dados, Fórmulas, Configuraçãode Alarmes, Servidor de Alarmes, Objetos COM, outros XObjects, dentre outros.

Dentro de um mesmo arquivo .lib pode existir qualquer número de componentes

82 Bibliotecas ElipseX

ElipseX, sejam eles XControls ou XObjects. Pode-se ter também várias bibliotecasdiferentes (vários arquivos .lib) dentro do mesmo Domínio.

8.1.1 XControl

O XControl define uma interface gráfica com o usuário, que pode ser composta dequaisquer objetos do E3, com o propósito de ser multiplicada facilmente por seuprojeto. Pode-se criar um XControl clicando com o botão direito do mouse sobre oarquivo .lib criado em seu Domínio (Organizer - Explorer) ou em Bibliotecas de Objetos,XControl, escolhendo a opção Inserir - XControl.

XControls

Ao inserir um XControl, observe que na parte inferior da tela existem três abas: Design, Propriedades e Scripts. Na aba Propriedades, pode-se inserir propriedades a seremexportadas pelo objeto. Elas poderão ser associadas a um tag ou outra propriedadequalquer quando o objeto estiver sendo usado em um projeto. Na aba de Design, queequivale a uma Tela, pode-se inserir os objetos gráficos descritos anteriormente.

As propriedades a serem exportadas (XProperties) podem ser inseridas através da

tecla INS do teclado ou através do botão ; e excluídas através do botão . Asopções disponíveis são:

Opções disponíveis em XControls

OPÇÃO DESCRIÇÃO

Nome Determina o nome da propriedade do XControl.

Tipo Determina o tipo de dado suportado pela propriedade.

Public Habilita ou desabilita a visibilidade da propriedade fora dabiblioteca, isto, é determina se a propriedade será ou não pública.

Valor Inicial Determina o valor inicial da propriedade.

Bibliotecas ElipseX 83

Texto de ajuda Texto de declaração e documentação da propriedade.

Note que outros objetos de Dados (XObjects) podem ser declarados como Tipo. Issopermite que em uma única propriedade seja controlado o funcionamento de todo umobjeto, tornando mais fácil a manutenção de uma biblioteca.

A edição do objeto gráfico possui os mesmos recursos gráficos e opções da edição deTelas. Pode-se inserir os XControls em qualquer Tela, ou ainda dentro de outroXControl clicando com o botão direito do mouse sobre a Tela ou XControl de destino eescolhendo a opção Inserir.

A partir desse momento, o XControl terá um nome dentro da Tela, e será entendidocomo uma cópia da definição original. Assim, deve-se definir (se necessário) osvalores as ou associações que essa cópia específica terá no contexto que está sendoutilizada.

8.1.2 XObject

Além dos objetos gráficos, pode-se criar uma biblioteca de dados, chamada XObject.Com ela, pode-se definir uma estrutura de dados a ser executada no servidor. Talestrutura poderá realizar cálculos, associações, comunicações, verificação dealarmes, registro histórico, etc., que independam de alguma interface gráfica (Viewer)aberta ou em execução naquele momento. Para criar um XObject, clique com o botãodireito do mouse sobre o arquivo .lib no Organizer e escolha a opção Inserir - XObject.

As opções disponíveis para as propriedades do XObject são as mesmas dos XControl,citadas anteriormente.

Além das XProperties, podem ser inseridos em um XObject quaisquer módulos do E3que sejam executados no servidor. Para saber a lista completa, basta pressionar obotão que define o tipo do objeto e verificar a lista de opções disponíveis.

Isso permite que se possa definir como uma biblioteca um sistema complexo degerenciamento, que poderá ser facilmente replicado quantas vezes foremnecessárias no aplicativo.

Pode-se inserir os XObjects em qualquer Servidor de Dados clicando com o botãodireito do mouse sobre o Servidor de Dados e escolhendo a opção Inserir.

Mesmo que o(s) arquivo(s) de biblioteca possua(m) vários XControls e XObjects, aotentar inserir uma biblioteca o E3 Studio exibirá para as Telas somente os XControls, epara os Servidores de Dados somente os XObjects.

84 Bibliotecas ElipseX

8.2 Quando Criar um ElipseX

Existem alguns critérios para indicar a necessidade da construção de objetos noElipse E3:

· Repetição no uso: se um mesmo equipamento ou processo será usado mais de umavez no mesmo projeto.

· Procedimentos de conhecimento do usuário: frequentemente, um processo criadopor determinada empresa deve ser protegido de cópia ou alteração. Isso é comumno caso de integradores de serviços ou fabricantes de máquinas.

· Uso de controladores: um controlador de processo, cujo mapeamento de memóriaé fixo, pode ser implementado com todas as funcionalidades disponíveis. Aflexibilidade disponível para a construção e uso dos objetos no E3 permite quesejam utilizadas posteriormente apenas as variáveis de interesse, desprezando-seas demais.

NOTA: Não é possível copiar uma biblioteca e utilizar os dois arquivos (original ecópia) no mesmo Domínio. Por exemplo, não se pode copiar um arquivo .lib parasepará-lo em dois.

8.3 Exercícios

Esta seção contém exercícios sobre o conteúdo deste capítulo.

8.3.1 Bibliotecas

1. Clique no botão Novo Projeto e, no Assistente de Aplicações, selecione a opçãoBiblioteca de componentes do E3. Nomeie-a como TreinaLib e especifique apasta C:\TreinamentoE3. Avance, adicione-a ao Domínio corrente e conclua oprocesso.

8.3.2 AbreTela

Para navegar pelas telas do projeto será criado um objeto padrão onde é possívelescolher a Tela que se deseja abrir e em qual quadro ela deverá ser aberta.

1. Clique com o botão direito do mouse sobre a Biblioteca de Objetos - XControl eescolha Inserir XControl em TreinaLib.lib.

Bibliotecas ElipseX 85

Inserir XControl

2. Nomeie o objeto como AbreTela. Crie um botão padrão que abra uma Tela ao serclicado. Utilize obrigatoriamente um objeto Texto. Uma sugestão é o objeto aseguir, formado por um retângulo arredondado, um retângulo e um objeto Texto.

Xcontrol AbreTela

Para que o texto possa ser modificado quando estiver em uma Tela, é necessário teruma propriedade que terá a mensagem desejada.

1. Na parte de propriedades, crie uma propriedade chamada Texto do tipo String

através do botão .

Propriedade Texto

2. Associe a propriedade Value do texto Tela à propriedade criada.

Associação

86 Bibliotecas ElipseX

3. Para que o texto mude de cor quando o mouse estiver sobre o objeto, crie umaassociação digital na propriedade TextColor com a propriedade MouseOver dopróprio objeto texto.

DICA: Sempre que referir-se a uma propriedade ou método do próprio objeto, pode-se referir apenas pelo nome, sendo dispensável o caminho completo.

4. Atribua a cor amarela quando ligado e a cor branca quando desligado.

Associação

5. Salve a biblioteca . Clique com o botão direito do mouse em Bibliotecas deObjetos e escolha a opção Registrar bibliotecas carregadas.

6. Na TelaMenu, insira um objeto AbreTela para cada uma das Telas da aplicação.Para inserir um objeto de biblioteca, há duas opções.

· Clique com o botão direito do mouse na Tela em Inserir, e localize o objeto.

Bibliotecas ElipseX 87

Inserir uma Tela via menu

· Localize a biblioteca na Galeria de Figuras e arraste o objeto até a tela.

Inserir uma Tela via arrastar-e-soltar

7. Configure a propriedade Texto dos objetos inseridos.

Sugestão de posicionamento dos XControls

8. Para criar o espaçamento igual entre os objetos da tela, selecione todos e

88 Bibliotecas ElipseX

pressione o botão Distribuir Horizontalmente .

O próximo passo é criar as bombas da TelaSinotico. Será desenvolvido umXControl Bomba que possui as propriedades On/Off, Defeito e Automático/Manual,que serão representadas para o usuário por uma figura.

Quando o objeto estiver ligado, sua cor deverá ser verde, e quando estiver desligadosua cor deverá ser vermelha. Se o objeto estiver em automático, aparecerá ao seu

lado a figura e quando estiver com defeito, a figura .

Para concentrar todas as informações (Defeito, On/Off e Automático/Manual) em umúnico objeto que possa ser acessado de qualquer lugar da aplicação, será criado umXObject.

8.3.3 DadosBomba

1. Na biblioteca TreinaLib, insira um novo XObject e nomeie-o DadosBomba.

2. Crie três propriedades do tipo Boolean: OnOff, Automatico e Defeito.

Propriedades do DadosBomba

3. Salve a biblioteca e registre-a.

8.3.4 Bomba

Bomba

1. Insira um novo XControl e nomeie-o Bomba.

2. Insira o objeto 3DISABlower da categoria Blowers da Biblioteca de Símbolos.

Bibliotecas ElipseX 89

· Modifique a propriedade OverrideFillMode para 3 - ByBrightness e apropriedade OverrideFillColor para verde (0, 255, 0).

3. Insira a figura Defeito e Automatico que está incluída como recurso noprojeto.

4. Insira um Display embaixo da válvula para exibir o nome Bomba.

5. Crie uma propriedade chamada Fonte do tipo DadosBomba (XObject criadoanteriormente).

Tipo DadosBomba

6. Para facilitar posteriormente, escreva no campo Texto de ajuda a mensagem"Objeto DadosBomba associado. Propriedades: OnOff, Automatico, Defeito".

7. Para que a figura só apareça quando a válvula estiver com defeito, crie umaassociação simples na propriedade Visible do objeto com a propriedade Defeito.

· Com o auxílio do AppBrowser, localize a propriedade Fonte.

· No campo inferior, insira após a propriedade Fonte a propriedade do objetoDadosBomba desejada, nesse caso, Defeito.

90 Bibliotecas ElipseX

AppBrowser

8. Repita o procedimento anterior para o objeto Automatico com a propriedadeAutomatico.

9. No Display abaixo da válvula deve aparecer o nome do XObject DadosBombaassociado. Crie uma associação na propriedade Value do Display com Bomba.Fonte.Name.

10.Quando a propriedade OnOff estiver em True a cor da válvula bomba deverá serverde, e quando a propriedade estiver em False a cor deverá ser vermelha.

11.Na aba Associações, crie uma associação digital na propriedade OverrideFillColorcom a propriedade OnOff.

Bibliotecas ElipseX 91

Associação

12.Salve a Biblioteca e registre-a.

8.3.5 TelaSinotico

1. Na TelaSinotico insira um objeto Bomba sobre cada bomba do desenho de fundo.

2. Crie dentro de Dados uma Pasta de Dados com o nome Bombas.

3. Na pasta Bombas, crie seis XObject DadosBombas, de Bomba01 a Bomba06.

4. Associe a propriedade Fonte dos objetos Bomba da TelaSinotico aos XObjectBomba criados no item anterior.

DICA: Pode-se arrastar o objeto que se deseja associar até a propriedade desejada.

92 Bibliotecas ElipseX

Arrastando um objeto para a propriedade desejada

8.3.6 ComandoBomba

Comando

Um XControl será criado para alterar as propriedades OnOff, Automatico e Defeito doXObject DadosBomba. Haverá uma única Tela com este objeto, que fará aconfiguração de todas as bombas do aplicativo.

1. Insira um novo XControl na biblioteca TreinaLib e nomeie-o ComandoBomba.

Bibliotecas ElipseX 93

2. Crie uma propriedade chamada Fonte do tipo DadosBomba.

3. Crie uma Caixa de seleção , e na propriedade Caption digite o texto "Defeito".

4. Crie uma associação bidirecional entre as propriedades Value (da Caixa de seleção)e Defeito (da Fonte).

Associação

5. Copie o objeto CheckBox duas vezes. Altere a propriedade Caption dos objetos para"Automático" e "OnOff", respectivamente, e associe-os às propriedadescorrespondentes.

6. Insira um texto sobre os objetos onde apareça o nome do XObject DadosBombaassociado.

Criando um link para a propriedade Valor

7. Salve a Biblioteca e registre-a.

8.3.7 TelaComando

1. Na TelaComando, insira um objeto ComandoBomba.

8.4 Exercícios Complementares

Esta seção contém exercícios complementares sobre o conteúdo deste capítulo.

8.4.1 KB

· KB-28547: Como utilizar em um novo Domínio uma Biblioteca desenvolvida emoutro Domínio?

94 Bibliotecas ElipseX

8.5 Anotações

Scripts 95

9Scripts

CAPÍTULO

Os Scripts são trechos de código (programação) com os quais se pode criarprocedimentos associados a eventos específicos, permitindo grande flexibilidade nodesenvolvimento e no uso de aplicações. Todos os scripts estão associados aeventos, e cada objeto do E3 possui uma lista de eventos previamente definidos,sendo possível também definir novos eventos de usuário.

De acordo com conceitos da programação orientada a objetos, as Propriedadesdefinem atributos de um objeto, como a aparência de um controle de Tela ou o valorinicial de um objeto quando se inicia o aplicativo.

NOTA: Estamos trabalhando até agora apenas com propriedades no E3. Jáconhecemos algumas propriedades dos objetos do E3 e vimos que temos duasmaneiras de alterá-las, na Janela de Propriedades ou por associações.

Os Métodos são funções previamente definidas, que executam determinadas açõessobre as propriedades do objeto que chama estas ações. Exemplos disso são funçõespara realizar a escrita em tags (Write ou WriteEx), entre outras. Em linguagens deprogramação orientadas a objeto, para agir sobre uma propriedade é necessária acriação de métodos. No E3, para cada método desejado, é necessário definir a qualevento ele estará associado, pois os scripts do E3 são orientados a eventos.

Os Eventos são ocorrências relacionadas a um objeto, que podem ser tratadas demodo a se realizar uma ação (um método).

9.1 Definindo Scripts

A linguagem que o E3 Studio usa em seus scripts é o VBScript, um subconjunto dalinguagem Visual Basic® desenvolvida pela Microsoft. O VBScript possui uminterpretador rápido, leve e portável, desenvolvido para o uso em navegadores para aInternet e outras aplicações que usam ActiveX Controls, Automation Servers e JavaApplets. Os scripts são sempre associados a eventos de um determinado objeto.Entretanto, para facilitar e aumentar a velocidade de desenvolvimento, o E3 jáincorpora algumas ações mais comuns que poderiam ser realizadas com scriptsatravés de assistentes (wizards) chamados Picks. Pode-se definir que um determinado

96 Scripts

evento executará um script, um Pick ou uma combinação deles, em uma sequênciadefinida durante a criação do script (no E3 Studio).

9.1.1 Obtendo Referências a Objetos

Uma das características mais importantes ao se trabalhar com scripts dentro do E3 éconsiderar a separação existente entre os processos que são executados no servidore aqueles executados na interface do cliente (Viewer). Para se trabalhar com scripts,pode-se manipular:

· Objetos do servidor através do servidor.

· Objetos do servidor através do(s) Viewer(s).

· Objetos do Viewer através do mesmo Viewer.

No entanto, não se pode manipular diretamente:

· Objetos do Viewer através do servidor diretamente (só é possível através dacriação de eventos no Viewer, ligados a variáveis que estão no servidor).

· Objetos de um Viewer a partir de outro Viewer (só é possível através da criação deeventos ligados a variáveis que estão no servidor).

Tais limitações são decorrentes do fato de que, por definição, existe umaindependência entre o que cada uma das estações Viewer está fazendo ouvisualizando com relação ao servidor e vice-versa. Por isso todas as atividades, tantono servidor quanto no Viewer, necessitam ser coordenadas de forma assíncrona ouatravés de eventos para operarem de forma harmoniosa.

Devido a essa independência, ao se criar um script, primeiro deve-se obter umareferência correta dos objetos que se deseja manipular, ou seja, é necessário que oobjeto seja primeiramente encontrado nos vários módulos do E3.

Vale repetir que, ao se editar um script, o usuário deverá utilizar o AppBrowser, quepermite copiar para o script o caminho de um método ou propriedade de formacompleta, auxiliando-o na criação de scripts.

Por exemplo, para se manipular o valor de um tag de comunicação, o caminho é Servidor - Driver - Pasta (se houver) - Tag. Já se o objetivo for manipular um botão natela o caminho é Viewer - Frame (se houver) - Tela - Botão.

Existem basicamente três localizações de origem de scripts, do ponto de vista dametodologia para acesso aos objetos:

Scripts 97

· Servidor (E3 Server).

· Telas e quadros (E3 Viewer).

· ElipseX (bibliotecas): podem ser XObjects (rodam no servidor) e XControls (rodamno Viewer).

Cada uma delas trata de forma diferente o acesso aos dados que um script deve lidar.A única ferramenta útil para todos esses acessos é o App Browser.

9.1.2 Picks

Os Picks implementam uma forma amigável de realizar procedimentos comuns emscripts, poupando tempo de escrita de código. Entre eles estão ações como troca deTela ou atribuições de valores, que são bastante comuns na criação de um projeto.

9.1.2.1 Executar Scripts

Permite a edição de um script personalizado que será executado na ocorrência doevento determinado.

Executar Scripts

98 Scripts

9.1.2.2 Abrir Tela

Abre uma Tela ou um quadro determinado.

Abrir Tela

Scripts 99

9.1.2.3 Abrir Tela Modal

Abre uma tela em estilo modal.

Abrir Tela Modal

100 Scripts

9.1.2.4 Executar Aplicação

Executa um programa específico.

Executar aplicação

Scripts 101

9.1.2.5 Carregar Valor

Carrega um valor em um tag.

Carregar valor

102 Scripts

9.1.2.6 Inverter Valor

Permite mudar o valor de um tag. Se o valor do tag for igual a Valor1, então o tagrecebe Valor2. Se o valor do tag for igual a Valor2, então o tag recebe Valor1. Se o valordo tag não for igual nem a Valor1 nem a Valor2, o tag recebe Valor1.

Inverter valor

Scripts 103

9.1.2.7 Imprimir Relatório

Permite imprimir um relatório na Tela ou na impressora.

Imprimir relatório

9.2 Eventos

Os Eventos são ocorrências relacionadas a um objeto, que disparam açõesprogramadas. Basicamente são dois tipos de eventos: Físicos (ou externos) e Internos.

Eventos físicos são, por exemplo, ações no teclado ou no mouse. Neste caso, ainformação relevante seria a tecla pressionada ou a posição do cursor e os status dosbotões. Eventos internos são, por exemplo, a mudança de uma temperatura de umacâmara de 10 para 11 graus Celsius.

No E3, há uma lista disponível de eventos classificada por objetos, iniciando peloseventos padrão, presentes em todos os objetos. Esses eventos são acessados atravésda aba Scripts, que pode ser consultada através das propriedades do objeto para oqual se deseja fazer o script.

104 Scripts

Eventos disponíveis no objeto selecionado, acessado através da aba Scripts

9.2.1 Eventos Definidos pelo Usuário

Apesar de o E3 vir com uma extensa gama de eventos, muitas vezes o usuárionecessita criar um evento específico para sua aplicação. Um exemplo para autilização de eventos definidos pelo usuário é a realização de um cálculo (ou tarefamais complexa) em um objeto, quando o evento gerador vem de um outro tag oupropriedade.

É possível a criação de eventos personalizados definidos pelo usuário através daopção Criar novo evento na lista de eventos ou através do botão Criar evento do

usuário .

Scripts 105

Criando eventos

9.3 Métodos

Os Métodos são procedimentos que podem ser executados por objetos. Por exemplo,o objeto Tela tem um método para a adição de objetos (AddItem) e outro para fechá-la (Close). Por estarem encapsulados, isto é, guardados dentro dos objetos, nachamada de um método sempre deve constar a qual objeto está se referindo.

Muitos métodos pré-definidos possuem parâmetros, que podem (ou devem) serpassados na chamada do método. Para isso, o VBScript possui uma regra que deve serseguida: Se o método for utilizado em uma atribuição, seus parâmetros devem estarentre parênteses. Os parênteses usados nas citações de métodos neste manualservem apenas como indicativo para diferenciá-los das propriedades. Nos scripts,deve-se seguir esta regra.

106 Scripts

AppBrowser

9.4 Propriedades

Todo objeto possui Propriedades, que guardam informações a respeito de suascaracterísticas. Por exemplo, um objeto do tipo Retângulo possui a propriedade Name, que contém seu nome e as propriedades Width e Height, que guardam a sua largurae a sua altura, respectivamente, entre outras. Para acessar as propriedades, utilizeas mesmas especificações anteriores, porém selecione a pasta Propriedades.

9.5 Exercícios

Esta seção contém exercícios sobre o conteúdo deste capítulo.

Scripts 107

9.5.1 Scripts

Esta seção contém exercícios sobre scripts.

9.5.1.1 Telas

1. Inicialmente vamos entrar no aplicativo sem precisar entrar com senha de usuário.Selecione o texto Login da TelaInicial e clique na aba Scripts na parte inferiorna tela.

2. No evento Click, crie um novo script do tipo Abrir tela.

Pick Abrir Tela

3. Selecione o Quadro1 no campo Abrir a tela.

4. No texto Sair, crie um novo script no evento Click do tipo Script.

5. Com o auxílio do AppBrowser procure o método Exit do Viewer, Application.Exit.

6. Nas propriedades do Viewer, configure como tela inicial a TelaInicial.

9.5.2 Biblioteca

Esta seção contém exercícios sobre bibliotecas.

9.5.2.1 AbreTela

1. No XControl AbreTela, crie mais duas propriedades do tipo String, NomeTela eNomeQuadro. Com essas propriedades será possível escolher a tela que se desejaabrir e em qual quadro ela deverá ser aberta.

Propriedades do XControl AbreTela

2. Crie um novo script no evento Click de um grupo ou de um objeto no XControl

108 Scripts

AbreTela.

3. Com o auxílio do AppBrowser selecione Tarefas - Abrir tela, escolha uma Telaqualquer (por exemplo, TelaInicial), e clique em Colar.

Abrir TelaInicial

Application.GetFrame("").OpenScreen("TelaInicial"), 0

4. Para abrir a Tela configurada na propriedade NomeTela, modifique a linha de scriptpara a linha a seguir. O código ?4 significa abrir a tela com o zoom preencher.

Application.GetFrame(AbreTela.NomeQuadro).OpenScreen_ (AbreTela.NomeTela&"?4"), 0

NOTA: Pode-se usar após o nome da tela o código ?4 que significa abrir a tela com ozoom preencher. Exemplo: OpenScreen(NomeTela & "?4")

5. Salve a biblioteca e registre-a.

6. Na TelaMenu, configure os objetos AbreTela para abrirem as Telascorrespondentes no quadro Central editando as propriedades NomeTela eNomeQuadro.

Propriedades NomeQuadro e NomeTela

7. Para a TelaInicial abrir em tela cheia, deixe a propriedade NomeQuadro vaziae preencha apenas a propriedade NomeTela.

9.5.2.2 Bombas

1. No XControl Bomba, crie um script no evento Click da válvula bomba para chamar aTelaComando, passando a posição em que deve ser aberta e o nome da bombaque a chamou:

Scripts 109

' Nome completo da BombaArg = Bomba.Fonte.PathName' Posição onde a Tela será aberta (pixel)

PosX = Screen.ToPixelX(X + Height)PosY = Screen.ToPixelY(Y + Width)

Application.DoModal "TelaComando", ,PosX, PosY, , , Arg

NOTA: Para deslocar a TelaComando à direita, pode-se somar mais o tamanho doobjeto à coordenada dela. Exemplo:

PosX = Screen.ToPixelX(X + Height) PosY = Screen.ToPixelY(Y + Width)

2. Salve a biblioteca e registre-a.

3. Para que XControl ComandoBomba mostre as informações da bomba que ochamou, crie no evento OnPreShow da TelaComando o seguinte script:

Item("ComandoBomba1").Fonte = Arg

9.5.2.3 Eventos do Usuário

Para que a TelaComando feche quando o ponteiro do mouse não estiver sobre ela,siga estes passos:

1. Na aba Scripts, selecione a TelaComando e na lista de eventos escolha Criar novo

evento , ou aperte o botão Criar Evento do Usuário na barra de ferramentas.

2. Nomeie o evento como PerdeFoco.

3. No campo A propriedade/expressão, busque a propriedade MouseOverChild daTelaComando.

4. Edite a expressão para MouseOverChild = False.

5. Escolha a opção For uma condição verdadeira.

110 Scripts

Eventos de Usuário

6. Crie um script no evento PerdeFoco do tipo Script.

7. Com o auxílio do App Browser , procure o método Close da TelaComando (Close(0)).

9.6 Exercícios Complementares

Esta seção contém exercícios complementares sobre o conteúdo deste capítulo.

9.6.1 KB

· KB-17264: Como tocar som pelo E3?

· KB-28977: Abrindo uma tela Pop Up.

· KB-14026: Como utilizar as teclas Fx (F1, F2, F3, etc.) do teclado para executarscripts.

Scripts 111

9.7 Anotações

112 Banco de Dados

10Banco de Dados

CAPÍTULO

O Banco de Dados do E3 é utilizado para armazenar as informações do projetoreferentes aos históricos, fórmulas e alarmes. Possui suporte a MDB (MicrosoftAccess), Oracle e Microsoft SQL Server.

Para utilizar esse recurso, siga estes procedimentos:

1. Clique com o botão direito do mouse sobre o nome do projeto e depois em Inserir -Banco de Dados.

2. No caso do banco de dados Access, insira o nome do arquivo desejado (existente ounão) no campo Arquivo MDB.

3. Deixe em branco os campos Usuário e Senha. Estes campos são utilizados somentese o banco de dados especificado para a conexão já possuir usuário e senha.

4. Deixe o campo Senha do DB em branco. Conforme especificado acima, este camposó é utilizado caso o banco de dados especificado possua senha do DB.

5. Clique no botão OK para finalizar as configurações.

10.1 Exercícios

Esta seção contém exercícios sobre o conteúdo deste capítulo.

Banco de Dados 113

10.1.1 Banco de Dados

Este banco de dados será utilizado para armazenar todos os dados de alarmes ehistóricos dos projetos.

1. Insira um novo banco de dados no TreinamentoE3.

Inserir Banco de Dados

1. Renomeie o banco de dados para ServidorDB.

2. Escolha a propriedade SourceType.

3. Acesse as propriedades do ServidorDB e configure o banco de dados.

4. Teste a conexão com o banco.

114 Banco de Dados

10.2 Exercícios Complementares

Esta seção contém exercícios complementares sobre o conteúdo deste capítulo.

10.2.1 KB

· KB-29527: O E3 suporta outro banco exceto Access, SQL Server e Oracle?

Banco de Dados 115

10.3 Anotações

116 Alarmes

11Alarmes

CAPÍTULO

O módulo de Alarmes do E3 consiste basicamente em duas unidades cujofuncionamento é interligado logicamente:

· Servidor de Alarmes: Organiza o modo como os eventos e alarmes serão tratados.

· Configuração de Alarmes: É neste objeto que os alarmes a serem tratados sãocriados e suas fontes configuradas.

11.1 Servidor de Alarmes

O objeto Servidor de Alarmes centraliza todos os alarmes do projeto. Nele podem serencontrados os totais de alarmes ativos da aplicação (reconhecidos ou não). Eletambém é o responsável por reportar os eventos de alarmes para todos os Viewersconectados, bem como, se desejado, enviar esses eventos para um Banco de Dados.

IMPORTANTE: Um Domínio pode ter somente um objeto desse tipo, e a sua presençaé obrigatória para que haja verificação de alarmes.

Através da aba Configuração é possível especificar se os alarmes serão armazenadosno Banco de Dados. Os alarmes podem ser visualizados em um E3Alarm ou umE3Browser, objetos de Tela que serão vistos mais adiante.

11.2 Configuração de Alarmes

O objeto Configuração de Alarmes é onde as fontes de alarme são criadas. Para inseriresse objeto no projeto, clique com o botão direito do mouse sobre o Organizer eescolha a opção Inserir - Configuração de Alarmes.

Alarmes 117

11.2.1 Área

O objeto Área permite agrupar um conjunto de Fontes de Alarmes, bem como outrasÁreas de Alarme. Isso facilita o gerenciamento, a operação e o monitoramento de umconjunto de fontes de alarmes relacionados, permitindo, por exemplo:

· Filtrar o conjunto de alarmes visíveis no sumário.

· Habilitar ou desabilitar um conjunto de Fontes de Alarmes.

· Reconhecer um conjunto de Fontes de Alarmes.

· Verificar o total de alarmes ativos ou não reconhecidos de um conjunto de Fontesde Alarmes.

Caso haja necessidade, novas áreas podem ser inseridas dentro de outras.

11.2.2 Fontes de Alarme

As Fontes de Alarme definem todas as informações relativas às condições de alarme.Em cada fonte de alarme são configurados seus limites, a mensagem relativa aoevento, sua severidade, bem como a necessidade ou não de reconhecimento desseevento.

Todas as fontes de alarmes possuem as seguintes propriedades gerais:

PROPRIEDADE DESCRIÇÃO

Texto daMensagem

É o texto associado àquela condição de alarme, que aparecerá noobjeto de visualização (E3Alarm), Banco de Dados, etc. Podeconter até 255 caracteres de texto.

Severidade Indica a gravidade do alarme ocorrido, podendo ser Baixa, Médiaou Alta. A severidade é utilizada para filtragem e ordenação demensagens.

Pede Ack Indica que o alarme deve ser reconhecido pelo operador para serretirado da lista de alarmes no E3Alarm, ou ainda se éreconhecido automaticamente quando a variável deixa umacondição de alarme.

Mensagem deRetorno

Sempre que uma fonte de alarme sai da condição de alarme, essamensagem será exibida nos objetos de visualização.

118 Alarmes

Há vários tipos de fontes de alarme que podem ser inseridas na área do alarme. Asopções disponíveis são descritas a seguir.

11.2.2.1 Analógico

Permite monitorar uma variável analógica, pela especificação de até quatro níveis dealarme, que são o LOLO (muito baixo), LO (baixo), HI (alto) e HIHI (muito alto).

Fonte de alarme Analógico

Alarmes 119

11.2.2.2 Digital

Permite monitorar uma variável (ou expressão) digital, pela especificação de alarmena borda de subida (em -1 ou True) ou na borda de descida (em 0 ou False).

Fonte de alarme Digital

120 Alarmes

11.2.2.3 Banda Morta

Permite monitorar uma variável analógica pela especificação de um limite máximo dediferença (valor de banda morta) em relação a um valor de referência (Setpoint).

Fonte de alarme Banda Morta

Alarmes 121

11.2.2.4 Taxa de Variação

Permite monitorar variações muito rápidas em uma variável do processo. A taxa devariação usa seus valores especificados em unidades da variável por segundo.

Fonte de alarme Taxa de variação

11.3 E3Alarm

O E3Alarm serve para o monitoramento dos alarmes ativos ou não-reconhecidos nosistema. Através desse objeto, é possível verificar o estado dos alarmes no sistema,bem como reconhecê-los manualmente. Para utilizar esse objeto, clique com o botãodireito do mouse na área de trabalho, e selecione a opção E3Alarm.

E3Alarm

122 Alarmes

Na aba Geral das propriedades do E3Alarm são especificadas as informaçõesreferentes ao Servidor de Alarmes e ao filtro.

Aba Geral

Cada campo da aba Geral possui uma propriedade correspondente. As opçõesdisponíveis são as seguintes:

Opções disponíveis na aba Geral

OPÇÕES DESCRIÇÃO

Filtros Determina o filtro por área de alarme. Caso deseje utilizaralgum filtro, especifique o nome da área, senão basta deixaro campo em branco. Pode-se filtrar áreas com caracteres-coringa (como * ou ?), desde que a propriedade SimpleAreaFilter esteja em False. Também é possível filtrarpor múltiplas áreas, utilizando o caracter dois pontos. Essecampo equivale à propriedade Filter.

Mostre alarmes deseveridade

Habilita ou desabilita a visualização do grau da severidade(alta, média ou baixa). Esse campo equivale às propriedades ShowHightPriority (alta), ShowMediumPriority (média) eShowLowPriority (baixa).

Filtrar por tipoHabilita o tipo de filtro aplicado no alarme (Apenas alarmes,

Alarmes 123

Apenas eventos, ou Alarmes e Eventos). Esse campo equivaleà propriedade FilterType.

Botão Avançado Determina se o alarme buscará os dados no servidor local ouna rede.

Nome do Servidor dealarmes

Determina o nome do servidor de alarmes. É importanteinformar esse campo, caso contrário o E3Alarm não mostraráos alarmes e informará uma mensagem de erro. Esse campoequivale à propriedade AlarmServer.

11.4 Exercícios

Esta seção contém exercícios sobre o conteúdo deste capítulo.

11.4.1 Servidor de Alarmes

Uma aplicação só pode ter um objeto desse tipo, e a sua presença é obrigatória paraque haja verificação de alarmes. Ele é o responsável por reportar os eventos dealarmes para todos os Viewers conectados, bem como, se desejado, enviar esseseventos para um Banco de Dados.

1. Insira um objeto Servidor de Alarmes no TreinamentoE3 e renomeie-o paraServidorAlarmes.

124 Alarmes

Inserir um Servidor de Alarmes

2. Acesse as propriedades do Servidor de Alarmes, e na aba Configuração habilite aopção Guarde alarmes no banco de dados.

3. Na opção Utilize o servidor de banco de dados, escolha ServidorDB.

4. Habilite a opção Descarta dados da tabela principal.

· Mantenha os dados dos últimos 3 meses.

· A verificação deve ocorrer a cada 1 mês.

5. Clique no botão Campos e selecione apenas os campos Acked, AlarmSourceName,ActorID, CurrentValue e Message.

Alarmes 125

Campos da Tabela de Alarmes

6. Por último, clique no botão Gerar Tabela. Será exibida uma mensagem de sucesso.

Confirmação da criação da tabela

126 Alarmes

11.4.2 Configuração de Alarmes

1. Insira no projeto TreinamentoE3 um objeto Configuração de Alarmes.

Inserir Configuração de Alarmes

2. Crie dentro desse objeto uma nova área de alarmes pressionando o botão

Adicionar e modifique o seu nome para Nivel.

Inserir Área

3. Selecione a área criada e clique no botão Adicionar. Insira uma fonte de alarme dotipo Analógico.

Alarmes 127

Inserir Fonte de Alarme

4. Renomeie o alarme analógico para Nivel1.

5. Clique sobre a área de edição da Fonte de Nivel1 e, através do AppBrowser,selecione a propriedade Value do tag Nivel1 da pasta Dados.

6. Acesse as propriedades do alarme do Nivel1, aba Analógico.

· Marque o item Lo, com limite igual a 30 e mensagem "Nível Baixo do Tanque1".

· Marque o item Hi, com limite igual a 70 e mensagem "Nível Alto do Tanque1".

· No item Volta ao normal digite "Nível do Tanque1 normalizado".

Configuração das propriedades do Alarme Analógico

128 Alarmes

7. Crie a fonte Nivel2 associada ao tag Nivel2 e configure suas mensagens dealarme.

11.4.3 Biblioteca

1. No objeto DadosBomba, insira um Configuraçãodor de Alarmes.

2. Selecione a Configuração de Alarmes e crie uma nova área com o nome de Bomba.

3. Na área Bomba, insira um alarme digital com o nome de Defeito.

4. Associe ao alarme Defeito a propriedade Defeito do objeto.

5. Acesse as propriedades do alarme Defeito, aba Digital.

· Marque a opção Alarme Digital.

· Escolha a opção True em Valor de Alarme.

6. Para que nas mensagens de alarme e de retorno apareça o nome da bomba, crie asassociações vistas na próxima figura.

Alarmes Digitais

11.4.4 E3Alarm

A visualização dos alarmes em tempo real pode ser feita através do objeto E3Alarm.

1. Posicione um objeto E3Alarm na TelaAlarmes.

2. Nas propriedades do E3Alarm, aba Geral, informe o nome do Servidor de Alarmes.

Alarmes 129

Aba Geral

3. A mesma configuração pode ser feita através da lista de propriedades. Napropriedade AlarmServer, digite o nome do Servidor de Alarmes, ou arraste-o até apropriedade.

Propriedade AlarmServer

4. Acesse as propriedades do E3Alarm. Na aba Colunas, selecione os seguintes

130 Alarmes

campos.

· DataHora

· Operador

· Mensagem

· Reconhecido

· Valor

5. Selecione o campo Reconhecido e clique no botão Propriedades. Configure a largurada coluna para 80 pixels e Permite Reconhecer para Com clique-duplo.

Propriedades da Coluna

6. Para o campo Mensagem, ajuste a largura da coluna para 150 pixels.

7. Formate a coluna Valor para mostrar apenas uma casa decimal.

11.5 Exercícios Complementares

Esta seção contém exercícios complementares sobre o conteúdo deste capítulo.

Alarmes 131

11.5.1 KB

· KB-29110: É possivel gerar um beep no speaker do PC quando entrar um alarme?

132 Alarmes

11.6 Anotações

Históricos 133

12Históricos

CAPÍTULO

Os Históricos são os módulos responsáveis pelo armazenamento de dados daaplicação em Banco de Dados. Permitem armazenar dados de processos paraanálises futuras, no E3 ou em qualquer outra ferramenta.

Pode-se criar tantos arquivos de Histórico quantos se desejar, cada um contendodiversos tags ou expressões. Cada Histórico pode criar ou utilizar uma tabelaindependente dentro do Banco de Dados, cujo armazenamento pode ser definido por Tempo ou por Evento. É possível ainda determinar qual Banco de Dados inserido noprojeto será utilizado para o armazenamento dos dados.

Para utilizar esse recurso, clique com o botão direito do mouse no nome do projeto eselecione a opção Inserir - Histórico.

Para criar a tabela no histórico, é importante criar seus campos. Tais campos podem

ser criados através do botão (Adicionar um campo). Para remover algum campo

indesejado, clique no botão (Remover os campos).

Definição e configuração do histórico

12.1 Chave Primária

A Chave Primária é um campo ou um conjunto de campos que identifica de maneiraúnica cada registro de uma tabela. Assim como o índice principal para a tabela, ela éutilizada para associar dados entre tabelas. Após ter definido um campo como sendoa chave primária da tabela, o próprio Banco de Dados garante que não sejaminseridos dados duplicados no(s) campo(s) que seja(m) chave(s) primária(s).

Há dois tipos de chave primária: simples ou composta. Uma chave primária simples é

134 Históricos

um campo que identifica de modo único cada registro de uma tabela. Uma chaveprimária composta pode ser formada pela combinação de dois ou mais campos databela. Podem existir casos em que um único campo não é capaz de atuar como chaveprimária, pelo fato deste apresentar valores repetidos. Além disso, uma tabela podeter somente uma Chave Primária, seja ela simples ou composta. Ou seja, não se podedefinir dois ou mais campos de uma tabela para serem uma chave primária separadacada. Não confundir com o caso de uma chave primária composta, onde a união dedois ou mais campos é que forma a única chave primária da tabela.

Ao escolher campos de Chave Primária, considere os seguintes detalhes:

· Não é permitida duplicidade de valores ou valores nulos.

· Caso não exista um identificador único para uma determinada tabela, pode-se usarum campo que numere os registros sequencialmente.

A chave primária pode ser configurada de duas formas. Verificando na Tela dohistórico o campo da tabela que se deseja tornar Chave Primária e habilitando-a

através do botão , ou clicando no ícone , o qual abrirá a Tela de configuração.

12.2 Índices

Um Índice é um campo ou um conjunto de campos que serão previamente ordenadospelo Banco de Dados a fim de melhorar a performance das consultas que utilizamesse índice. Eles são utilizados para encontrar registros com um valor específico emuma coluna rapidamente. Sem um índice, o Banco de Dados tem de iniciar com oprimeiro registro e depois ler os registros através de toda a tabela até que eleencontre os registros relevantes. Quanto maior a tabela, maior será o custo emtermos de tempo de processamento. Se a tabela possui um índice para as colunas emquestão, o Banco de Dados pode rapidamente obter uma posição para procurar nomeio do arquivo de dados sem ter que varrer todos os registros. Os tipos de índicesdisponíveis são primário, único e index.

Pode-se criar índices em múltiplas colunas. Um índice de múltiplas colunas pode serconsiderado um vetor ordenado contendo valores que são criados concatenandovalores de colunas indexadas.

Os índices podem ser configurados através do ícone , que abre a tela deconfiguração, ilustrada a seguir.

Históricos 135

Editor de índices

12.3 Exercícios

Esta seção contém exercícios sobre o conteúdo deste capítulo.

136 Históricos

12.3.1 Histórico

1. Clique com o botão direito do mouse no Banco de Dados e Insira um novo Histórico

no projeto TreinamentoE3, nomeando-o como HistNivel.

Inserir Histórico

2. No histórico criado, insira dois novos campos e configure-os conforme a figura aseguir.

Campos do Histórico

3. Clique sobre a opção Propriedades do Histórico , e na aba Histórico configure:

· Banco de dados: ServidorDB.

Históricos 137

· Tabela: TabelaNivel.

· Tempo de gravação: 2000 ms.

4. Clique sobre o botão Gerar Tabela. Deve aparecer a mensagem A estrutura detabelas foi criada com sucesso.

Confirmação da criação da tabela

12.4 Exercícios Complementares

Esta seção contém exercícios complementares sobre o conteúdo deste capítulo.

12.4.1 KB

· KB-24714: Limite de campos de um Histórico?

138 Históricos

12.5 Anotações

Consultas 139

13Consultas

CAPÍTULO

O objeto Consulta (ou Query) auxilia no processo de definição de consultas no Bancode Dados da aplicação. Toda vez que o E3 necessita buscar dados do Banco de Dados énecessário enviar um comando, de forma que se saiba quais os dados desejados paraaquele objeto. Para essa busca, toda a vez que uma aplicação precisar gravar oubuscar dados armazenados em um Banco de Dados, são enviados comandos noformato SQL (Structured Query Language).

A consulta apresenta uma interface amigável que permite a construção de consultasSQL usando uma interface gráfica e o acompanhamento imediato do código SQL sendogerado. A consulta permite mostrar os dados dos últimos n dias, horas ou meses, datainicial e final e consultas, dependendo do filtro a ser implementado.

O assistente de configuração da consulta é responsável por criar o texto que faz ofiltro ou a consulta, não sendo necessário para o usuário saber detalhes como data,etc.

Para utilizar esse recurso, clique com o botão direito do mouse sobre a Tela doprojeto e selecione a opção Inserir - Consulta.

NOTA: Quando é criado um objeto Relatório, E3Chart ou E3Browser, o objetoConsulta é adicionado a este automaticamente. No entanto, também pode-seinserir uma Consulta em uma Pasta de Dados ou na Tela e utilizar seus dadosatravés de scripts.

140 Consultas

13.1 Criando uma Consulta

1. A definição da consulta começa quando o usuário informa o Servidor de Banco deDados onde a consulta irá buscar os dados.

Definição do Servidor de Banco de Dados

2. Após ser definido o Banco de Dados, uma nova janela aparecerá com as tabelasque foram encontradas, permitindo a sua seleção.

Consultas 141

Adição de tabelas

3. Selecione as tabelas que farão parte da consulta e clique no botão Adicionar.

4. Na aba Campos, serão adicionados os campos a serem retornados pela consulta,bem como definidos filtros e ordenações.

5. Na aba Variáveis, são mostradas as variáveis criadas para os filtros.

6. Na aba Visualizar, pode-se realizar uma prévia da Consulta.

7. Na aba SQL, pode-se visualizar e editar o código SQL.

142 Consultas

Configuração da Consulta

A janela anterior pode ser acessada através de um clique com o botão direito domouse sobre o objeto e selecionando a opção Configurar.

13.2 E3Browser

O E3Browser é um controle ActiveX (desenvolvido pela Elipse Software) utilizado paravisualizar dados armazenados em Banco de Dados, gerados pelo E3 ou outro softwarequalquer. Pode-se configurar consultas utilizando filtros de vários tipos nos dados,atribuir cores para cada coluna, entre outras configurações. Esse objeto é utilizadopara visualizar os históricos, alarmes ou qualquer tabela existente no Banco deDados.

Consultas 143

E3Browser

Para utilizar este recurso, insira o E3Browser no projeto através do clique com o botãodireito do mouse na Tela, e selecione o objeto E3Browser.

Inserindo um E3Browser

O E3Browser utiliza o objeto Consulta para auxiliar o usuário no processo de definiçãode consultas no Banco de Dados da aplicação.

144 Consultas

13.3 Exercícios

Esta seção contém exercícios sobre o conteúdo deste capítulo.

13.3.1 E3Browser

O objeto E3Browser é utilizado para visualizar os registros do banco de dados.

Tela Eventos

1. Insira um E3Browser na TelaEventos.

2. Para configurar os dados que o E3Browser mostrará, dê um duplo clique sobre oE3Browser e vá até a aba Consulta.

3. Selecione a Consulta1 e clique no botão Configurar.

Consultas 145

Consulta do E3Browser

4. Selecione o Banco de Dados que contém a tabela que se deseja consultar.

5. Escolha a tabela Alarms.

146 Consultas

Seleção da Tabela

6. Selecione todos os campos da tabela Alarms.

Campos da Tabela Alarms

7. Acesse a aba Visualizar e clique no botão Executar Consulta para verificar oresultado da consulta.

8. Clique no botão OK. Ao finalizar esse passo, estarão disponíveis no E3Browsertodos os campos listados na consulta.

Consultas 147

9. Na aba Opções do E3Browser, configure a atualização para ser feita a cada cincosegundos.

13.3.2 Filtro na Consulta

Muitas vezes, acessar todo o conteúdo de uma tabela se torna inviável pelaquantidade de dados armazenados, seja pelo alto número de campos, ou pelo grandenúmero de registros. Nesses casos somos obrigados a aplicar filtros nos históricos.

1. Acesse o objeto Consulta do E3Browser. Isso pode ser feito executando um duplo-clique no objeto pelo Organizer ou pela aba Consulta do E3Browser.

Consulta do E3Browser

2. Na coluna Filtro do campo E3TimeStamp, clique no botão .

3. Para o usuário poder escolher a data inicial e a data final, é preciso criar variáveisde consulta. Configure o filtro conforme a figura a seguir.

148 Consultas

Configurando o Filtro

4. Digite um valor inicial para as variáveis criadas na aba Variáveis.

Variáveis da Consulta

5. Acesse a aba Visualizar e clique no botão Executar Consulta para verificar oresultado da consulta. Certifique-se que o filtro foi aplicado e clique no botão OK.

Será usado um método do Viewer que mostra um calendário para a escolha de umadata pelo usuário.

6. Insira na TelaEventos dois Setpoints chamados de TextoDataInicial eTextoDataFinal e dois textos conforme a figura a seguir.

Consultas 149

Setpoints para escolha das datas

7. Crie um novo script no evento Click dos Setpoints.

' Chama a função CalendárioPosX = Screen.ToPixelX(X)PosY = Screen.ToPixelX(Y) + 50Application.ShowDatePicker Hora, PosX, PosY' Passa o valor escolhido para o SetPointValue = Hora

8. Crie um botão Consultar, e insira um novo script no evento Click com as seguinteslinhas.

' Referencia os SetpointsDataIni = Screen.Item("TextoDataInicial").ValueDataFim = Screen.Item("TextoDataFinal").ValueSet consulta = Screen.Item("E3Browser1").Item("Consulta1")' Seta as variáveis da consultaconsulta.SetVariableValue "DataInicial", DataIniconsulta.SetVariableValue "DataFinal", DataFim

13.4 Exercícios Complementares

Esta seção contém exercícios complementares sobre o conteúdo deste capítulo.

13.4.1 KB

· KB-29363: Como retornar um valor de uma consulta por script e armazenar num taginterno?

150 Consultas

13.5 Anotações

E3Chart 151

14E3Chart

CAPÍTULO

O objeto E3Chart é um componente ActiveX criado especialmente para trabalhar emconjunto com o E3. Com ele, é possível exibir gráficos com tags variando em temporeal e também mostrar dados históricos gravados em um Banco de Dados.

Cada sequência de dados é representada no E3Chart através de penas. Para cadapena são associados dados que podem ser tags ou campos de consultas. É possívelcriar vários eixos com escalas diferentes para serem associados aos dados das penas.

E3Chart

Para inserir esse objeto na Tela, clique com o botão direito do mouse e selecione oobjeto E3Chart.

152 E3Chart

14.1 Configurações das Penas

O objeto Coleção de Penas representa o conjunto de penas contidas no E3Chart. Cadapena é configurada para exibir dados em tempo real ou dados históricos vindos daconsulta. Através da aba Penas, é possível configurar o número e o tipo das penas a

serem criadas na Coleção de Penas. Acessando essa aba e clicando no botão Adicionar, uma nova pena é criada no E3Chart.

E3Chart 153

Criando uma pena

154 E3Chart

14.1.1 Pena de Tempo Real

Para configurar uma pena como Tempo Real, selecione a opção Tempo Real na abaDados das propriedades da Pena, disponível no item Tipo de pena.

Logo após, defina os tags nas opções Link do eixo vertical e Link do eixo horizontal.

14.1.2 Pena Histórica

O objeto Consulta também é usado para mostrar valores históricos no E3Chart.Através da aba Consultas é possível adicionar, excluir ou configurar as consultas. Paracriar uma pena histórica, é necessário que a consulta esteja previamente criada.Para tanto, na aba Dados das Propriedades da Pena, selecione a opção Histórica,disponível no item Tipo de pena e defina a consulta.

Logo após, defina os campos da consulta nos itens Campo do eixo vertical e Campo doeixo horizontal.

14.1.3 Tempo Real e Histórica (Mista)

Para configurar uma pena como Tempo Real e Histórica na aba Dados daspropriedades da pena, selecione na opção Tipo de pena o item Tempo Real & Histórica. Este tipo de pena é utilizado quando se deseja ter os dados antigos e os valoresatuais dos tags na mesma pena.

14.2 Exercícios

Esta seção contém exercícios sobre o conteúdo deste capítulo.

E3Chart 155

14.2.1 E3Chart

Tela Gráfico

1. Posicione um E3Chart sobre a TelaGrafico.

2. Na aba Penas, clique no botão Adicionar.

3. Troque o nome da pena para Nivel1.

Propriedades da Pena

156 E3Chart

4. Na aba Dados, deixe a opção Tipo de pena em Tempo Real.

5. Na opção Link do eixo vertical, selecione a propriedade Value do tag Nivel1 dapasta Dados.

Dados da Pena

6. Repita os dois últimos itens para criar a pena Nivel2 associada ao tag Nivel2 eclique no botão OK.

7. Na aba Legenda, selecione a opção Mostrar legenda, tamanho 60, e adicione ascolunas que preferir.

8. Configure a coluna Valor do tag X para mostrar o valor no formato HH:mm:ss.

9. Para habilitar ou desabilitar a visibilidade de uma pena adicione uma Caixa de

Seleção na TelaGrafico.

10.Na Caixa de Seleção, crie um script no evento Change, e busque no AppBrowser apropriedade Visible da pena Nivel1.

E3Chart 157

Propriedade Visible da pena

11.Complete a linha com o seguinte script.

Screen.Item("E3Chart1").Pens.Item("Nivel1").Visible = Value

12.Repita o procedimento para a pena Nivel2.

14.2.2 E3Chart Histórico

1. Na TelaGrafico, acesse as propriedades do E3Chart.

2. Na aba Consultas, clique no botão Adicionar.

3. Selecione o ServidorDB no campo Nome do Servidor e a seguir escolha aTabelaNivel.

4. Selecione os campos E3TimeStamp, Nivel1 e Nivel2.

5. Visualize o resultado da consulta na aba Visualizar e clique em OK.

6. Na aba Penas, selecione a pena Nivel1 e acesse suas propriedades clicando em

158 E3Chart

Configurar.

1. Modifique a opção Tipo de pena para Tempo Real & Histórica. A parte histórica seráhabilitada.

2. Na Parte Histórica, escolha:

· Consulta local: Consulta1

· Campo do eixo vertical: Nivel1

· Campo do eixo horizontal: E3TimeStamp

E3Chart 159

Dados da Pena

1. Repita o procedimento para a pena Nivel2.

160 E3Chart

2. Crie uma Caixa de Seleção que escolherá se o eixo horizontal deverá serhistórico ou em tempo real.

3. Crie um script no evento Change, e com o auxílio do AppBrowser busque apropriedade ScaleType do EixoHorizontal.

Propriedade ScaleType do Eixo Horizontal

1. Insira o seguinte script.

' Modifica a propriedade Tipo de EscalaIf Value Then Screen.Item("E3Chart1")._ Axes.Item("EixoHorizontal").ScaleType = 2Else Screen.Item("E3Chart1")._ Axes.Item("EixoHorizontal").ScaleType = 1End If

NOTA: Para poder modificar a escala horizontal do gráfico, altere as propriedadesHorScaleBegin e HorScaleEnd do E3Chart.

E3Chart 161

14.3 Exercícios Complementares

Esta seção contém exercícios complementares sobre o conteúdo deste capítulo.

14.3.1 KB

· KB-18257: Como fazer um gráfico com pontos digitais?

162 E3Chart

14.4 Anotações

Relatórios 163

15Relatórios

CAPÍTULO

O Relatório é um componente ActiveX chamado ActiveReport, que permite avisualização e impressão de valores instantâneos de variáveis do sistema e dadosarmazenados em Banco de Dados (Alarmes, Históricos, Consultas e Fórmulas).

Para utilizar o relatório, clique com o botão direito do mouse no Organizer e selecionea opção Inserir - Relatório.

O relatório também utiliza o objeto Consulta. Este objeto permite que sejaespecificada a origem dos dados do Banco de Dados que serão visualizados norelatório.

Um relatório contém várias seções. Cada seção do relatório contém um grupo decontroles que são processados e impressos ao mesmo tempo, como uma unidade.

Estrutura de um relatório

Um relatório é estruturado da seguinte forma:

SEÇÃO DESCRIÇÃO

164 Relatórios

Report Header Esta seção é impressa no início do relatório. Utilizada paraimprimir títulos de relatórios, tabelas de somas, gráficos ouqualquer outra informação que necessite aparecer somenteuma vez no início do relatório.

Report Footer Esta seção é impressa no final do relatório. Utilizada paraimprimir uma soma de um relatório, totais gerais ou qualqueroutra informação que necessite ser impressa somente uma vezno final do relatório.

Page Header Esta seção é impressa no topo de cada página do relatório. É aprimeira seção impressa na página, exceto quando essa páginacontém a seção ReportHeader. Utilizada para imprimircabeçalhos de colunas, números de páginas, títulos de páginasou qualquer outra informação que necessite ser impressa noinício de cada página.

Page Footer Esta seção é impressa uma vez na base de cada página norelatório. Usada para imprimir totais de páginas, números depáginas ou qualquer outra informação que necessite serimpressa uma vez na base de cada página.

Detail Esta seção é o corpo do relatório que imprime uma vez paracada registro da fonte de dados.

Group Header,Group Footer

Um relatório pode ter múltiplos grupos aninhados. Cada grupopossui uma seção Header e uma seção Footer. A seção Headeré impressa antes de qualquer seção Detail no grupo. A seçãoFooter é impressa depois da seção Detail do grupo.

A barra de ferramentas Relatório contém três itens de configuração que permitemeditar, visualizar o relatório e criar scripts. Estes itens são os seguintes:

· Prévia de Impressão (Preview): Através desta opção, é possível visualizar umaprévia da impressão do relatório. Assim é possível verificar configurações demargem, figuras, etc.

· Configurações do Relatório (Report Settings): Nestas configurações, pode-sedeterminar Configurações de Página, Configurações de Impressão, Configuraçõesda Grade e Estilo do Relatório.

· Editor de Scripts: Através desta opção, é possível editar scripts para o relatório.No campo Object é necessário especificar o objeto onde se deseja criar o script e,no campo Events o evento do relatório em que ocorrerá a ação.

Relatórios 165

15.1 Objetos do Relatório

A ferramenta Relatório possui vários objetos específicos que podem ser utilizados,sendo acessados através da barra de ferramentas Relatório.

Barra de objetos do Relatório

Através da barra de ferramentas Relatório, é possível acessar os recursos disponíveisdesta opção:

· Linha: Objeto básico de reta que liga dois pontos quaisquer. Permite o desenhode retas, através de dois pontos especificados na sua criação ou em polígonos.

· Retângulo: Este objeto permite o desenho de retângulos, utilizando toda alargura ou altura do objeto. Criado a partir de dois vértices.

· Retângulo Arredondado: Retângulo criado através de dois vértices com a opçãodos cantos serem arredondados a partir de um fator de arredondamento. Ao serinserido ou editado, exibe um pequeno ponto próximo ao canto superior esquerdodo objeto, que permite modificar o fator de arredondamento.

· Elipse: Este objeto permite o desenho de círculos e elipses, utilizando toda alargura ou altura e definindo o centro do círculo no centro do retângulo.

· Figura: Este objeto permite mostrar imagens que estejam armazenadas emarquivos, estejam elas dentro ou fora do arquivo do aplicativo.

· Texto: Possibilita a criação de um texto. Ao definir a área na Tela, podemosdigitar diretamente o texto desejado, que aceita também múltiplas linhas.

· Setpoint: Através do objeto Setpoint, é possível associar um campo da tabelano Banco de Dados. Este campo é especificado na propriedade DataField.

· Código de Barras: Permite gerar uma figura que converte uma sequência denúmeros e caracteres em um código de barras. Este código é uma representaçãonumérica ou alfanumérica, utilizada para facilitar diferentes processos. Essecódigo é decifrado através de scanners, canetas e equipamentos de leitura óptica.

· Quebra de Página: É um ponto em que uma página termina e outra começa norelatório. Por exemplo, pode-se forçar uma quebra de página para assegurar que o

166 Relatórios

título de um capítulo comece sempre em uma nova página.

· Tabela: É um objeto composto por linhas e colunas ondes são inseridos textosou gráficos. As tabelas nos relatórios são usadas para organizar e apresentar ainformação. Pode-se também usar tabelas para criar layouts de página.

· E3Chart: Este objeto é utilizado para visualizar os dados do relatório emformato gráfico. Maiores informações estão descritas no capítulo sobre o E3Chart.

· / Enviar para frente / Enviar para trás: Através destes botões, é possívelenviar um objeto para frente ou para trás de outro. Ao escolher as opções Enviarpara frente ou Enviar para trás, o objeto selecionado será colocado na primeira ouna última posição na ordem de sobreposições.

· Carregar Arquivo RPX: Importa a configuração do relatório de um arquivoexterno.

· Salvar Arquivo RPX: Exporta a configuração do relatório para um arquivoexterno.

NOTA: A opção Impressora do ícone do E3 na Barra de Tarefas exibe a lista dasimpressoras encontradas local ou remotamente, e permite que o usuário escolhauma para ser usada pelo E3 Server.

15.2 Exercícios

Esta seção contém exercícios sobre o conteúdo deste capítulo.

15.2.1 Relatório

Relatório de Válvulas

Relatórios 167

1. Insira um novo Relatório no TreinamentoE3 chamadoRelatorioAlarmes.

Inserir Relatório

2. Configure a Consulta do relatório para buscar os campos da tabela de alarmes.Para facilitar, renomeie os campos na coluna Título.

Campos da tabela de alarmes

3. Adicione dois objetos Texto no PageHeader. Na propriedade Caption do primeirotexto digite "Elipse Software Ltda - Treinamento E3 Studio", e na propriedade Caption do segundo texto digite "Relatório de Alarmes".

4. Para cada campo escolhido na consulta, insira novos objetos Texto no PageHeadere configure-os com o nome dos campos. Estes serão os títulos das colunas.

5. Na seção Detail, insira um SetPoint para cada campo, alinhando-o com o seurespectivo texto. Nas propriedades DataField e Text, digite exatamente o título dacoluna configurada na consulta.

168 Relatórios

6. Para visualizar o relatório, pressione o botão Gerar Relatório do relatório.

7. O uso dos campos de dados do relatório do E3 é bastante flexível, sendoconfigurado no próprio Setpoint que a função deverá executar. Por exemplo, paracriar no PageFooter a indicação "Página 1 de 12" siga estes procedimentos.

1. Insira dois textos, "Página" e "de".

2. Entre os textos, insira um Setpoint e configure-o para mostrar o número dapágina atual.

· SummaryType: 4 - ddSMPageCount

· SummaryRunning: 2 - ddSRAll

3. Após o texto "de", insira um Setpoint e configure-o para mostrar o númerototal de páginas.

· SummaryType: 4 - ddSMPageCount

· SummaryRunning: 0 - None

8. Para visualizar o relatório em tempo de execução:

1. Insira um CommandButton com o texto "Relatório" no canto inferior direito da TelaEventos.

2. No evento Click, crie um pick Imprimir Relatório .

3. Em Imprimir Relatório, selecione RelatorioAlarmes.

4. Na opção Saída, escolha o item Tela.

Relatórios 169

Script para Imprimir o Relatório

15.2.2 Relatório Gráfico

1. Insira um novo relatório no TreinamentoE3 chamado RelatorioGrafico.

2. No PageHeader insira um E3Chart. O E3Chart não precisa ser configurado, poiscopiará as configurações de outro E3Chart.

3. Acesse o Editor de Scripts pelo botão .

4. No campo Object escolha PageHeader e no campo Events escolha OnBeforePrint.

5. Entre os textos Sub OnBeforePrint e End Sub digite o seguinte script.

Set Chart = Report.Sections("PageHeader").Controls_ ("E3Chart1")Set ChartTela = Application._ GetFrame("Central").Screen.Item("E3Chart1")Chart.CopyConfig(ChartTela)Chart.LoadData()

170 Relatórios

Editor de Script do Relatório

6. Crie um CommandButton com o texto "Relatório" na TelaGrafico. Crie um scriptpara imprimir o RelatorioGrafico.

NOTA: O método CopyConfig só copia a parte histórica das penas. O tamanho doE3Chart não é copiado, apenas suas configurações.

7. Para exportar esse relatório para um arquivo PDF, insira um CommandButton aolado do botão Relatorio. Modifique a propriedade Caption do botão para PDF.

8. No botão, crie um script no evento Click e com o auxilio do AppBrowser busque ométodo Export do Relatório.

Set Report = Application.LoadReport("[RelatorioGrafico]")Report.Export "PDF", "C:\TreinamentoE3\Relatorio.pdf"

15.3 Exercícios Complementares

Esta seção contém exercícios complementares sobre o conteúdo deste capítulo.

Relatórios 171

15.3.1 KB

· KB-29442: Como fazer um filtro em um Relatório?

172 Relatórios

15.4 Anotações

Fórmulas 173

16Fórmulas

CAPÍTULO

As Fórmulas são módulos destinados a armazenar e transferir conjuntos de valorespara determinados agrupamentos de variáveis, de forma a criar configurações ou setups pré-definidos, sendo basicamente uma implementação de receitas. AsFórmulas são basicamente compostas de três partes.

· Templates: Definem o tipo de dado que poderá ser armazenado em cada variávelda fórmula e suas restrições. Estas restrições permitem habilitar ou desabilitar aalteração dos valores da fórmula em tempo de execução, ou então estipularlimites para a alteração.

· Unidades: Definem os tags que serão associados ao template da fórmula. É possívelcriar várias unidades, ou seja, vários grupos de tags que poderão receber osvalores da fórmula.

· Conjuntos de valores: São os valores que serão transferidos para os tags, ou seja,para as unidades.

As Fórmulas estão sempre ligadas a um Banco de Dados, pois precisam fazer com queseus dados (Templates, Unidades e Conjuntos de Valores), configurados em algummomento, continuem válidos sempre que necessário. Para trabalhar com Fórmulas épossível utilizar qualquer tipo de banco de dados, e o próprio E3 Studio ou o E3 Servercuida de criar as tabelas e relacionamentos necessários ao uso de Fórmulas.

NOTA: Ao utilizar um banco de dados MDB (Microsoft Access), é interessante criarseparadamente arquivos específicos para as fórmulas e para os históricos, de formaa evitar que todos os dados se percam caso haja um problema com algum arquivo.

16.1 Exercícios

O objeto Fórmula armazenará informações sobre as cores de tintas, formadas pelacombinação das cores vermelho, verde e azul.

174 Fórmulas

16.1.1 Banco de Dados

1. Insira um novo Banco de Dados no TreinamentoE3 com o nome de FormulaDB.

2. No campo Arquivo MDB, localize a pasta TreinamentoE3 e digite Formula.mdb.

16.1.2 Fórmula

1. Insira um objeto Fórmula no TreinamentoE3.

Inserir Fórmula

2. Informe no campo Banco de Dados o FormulaDB, e no campo Tabela digiteFormulaTreina.

Fórmulas 175

Configuração do Banco de Dados da Fórmula

3. Nomeie o objeto como Formula.

4. Na aba Templates, adicione três novos Templates do tipo Integer, Vermelho, Verdee Azul. Para todos os Templates, escolha a restrição absoluta de 0 a 255.

Templates

5. Na aba Unidades, selecione uma linha qualquer da coluna Unidade1 e clique no

botão Renomear . Troque o nome da unidade para Tanque1.

6. Clique no botão para adicionar uma nova Unidade, Tanque2.

7. Busque nas duas unidades o caminho de cada propriedade dos objetos Tanque1 eTanque2 em Dados.

Configuração das Unidades

8. Na aba Valores, adicione mais conjuntos de valores preenchendo as colunas comos valores que preferir.

176 Fórmulas

Configuração dos Conjuntos de Valores

9. Para carregar os dados da Fórmula, insira um botão na TelaSinotico com apropriedade Caption igual a "Carrega" e, no evento Click, crie um script com ométodo LoadFormulaDlg do Viewer.

Application.LoadFormulaDlg "Formula"

16.2 Exercícios Complementares

Esta seção contém exercícios complementares sobre o conteúdo deste capítulo.

16.2.1 KB

· KB-28508: Dados carregados de fórmulas com valores incorretos.

16.2.2 Lista de Seleção

Ao invés de utilizar o comando pronto para carregarmos os valores da fórmula atravésde um Dialog do Viewer, é possível utilizar os métodos do próprio objeto Fórmula.Uma lista de seleção será preenchida com todos os conjuntos de valores cadastradose ao selecionar um deles, os valores serão carregados.

Para buscar no banco de dados todos os conjuntos de valores já cadastrados, serápreciso utilizar um objeto Consulta.

1. Insira na TelaSinotico um objeto Consulta.

2. Configure a Consulta1 para buscar a tabela FormulaTreina_Values nobanco de dados FormulaDB.

Fórmulas 177

Selecionando a tabela de valores

3. Selecione apenas a coluna Name e visualize a consulta. Todas as cores cadastradasdevem aparecer.

Agora será preenchida uma lista de seleção com os dados retornados pela consulta.

4. Insira uma Lista de Seleção (ComboBox) próxima ao Tanque1.

5. No evento OnStartRunning da ComboBox, crie o seguinte script.

' Limpa a ComboBoxClear()

' Busca os dados da ConsultaSet RS = Screen.Item("Consulta1").GetADORecordset()

' Adiciona todos os registros encontrados na ComboBoxFor i = 1 To RS.RecordCount AddItem RS.Fields("Name").Value RS.MoveNextNext

6. No evento Click da ComboBox, crie o seguinte script.

Application.GetObject("Formula").LoadFormulaValuesQuiet "Tanque1", Value

178 Fórmulas

16.3 Anotações

Segurança 179

17Segurança

CAPÍTULO

O E3 possui um controle de acesso a Telas, Alarmes e Domínios em uma lista deusuários, onde para cada nome é atribuído uma senha e um login. Conforme a opçãoconfigurada, o sistema permitirá acesso aos usuários cadastrados ou acessoilimitado às Telas do projeto.

180 Segurança

17.1 Usuários

Através da opção Usuários é possível configurar as informações referentes aosusuários que terão ou não acesso ao sistema. Para utilizar este recurso, é precisoacessar o menu Arquivo - Usuários e clicar na aba Usuários.

Usuários

Segurança 181

IMPORTANTE: Após configurar a segurança, somente os usuários listados terãoacesso ao sistema.

17.2 Grupos

A opção Grupos permite que sejam criados grupos com características que serãocomuns para todos os seus membros (usuários). Um grupo também pode pertencer aoutros grupos. Só não é permitido pertencer a outro grupo que pertença a ele, ou seja,uma referência circular.

Para utilizar este recurso, é necessário acessar o menu Arquivo - Usuários e selecionara aba Grupos.

182 Segurança

Grupos

17.3 Permissões

A aba Permissões configura as permissões dos usuários e grupos para Telas, Alarmes,Domínio e Viewer. Uma verificação de permissão consiste em uma informação que omembro do grupo tem sobre um comando que atua sobre um objeto específico.

Por exemplo, o Usuario1 tem permissão para o comando Abrir sobre o objeto

Segurança 183

Tela1. Cada membro do grupo pode negar ou afirmar a permissão de um comando,independentemente do grupo a qual pertence. Dessa forma, ele não vai levar emconsideração a informação do grupo. Também pode-se optar por sempre utilizar ainformação definida pelo grupo. Se as informações dos grupos forem conflitantes,será usada a seguinte ordem de preferência: Negar > Afirmar > Indiferente.

Permissões de usuários ou grupos

184 Segurança

17.4 Proteção

O E3 possui uma ferramenta de proteção de projetos ou de bibliotecas. Através desseitem, é possível proteger o conteúdo do arquivo contra a edição, a visualização ou aexecução não autorizada. Para utilizar esse recurso, clique com o botão direito domouse sobre o nome do projeto no Organizer e selecione a opção Proteger.

Segurança 185

Proteção

Esta opção possui dois tipos de proteção, de Edição e de Execução.

· Proteção de Edição: Protege o arquivo contra alterações e visualizações nãoautorizadas. Esse recurso é utilizado para evitar que determinada biblioteca ou

186 Segurança

projeto seja alterado acidentalmente, ou que sejam copiados procedimentos deconhecimento específico do desenvolvedor. O E3 fornece um controle sobre aedição desses arquivos, sejam eles projetos ou bibliotecas.

· Proteção de Execução: Esta opção é utilizada para proteger um arquivo contraexecução não autorizada. Para tanto, é necessário solicitar a gravação de umasenha de proteção na hardkey, que é feita pela Elipse Software. Isso protege odesenvolvedor de cópias não autorizadas do projeto, por exemplo.

Quando um arquivo .lib ou .prj é aberto no E3 Studio, este inicializa mostrando um

ícone cinza , com um cadeado indicando que está protegido e esse conteúdo nãopode ser acessado. Para acessar o conteúdo do arquivo, clique no ícone da direita emude para Abrir com senha. Após informar a senha e o sistema liberar o acesso, o

ícone fica colorido , indicando a acessibilidade dos arquivos.

IMPORTANTE: As proteções implementadas não podem ser desfeitas caso as senhassejam perdidas. Portanto, ao proteger determinado arquivo, mantenha as senhasarmazenadas de modo seguro. Isso garante que se conseguirá usar o arquivo sempreque necessário.

17.5 Exercícios

A seguir, será visto como configurar usuários em um Domínio no E3 e como utilizaresse recurso para inibir ou permitir acesso a Telas, controles, alarmes, etc.

1. No menu Arquivo, selecione a opção Usuários.

2. Acesse a aba Grupos e crie dois grupos de usuários, chamados Administrador eOperador.

3. Através da aba Usuário, crie os seguintes usuários.

NOME SENHA GRUPO

Pedro 1 Administrador

Mariana 2 Operador

Bruno 3 Operador

Segurança 187

Editar usuário

4. Na aba Permissões, selecione a opção Grupos. Bloqueie a TelaEventos para ogrupo Operador.

5. Nas permissões de usuários, dê permissão para um dos usuários do grupooperador acessar a TelaEventos.

6. Para que o usuário seja solicitado sempre que se tentar entrar na aplicação, énecessário criar um login para os usuários no Viewer. Modifique o script do textoLogin da TelaInicial.

If Application.Login(true) Then Application.GetFrame("").OpenScreen "Quadro1", 0End If

7. Crie um segundo display na TelaMenu para exibir o nome do usuário logado naaplicação.

8. Associe a propriedade Value do Display do usuário com a propriedade User doViewer. Para mostrar o prefixo "Usuário:", edite a fonte de Viewer.User paraUsuário: & Viewer.User com a tecla F2.

Associação

9. Navegue novamente pelas telas e verifique o funcionamento das novasimplementações.

188 Segurança

NOTA: Consulte o Manual do Usuário do E3 para saber mais sobre os recursosavançados de controles de usuários, como controle de troca de senha, expiração davalidade de uma conta, registro histórico de ações de usuário e outros.

17.6 Exercícios Complementares

Esta seção contém exercícios complementares sobre o conteúdo deste capítulo.

17.6.1 KB

· KB-29426: Como abrir a tela de configuração de usuários em run time?

Segurança 189

17.7 Anotações

190 Exerc íc ios de Revisão

18Exercícios de Revisão

CAPÍTULO

Esta seção contém exercícios de revisão de todo o conteúdo do Tutorial.

18.1 Exercícios

Uma fábrica deseja monitorar o processo de uma caldeira. O equipamento ainda nãoestá decidido, mas deve trazer a informação de uma vazão e duas temperaturas.

O gerente do setor gostaria de visualizar os dados de forma amigável ao usuário porisso pediu que fosse desenvolvido um supervisório com os seguintes requisitos:

· Simular os valores das três temperaturas do equipamento em falta (Valores de 0 a200).

· Simular o valor da vazão (Valor de 0 a 100).

· A Tela principal deve ter uma imagem da caldeira.

· Exibir o valor da Vazão na tela formatado com sua unidade de engenharia "l/s" euma casa decimal.

· Todos os valores de temperatura devem ser exibidos na tela formatados com osufixo "°C" e obedecendo a tabela de cores a seguir.

MÍNIMO MÁXIMO COR

130 180 Vermelho

70 130 Amarelo

20 70 Azul

0 20 Verde

Exerc íc ios de Revisão 191

· Sinalizar na tela os alarmes de todas as temperaturas e a vazão conforme a tabelaa seguir.

ALARME TEMPERATURA VAZÃO

HiHi 180

Hi 130 75

Lo 70 25

LoLo 20

· Visualizar a temperatura e vazão em um gráfico onde é possível escolher atravésde botões qual a informação deseja-se visualizar.

· Armazenar os dados de temperatura e vazão a cada dois segundos em um banco dedados.

· Visualizar os dados armazenados no banco de dados em forma de tabela em umatela.

192 Exerc íc ios de Revisão

Tela Caldeira

· Ao iniciar seja carregada uma tela de abertura onde só é possível chamar a tela dacaldeira se for feito o Login.

Tela Inicial

Exerc íc ios de Revisão 193

· Na tela Caldeira deve existir um display que exiba o nome do usuário que fez ologin.

· Um usuário pertencente ao grupo Manutenção NÃO pode reconhecer alarmes.

· Um relatório com os dados de temperatura e vazão armazenados no banco dedados deve ser exportado para o formato PDF.

18.2 Resolução

· Simular os valores das três temperaturas do equipamento em falta (Valores de 0 a200).

· Simular o valor da vazão (Valor de 0 a 100).

1. Para simular valores, criar tags do tipo Demo, com os limites máximo emínimo conforme especficado.

· A Tela principal deve ter uma imagem da caldeira.

1. Inserir a figura com a caldeira como recurso.

2. Alterar a propriedade FillStyle da tela para 12 - bkPicture.

3. Informar o nome da figura na propriedade PictureFile da Tela.

· Exibir o valor da Vazão na tela formatado com sua unidade de engenharia "l/s".

1. Inserir um Display na tela.

2. Acessar as propriedades do Display, aba Formatação.

3. Escolher a opção Outro. Digitar 0.0 "l/s".

· Todos os valores de temperatura devem ser exibidos na tela formatados com osufixo "°C" e obedecendo a tabela de cores.

1. Como serão diversos Displays iguais, a melhor opção criar um XControl.

2. Crie um arquivo de biblioteca e insira-o no Dominio.

3. Insira um XControl e chame-o de DisplayTemperatura.

4. Crie uma propriedade chamada Temperatura do tipo Double.

194 Exerc íc ios de Revisão

5. Desenhe um Display.

6. Formate o Display com a expressão 0 "°C".

7. Crie uma associação simples com a propridade Temperatura criada napropriedade Value do display.

8. Crie uma associação por tabela na propriedade ForegroundColor informandoos limites e as cores desejadas. Na propriedade Fonte, busque a propriedadeTemperatura criada anteriormente.

9. Salve e registre a biblioteca.

10.Insira na tela um XControl DisplayTemperatura.

11.Faça uma associação simples na propriedade Temperatura com o tagdesejado.

· Sinalizar na tela os alarmes de todas as temperaturas e a vazão conforme a tabela.

1. Se não existir no Dominio, inisra no projeto um Servidor de Alarmes.

2. Se não existir, insira no projeto um objeto Configuração de Alarmes.

3. No objeto Configuração de Alarmes inisira uma área.

4. Na área, insira um alarme analógico.

5. Acesse as propriedades da fonte de alarme, aba Analógico. Informe os limitese mensagens de alarmes conforme a tabela.

6. Na coluna Fonte, busque o tag que deseja monitorar o alarme.

7. Insira quantos alarmes forem necessários e configure-os seguindo os passosacima.

· Visualizar a temperatura e vazão em um gráfico onde é possível escolher atravésde botões qual a informação deseja-se visualizar;

1. Inserir um E3Chart na Tela.

2. Acessar as propriedades do gráfico, aba Penas.

3. Inserir uma pena.

4. Escolher um Nome e uma Cor.

Exerc íc ios de Revisão 195

5. Na aba Dados, manter a pena como Tempo Real e buscar o tag no campo Linkdo eixo vertical.

6. Repetir os passos acima para incluir as demais penas.

· Armazenar os dados de temperatura e vazão a cada dois segundos em um banco dedados.

1. Se não existir, insira um objeto Banco de Dados e configure-o.

2. Inisra um objeto Histórico no projeto.

3. Crie campos para cada informação que deseja armazenar e associe-o ao tagdesejado na coluna Fonte.

4. Acesse as propriedades do histórico e configure o nome do Banco de Dados,nome da tabela (TabelaCaldeira) e tempo de gravação (2000 ms).

· Visualizar os dados armazenados no banco de dados em forma de tabela em umatela.

1. Insira na tela um objeto E3Browser.

2. Acesse suas propriedades, aba Consulta, e clique no botão Configurar.

3. Configure a Consulta para buscar no Banco de Dados a tabela criada.

4. Escolha os campos que deseja buscar e na aba Visualizar, aperte a exclamaçãovermelha para verificar os dados.

· Ao iniciar seja carregada uma tela de abertura onde só é possível chamar a tela dacaldeira se for feito um Login.

1. Inserir uma nova tela no projeto (TelaAbertura).

2. Criar um botão com o seguinte script.

If Application.Login(True) Then Application.GetFrame("").OpenScreen("TelaCaldeira"), 0End If

1. Acessar a propriedades do Viewer e configurar a TelaAbertura como telainicial.

2. Acessar o menu Arquivos - Usuarios e criar pelo menos um usuário.

· Na tela Caldeira deve existir um Display onde exiba o nome do usuário que fez ologin.

196 Exerc íc ios de Revisão

1. Criar um Display na tela.

2. Criar uma associação na propriedade Value do Display com a propriedadeUser do Viewer.

· Um usuário pertencente ao grupo Manutenção NÃO pode reconhecer alarmes.

1. Acessar o menu Arquivos - Usuários.

2. Criar o Grupo Manutenção.

3. Inserir um usuário ao grupo Manutenção.

4. Na aba Permissões, bloquear o reconhecimento de alarmes para o grupoManutenção.

· Um relatório com os dados de temperatura e vazão armazenados no banco dedados deve ser exportado para o formato PDF.

1. Inserir um Relatorio no projeto RelatorioCaldeira.

2. Configurar a consulta do Relatorio para buscar no Banco de Dados a tabeladesejada.

3. Escolher os campos de Temperatura, Vazão e E3TimeStamp.

4. Inserir na seção Detail um objeto Campo de Dados para cada coluna escolhidana Consulta. Preencher a propriedade DataField com o nome da coluna.

5. Utilizar o objeto Label para escrever o título das colunas (propriedade Caption).

6. Inserir na tela um botão com o seguinte script.

Set Report = Application.LoadReport("[RelatorioCaldeira]")Report.Export "PDF", "RelatorioCaldeira.pdf"

Exerc íc ios de Revisão 197

18.3 Anotações

Matriz

Rua 24 de Outubro, 353 - 10 andar

90510-002 Porto Alegre RS

Fone: (51) 3346-4699

Fax: (51) 3222-6226

E-mail: [email protected]

Filial SP

Rua dos Pinheiros, 870 - Conj. 141/142

05422-001 São Paulo - SP

Fone: (11) 3061-2828

Fax: (11) 3061-2828

E-mail: [email protected]

Filial PR

Av. Sete de Setembro, 4698/1705

80240-000 Curitiba - PR

Fone: (41) 3342-0120

Fax: (41) 3342-0120

E-mail: [email protected]

Consulte nosso website para informações

sobre o representante do seu estado.

www.elipse.com.br

[email protected]

USA

40190 Jarvis Gray Lane

Avon - NC - USA 27915

Fone: (252) 995-6885

Fax: (252) 995-5686

E-mail: [email protected]

Filial MG

Av. do Contorno, 6594- 17º andar Sala 01

30110-044 Belo Horizonte - MG

Fone: (31) 3555-3366

Fax: (31) 3555-3399

E-mail: [email protected]

Taiwan

15F.-1, No.56,Minsheng 1 st Rd.

800 Kaohsiung City Taiwan

Fone: +886-7-2221582

Fax: +886-7-2225909

E-mail: [email protected]

Alemanha

D-67714 Waldfischbach Deutschland

Fone: +49 (0) 6333 4439

Fax: +49 (0) 6333 2790045

E-mail: [email protected]