Você está na página 1de 397

2007 Elipse Software Ltda. Todos os direitos reservados.

14.11.2007 Verso 3.0







8CRPT8
Manual de Referncia



ndice
1. INTRODUO............................................................................................................................................................. 9
1.1. OBJETOS................................................................................................................................................................ 9
1.2. SCRIPTS............................................................................................................................................................... 10
1.2.1. Adicionando um script ........................................................................................................................... 12
1.3. PICKS................................................................................................................................................................... 15
1.4. EVENTOS DEFINIDOS PELO USURIO..................................................................................................................... 22
2. INTRODUO AO VBSCRIPT.................................................................................................................................. 25
2.1. AMBIENTE DE PROGRAMAO............................................................................................................................... 25
2.2. TIPOS DE DADOS .................................................................................................................................................. 26
2.3. VARIVEIS............................................................................................................................................................ 28
2.4. CONSTANTES........................................................................................................................................................ 31
2.5. OPERADORES....................................................................................................................................................... 31
2.6. COMENTRIOS...................................................................................................................................................... 33
2.7. OBJETO DE FLUXO................................................................................................................................................ 34
2.7.1. If..Then.. Else........................................................................................................................................ 34
2.7.2. Select Case........................................................................................................................................... 36
2.7.3. While.. Wend......................................................................................................................................... 36
2.7.4. Do.. Loop............................................................................................................................................... 36
2.7.5. For.. Next .............................................................................................................................................. 39
2.7.6. For Each.. Next ..................................................................................................................................... 40
2.8. CONVENES DE CDIGO .................................................................................................................................... 41
2.9. MTODOS DO VBSCRIPTS UTILIZADOS NO E3........................................................................................................ 44
3. PROGRAMANDO NO E3........................................................................................................................................... 49
3.1. OBTENDO REFERNCIAS AOS OBJETOS ................................................................................................................ 49
3.1.1. Acessando propriedades do servidor.................................................................................................... 50
3.1.2. Acessando propriedades do servidor de dentro do servidor ................................................................. 51
3.1.3. Acessando objetos de uma Tela a partir de um script na Tela.............................................................. 52
3.1.4. Acessando objetos de uma Tela a partir de um script em outro objeto na Tela.................................... 53
3.1.5. Modificando a Tela ou objetos de Tela a partir do servidor................................................................... 53
3.1.6. Acessando objetos de um ElipseX a partir do prprio ElipseX.............................................................. 54
3.1.7. Acessando objetos de um ElipseX externamente................................................................................. 55
3.2. ACESSANDO OBJETOS.......................................................................................................................................... 61
3.3. TRABALHANDO COM COLEES............................................................................................................................ 62
3.4. COMANDO SET ..................................................................................................................................................... 62
4. EVENTOS .................................................................................................................................................................. 65
4.1. VARIVEIS DE EVENTO.......................................................................................................................................... 65
4.2. EVENTOS PADRO................................................................................................................................................ 66
4.3. EVENTOS DO DRIVER DE COMUNICAO............................................................................................................... 67
4.3.2. Eventos do Tag de Comunicao ......................................................................................................... 70
4.3.1. Eventos do Bloco de Comunicao ...................................................................................................... 71
4.4. EVENTO DO TAG CONTADOR................................................................................................................................. 71
4.5. EVENTO DO TAG TIMER......................................................................................................................................... 71
4.6. EVENTOS DA TELA................................................................................................................................................ 71
4.7. EVENTOS DOS OBJETOS DE TELA.......................................................................................................................... 74
4.7.1. Eventos do Texto, Display e SetPoint ................................................................................................... 77
4.8. EVENTOS DOS ACTIVEX........................................................................................................................................ 78
4.8.2. Eventos do Boto de Comando e do Boto Liga-Desliga ..................................................................... 81
4.8.3. Eventos da Lista de Seleo e Editor de Texto..................................................................................... 81
4.8.1. Eventos da Barra de Rolagem.............................................................................................................. 81
4.8.2. Eventos do Boto Incremento-Decremento .......................................................................................... 81
4.9. EVENTOS DO VIEWER ........................................................................................................................................... 82
4.9.1. Eventos do Usurio............................................................................................................................... 82
4.10. EVENTOS DA CONSULTA................................................................................................................................ 83
4.11. EVENTOS DO E3BROWSER ............................................................................................................................ 83
4.12. EVENTOS DO E3CHART ................................................................................................................................. 84
4.13. EVENTOS DOS XCONTROLS E XOBJECTS....................................................................................................... 85


4.14. EVENTOS DOS RELATRIOS........................................................................................................................... 85
5. MTODOS................................................................................................................................................................. 89
5.1. CHAMADAS DE MTODOS...................................................................................................................................... 89
5.2. MTODOS PADRO............................................................................................................................................... 89
5.3. MTODOS DO DRIVER DE COMUNICAO.............................................................................................................. 93
5.3.1. Mtodos do Tag de Comunicao, Bloco de Comunicao e Elemento de Bloco................................ 94
5.4. MTODO DOS OBJETOS DO CLIENTE OPC............................................................................................................. 96
5.5. MTODOS DO SERVIDOR....................................................................................................................................... 97
5.6. MTODO DO TAG DEMO........................................................................................................................................ 99
5.7. MTODO DO TAG INTERNO.................................................................................................................................... 99
5.8. MTODOS DA TELA............................................................................................................................................. 100
5.9. MTODOS DO DIVISOR (FRAME).......................................................................................................................... 100
5.10. MTODOS DE OBJETOS DE TELA.................................................................................................................. 105
5.11. MTODOS DOS ACTIVEX.............................................................................................................................. 106
5.11.1. Mtodos Comuns................................................................................................................................ 106
5.11.2. Mtodos da Lista de Seleo.............................................................................................................. 107
5.11.3. Mtodos da Lista................................................................................................................................. 109
5.11.4. Mtodos do Editor de Texto................................................................................................................ 110
5.12. MTODOS DE CONEXES (LINKS) ................................................................................................................ 111
5.12.1. Mtodos da Conexo por Tabela........................................................................................................ 114
5.13. MTODOS DO VIEWER................................................................................................................................. 116
5.14. MTODOS DO BANCO DE DADOS.................................................................................................................. 132
5.15. MTODOS DOS ALARMES............................................................................................................................. 132
5.15.1. Mtodos da Fonte de Alarmes............................................................................................................ 132
5.15.2. Mtodos do Servidor de Alarmes........................................................................................................ 136
5.16. MTODOS DO HISTRICO ............................................................................................................................ 138
5.17. MTODOS DO STORAGE .............................................................................................................................. 139
5.18. MTODOS DA CONSULTA............................................................................................................................. 141
5.19. MTODOS DO E3BROWSER......................................................................................................................... 144
5.20. MTODOS DO E3CHART .............................................................................................................................. 146
5.20.2. Mtodos dos Eixos.............................................................................................................................. 148
5.20.3. Mtodos da Coleo de Eixos ............................................................................................................ 151
5.20.4. Mtodos da Pena................................................................................................................................ 152
5.20.5. Mtodos da Coleo de Penas........................................................................................................... 154
5.20.6. Mtodos da Legenda .......................................................................................................................... 156
5.20.7. Mtodos da Coleo de Consultas ..................................................................................................... 158
5.21. MTODOS DE FRMULAS............................................................................................................................. 159
5.22. MTODOS DOS RELATRIOS........................................................................................................................ 164
6. PROPRIEDADES..................................................................................................................................................... 169
6.1. PROPRIEDADES PADRO .................................................................................................................................... 170
6.2. PROPRIEDADES DOS DRIVERS ............................................................................................................................ 172
6.2.1. Propriedades do Driver de Comunicao ........................................................................................... 172
6.2.2. Propriedades do Tag de Comunicao............................................................................................... 177
6.2.3. Propriedades do Bloco de Comunicao............................................................................................ 185
6.2.4. Propriedades do Elemento de Bloco................................................................................................... 188
6.3. PROPRIEDADES DOS OBJETOS DO CLIENTE OPC................................................................................................ 194
6.3.1. Propriedades do Driver OPC .............................................................................................................. 194
6.3.2. Propriedades do Grupo OPC.............................................................................................................. 197
6.3.3. Propriedades do Tag OPC.................................................................................................................. 199
6.3.4. Propriedades do Bloco OPC............................................................................................................... 208
6.3.5. Propriedades do Elemento de Bloco OPC.......................................................................................... 211
6.4. PROPRIEDADES DO TAG CONTADOR................................................................................................................... 220
6.5. PROPRIEDADES DO TAG DEMO ........................................................................................................................... 221
6.6. PROPRIEDADES DO TAG INTERNO....................................................................................................................... 223
6.7. PROPRIEDADES DO TAG TIMER........................................................................................................................... 224
6.8. PROPRIEDADES DA TELA..................................................................................................................................... 225
6.9. PROPRIEDADES DO QUADRO E DO DIVISOR......................................................................................................... 229
6.9.1. Propriedade do Quadro....................................................................................................................... 229
6.9.2. Propriedades do Divisor...................................................................................................................... 229
6.10. PROPRIEDADES DE OBJETOS DE TELA ......................................................................................................... 230
6.10.1. Propriedades Comuns a Todos os Objetos de Tela ........................................................................... 231
6.10.2. Propriedades Comuns dos Objetos de Tela de Desenho e Texto ...................................................... 232
6.10.3. Propriedades do Retngulo Arredondado........................................................................................... 239
6.10.4. Propriedades do Arco ......................................................................................................................... 239
6.10.5. Propriedades da Figura....................................................................................................................... 240


6.10.6. Propriedades do Texto, Display e SetPoint......................................................................................... 246
6.10.7. Propriedades da Escala...................................................................................................................... 250
6.10.8. Propriedades do Grupo de Objetos..................................................................................................... 256
6.10.9. Propriedades do Movimento (Translao e Rotao) ......................................................................... 258
6.10.10. Propriedades da Rotao.................................................................................................................... 261
6.11. PROPRIEDADES DOS ACTIVEX ..................................................................................................................... 262
6.11.1. Propriedades comuns ......................................................................................................................... 262
6.11.2. Propriedades da Caixa de Seleo e Boto de Opes ..................................................................... 265
6.11.3. Propriedades da Lista de Seleo ...................................................................................................... 268
6.11.4. Propriedades do Boto de Comando.................................................................................................. 277
6.11.5. Propriedades do Texto........................................................................................................................ 279
6.11.6. Propriedades da Lista ......................................................................................................................... 282
6.11.7. Propriedades da Barra de Rolagem.................................................................................................... 288
6.11.8. Propriedades do Boto Incremento-Decremento................................................................................ 289
6.11.9. Propriedades do Editor de Texto......................................................................................................... 290
6.11.10. Propriedades do Boto Liga-Desliga................................................................................................... 296
6.12. PROPRIEDADES DOS LINKS.......................................................................................................................... 300
6.12.1. Propriedades Comuns dos Objetos de Conexo (Links) .................................................................... 300
6.12.2. Propriedades dos Links Simples, Bidirecional e Reverso ................................................................... 301
6.12.3. Propriedades da Conexo Digital........................................................................................................ 302
6.12.4. Propriedades da Conexo Analgica.................................................................................................. 306
6.12.5. Propriedade da Conexo por Tabela .................................................................................................. 308
6.12.6. Propriedades da Linha da Conexo por Tabela.................................................................................. 309
6.13. PROPRIEDADES DO VIEWER......................................................................................................................... 310
6.14. PROPRIEDADES DO BANCO DE DADOS ......................................................................................................... 313
6.15. PROPRIEDADES DOS ALARMES .................................................................................................................... 315
6.15.1. Propriedades da rea de Alarmes ...................................................................................................... 315
6.15.2. Propriedades da Fonte de Alarmes..................................................................................................... 316
6.15.3. Propriedades do Servidor de Alarmes ................................................................................................ 318
6.16. PROPRIEDADES DO E3ALARM...................................................................................................................... 320
6.17. PROPRIEDADES DO HISTRICO.................................................................................................................... 324
6.18. PROPRIEDADES DO STORAGE...................................................................................................................... 327
6.18.1. Propriedades do Campo ..................................................................................................................... 329
6.19. PROPRIEDADES DA CONSULTA (E3QUERY) .................................................................................................. 329
6.20. PROPRIEDADES DO E3BROWSER................................................................................................................. 334
6.21. PROPRIEDADES DO E3CHART...................................................................................................................... 338
6.21.1. Propriedades da Pena ........................................................................................................................ 350
6.21.2. Propriedade da Coleo de Penas ..................................................................................................... 357
6.21.3. Propriedade da Coleo de Consultas................................................................................................ 357
6.21.4. Propriedades da Coluna...................................................................................................................... 357
6.21.5. Propriedades da Legenda................................................................................................................... 358
6.21.6. Propriedades do Eixo.......................................................................................................................... 360
6.21.7. Propriedades da Coleo de Eixos ..................................................................................................... 364
6.22. PROPRIEDADES DA FRMULA ...................................................................................................................... 365
6.23. PROPRIEDADES DOS XCONTROLS E XOBJECTS ........................................................................................... 365
6.24. PROPRIEDADES DO RELATRIO ................................................................................................................... 366
6.24.1. Propriedades de Layout do Relatrio.................................................................................................. 366
6.24.2. Propriedades Comuns das Sees do Relatrio................................................................................. 370
6.24.3. Propriedades do GroupHeader ........................................................................................................... 371
6.24.4. Propriedades do Detail........................................................................................................................ 373
6.24.5. Propriedades do GroupFooter............................................................................................................. 375
6.24.6. Propriedades Comuns dos Objetos do Relatrio ................................................................................ 376
6.24.7. Propriedades do Cdigo de Barras (BarCode).................................................................................... 378
6.24.8. Propriedades da Elipse, Retngulo e Retngulo Arredondado........................................................... 381
6.24.9. Propriedade da Figura ........................................................................................................................ 382
6.24.10. Propriedades do SetPoint ................................................................................................................... 384
6.24.11. Propriedades do Texto........................................................................................................................ 387
6.24.12. Propriedades da Linha........................................................................................................................ 389
6.24.13. Propriedade da Quebra de Pgina...................................................................................................... 390
6.24.14. Propriedades da Tabela...................................................................................................................... 390
6.24.15. Propriedades do E3Chart.................................................................................................................... 391
7. DVIDAS MAIS FREQENTES.............................................................................................................................. 393





Convenes
Estas so as convenes utilizadas neste manual:

EXEMPLO DESCRIO
S!LO6.BNP Nomes de arquivos e outros termos no nvel do sistema
operacional so indicados com o tipo de letra Tahoma, em
maisculas.
Geral Nomes de campos e opes que devem ser procurados na tela,
em menus ou nas abas dos objetos so indicados com tipo de
letra Tahoma.
Chart Caracteres entre aspas devem ser digitados no lugar
mencionado, sem a presena das aspas.
Tela1.Show() Partes de programas (scripts) so indicadas com o tipo de letra
Courier. Eles devero ser digitados nos lugares reservados e
depois compilados para a verificao de erros.
DriverLocation Nomes de mtodos e propriedades do E3 esto indicados por
palavras em itlico no corpo do texto. Os mtodos so
seguidos por parnteses.
<nome do arquivo> Expresses entre os sinais < > devem ser substitudas pelo
nome do objeto em questo.
!nsertRow([Row|) Parmetros opcionais so indicados entre colchetes nas
chamadas de mtodos.
[Ctrl+Enter| Expresses entre colchetes e com tipo de letra Tahoma
indicam nomes de teclas. Quando estiverem acompanhadas de
um sinal +, voc deve pressionar a segunda tecla enquanto
pressiona a primeira.



Introduo 9

Os Scripts so mdulos de linguagem de programao nos quais se pode criar
procedimentos associados a eventos especficos, permitindo uma maior flexibilidade
no desenvolvimento de aplicaes. Cada objeto (item de um aplicativo) do E3 possui
uma lista de eventos previamente definidos, mas tambm possvel definir novos
eventos prprios do usurio.
1.1. Ob]etos
Os Objetos so componentes de software reutilizveis que permitem maximizar o
uso e aumentar a qualidade e produtividade em seus aplicativos.
Um objeto no E3 encapsula ou contm trs diferentes partes (propriedades, mtodos
e eventos) que podem ser manipuladas para a utilizao das vantagens de sua
funcionalidade na aplicao.
Propriedades definem atributos de um objeto, como a aparncia de um objeto de
Tela ou o valor inicial de um objeto quando o aplicativo iniciado.
Mtodos so funes que realizam uma ao especfica dentro ou com um objeto.
Eventos so notificaes geradas por um objeto em resposta a alguma ocorrncia
em particular, como um clique de mouse ou uma mudana no valor de um tag, entre
outros.
Uma das principais caractersticas dos objetos e das linguagens orientadas a objeto
a capacidade de herana entre eles, ou seja, estes podem herdar as caractersticas de
um ou mais objetos, tendo as mesmas funcionalidades especficas. Assim, pode-se
ter vrios objetos trabalhando em conjunto para prover caractersticas de um outro
objeto derivado.
Tome como exemplo o objeto E3Chart. Ele composto internamente de vrios
objetos, como ttulos, legendas, escalas, divises, consultas e penas. Note que cada
objeto contribui para a funcionalidade do todo: as escalas ajudam a localizar os
valores dos pontos no E3Chart; as legendas, a identificar a pena e seus valores; e a
pena realiza o desenho dos valores no E3Chart.
Atravs da manipulao de objetos dentro do E3Chart, pode-se criar duas instncias
deste objeto bastante diferentes entre si. Para se manipular um objeto especfico,
deve-se acess-lo atravs de uma hierarquia. Se os dois objetos E3Chart estiverem
na mesma Tela, deve-se acessar primeiro a Tela, depois o E3Chart desejado, depois
uma de suas propriedades ou objetos-filhos. Quando h vrios objetos de um mesmo
Capitulo
1
1. ntroduo
E3 - Scripts - Manual de Referncia
10 Introduo
tipo, geralmente eles podem ser acessados atravs de uma coleo (collection). Uma
coleo um objeto especial que gerencia um conjunto de objetos semelhantes. Um
exemplo no objeto E3Chart a coleo Pens, que permite o acesso a todas as penas
do E3Chart.
1.2. 8cripts
A linguagem que o E3 Studio usa em seus scripts o VBScript, um subconjunto da
linguagem Visual Basic desenvolvida pela Microsoft. O VBScript possui um
interpretador rpido, leve e portvel, desenvolvido para uso em navegadores para a
Internet e outras aplicaes que usam ActiveX Controls, Automation Servers e Java
Applets.
Conforme visto anteriormente, os scripts so associados a eventos de um objeto.
Entretanto, para facilitar e aumentar a velocidade de desenvolvimento, o E3 j
incorpora algumas aes mais comuns que poderiam ser realizadas com scripts
atravs de assistentes chamados Picks. Pode-se portanto definir que um determinado
evento executar um script, um pick ou uma combinao deles, numa seqncia
tambm pr-definida.
Cada view do E3 Studio apresenta pelo menos duas abas na parte inferior: Design e
Scripts, com exceo dos objetos Banco de Dados e Servidor de Alarmes, que no
possuem a aba Design. Os objetos e seus filhos podem ser manipulados na aba
Design; para manipular seus scripts, utilize a aba Scripts. Os botes disponveis
nesta ltima so:
E3 - Scripts - Manual de Referncia
Introduo 11
Opes disponveis na aba Scripts
CAMPO CONE AO/FUNO
Lista de Objetos Seleciona o objeto cujo script ser manipulado.
Lista de Eventos Seleciona o evento a ser aplicado ao objeto.
Script

Adiciona um script associado ao evento.
Pick Abrir Tela"

Adiciona o pick Abrir Tela
Pick Abrir Tela Nodal"

Adiciona o pick Abrir Tela Modal.
Pick Executar
Aplicaao"

Adiciona o pick Executar Aplicao
Pick Carregar valor"

Adiciona o pick Carregar Valor
Pick !nverter valor"

Adiciona o pick Inverter Valor
Pick !mprimir
Relatrio"

Adiciona o pick Imprimir Relatrio
Remover scriptfpick
selecionado

Remove o script ou o pick selecionado na Lista
de Aes.
Nover scriptfpick
selecionado para cima

Move a ao selecionada para cima, na ordem
da Lista de Aes para o evento.
Nover scriptfpick
selecionado para baixo

Move a ao selecionada para baixo, na ordem
da Lista de Aes para o evento.
AppBrowser

Abre a janela do AppBrowser.
Procurar

Busca por ocorrncias de um determinado
texto.
Procurar anterior

Seleciona na lista de resultados a ocorrncia
anterior.
Procurar prxima

Seleciona na lista de resultados a ocorrncia
seguinte.
Substituir

Substitui as ocorrncias encontradas por outro
texto especificado.
Criar evento do usuario

Cria um evento de usurio.
Remover evento do
usuario

Remove o evento de usurio selecionado.
Editar evento do
usuario

Edita o evento de usurio selecionado.
Compila o script
selecionado

Compila o script selecionado, mostrando os
erros no painel Mensagens.
Compilar todos os
scripts deste evento

Compila todos os scripts associados ao evento.
Compila todos os
eventos deste objeto

Compila todos os eventos associados ao
objeto.

A ordem de execuo das aes de cima para baixo. Para alterar a ordem, pode-se
utilizar os botes e . Utilize o boto para verificar se no h erros no
script especificado para o evento. As mensagens de erro do compilador so
E3 - Scripts - Manual de Referncia
12 Introduo
apresentadas no painel Mensagens, na parte inferior da aba Scripts. D um
duplo-clique no erro caso deseje que ele seja selecionado no script.

Figura 1: Mensagem do compilador
1.2.1. Adicionando um script
Para adicionar um script a um objeto, siga estes passos:
Selecione o objeto para qual se deseja criar o script e clique na aba Scripts.
E3 - Scripts - Manual de Referncia
Introduo 13

Figura 2: Aba Scripts
Clique sobre o cone Script. O editor de scripts aberto, conforme a
figura abaixo.
E3 - Scripts - Manual de Referncia
14 Introduo

Figura 3: Adicionando um script ao objeto
Entre com os comandos VBScript desejados na caixa de edio de texto.
OBS: Utilize o caractere _ (sublinhado) quando desejar acrescentar uma quebra de
linha para deixar o cdigo mais legvel. O caractere sublinhado indica que a linha
continua na linha subseqente.
Por exemplo:
If intTemperaturaCaldeira3 > 120 and _
intTemperaturaCaldeira4 > 120
Then
bEnviarAlarme = True
bAlarmeLigado = True
End If
Cada evento pode possuir vrios scripts e vrios picks associados, chamados aes
do evento. A lista das aes pode ser vista na parte superior da janela de edio de
scripts. Cada objeto pode possuir qualquer quantidade de eventos com scripts ou
picks associados.
E3 - Scripts - Manual de Referncia
Introduo 15
NOTA: Clicando com o boto direito sobre qualquer destas aes descritas acima se
abre um menu que possibilita recortar, copiar e colar scripts e picks entre eventos.
1.3. Picks
Os Picks implementam uma forma mais amigvel de realizar procedimentos mais
comuns, poupando tempo de configurao. Entre eles, esto aes como troca de
Tela ou atribuio de valores, bastante comuns na criao de um projeto.
Descrevemos a seguir os picks disponveis na aba Scripts.
Abrir Tela
Abre uma determinada Tela ou Quadro.

Figura 4: Configuraes do pick Abrir Tela
E3 - Scripts - Manual de Referncia
16 Introduo
Opes disponveis no pick Abrir Tela
CAMPO DESCRIO
Abrir a tela Indica qual Tela deve ser aberta.
No quadro Indica o Quadro onde a Tela ser visualizada. Se estiver
em branco, ser o Quadro principal (_top).
Zoom inicial Define o zoom da Tela, quando mostrada.
Parametro Indica um parmetro a ser passado na chamada da Tela.
Habilitar scroll da tela Habilita o uso das barras de rolagem na Tela.
Especificar posiao da tela Indica a posio da Tela, em pixels.
Especificar tamanho da tela Indica o tamanho da Tela, em pixels ou HIMETRIC.
Estilo da janela... Chama a caixa de dilogo Estilo de janela (ver
abaixo).
Caixa de Dilogo Estilo de Janela
Permite configurar o estilo da janela a ser mostrada, definindo ttulo e a
disponibilidade das bordas e botes de fechar, maximizar e minimizar, entre outros.
Se a opo Usar configuraao padrao das janelas for marcada, o sistema
desabilita as opes desta janela e assume a configurao padro do Viewer,
conforme o que pode ser visto na aba Visualizador das propriedades do objeto
Viewer.

Figura 5: Janela Estilo de Janela
E3 - Scripts - Manual de Referncia
Introduo 17
Abrir Tela Modal
Abre uma Tela Modal, isto , uma Tela que no permite a interao do usurio com
outras Telas enquanto esta estiver ativa.

Figura 6: Configuraes do pick Abrir Tela Modal
Opes disponveis no pick Abrir Tela Modal
CAMPO DESCRIO
Abrir a tela Seleciona a Tela a ser aberta.
Titulo Define o ttulo da janela. Esse texto ser concatenado com o
nome da Tela.
Zoom inicial Define o zoom da Tela, quando mostrada.
Parametro Indica um parmetro a ser passado na chamada da Tela.
Habilitar scroll da tela Habilita o uso das barras de rolagem na Tela.
Especificar a posiao da
tela
Determina a posio (em pixels) do quadro na Tela, a partir
do canto superior esquerdo da Tela.
Especificar o tamanho da
tela
Determina a largura e a altura (em pixels ou HIMETRIC) da
Tela.
Estilo da janela... Permite configurar o estilo da janela a ser mostrada,
E3 - Scripts - Manual de Referncia
18 Introduo
definindo ttulo e a disponibilidade das bordas e botes de
fechar, entre outros (ver pick Abrir Tela, acima).
Executar Aplicao
Executa uma aplicao especfica.

Figura 7: Configuraes do pick Executar Aplicao
Opes disponveis no pick Executar Aplicao
CAMPO DESCRIO
Aplicaao Apertando-se o boto [...] pode-se navegar no disco para indicar o
arquivo da aplicao a ser executada.
Argumentos Permite especificar argumentos para a chamada da aplicao.
Executar no
diretrio
Determina o diretrio de trabalho da aplicao que ser executada.
Nodo de exibiao Determina o tipo de janela de execuo da aplicao: normal,
minimizado ou maximizado.

E3 - Scripts - Manual de Referncia
Introduo 19
Carregar Valor
Carrega um valor em um tag.

Figura 8: Configuraes do pick Carregar Valor
Opes disponveis no pick Carregar Valor
CAMPO DESCRIO
Nome do tag Especifica o nome do tag no qual ser carregado o valor. Pode-se escolher o
tag no AppBrowser, apertando-se o boto [...].
valor Determina o valor que ser carregado no tag. Pode-se escolher o tipo de
dados apertando a seta para baixo.

E3 - Scripts - Manual de Referncia
20 Introduo
Inverter Valor
Permite inverter o valor de um tag. Se o valor do tag for igual a valor1, ento o tag
recebe valor2. Se o valor do tag for igual a valor2, ento o tag recebe valor1. Se o
valor do tag no for igual a valor1 nem valor2, o tag recebe valor1.
possvel colocar tantos picks !nverter valor quanto o desejado. Isso permite a
verificao de mltiplos valores para um mesmo tag ou at mesmo para diversos
tags em um mesmo evento.

Figura 9 - Configuraes do pick Inverter Valor
Opes disponveis no pick Inverter Valor
CAMPO DESCRIO
Nome do tag Apertando-se o boto [...] o E3 abre o AppBrowser, para a escolha do tag
desejado.
valor1 Determina o primeiro valor a ser comparado. Se o valor do tag for igual a
valor1, ento o tag recebe valor2.
valor2 Determina o segundo valor a ser comparado. Se o valor do tag for igual a
valor2, ento o tag recebe valor1.

E3 - Scripts - Manual de Referncia
Introduo 21
Imprimir Relatrio
Permite imprimir um relatrio na tela ou na impressora.

Figura 10: Configuraes do pick Imprimir Relatrio
Opes disponveis no pick Imprimir Relatrio
CAMPO DESCRIO
!mprimir relatrio Permite escolher o relatrio a ser impresso.
Saida Determina o tipo de sada do relatrio:
!mpressora: Envia o relatrio para a impressora. Corresponde
ao mtodo Print().
Tela: Faz uma prvia de impresso de relatrio na tela.
Corresponde ao mtodo PrintPreview().

E3 - Scripts - Manual de Referncia
22 Introduo
1.4. Eventos Definidos pelo Usuario
Apesar do E3 vir com uma extensa gama de eventos, muitas vezes o usurio pode
desejar criar um evento especfico para sua aplicao.
Um exemplo para a utilizao de eventos definidos pelo usurio seria a realizao de
um clculo ou tarefa mais complexa em um objeto, quando o evento gerador vem de
um outro tag ou propriedade.
Apesar de se poder criar e executar este mesmo tipo de trabalho a partir do prprio
tag ou propriedade gerador do evento, existem vantagens em manter-se o script junto
ao objeto que sofrer a ao deste. Dentre elas, podemos citar o trabalho adicional
necessrio para fazer um objeto apontar para outro, alm de facilidades de
manuteno, pois se por algum motivo for necessrio modificar ou apagar o tag ou
propriedade que seja o evento gerador, no necessrio modificar um segundo
objeto.
Outra vantagem o fato de que se o tag gerador do evento for apagado, o objeto no
perder o script, basta que se indique uma outra fonte geradora de evento.
A gerao de eventos internos facilita ainda a criao de bibliotecas, pois cada vez
que um componente de biblioteca inserido em uma aplicao, ele traz consigo os
scripts e clculos que podem ser necessrios, diminuindo o trabalho de configurao.
Para gerar um novo evento interno em um objeto, siga estes procedimentos:
Clique no boto Criar evento do usurio, ou ento em [Criar
novo evento], na Lista de Eventos. O E3 abrir uma janela para a
definio das propriedades do evento.

Figura 11: Janela para a adio de eventos definidos pelo usurio
E3 - Scripts - Manual de Referncia
Introduo 23
Opes disponveis na janela Eventos
OPO DESCRIO
Nome do Evento Nome que identifica o evento.
A propriedadefexpressao Expresso geradora do evento. Pode ser copiada atravs do
AppBrowser, apertando-se o boto [...|.
For uma condiao
verdadeira
Indica que o evento ser do tipo etOnEvent (o evento
ocorre no momento que a expresso for verdadeira) ou
etWhileEvent (o evento ocorre ciclicamente, em intervalos
pr-definidos).
Repetir o evento a cada ...
ms
Quando preenchido, indica que o evento ser
etWhileEvent. Indica o ciclo de repetio do evento em
milissegundos, isto , de quanto em quanto tempo ele ir
ocorrer, enquanto a expresso geradora for verdadeira.
Alterar o seu valor Indica que o evento ser etOnvalueChanged, isto , o
evento ir ocorrer sempre que a expresso geradora mudar
o valor.
Tratar a desconexao como
mudana
Indica se a conexo/desconexo da expresso geradora do
evento dever ser tratada como mudana.

Clique em [OK| para completar o processo e inserir o evento. Ele ir
aparecer na lista de eventos.
Para alterar este evento, selecione-o e clique em Editar evento do
usurio. A janela anterior ser aberta novamente para a edio de dados
do evento.
Para apagar este evento, selecione-o e clique em Remover evento do
usurio. IMPORTANTE: ao clicar esta opo, os scripts deste evento
sero perdidos.


Introduo ao VBScript 25

O VBScript uma linguagem baseada no Visual Basic que traz a capacidade de
scripting (roteirizao) para aplicaes que rodam no sistema operacional Windows.
O VBScript troca informaes com as aplicaes utilizando a tecnologia ActiveX
Scripting. Com o ActiveX Scripting, navegadores e outras aplicaes-cliente como o
E3 Viewer podem compilar scripts e chamar funes, dentre outros procedimentos.
Isso possibilita que scripts desenvolvidos para uma aplicao ou biblioteca que
devam ser executados na interface grfica possam ser executados tanto no E3
Viewer quanto em um navegador de Internet, sem a necessidade de qualquer
adaptao do aplicativo.
Mais informaes sobre o VBScript podem ser obtidas no manual on-line Guia de
Referncia do VBScript, no Grupo de Programas do E3.
2.1. Ambiente de Programao
O ambiente de programao de scripts no E3 Studio pode ser acessado atravs do
clique com o boto direito sobre qualquer objeto, escolhendo-se a opo
Propriedades. Na aba Scripts, pode-se ver a caixa combo onde se define qual
evento ser o gerador do script. Como vimos no captulo anterior, existem dois tipos
de eventos em um objeto do E3: os pr-definidos e os definidos pelo usurio.
Os eventos pr-definidos variam de objeto para objeto, a depender da sua utilizao
e funcionalidade. Um objeto de tela, por exemplo, possui eventos relacionados
interface grfica, como OnClick (chamado ao clicar sobre o objeto) ou OnDbClick
(chamado com um duplo-clique); j um objeto como um Driver de Comunicao
possui eventos relacionados comunicao, como o OnCommError (chamado
quando h um erro de comunicao). Pode-se tambm definir outros eventos para o
objeto, como visto anteriormente.
Quando um script associado a um evento em um objeto, o campo de digitao
apresenta uma declarao de procedimento (procedure), cuja definio automtica
e composta do seguinte texto:
Sub NomeDoObjeto_NomeDoEvento()
End Sub
Onde: NomeDoObjeto o nome do objeto associado e NomeDoEvento o nome do
evento em questo. Os comandos do script devero estar entre essas duas linhas.
Capitulo
2
2. ntroduo ao VB8cript
E3 - Scripts - Manual de Referncia
26 Introduo ao VBScript
Para ajudar na digitao do script, pode-se utilizar o AppBrowser. Ao se escolher o
mtodo ou propriedade desejada, pode-se acessar o boto [Copiar|. O tag,
propriedade ou mtodo escolhidos sero inseridos na posio do cursor no quadro de
edio do script. O local do cursor mostrado atravs da animao com uma seta
piscante.
2.2. Tipos de Dados
O VBScript possui somente um tipo de dado chamado Variant. Um Variant um
tipo especial de dado que pode conter diferentes tipos de informao, dependendo de
como for usado. Pelo fato do variant ser o nico tipo de dado no VBScript, ele
tambm o tipo de dado de retorno de todas as funes em VBScript.
Na prtica, um variant pode conter nmeros ou texto. Um variant se comporta como
um nmero quando usado em expresses numricas e como um string em
expresses de texto. Isto , quando se trabalha com dados que parecem ser nmeros,
o VBScript assume que estes so mesmo nmeros, e faz o que mais apropriado
para este tipo de dados. Do mesmo modo, quando se trabalha com dados que
parecem ser texto, o VBScript os trata como se fossem texto. Pode-se forar
nmeros a se comportem como texto colocando-os dentro de aspas (" ").
Subtipos Variant
Alm das classificaes simples de nmero ou texto, um variant pode fazer
distines sobre a natureza especfica da informao numrica. Por exemplo,
pode-se ter informao numrica que represente data/hora. Quando usada com
outros dados data/hora, o resultado sempre expresso num formato data/hora.
Pode-se tambm ter uma variedade de informaes numricas variando em tamanho
desde tipos lgicos (Booleanos) at grandes nmeros de ponto flutuante. Estas
diferentes categorias de informao que podem estar contidas em um variant so
chamados subtipos. Na maioria das vezes, simplesmente atribui-se o tipo de dado
desejado em um variant e ele se comporta da forma mais apropriada.

E3 - Scripts - Manual de Referncia
Introduo ao VBScript 27
Subtipos Variant
SUBTIPOS DESCRIO
Empty Vazio (variant no inicializado). O valor 0 para variveis numricas ou string de
comprimento zero ("") para variveis texto.
Null Nulo. O variant intencionalmente no contm dados vlidos.
Boolean Lgico. Contm verdadeiro (True ou 1) ou falso (False ou 0).
Byte Contm inteiros na faixa 0 a 255 (8 bits).
!nteger Contm inteiros na faixa de -32768 a 32767 (16 bits).
Currency Valores monetrios, na faixa de -922.337.203.685.477,5808 a
922.337.203.685.477,5807.
Long Contm inteiros na faixa de -2,147,483,648 a 2,147,483,647 (22 bits).
Single Contm nmero ponto flutuante de preciso simples na faixa de 3,402823E38
823E38 a -1,401298E-45 para valores negativos e 1,401298E-45 a 3,402823E38
para valores positivos.
Double Contm nmero ponto flutuante de preciso dupla na faixa de
-1,79769313486232E308 a -4,94065645841247E-324 para valores negativos e
4,94065645841247E-324 a 1,79769313486232E308 para positivos.
Date (Time) Contm um nmero que representa uma data entre 1-. de janeiro de 100 a 31 de
dezembro de 9999.
String Contm um texto de comprimento varivel que pode ter aproximadamente 2
bilhes da caracteres de comprimento.
Object Contm um objeto qualquer.
Error Contm um cdigo de erro.

E3 - Scripts - Manual de Referncia
28 Introduo ao VBScript
2.3. Variaveis
Uma varivel uma localizao de memria no computador onde possvel
armazenar informaes que podem mudar durante a execuo do script. Por
exemplo, pode-se criar uma varivel chamada ClickCount para guardar o nmero
de vezes que o usurio clicou em um objeto. O local onde a varivel armazenada
na memria do computador no importante. Na verdade, s necessrio saber o
nome da varivel para ver ou modificar seu valor. Em VBScript, as variveis so
sempre do tipo-base Variant.
Declarando variveis
possvel declarar variveis de duas maneiras: implicitamente ou explicitamente.
Para declarar uma varivel implicitamente, basta usar seu nome no script.
Automaticamente, a varivel ser criada e inicializada com o valor da atribuio, ou
permanecer Empty (vazia, sem nenhum valor), caso no receba nenhum valor antes
de ser utilizada.
Esta uma prtica rpida, porm se o script for muito extenso, isto pode causar
confuso e a criao de mais de uma varivel com o mesmo nome, gerando bugs no
script.
Para declarar variveis explicitamente, utiliza-se o comando Dim, como no exemplo:
Dim Temperatura
Pode-se declarar mltiplas variveis separando cada nome de varivel com uma
vrgula. Por exemplo:
Dim Esquerda, Direita, Topo, Base
Em virtude dos scripts no E3 serem todos associados a um objeto em particular, as
variveis so sempre locais, vlidas apenas para o escopo do script. Para ter-se
variveis pblicas ou globais, deve-se criar um tag interno e utiliz-lo para
armazenar o valor desejado.
Restries para nomes de variveis
Os nomes de variveis devem obedecer s regras de nomeao do VBScript:
Devem comear com um caractere alfabtico.
No podem conter um ponto.
No devem exceder 255 caracteres.
Devem ser nicos no escopo onde esto declarados, isto , dentro do script.
Caracteres especiais (&, %, @, etc.) so aceitos, desde que grafados entre
colchetes [ ].

E3 - Scripts - Manual de Referncia
Introduo ao VBScript 29
Atribuindo valores a variveis
Valores so atribudos a variveis atravs do sinal de igual (=), do mesmo modo que
outras linguagens de programao. Por exemplo:
Dim Largura, Altura
Largura = 20
Altura = 12
No exemplo, as variveis Largura e Altura recebero os valores 20 e 12
respectivamente.
Variveis escalares e do tipo array
Na maioria das vezes, queremos somente associar um valor simples a uma varivel
declarada. Neste caso, a varivel contendo um nico valor chamada varivel
escalar. Porm, outras vezes, conveniente atribuir mais de um valor relacionado a
uma nica varivel. Para isso, pode-se criar uma varivel que contm uma srie de
valores, uma varivel do tipo array, ou vetor.
Variveis escalares e arrays so declaradas da mesma forma, exceto pelo fato de que
a declarao de um array utiliza parnteses contendo sua dimenso (quantos valores
a varivel ir armazenar). No exemplo seguinte, um array de dimenso 11 elementos
declarado:
Dim A(10)
Apesar do nmero nos parnteses ser 10, todos os arrays em VBScript comeam em
zero (zero-based ou base zero). Num array de base zero, o nmero de elementos
sempre o nmero mostrado nos parnteses mais um. O tipo array chamado de
tamanho fixo, pois uma vez declarado, no se pode modificar seu tamanho.
Pode-se atribuir dados a cada um dos elementos de um array usando-se um ndice.
Comeando do zero e terminando em 10, pode-se atribuir dados aos elementos de
um array como a seguir:
A(0) = 256
A(1) = 324
A(2) = 100
.
A(10) = 55
Similarmente, usando-se um ndice, pode-se copiar um dado de qualquer elemento
do array. Por exemplo:
MinhaVariavel = A(8)
Os arrays no esto limitados a uma simples dimenso. possvel ter um array de
at 60 dimenses. Para declarar mltiplas dimenses, deve-se especific-los no
parnteses, separando-os com vrgulas.
E3 - Scripts - Manual de Referncia
30 Introduo ao VBScript
Neste exemplo, a varivel MinhaTabela um array de duas dimenses consistindo
de 6 linhas e 11 colunas:
Dim MinhaTabela(5,10)
Num array bidimensional, o primeiro nmero sempre o nmero de linhas; o
segundo nmero o nmero de colunas.
Pode-se tambm declarar um array cujo tamanho muda durante a execuo do script.
Isto chamado de array dinmico. Um array dinmico declarado com o comando
Dim, como um array normal, mas no especificamos as dimenses nos parnteses.
Por exemplo:
Dim MeuArray()
Para modificar um array dinmico, voc deve utilizar o comando ReDim, indicando
as novas dimenses. Se for necessrio manter os dados anteriormente atribudos ao
array, deve-se usar a chave Preserve.
No exemplo seguinte, ajustamos o tamanho inicial do array para 25. O comando
ReDim seguinte redimensiona o array para 30, mas usa a palavra chave Preserve
para preservar os dados anteriores.
Sub ModificaArray
Dim MeuArray(25)
MeuArray(1) = "Posicao 1"
MeuArray(14) = "Posicao 14"
MeuArray(23) = "Posicao 23"
' Redimensiona MeuArray conservando seus dados
ReDim Preserve MeuArray(30)
MsgBox MeuArray(23) ' ir mostrar "Posicao 23"
End Sub
No h limite para o nmero de vezes que um array dinmico pode ser
redimensionado, porm ao se diminuir o tamanho de um array, os dados das
posies eliminadas sero perdidos.
E3 - Scripts - Manual de Referncia
Introduo ao VBScript 31
2.4. Constantes
Uma constante um tipo especial de varivel que nunca muda o seu valor. O
VBScript j possui um conjunto de constantes pr-definidas. Consulte a referncia
da linguagem no site da Microsoft para maiores detalhes.
Criando constantes
Pode-se criar constantes definidas pelo usurio utilizando-se o comando Const,
como constantes texto ou numricas como nomes com significado, e atribuir-lhes
valores literais. Por exemplo:
Const MeuTexto = "Isto um texto."
Const MinhaIdade = 36
Note que o texto literal colocado entre aspas (" "). As aspas so o mtodo mais
bvio para diferenciar valores texto de numricos. Pode-se representar datas e
horrios literais inserindo-os entre sinais de nmeros ou cancelas (#). Por exemplo:
Const CutoffDate = #6-1-97#
Uma boa prtica a adoo de um esquema de nomes para diferenciar constantes de
variveis. Isto previne que se tente re-atribuir valores a constantes enquanto o script
est sendo executado. Por exemplo, pode-se querer usar um prefixo "vb" ou "con"
nos nomes de constantes, ou deixar as constantes em letras maisculas. Diferenciar
constantes de variveis elimina confuses que podem aparecer ao desenvolver
scripts mais complexos. Exemplos:
Const TEMP_LIMITE = 112
Const vbPreto = 0 'vbBlack pr-definida no VBScript
Const conMaioridade = 18
2.5. Operadores
O VBScript possui uma ampla gama de operadores, conforme tabelas abaixo.
Operadores aritmticos
OPERADORES DESCRIO
+ (adio)
- (subtrao ou negao unria)
* (multiplicao)
f (diviso decimal, retorna um nmero de ponto flutuante)
(diviso inteira, retorna um nmero inteiro)
Nod (resto da diviso)
' (exponenciao)
E3 - Scripts - Manual de Referncia
32 Introduo ao VBScript
Operadores de comparao
OPERADORES DESCRIO
< (menor que)
> (maior que)
<= (menor ou igual)
>= (maior ou igual)
= ( igual)
<> ( diferente)

Operadores de strings
OPERADORES DESCRIO
8 (concatenao)

Operadores lgicos
OPERADORES DESCRIO
And (E)
Or (OU)
Not (Negao, operador unrio)

E3 - Scripts - Manual de Referncia
Introduo ao VBScript 33
Precedncia de operadores
Quando vrias operaes ocorrem em uma expresso, cada parte avaliada e
resolvida em uma ordem predeterminada chamada precedncia de operadores.
Pode-se utilizar parnteses para redefinir a ordem de precedncia e forar algumas
partes de um expresso a serem sempre realizadas antes daquelas que esto fora dos
parnteses. Dentro dos parnteses, entretanto, a precedncia de operadores padro
mantida. Quando expresses contm operadores de mais de uma categoria, os
operadores aritmticos so avaliados primeiro, seguidos pelos operadores de
comparao, e por ltimo os operadores lgicos. Operadores aritmticos so
avaliados na seguinte ordem:
1. - (negao unria)
2. ^
3. *, /
4. \
5. Mod
6. +, -
7. & (concatenao de strings)
Quando a multiplicao e diviso ocorrem juntas numa expresso, cada operao
avaliada como aparece da esquerda para a direita. Da mesma forma, quando a adio
e subtrao ocorrem juntas em uma expresso, cada operao avaliada em ordem
de aparecimento da esquerda para a direita. O operador de concatenao de strings
(&) no um operador aritmtico, mas em precedncia ele ocorre depois de todos os
operadores aritmticos e antes de todos os operadores de comparao.
Operadores de comparao possuem todos a mesma precedncia, isto , so
avaliados da esquerda para a direita na ordem em que aparecem.
Operadores lgicos so avaliados na seguinte ordem: Not, And, Or e Xor.
2.6. Comentarios
Linhas de comentrios e observaes no cdigo podem ser acrescentadas
utilizando-se o caractere ' (apstrofe) no incio da linha.
Exemplo:
Sub Exemplo()
Dim X
' Isso um exemplo de comentrio
X = 1 ' comentando que a varivel X recebeu 1
End Sub
E3 - Scripts - Manual de Referncia
34 Introduo ao VBScript
2.7. Ob]eto de Fluxo
Pode-se controlar o fluxo de execuo do script com comandos de condio e de
repetio. Com comandos condicionais, pode-se escrever programas VBScript que
tomam decises e repetem aes.
2.7.1. f..Then.. Else
O comando If..Then..Else usado para avaliar se uma condio verdadeira ou
falsa e, dependendo do resultado, especificar um ou mais comandos a serem
executados. Geralmente, a condio uma expresso que usa um operador de
comparao para comparar um valor ou varivel outra.
Tais comandos podem ser aninhados em quantos nveis forem necessrios. Deve-se
porm, respeitar a sintaxe de bloco: se o Then tiver apenas um comando, pode-se
coloc-lo na mesma linha. Se tiver mais de um comando, deve-se colocar o Then
marcando o incio do bloco, seguido dos comandos desejados em linhas separadas e
finalizando com um desses comandos: Else, ElseIf ou End If (veja os exemplos que
seguem).
Executando comandos se uma condio for verdadeira
Para executar somente um comando quando uma condio for verdadeira, use a
sintaxe de uma linha para o comando If..Then..Else. O exemplo a seguir mostra a
sintaxe de uma linha. Note que este exemplo omite a palavra-chave Else.
Sub FixDate()
' Declara a varivel minhaData
Dim minhaData
' Atribui 13 de fevereiro de 1995 varivel minhaData
minhaData = #13/2/95#
' Se minhaData for anterior
' a hoje (varivel de sistema Now)
' ento faa minhaData ser igual a hoje
If minhaData < Now Then minhaData = Now
End Sub
Para executar mais de uma linha de cdigo, deve-se usar a sintaxe de bloco ou
mltiplas linhas. Esta sintaxe inclui o comando End If, como mostrado abaixo:
If valor = 0 Then
AlertLabel.ForeColor = vbRed
AlertLabel.Font.Bold = True
AlertLabel.Font.Italic = True
End If
E3 - Scripts - Manual de Referncia
Introduo ao VBScript 35
Executando comandos se uma condio for verdadeira e outros
se a condio for falsa
Pode-se usar um If..Then..Else para definir dois blocos de cdigo: um para ser
executado se a condio for verdadeira, e outro bloco para ser executado se a
condio for falsa. Por exemplo:
Sub Alerta(valor)
If valor = 0 Then
AlertLabel.ForeColor = vbRed
AlertLabel.Font.Bold = True
Else
AlertLabel.Forecolor = vbBlack
AlertLabel.Font.Bold = False
AlertLabel.Font.Italic = False
End If
End Sub
Clusula ElseIf
Uma variao no comando If..Then..Else permite que se escolha entre vrias
alternativas. Adicionando-se clusulas ElseIf, a funcionalidade do comando
expandida, possibilitando o objeto do fluxo de execuo baseado em diferentes
possibilidades. Por exemplo:
Sub InformaValor(valor)
If valor = 0 Then
MsgBox valor
ElseIf valor = 1 Then
MsgBox valor
ElseIf valor = 2 Then
MsgBox valor
Else
MsgBox "Valor invlido!"
End If
possvel adicionar tantas clusulas ElseIf quantas forem necessrias, porm o uso
extensivo de clusulas ElseIf pode ser substitudo pelo comando Select Case,
tornando o script mais claro e otimizado.
E3 - Scripts - Manual de Referncia
36 Introduo ao VBScript
2.7.2. 8elect Case
A estrutura Select Case uma alternativa mais eficiente ao If..Then..ElseIf para
selecionar um dentre mltiplos blocos de instrues condicionados a uma varivel.
O comando Select Case trabalha com uma expresso simples de teste que avaliada
uma vez, no topo da estrutura. O resultado da expresso ento comparado com os
valores para cada caso (Case) desejado. Se h uma comparao verdadeira, o bloco
de instrues associado quele caso executado. Por exemplo:
Select Case tipoAlarme
Case 1
MsgBox "Alarme: tag com valor baixo crtico!!!"
Case 2
MsgBox "Alarme: tag com valor baixo!"
Case 3
MsgBox "Alarme: tag com valor alto!"
Case 4
MsgBox "Alarme: tag com valor alto crtico!!!"
Case Else ' se nenhum caso for selecionado
MsgBox "Situao normal."
End Select
Note que o comando Select Case avalia a expresso uma vez no topo da estrutura.
Em contraste, a estrutura If..Then..ElseIf vai avaliar uma expresso diferente para
cada instruo ElseIf, tornando o cdigo menos otimizado. Nestes casos, prefira
sempre a estrutura Select Case.
2.7.3. While.. Wend
O comando While.. Wend permite repetir um bloco de comandos enquanto uma
condio for verdadeira. Este comando existe no VBScript para aqueles que so
familiares a seu uso. Entretanto, a falta de flexibilidade desta estrutura faz com que
seja recomendado o uso da instruo Do.. Loop.
2.7.4. Do.. Loop
Pode-se utilizar comandos Do.. Loop para executar um bloco de cdigo um nmero
indefinido de vezes. Os comandos so repetidos enquanto a condio for verdadeira,
ou at a condio ser tornar verdadeira.
Palavra-chave While
A palavra-chave While deve ser utilizada numa instruo Do.. Loop para indicar
que o lao ser executado enquanto sua condio for verdadeira. possvel avaliar
E3 - Scripts - Manual de Referncia
Introduo ao VBScript 37
a condio antes do programa entrar no lao ou depois do lao ter sido executado
pelo menos uma vez.
No exemplo a seguir, no procedimento AvaliaAntesWhile, se for atribudo o valor 9
a meuNum ao invs de 20, o cdigo dentro do lao nunca ser executado.
No procedimento AvaliaDepoisWhile, o cdigo dentro do lao ser executado
somente uma vez, devido condio j ser falsa.
Exemplos:
Sub AvaliaAntesWhile()
Dim contador, meuNum
contador = 0
meuNum = 20
Do While meuNum > 10
meuNum = meuNum 1
contador = contador + 1
Loop
MsgBox "O lao teve " & contador & " repeties."
End Sub
Sub AvaliaDepoisWhile()
Dim contador, meuNum
contador= 0
meuNum = 9
Do
meuNum = meuNum 1
contador = contador+ 1
Loop While meuNum > 10
MsgBox "O lao teve " & contador & " repeties."
End Sub
Palavra-chave Until
A palavra-chave Until indica que o lao ser executado at que sua condio seja
verdadeira. Existem dois mtodos de utilizar a palavra-chave Until para avaliar uma
condio num lao Do.. Loop. Pode-se avaliar a condio antes do programa entrar
no lao (como mostrado no exemplo AvaliaAntesUntil) ou depois do lao ter sido
executado pelo menos uma vez (mostrado no exemplo AvaliaDepoisUntil).
Enquanto a condio for falsa, o lao acontece.
E3 - Scripts - Manual de Referncia
38 Introduo ao VBScript
Exemplos:
Sub AvaliaAntesUntil()
Dim contador, meuNum
Contador = 0
meuNum= 20
Do Until meuNum = 10
meuNum = meuNum 1
contador = contador + 1
Loop
MsgBox "O lao teve " & contador & " repeties."
End Sub
Sub AvaliaDepoisUntil()
Dim contador, meuNum
Contador = 0
meuNum = 1
Do
meuNum = meuNum + 1
contador = contador + 1
Loop Until meuNum = 10
MsgBox "O lao teve " & contador & " repeties."
End Sub
Comando Exit Do
possvel forar a sada de um lao Do.. Loop atravs do comando Exit Do. Este
comando ignora a condio especificada no lao e encerra-o incondicionalmente.
Devido ao fato de se desejar sair do lao somente em situaes especiais (como para
evitar um lao infinito) deve-se usar o comando Exit Do na condio verdadeira de
um comando If.. Then.. Else. Se a condio falsa, o lao corre normalmente.
No exemplo a seguir, meuNum recebe um valor que cria um loop infinito. O
comando If.. Then.. Else verifica essa condio, prevenindo uma execuo infinita.
E3 - Scripts - Manual de Referncia
Introduo ao VBScript 39
Exemplo:
Sub ExemploExitDo()
Dim contador, meuNum
contador= 0
meuNum = 9
Do Until meuNum = 10
meuNum = meuNum - 1
contador = contador + 1
If meuNum < 10 Then Exit Do
Loop
MsgBox "O lao teve " & contador & " repeties."
End Sub
2.7.5. For.. Next
Pode-se utilizar o comando For.. Next para executar um bloco de instrues um
nmero especfico de vezes. Para laos, use uma varivel como contador cujo valor
seja incrementado ou decrementado a cada repetio do lao.
O exemplo a seguir faz com que o tag exemplo receba o valor da expresso
cinqenta vezes. O comando For especifica a varivel contador X e seus valores
iniciais e finais. O comando Next incrementa o contador e verifica se ele atingiu o
limite. Em caso negativo, o lao executado mais uma vez. Em caso afirmativo, o
script seguido.
Sub Executa50Vezes()
Dim X, exemplo
For X = 1 To 50
exemplo = X * 2 ' recebe 2, 4, 6, 8, 10 etc.
Next
End Sub
Usando a palavra-chave Step, pode-se incrementar ou decrementar a varivel
contador pelo valor que for especificado. No exemplo a seguir, o contador
incrementado de 2 em 2 cada vez que o lao repetido. Quando o lao acaba, o total
a soma de 2, 4, 6, 8, e 10.
Sub TotalDeDois()
Dim j, total
For j = 2 To 10 Step 2 ' conta de 2 em 2
total = total + j
Next
MsgBox "O total " & total
End Sub
E3 - Scripts - Manual de Referncia
40 Introduo ao VBScript
Para decrementar o contador, use um valor negativo para o Step. Deve-se
especificar um valor final menor que o valor inicial. No exemplo a seguir, a varivel
meuNum decrementada de 2 em 2 cada vez que o lao repetido. Quando o lao
termina, o total a soma de 16, 14, 12, 10, 8, 6, 4 e 2.
Sub OutroTotal()
Dim meuNum, total
For meuNum = 16 To 2 Step 2
total = total + meuNum
Next
MsgBox "O total " & total
End Sub
Pode-se sair de qualquer comando For.. Next antes do contador alcanar seu valor
final utilizando-se o comando Exit For. Este comando tem o comportamento
semelhante ao comando Exit Do, finalizando o lao incondicionalmente.
2.7.6. For Each.. Next
Um lao For Each.. Next similar a um lao For.. Next. Ao invs de repetir as
instrues de um bloco um nmero especfico de vezes, um lao For Each.. Next
repete um grupo de comandos para cada item numa coleo de objetos ou para cada
elemento num array. Isto bastante til quando o nmero de elementos presentes em
uma coleo no conhecido.
Exemplo:
Sub cmdChange_OnClick
Dim d 'Declara uma varivel
' d ser um objeto do tipo Scripting.Dictionary
Set d = CreateObject("Scripting.Dictionary")
' Adiciona itens a coleo d
d.Add "0", "Atenas"
d.Add "1", "Belgrado"
d.Add "2", "Cairo"
For Each I in d ' I implicitamente declarada
Document.frmForm.Elements(I).Value = D.Item(I)
Next
End Sub

E3 - Scripts - Manual de Referncia
Introduo ao VBScript 41
2.8. Convenes de Cdigo
A principal razo para se utilizar um conjunto consistente de convenes de
codificao a padronizao da estrutura e do estilo de codificao de um script ou
um conjunto de scripts. Isto possibilita s pessoas lerem e entenderem mais
facilmente o cdigo. A utilizao de boas convenes de codificao resulta em um
cdigo-fonte preciso, legvel e no-ambguo, que consistente com as convenes
de outras linguagens, e que se torna to intuitivo quanto possvel.
Nomeao de procedimentos, constantes, variveis e objetos
Na nomeao de constantes, variveis, procedimentos e objetos, um ponto
importante: os nomes devem sempre informar sobre a finalidade destes.
Procedimentos
Uma boa tcnica usar o par verbo-substantivo para a nomeao. No entanto, no
use palavras vagas, ambguas ou genricas, como faz, coisa ou isto. Quando
se encontra dificuldade para a nomeao de um procedimento usando-se estas
sugestes, talvez ele no tenha razo de existir ou seu propsito esteja errado.
Exemplos: ClassificaMatrizNomes, CalculaTaxaJuros.
Constantes
Utilize o prefixo con seguido do nome da constante. Inicie o nome da constante
com letra maiscula. Para nomes de constantes com duas ou mais palavras,
separe-as usando apenas as letras maisculas para definir o incio da nova palavra.
Exemplo: conMinhaConstante.
Variveis
Embora um nome razoavelmente extenso seja o recomendado, nomes com mais de
32 caracteres tornam-se difceis de ler e digitar. Nesse caso, bom usar nomes
abreviados, principalmente para variveis que possuam um uso muito grande, como
contadores em laos.
Deve-se, entretanto, usar um mesmo padro de abreviao em todo o cdigo (no
definir, por exemplo, uma varivel contadora com "cnt" em um procedimento e
"cont" em outro).
Alm disso, recomendada a utilizao de prefixos na nomeao de variveis que
indiquem o seu subtipo. Isto muito til no uso de variveis em funes ou em laos
que trabalhem com um subtipo especfico.
E3 - Scripts - Manual de Referncia
42 Introduo ao VBScript
Exemplos:
Dim strMeuNome ' string
Dim intCodTela ' integer
Prefixos recomendados para os subtipos Variant
SUBTIPO PREFIXO
Boolean bin
Byte byt
Date (Time) dtm
Double dbl
Error err
!nteger int
Long lng
Object obj
Single sng
String str

Objetos
Recomenda-se o uso dos seguintes prefixos:

OBJETO PREFIXO
Barra de rolagem horizontal hsd
Barra de rolagem vertical vsb
Botao animado ani
Botao de comando cmd
Botao de rotaao spn
Caixa de combinaao
ou caixa de lista
cbo
Caixa de dialogo dlg
Caixa de lista lst
Caixa de texto txt
Caixa de verificaao chk
!magem img
!ndicador deslizante sld
Linha lin
Noldura fra
Painel 3D pnl
Rtulo lbl

E3 - Scripts - Manual de Referncia
Introduo ao VBScript 43
Comentrios
Todos os procedimentos devem comear com um breve comentrio sobre o que este
faz. No entanto, este comentrio no deve descrever os detalhes de implementao,
porque isto freqentemente consome muito tempo e resulta num trabalho de
manuteno de comentrios desnecessrio. O cdigo em si ou os comentrios aos
finais das linhas descrevero como o procedimento executa a tarefa a que se prope.
Uma recomendao bastante importante, mas que deve causar contrariedade
maioria dos programadores : comente cada linha de cdigo no seu programa.
Embora seja muito trabalhoso, isto poupa trabalho posterior na identificao do que
havia sido escrito.
Uma dica para quem no gosta de comentar seu cdigo usar a seguinte tcnica:
primeiro, escreva todo o cdigo; depois, comente todas as linhas. Isto muito til
para revisar o cdigo e encontrar erros sintticos ou semnticos. Alm disso,
algumas vezes pode ser til incluir no incio do cdigo um pequeno pseudocdigo
descrevendo o algoritmo.
Para cada procedimento, deve-se incluir as seguintes informaes antes da sua
definio:
proposta (o que o procedimento faz, no como);
suposies (que outras partes do programa afetam tal procedimento);
efeitos (que outras partes do programa tal procedimento afeta);
parmetros (a explicao da finalidade de cada parmetro).
Formatao e identao do cdigo
Utilize identaes (ou seja, tabulaes e alinhamentos) para indicar a hierarquia dos
blocos de cdigo. No caso de construes com um incio e um final bem definidos
(os laos, por exemplo), use um recuo no seu contedo, uma vez para cada nvel de
aninhamento.
Alm disso, os comentrios iniciais dos procedimentos devem ser identados em um
espao. interessante tambm deixar uma linha em branco entre a definio e o
corpo do procedimento e as partes diversas do corpo (declaraes, inicializaes,
processos etc.).
E3 - Scripts - Manual de Referncia
44 Introduo ao VBScript
2.9. Mtodos do VB8cripts utilizados no E3
Nesta seo, ser mostrada uma breve descrio dos mtodos do VBScript mais
utilizados no E3. Para maiores informaes sobre os mtodos do VBScript, consulte
a documentao disponvel no grupo de programas do E3, no item Documentos.
Abs(number)
Retorna o valor absoluto de um nmero. O parmetro number pode ser qualquer
expresso numrica vlida. O valor absoluto de um nmero o seu valor sem o
sinal. Ex: Abs(-1) e Abs(1) retornam 1.
Array(arglist)
Retorna uma varivel do tipo Variant que contm um array. O parmetro arglist
contm uma lista de valores que ser atribuda aos elementos do array. Os valores
devero ser separados por vrgula. Se este parmetro no for especificado, um array
de tamanho 0 (zero) ser criado.
Exemplo:
Sub CommandButton1_Click()
Dim A
A = Array(10,20,30)
B = A(2)
MsgBox "o valor "& b
End Sub
LoadPicture(picturename)
Retorna a figura do objeto. O parmetro picturename indica o nome do arquivo da
figura a ser lido. Os formatos de figuras aceitos neste mtodo so: bitmap (bmp),
cones (.ico), run-length (.rle) files, metafile (.wmf), enhanced metafiles (.emf), GIF
(.gif), e JPEG (.jpg).
Exemplos: Ver as propriedades MouseIcon e Picture.
MsgBox(prompt [, buttons] [, title][, helpfile, context])
Mostra uma mensagem em uma caixa de dilogo, para que o usurio clique em um
boto e retorne um valor que indica qual o boto que o usurio clicou. Os
parmetros deste mtodo so os seguintes:
E3 - Scripts - Manual de Referncia
Introduo ao VBScript 45
Parmetros do mtodo MsgBox
NOME DESCRIO
Prompt Texto a ser mostrado como uma mensagem na caixa de dilogo.
Se o texto tiver mais de uma linha, pode-se separ-las usando o
caractere CR (Chr(13)).
Buttons Expresso numrica que a soma dos valores que especificam o
nmero e o tipo dos botes a serem mostrados. Se for omitido, o
valor padro 0 (zero). Ver tabela abaixo.
Title Texto do ttulo da janela de dilogo. Se for omitido, o ttulo
VBScript ser usado.
HelpFile Texto que especifica o nome do arquivo de ajuda para a caixa de
dilogo. Se este parmetro for especificado, Context dever ser
especificado.
Context Expresso numrica que especifica o nmero de contexto da
ajuda atribudo pelo autor da ajuda ao tpico apropriado. Se este
parmetro for especificado, HelpFile dever ser especificado.

Os argumentos de configurao do parmetro buttons so os seguintes:
E3 - Scripts - Manual de Referncia
46 Introduo ao VBScript
Opes disponveis para o parmetro buttons
NOME VALOR DESCRIO
vbOKonly 0 Mostra somente o boto OK.
vbOKCancel 1 Mostra os botes OK e Cancel (caso o
Windows seja ingls) ou OK e Cancelar
(caso o Windows seja portugus).
vbOKAbortRetry!gnore 2 Mostra os botes Abort, Retry e Ignore
(caso o Windows seja ingls) ou Abortar,
Repetir e Ignorar (caso o Windows seja
portugus).
vbYesNoCancel 3 Mostra os botes Yes, No e Cancel (caso o
Windows seja ingls) ou Sim, No e
Cancelar (caso o Windows seja
portugus).
vbYesNo 4 Mostra os botes Yes e No (caso o
Windows seja ingls) ou Sim e No (caso
o Windows seja portugus).
vbRetryCancel 5 Mostra os botes Retry e Cancel (caso o
Windows seja ingls) ou (caso o
Windows seja portugus).
vbCritical 16
Mostra um cone , que indica uma
mensagem crtica.
vbQuestion 32
Mostra um cone , que indica uma
pergunta.
vbExclamation 48
Mostra um cone , que indica uma
mensagem importante.
vb!nformation 64
Mostra um cone , que indica uma
informao.
vbDefaultButton1 0 O primeiro boto o padro.
vbDefaultButton2 256 O segundo boto o padro.
vbDefaultButton3 512 O terceiro boto o padro.
vbDefaultButton+ 0768 O quarto boto o padro.
vbApplicationNodal 0 Aplicaes modais; O usurio deve
responder mensagem da caixa de dilogo,
antes de continuar a trabalhar na aplicao
corrente.
vbSystemNodal 4096 Aplicaes do sistema; Todas as aplicaes
so suspensas at que o usurio responda a
mensagem da caixa de dilogo.

O primeiro grupo de valores (0 - 5) descrevem o nmero e o tipos de botes
mostrados na caixa de dilogo; o segundo grupo (16, 32, 48, 64) descrevem o estilo
do cone; o terceiro grupo (0, 256, 512, 768) determinam qual o boto padro; e o
quarto grupo (0, 4096) determina a modalidade da caixa de mensagem
E3 - Scripts - Manual de Referncia
Introduo ao VBScript 47
(MessageBox). Quando for adicionar nmeros para criar o valor final para o
parmetro buttons, use somente nmeros de cada grupo .
O mtodo MsgBox retorna os seguintes valores:
Opes disponveis para o mtodo MessageBox
NOME VALOR BOTO
vbOk 1 OK
vbCancel 2 Cancel (caso o Windows seja ingls) ou
Cancelar (caso o Windows seja portugus).
vbAbort 3 Abort (caso o Windows seja ingls) ou Abortar
(caso o Windows seja portugus).
vbRetry 4 Retry (caso o Windows seja ingls) ou Repetir
(caso o Windows seja portugus).
vb!gnore 5 Ignore (caso o Windows seja ingls) ou Ignorar
(caso o Windows seja portugus).
vbYes 6 Yes (caso o Windows seja ingls) ou Sim (caso
o Windows seja portugus).
vbNo 7 No (caso o Windows seja ingls) ou No (caso o
Windows seja portugus).

Exemplo:
Sub CommandButton1_Click()
Dim MinhaVariavel
MinhaVariavel = MsgBox ("Ol!", 65, "Exemplo de Msgbox")
' MinhaVariavel poder conter 1 ou 2, dependendo de qual boto
'foi clicado.
End Sub
Now
Retorna a data e a hora atual de acordo com o relgio do sistema.
RGB(red, green, blue)
Retorna um nmero inteiro que representa um valor de cor RGB. Este mtodo
possui os seguinte parmetros: red: nmero que representa o componente vermelho
da cor; green: nmero que representa o componente verde da cor e blue, que o
nmero que representa o componente azul da cor.
Exemplo:
Sub Linha1_Click()
Effect3DColorBase= RGB (0,150,200)
End Sub

Programando no E3 49

Apesar de a maioria dos aspectos do VBScript se aplicarem programao de
scripts no E3, algumas particularidades devem ser destacadas no que diz respeito s
implementaes do conceito de orientao a objetos no sistema.
3.1. Obtendo Referncias aos Ob]etos
Uma das caractersticas mais importantes ao se trabalhar com scripts dentro do E3
considerar a separao existente entre os processos que so executados no servidor e
aqueles executados na interface do cliente (E3 Viewer). Para ser trabalhar com
scripts, pode-se manipular:
Objetos do servidor atravs do servidor
Objetos do servidor atravs do(s) E3 Viewer(s)
Objetos do E3 Viewer atravs do mesmo E3 Viewer
No entanto, no se pode manipular diretamente:
Objetos do E3 Viewer atravs do servidor (s possvel atravs da criao
de eventos no E3 Viewer, ligados a variveis que esto no servidor)
Objetos de um E3 Viewer a partir de outro E3 Viewer (s possvel atravs
da criao de eventos ligados a variveis que esto no servidor).
Tais limitaes so decorrentes do fato de que, por definio, existe uma
independncia entre o que cada uma das estaes E3 Viewer est fazendo ou
visualizando e servidor e vice-versa. Por isso, todas as atividades, tanto do servidor
como do E3 Viewer, necessitam ser coordenadas de forma assncrona ou atravs de
eventos para operarem de forma harmoniosa.
Logo, devido a esta independncia, ao se criar um script, primeiro deve-se obter uma
referncia correta dos objetos que se deseja manipular, ou seja, necessrio que o
objeto seja primeiramente encontrado nos vrios mdulos do E3.
Vale repetir que, ao se editar um script, o usurio poder utilizar o AppBrowser,
que permite copiar para o script o caminho de um mtodo ou propriedade de forma
completa, auxiliando-o na criao de scripts.
Portanto, para acessar os objetos externos que esto sendo manipulados em um
script, so utilizadas algumas diretivas bsicas. Por exemplo, para se manipular o
valor de um Tag de Comunicao, o caminho : Servidor - Driver - Pasta (se
Capitulo
3
3. Programando no E3
E3 - Scripts - Manual de Referncia
50 Programando no E3
houver) - Tag. J se o objetivo manipular um boto na Tela, o caminho : Viewer -
Quadro (se houver) - Tela - Boto.
Existem basicamente trs localizaes de origem de scripts, do ponto de vista da
metodologia para acesso dos objetos:
Servidor (E3 Server)
Telas e Quadros (E3 Viewer)
ElipseX (bibliotecas): podem ser XObjects (rodam no servidor) e
XControls (rodam no E3 Viewer).
3.1.1. Acessando propriedades do servidor
Para se acessar um objeto que est sendo executado no servidor a partir de um
Objeto de Tela ou um ElipseX, deve-se usar a diretiva Application.GetObject.
A palavra Application representa a aplicao como um todo, e o mtodo GetObject()
procura no servidor por um objeto dentro de Application com o nome fornecido.
Exemplo:
Sub Button1_Click()
Application.GetObject("Driver1")._
Item("tag001").AllowRead = False
End Sub
ou ainda
Sub Button1_Click()
Application.GetObject("Driver1.tag001").AllowRead = False
End Sub
O mtodo Item() foi utilizado para, a partir da referncia de Driver1, localizar o
tag001, pois o Driver uma coleo de Tags. Depois de localizado o objeto, suas
propriedades e funes podem ser acessadas livremente.
Caso alguma outra operao tivesse que ser realizada com o Driver1 ou tag001,
outra alternativa para o script acima seria:
Sub Retangulo1_Click()
Set obj = Application.GetObject("Driver1")
obj.Item("tag001").AllowRead = False
obj.Item("tag002").AllowRead = False
End Sub
Neste caso, a varivel obj est apontando para o objeto Driver1 e na prxima
vez que se quiser acessar algum objeto que descende de Driver1 dentro do script,
pode-se utilizar a varivel obj diretamente. Isso traz um ganho de performance, j
que cada chamada do mtodo GetObject() faz um acesso ao servidor. Atravs dessa
tcnica, chamadas desnecessrias ao servidor so evitadas. Este exemplo usa o
E3 - Scripts - Manual de Referncia
Programando no E3 51
comando Set, que ser explicado mais adiante. Note que a utilizao de variveis
tambm torna o cdigo mais claro e de modificao mais fcil. Caso seja necessrio
alterar o objeto no qual queremos executar comandos, basta mudar a linha de
atribuio dessa varivel.
A palavra Application nos scripts pode indicar tanto funes que so executadas no
E3 Viewer quanto no servidor. No caso, o objeto Application sabe de antemo
quais funes devem ser executadas tanto para um quanto para outro caso. No
possvel, entretanto, executar funes de E3 Viewer dentro do servidor, assim como
tambm no possvel executar funes de servidor dentro do E3 Viewer.
3.1.2. Acessando propriedades do servidor de dentro do
servidor
Caso seja necessrio acessar as propriedades de um Tag a partir de outro, origem e
destino esto no servidor ligados via um mdulo-pai que Driver1.
Nesta situao, deve ser usada a declarao Parent. Isto faz com que seja acessado
primeiro o objeto-pai onde est o script, para depois descer-se na hierarquia em
busca de outro elemento.

Figura 12: Driver1 o objeto-pai de Tag1 e de Tag2
Exemplo:
Sub Tag1_OnRead()
Parent.Item("Tag2").AllowRead = False
End Sub
Estando-se dentro de um grupo, e desejando-se acessar o mesmo Tag2, pode-se
aninhar vrios comandos Parent.
E3 - Scripts - Manual de Referncia
52 Programando no E3

Figura 13: Pasta1 o objeto-pai de Tag1
Exemplo:
Sub Tag1_OnRead()
Parent.Parent.Item("Tag2").AllowRead = False
End Sub
3.1.3. Acessando ob]etos de uma Tela a partir de um script
na Tela
Deve-se usar somente o mtodo Item(), j que os objetos so filhos da Tela.
Exemplo:
Sub Tela1_OnPreShow(vArg)
Item("Retangulo1").Enabled = True
End Sub

Figura 14: Retangulo1 um item da TelaInicial
E3 - Scripts - Manual de Referncia
Programando no E3 53
3.1.4. Acessando ob]etos de uma Tela a partir de um script
em outro ob]eto na Tela
Deve-se usar o mtodo Parent().

Figura 15: TelaInicial o objeto-pai de Retangulo1 e Retangulo2
Exemplo:
Sub Retangulo1_Click()
Parent.Item("Retangulo2").Enabled = True
End Sub
3.1.5. Modificando a Tela ou ob]etos de Tela a partir do
servidor
A modificao de um comportamento qualquer em uma Tela s pode ser feita a
partir de associaes (o servidor reporta automaticamente para os Viewers todas as
mudanas das variveis escolhidas), ou via busca explcita do Viewer por
informaes no servidor. Toda a operao de associao da interface grfica feita
do cliente para o servidor e no do servidor para o cliente. Assim, no possvel
modificar Tela ou objetos a partir do servidor via scripts, pois cada cliente de dados
uma cpia diferente das Telas.
Um exemplo prtico mudar a cor de um texto na Tela para verde quando um tag
for ligado (valor 1) e para vermelho quando for desligado (valor 0). Neste caso,
deve-se simplesmente criar uma associao digital entre a propriedade TextColor do
Texto1 com o Tag1. Associaes so preferveis devido rapidez de execuo e
simplicidade de manuteno e construo da aplicao.
E3 - Scripts - Manual de Referncia
54 Programando no E3

Figura 16: Associando a cor do texto ao valor de Tag1.
Uma outra forma de executar o procedimento anterior criar um script no Viewer
que fique verificando constantemente se o Tag1 mudou ou no de valor, para
ento mudar a cor do texto. Este tipo de script possvel de ser realizado, mas
degrada muito a performance da aplicao. Por isto, esta prtica no aconselhvel.
3.1.6. Acessando ob]etos de um ElipseX a partir do prprio
ElipseX
Na criao de um ElipseX, pode-se declarar propriedades (XProperties) e inserir
objetos, que podem ser objetos de Tela (XControl) ou objetos do servidor (XObject).
Para se acessar as XProperties atravs de scripts, basta acessar o nome da
propriedade diretamente.

Figura 17: Acessando objetos de um ElipseX a partir do prprio ElipseX
E3 - Scripts - Manual de Referncia
Programando no E3 55
Por exemplo, na figura acima temos o XControl1 com a propriedade Propriedade1,
e os objetos Texto1 e Retangulo1.
A propriedade Propriedade1, do tipo Booleano, pode ser acessada com a linha
abaixo:
Sub XControl1_OnStartRunning()
XControl1.Propriedade1 = True
End Sub
ou ainda:
Sub XControl1_OnStartRunning()
Propriedade1 = True
End Sub
Se o ElipseX possui objetos internos, ento possvel utilizar o mtodo Item() para
obter uma referncia destes objetos. Por exemplo:
Sub XControl1_OnStartRunning()
Item("Texto1").Value = "motor"
Item("Retangulo1").BackgroundColor = RGB (212,208,20)
End Sub
3.1.7. Acessando ob]etos de um ElipseX externamente
O acesso externo a um objeto ElipseX s pode ser feito atravs de suas propriedades,
utilizando suas instncias criadas. No possvel acessar objetos internos
diretamente.
Se o ElipseX em questo for um XControl, ele se comporta como um objeto de Tela.
Por exemplo, na seguinte aplicao:

Figura 18: XControl (exemplo)
E3 - Scripts - Manual de Referncia
56 Programando no E3
Para alterar a propriedade Propriedade1 do XControl pode-se fazer o seguinte script
no boto:
Sub CommandButton1_Click()
Screen.Item("XControl11").Propriedade1 = True
End Sub
Ou ainda
Sub CommandButton1_Click()
Parent.Item("XControl11").Propriedade1 = True
End Sub
No caso de um XObject, deve-se inseri-lo em um Servidor de Dados:


Figura 19: XObject (exemplo)
Um script para alterar a propriedade Valor do XObject seria:
Sub CommandButton1_Click()
Application.GetObject("Dados.XObject11").Valor=123
End Sub
Ou ainda:
Sub CommandButton1_Click()
Application.GetObject("Dados").Item("XObject11").Valor=123
End Sub
Pode-se ainda ter um XControl acessando um XObject, atravs de uma XProperty.
Por exemplo, a figura mostra um XControl chamado XControl1 que possui uma
propriedade XValor do tipo XObject1, que o nome do XObject criado.

E3 - Scripts - Manual de Referncia
Programando no E3 57

Figura 20: XControl acessando um XObject (exemplo)
Fazemos, por exemplo, uma associao do valor do objeto Texto1 com a
propriedade Valor do XObjet1. Isso feito atravs da propriedade XValor, criada
no XControl1. Assim, o valor da propriedade Valor do XObject1 ser mostrada
no objeto Texto1 do XControl1.

Figura 21: Propriedade Valor
No projeto, o vnculo da instncia XObject11 instncia XControl11 pode ser
feito atravs de uma associao na propriedade XValor.
E3 - Scripts - Manual de Referncia
58 Programando no E3


Figura 22: XValor (associao)
Exemplo de criao de um ElipseX
Suponha que determinada aplicao necessite supervisionar e comandar 10 motores.
Cada motor precisa ser representado por um desenho na Tela, que exibe a cor verde
quando estiver operando, e vermelho, quando estiver desligado. Tambm deve ser
permitido o comando do motor na Tela, enviando instrues para ligar e desligar.
Sua velocidade tambm deve ser exibida.
Uma possibilidade a criao de um XControl chamado MotorA, com as
propriedades Estado = Boolean e Velocidade = Double, conforme a figura abaixo:

Figura 23: Definio do XControl
E3 - Scripts - Manual de Referncia
Programando no E3 59
Para a indicao da cor, a propriedade OverrideFillColor do motor deve
estar associada propriedade Estado do XControl, atravs de uma
associao digital. Configure a propriedade OverrideFillMode para 2-
SolidFill.
Para exibir a velocidade, a propriedade Value do Display deve ser
associada propriedade Velocidade do XControl.
O Boto Liga-Desliga troca o valor da propriedade Estado atravs de uma
associao simples.

Note que:
As associaes dentro da biblioteca so internas, e seu formato :
Nome_do_Controle.Nome_da_Propriedade.
O objeto, depois de inserido na Tela, dever ter essas propriedades associadas
aos tags verdadeiros, para cada um dos motores.
Uma associao de um tag para a propriedade Estado ter que ser feita para cada
MotorA.

Figura 24: Viewer
Outra possibilidade, mais abrangente, utiliza um XObject para o motor. Desta forma,
todas as informaes relativas aos motores residem em objetos que ficam no
servidor. Assim, podemos construir vrios tipos de interface para o motor
(XControls) que trazem do servidor, atravs do XObject, somente as informaes
necessrias.
E3 - Scripts - Manual de Referncia
60 Programando no E3
Desta maneira, o objeto MotorA teria que ser modificado para apontar para um
XObject, ao invs de declarar em si mesmo todas as propriedades.
Crie um XObject chamado MotorADados, e declare nele as propriedades
Estado e Velocidade.
Crie um XControl MotorA que possua apenas uma propriedade, chamada
MeusDados, do tipo MotorADados.
MotorADados dever ser inserido numa pasta de dados no servidor, e
corresponder a cada um dos motores. MotorA por sua vez ir apontar
para o MotorADados desejado, no sendo necessria a criao de novos
tags.

Figura 25: Configurao na view do XObject
A propriedade Estado, associada propriedade OverrideFillColor do
motor, fica MotorA.MeusDados.Estado.
A propriedade Velocidade, associada ao Display, fica
MotorA.MeusDados.Velocidade.
E3 - Scripts - Manual de Referncia
Programando no E3 61
3.2. Acessando Ob]etos
Seguindo o conceito de encapsulamento de programao orientada a objetos, os
mtodos e propriedades ficam associados a seus objetos de origem. Isto significa que
sempre se deve indicar o objeto do qual se est acessando o mtodo ou propriedade.
Propriedades
Para referenciar as propriedades de um objeto, deve-se usar o mtodo GetObject()
do E3. A sintaxe a seguinte:
Application.GetObject("<objeto>").<propriedade>
onde <objeto> o nome do objeto e <propriedade>, a propriedade desejada.
Exemplo:
Application.GetObject("Dados.TempTanque2").Type
Para facilitar a digitao, aconselhvel sempre utilizar o AppBrowser, que j traz
a sintaxe correta.
Propriedade Value
No E3, muitos objetos possuem uma propriedade em comum chamada Value. Neste
caso especfico, pode-se acessar esta propriedade utilizando-se o prprio nome do
objeto:
Button1 = False
que equivalente a:
Button1.Value = False
Mtodos
A sintaxe abaixo exemplifica a chamada de um mtodo que no precisa de
parmetros:
Application.GetObject("<objeto>").<metodo>
onde <objeto> o objeto em questo e <metodo>, o mtodo desejado.
Se o mtodo aceita parmetros, use a sintaxe abaixo:
Application.GetObject("<objeto>").<metodo>(<parametro>)
onde <parametro> o parmetro a ser passado para o mtodo. Quando houver
mais de um parmetro, utilize vrgulas para separ-los.
Se o mtodo retorna um resultado, e for desejvel guard-lo, ento os parmetros
devem ser colocados obrigatoriamente entre parnteses:
<V> =Application.GetObject("<objeto>").<metodo>(<parametro>)
onde <V> a varivel que ir receber o resultado do mtodo.
E3 - Scripts - Manual de Referncia
62 Programando no E3
3.3. Trabalhando com Colees
Uma coleo (ou collection) um objeto que gerencia um conjunto de objetos
similares. Os objetos contidos em uma coleo so referenciados por ndices,
semelhante referncia de arrays.
Pode-se adicionar ou remover objetos individuais de uma coleo, conforme o
exemplo abaixo:
'Adiciona uma pena num objeto E3Chart
E3Chart.Pens.Add "Pena"
'Remove a segunda pena
E3Chart.Pens.Remove 2
(Observao: o primeiro objeto em uma coleo possui o ndice 1.)
Todas as colees possuem uma propriedade em comum chamada Count, que o
nmero de objetos (ou filhos) existentes. Exemplo:
'Mostra uma caixa de dilogo com o numero de penas
MsgBox E3Chart.Pens.Count
Acessando objetos com o mtodo Item
Toda coleo possui um mtodo Item(), que pode ser usado para acessar qualquer
objeto dentro da coleo. O mtodo Item() aceita um parmetro Item, que pode ser
um nmero (inteiro positivo) ou o nome do objeto dentro da coleo que se deseja
acessar.
Os exemplos abaixo so de ajustes da cor da segunda pena do objeto E3Chart:
E3Chart.Pens.Item(2).Color = RGB (212,208,20)
E3Chart.Pens.Item("Pena2").Color = RGB (212,208,20)
Os comandos acima so equivalentes, o primeiro indicando o ndice da pena na
coleo, e o segundo indicando o nome.
3.4. Comando 8et
O VBScript implementa o conceito de Polimorfismo das linguagens orientadas a
objeto, permitindo que uma varivel do tipo Variant assuma a forma de um objeto
qualquer, atravs do comando Set. Deste modo, a varivel funciona como um
ponteiro do objeto desejado, permitindo acessar seus mtodos e propriedades.
Exemplo:
Set E3Chart = Screen.Item("E3Chart1")
E3Chart.Pens.Item(2).Color = RGB (212,208,20)
No exemplo acima foi feita a mesma tarefa que no exemplo anterior, porm a parte
referente a como chegar at o objeto especfico havia sido omitida. Sem o comando
Set, a mesma chamada teria que ser:
E3 - Scripts - Manual de Referncia
Programando no E3 63
Screen.Item("E3Chart1").Pens.Item(2).Color = RGB(212,208,20)
Aparentemente, no existe vantagem neste caso, pois se pode fazer tudo em uma
nica linha de cdigo. Porm, se logo abaixo no mesmo script, outras operaes
forem necessrias, o processo se torna mais simples e rpido se a chamada do
mtodo Item() no tiver sido colocada em todas as linhas.
Exemplo ruim:
Screen.Item("E3Chart1").Pens.Item(1).Color = RGB(212,208,20)
Screen.Item("E3Chart1").Pens.Item(2).Color = RGB(200,208,20)
Screen.Item("E3Chart1").Pens.Item(3).Color = RGB(100,208,20)
Exemplo melhor:
Set Penas = Screen.Item("E3Chart1").Pens
Penas.Item(1).Color = RGB(212,208,20)
Penas.Item(2).Color = RGB(200,208,20)
Penas.Item(3).Color = RGB(100,208,20)



Eventos 65

Os Eventos so ocorrncias relacionadas a um objeto, que permitem disparar aes
programadas. Temos basicamente, dois tipos de eventos: fsicos (ou externos) e
internos. Os eventos fsicos so, por exemplo, aes do usurio. No caso do usurio
digitar algo no teclado, a informao relevante pode ser a tecla pressionada, ou se o
usurio apontar e clicar com o mouse, a informao relevante a posio do cursor e
o status dos botes. Os eventos internos so, por exemplo, mudanas de valor de
uma varivel (tag) no sistema. Como o tag pode ser associado a um dispositivo
externo, dizemos que os eventos internos podem ter associaes fsicas, como a
mudana da temperatura de uma cmara por exemplo.
Nesse captulo, temos uma lista dos eventos disponveis no E3 classificados por
objetos, iniciando pelos eventos padro, presentes em todos os objetos. Cada entrada
descreve o nome do evento e sua ocorrncia, e exemplifica a sua utilizao atravs
de scripts, incluindo as variveis de evento.
4.1. Variaveis de Evento
Variveis de Evento so criadas quando o evento iniciado. Para serem utilizadas,
devem ser associadas a parmetros na chamada do script do evento.
O exemplo a seguir a chamada de um procedimento associado ao evento KeyDown
de AlgumObjeto.
Sub AlgumObjeto_KeyDown(KeyCode, Shift)
Note que na chamada temos duas variveis: KeyCode e Shift. O E3 ir atribuir
valores a essas variveis automaticamente no momento da ocorrncia do evento.
Nesse caso, KeyCode ir receber o cdigo da tecla pressionada e Shift ser
verdadeiro ou falso, conforme a tecla [Shift| estiver pressionada ou no.
Capitulo
4
4. Eventos
E3 - Scripts - Manual de Referncia
66 Eventos
4.2. Eventos Padro
OnStartRunning()
Ocorre to logo um objeto seja iniciado.
Exemplo:
' Meses um tag do tipo InternalTag
' Aqui ele utiliza o evento OnStartRunning para
' inicializar o vetor
Sub Meses_OnStartRunning()
Value = Array ("Janeiro", "Fevereiro", "Maro", "Abril",_
"Maio", "Junho", "Julho", "Agosto", "Setembro", "Outubro",_
"Novembro", "Dezembro")
End Sub
NOTA: Para acessar este array, voc necessita copiar a propriedade Value para uma
varivel local.
OnStopRunning()
Ocorre quando termina a execuo de uma instncia deste objeto. Utilize o evento
OnStopRunning para fazer operaes de finalizao para o objeto.
Exemplo:
Sub Tag_OnStopRunning()
' Quando finaliza o objeto tag
' ele atribui False ao tag2
set tag2 = Application.GetObject("DataServer1.tag2")
tag2.Value = False
End Sub
E3 - Scripts - Manual de Referncia
Eventos 67
4.3. Eventos do Driver de Comunicao
AfterStart( )
Ocorre depois que o driver de comunicao iniciou a comunicao. comum fazer
um script para este evento utilizando o mtodo Write() para fazer configuraes em
equipamentos.
Exemplo:
Sub Driver1_AfterStart()
' Aps iniciada a comunicao manda escrever valores
' para o equipamento/dispositivo
Write 0, 2, 55, 2, 33.4
Write 0, 3, 55, 20, "Metal"
End Sub
AfterStop( )
Ocorre depois que o driver finalizou a comunicao. Utilize o evento AfterStop para
fazer alguma ao que seja necessria aps terminada a comunicao do driver.
BeforeStart( )
Ocorre quando o driver est prestes a iniciar a comunicao. Utilize o evento
BeforeStart para fazer alguma ao que seja necessria antes de iniciar a
comunicao, como por exemplo a configurao de parmetros do driver. Exemplo:
Sub Driver1_BeforeStart()
' Faz a inicializao dos parmetros do driver antes
' de iniciar a comunicao
P1 = 0
P2 = 20
P3 = 80
P4 = 0
End Sub
E3 - Scripts - Manual de Referncia
68 Eventos
BeforeStop( )
Ocorre quando o driver est prestes a finalizar a comunicao. Utilize o evento
BeforeStop para fazer alguma ao que seja necessria antes que a comunicao seja
terminada, como por exemplo, escrever ou ler valores do equipamento/dispositivo,
antes que a comunicao no esteja mais disponvel.
OnCommError(EvtType, Size, Element, N1, N2, N3, N4)
Ocorre quando algum erro de escrita ou leitura detectado pelo driver de
comunicao. Utilize o evento OnCommError para saber quando ocorreu uma falha
de escrita e/ou leitura no driver. As variveis de evento recebem informaes sobre
o erro ocorrido. Com estes valores, possvel rastrear quais tags esto apresentando
problemas de comunicao.
Variveis do evento OnCommError
NOME DESCRIO
EvtType Informa qual o tipo de operao que o driver estava efetuando
quando ocorreu o erro, conforme as opes abaixo:
0 = Erro de leitura de um s elemento (Size = 1). Param1 N1,
Param2 N2, Param3 N3 e Param+ N4
1 = Erro de escrita de um s elemento (Size = 1). Param1 N1,
Param2 N2, Param3 N3 e Param+ N4
2 = Erro de leitura de um bloco (bloco de comunicao). Size
determinado pelo nmero de elementos do bloco. Param1 N1,
Param2 N2, Param3 N3 e Param+ N4.
3 = Erro de escrita de um bloco (bloco de comunicao). Size
determinado pelo nmero de elementos do bloco. Param1 N1,
Param2 N2, Param3 N3 e Param+ N4.
Size Quantidade de valores sendo escritos ou lidos.
Element ndice do elemento que estava sendo lido ou escrito, dentro do bloco.
N1 Parmetro 1 da operao de leitura/escrita que gerou o erro
N2 Parmetro 2 da operao de leitura/escrita que gerou o erro
N3 Parmetro 3 da operao de leitura/escrita que gerou o erro
N+ Parmetro 4 da operao de leitura/escrita que gerou o erro

Exemplo:
Sub Driver1_OnCommError(Type,Size,Element,N1,N2,N3,N4)
Application.GetObject("Dados.TagInterno1").Value=_
Application.GetObject("Dados.TagInterno1").Value+1
Application.GetObject("Dados.EvtType").Value=EvtType
Application.GetObject("Dados.Size").Value=Size
Application.GetObject("Dados.Element").Value=Element
Application.GetObject("Dados.N1").Value=N1
Application.GetObject("Dados.N2").Value=N2
E3 - Scripts - Manual de Referncia
Eventos 69
Application.GetObject("Dados.N3").Value=N3
Application.GetObject("Dados.N4").Value=N4
End Sub
OnCommErrorEx(ErrorInfo)
Ocorre logo aps a execuo do mtodo OnCommError().
Informaes do parmetro ErrorInfo
NOME DESCRIO
Error!nfo.EvtType Indica o tipo de operao que causou o erro: 0 = leitura
de tag; 1 = escrita em tag; 2 = leitura de bloco; 3 =
escrita em bloco.
Error!nfo.Size Tamanho do bloco que ocasionou o erro (se for um tag,
o Size 1).
Error!nfo.Element ndice do elemento de bloco que causou o erro.
Error!nfo.Nx Parmetros Nx ou Bx (x = 1, 2, 3, 4) da operao que
causou o erro.
Error!nfo.ParamDevice Parmetro ParamDevice (string) da operao que causou
o erro.
Error!nfo.Param!tem Parmetro ParamItem (string) da operao que causou o
erro.

OnTagRead(Tag)
Ocorre na leitura de um tag, sempre que um novo valor ou um erro for retornado
pelo driver de comunicao. Ou seja, se o valor ou a qualidade do tag no mudarem,
o evento no ser disparado. Para que o evento funcione, a propriedade
EnableDriverEvent deve obrigatoriamente estar habilitada. Alm disso, a
propriedade PercentDeadband tambm pode exercer influncia sobre a ocorrncia
do evento, caso a propriedade EnableDeadband estiver habilitada.
Exemplo:
Sub Tags_OnTagRead(Tag)
Set Obj = Application.GetObject("Dados1.TagName")
Obj.Value = Tag.Name
Set Obj = Application.GetObject("Dados1.TagRead")
Obj.Value = True
Set Obj = Application.GetObject("Dados1.TagType")
Obj.Value = TypeName(Tag)
End Sub
E3 - Scripts - Manual de Referncia
70 Eventos
OnTagWrite(Tag, Succeeded, User)
Ocorre quando uma escrita for disparada em qualquer tag do driver.
Variveis do evento OnTagWrite
NOME DESCRIO
Tag Uma referncia para o objeto do Tag que est sofrendo a escrita. Por
exemplo, pode-se acessar a propriedade do tag com a sintaxe
Tag.DocString.
Succeeded Um valor Booleano que indica o sucesso da escrita (True = sucesso;
False = falha).
User Texto que retorna o usurio que fez a escrita.

4.3.2. Eventos do Tag de Comunicao
OnRead( )
Ocorre quando efetuada uma leitura do tag pelo driver. Utilize o evento OnRead
quando for necessrio efetuar alguma operao logo aps algum dado for
modificado no tag, como por exemplo, as propriedades Value, Quality ou
TimeStamp. Este evento gerado por uma leitura em background.
Exemplo:
Sub CommTag1_OnRead()
'Ao ler o tag, atribui o seu valor ao tag InternalTag1
Set obj=Application.GetObject("DataServer1.InternalTag1")
obj = Value 'Valor de CommTag1
End Sub
E3 - Scripts - Manual de Referncia
Eventos 71
4.3.1. Eventos do Bloco de Comunicao
OnRead( )
Ocorre quando uma leitura do bloco de comunicao efetuada pelo driver. Utilize
o evento OnRead quando for necessrio efetuar alguma operao logo aps algum
dado ter sido modificado no objeto bloco de comunicao, como por exemplo as
propriedades Quality, TimeStamp ou ainda a propriedade Value de algum elemento
do bloco. Exemplo:
Sub IOBloco1_OnRead()
' Ao ler o bloco, atribui ao tag InternalTag1
' o valor do elemento de bloco elm1
Set obj=Application.GetObject("DataServer1.InternalTag1")
Set elm = Application.GetObject("Driver1.IOBloco1.elm1")
obj.Value = elm.Value
End Sub
4.4. Evento do Tag Contador
OnPreset( )
Ocorre toda vez que o valor da propriedade Preset alcanado.
4.5. Evento do Tag Timer
OnPreset( )
Ocorre toda vez que o valor da propriedade NextExecTime alcanado.
4.6. Eventos da Tela
KeyDown(KeyCode, Shift)
Ocorre no momento em que uma tecla pressionada, independentemente do foco na
Tela.
Variveis do evento KeyDown
NOME DESCRIO
KeyCode Nmero inteiro que identifica o caractere ASCII da tecla que foi
pressionada.
E3 - Scripts - Manual de Referncia
72 Eventos
Shift Mostra a tecla pressionada juntamente com o mouse:
4=Tecla [Shift|; 8=Tecla [Ctrl|; 12=Teclas [Ctrl| + [Shift|

Exemplo:
Sub Tela1_KeyDown(KeyCode, Shift)
' Mostra uma caixa de mensagem quando
' o usurio pressiona uma tecla
MsgBox "Cdigo da tecla: " & KeyCode
End Sub
KeyUp(KeyCode, Shift)
Ocorre no momento em que uma tecla solta, independentemente do foco na Tela.
Variveis do evento KeyUp
NOME DESCRIO
KeyCode Nmero inteiro que identifica o caractere ASCII da tecla que foi
pressionada.
Shift Mostra a tecla pressionada juntamente com o mouse:
4=Tecla [Shift|; 8=Tecla [Ctrl|; 12=Teclas [Ctrl| + [Shift|

Exemplo:
Sub Tela1_KeyUp(KeyCode, Shift)
'Mostra uma caixa de mensagem quando o usurio
' soltar uma tecla
MsgBox "Cdigo da tecla: " & KeyCode
End Sub
MouseDown(Button, ShiftState, MouseX, MouseY)
Ocorre quando se pressiona qualquer boto do mouse sobre a Tela. Utilize o evento
MouseDown para determinar aes especficas quando a Tela for clicada pelo
usurio.
Variveis do evento MouseDown
NOME DESCRIO
Button Mostra o boto do mouse pressionado:
1 - O boto do mouse pressionado o esquerdo.
2 - O boto do mouse pressionado o direito.
ShiftState Mostra a tecla pressionada juntamente com o mouse:
4=Tecla [Shift|; 8=Tecla [Ctrl|; 12=Teclas [Ctrl| + [Shift|
NouseX Mostra a posio X onde o mouse foi clicado na Tela.
NouseY Mostra a posio Y onde o mouse foi clicado na Tela.
E3 - Scripts - Manual de Referncia
Eventos 73

Exemplo:
' Encerra a aplicao quando houver um clique de mouse
' no objeto TelaInicial.
Sub TelaInicial_MouseDown(Button, ShiftState, MouseX, MouseY)
Application.Exit()
End Sub
MouseUp(Button, ShiftState, MouseX, MouseY)
Ocorre quando se solta qualquer boto do mouse previamente clicado. Utilize o
evento MouseUp para especificar aes que sero disparadas somente quando o
boto do mouse for solto.
Variveis do evento MouseUp
NOME DESCRIO
Button Mostra o boto do mouse pressionado:
1 - O boto do mouse pressionado o esquerdo.
2 - O boto do mouse pressionado o direito.
ShiftState Mostra a tecla pressionada juntamente com o mouse:
4=Tecla [Shift|; 8=Tecla [Ctrl|; 12=Teclas [Ctrl| + [Shift|
NouseX Mostra a posio X onde o mouse foi clicado na Tela.
NouseY Mostra a posio Y onde o mouse foi clicado na Tela.

Exemplo:
' Encerra a aplicao apenas quando o usurio soltar o boto.
Sub TelaInicial_MouseUp(Button, ShiftState, MouseX, MouseY)
Application.Exit()
End Sub
OnHide( )
Ocorre quando uma Tela est prestes a ser fechada. Utilize o evento OnHide quando
for necessrio efetuar alguma operao antes do objeto Tela ser fechado. Este evento
pode ocorrer de diversas maneiras:
1. Quando a Tela for substituda por outra atravs do mtodo OpenScreen();
2. Quando o usurio fechar a janela onde est a Tela;
3. Quando for chamado o mtodo Close() do objeto Tela;
4. Quando Viewer for fechado/terminado.
Exemplo:
Sub TelaInicial_OnHide()
Application.exit
E3 - Scripts - Manual de Referncia
74 Eventos
End Sub
OnPreShow(Arg)
Ocorre antes da Tela ser mostrada. A varivel de evento Arg recebe o contedo do
parmetro Arg do mtodo OpenScreen(), que gera esse evento. Logo aps, gerado
o evento OnShow.
Exemplo:
Sub Screen1_OnPreShow(Arg)
' O ttulo da Tela Screen1 a ser mostrada
' foi passado como parmetro na chamada do mtodo
' OpenScreen que gerou o evento.
Caption = Arg
End Sub
OnShow( )
Ocorre no momento exato que uma Tela mostrada. Utilize o evento OnPreShow
para efetuar alguma operao antes que esta seja exibida.
Exemplo:
Sub TelaPrincipal_OnShow()
MsgBox "Seja bem-vindo ao sistema!"
End Sub
4.7. Eventos dos Ob]etos de Tela
Click( )
Ocorre quando o boto esquerdo do mouse pressionado sobre o objeto. Este evento
no ocorrer se o objeto no estiver visvel ou sua propriedade Enabled estiver
configurada para False. A visibilidade do objeto depende de trs fatores: propriedade
Visible igual a True; objeto-pai visvel; e propriedade Layer do objeto presente na
camada da Tela.
Exemplo:
Sub Botao_Click()
' Mostra uma caixa de mensagem quando
' o usurio clica no objeto
MsgBox "Voc clicou sobre o objeto."
End Sub
E3 - Scripts - Manual de Referncia
Eventos 75
DbClick( )
Ocorre quando h um duplo-clique, ou seja, o boto esquerdo do mouse
pressionado rapidamente duas vezes sobre o objeto. Este evento no ocorrer se o
objeto no estiver visvel ou sua propriedade Enabled estiver configurada para False.
A visibilidade do objeto depende de trs fatores: propriedade Visible igual a True;
objeto-pai visvel; e propriedade Layer do objeto presente na camada da Tela.
Exemplo:
Sub Botao_DbClick()
'Mostra uma caixa de mensagem quando
'o usurio faz um duplo-clique no objeto
MsgBox "Voc clicou duas vezes o objeto."
End Sub
KeyDown(KeyCode, Shift)
Ocorre no momento em que uma tecla pressionada e o objeto est com o foco do
teclado. Note que este evento no ser gerado se o objeto no estiver habilitado
(propriedade Enabled = False) ou este objeto no possuir o foco do teclado.
Variveis do evento KeyDown
NOME DESCRIO
KeyCode Nmero inteiro que identifica o caractere ASCII da tecla que foi
pressionada.
Shift Mostra a tecla pressionada juntamente com o mouse:
4=Tecla [Shift|; 8=Tecla [Ctrl|; 12=Teclas [Ctrl| + [Shift|

Exemplo:
Sub Botao_KeyDown(KeyCode, Shift)
' Mostra uma caixa de mensagem quando
' o usurio pressiona uma tecla
MsgBox "Cdigo da tecla: " & KeyCode
End Sub
KeyUp(KeyCode, Shift)
Ocorre no momento em que uma tecla solta e o objeto est com o foco do teclado.
Note que este evento no ser gerado se o objeto no estiver habilitado (propriedade
Enabled = False) ou este objeto no possuir o foco do teclado.
Variveis do evento KeyUp
NOME DESCRIO
KeyCode Nmero inteiro que identifica o caractere ASCII da tecla que foi
pressionada.
E3 - Scripts - Manual de Referncia
76 Eventos
Shift Mostra a tecla pressionada juntamente com o mouse:
4=Tecla [Shift|; 8=Tecla [Ctrl|; 12=Teclas [Ctrl| + [Shift|

Exemplo:
Sub Botao_KeyUp(KeyCode, Shift)
'Mostra uma caixa de mensagem quando o usurio
' soltar uma tecla
MsgBox "Cdigo da tecla: " & KeyCode
End Sub
MouseDown(Button, ShiftState, MouseX, MouseY)
Ocorre quando se pressiona qualquer boto do mouse sobre o objeto.
Variveis de evento MouseDown
NOME DESCRIO
Button Mostra o boto do mouse pressionado:
1 - O boto do mouse pressionado o esquerdo.
2 - O boto do mouse pressionado o direito.
ShiftState Mostra a tecla pressionada juntamente com o mouse:
4=Tecla [Shift|; 8=Tecla [Ctrl|; 12=Teclas [Ctrl| + [Shift|
NouseX Mostra a posio X onde o mouse foi clicado na Tela.
NouseY Mostra a posio Y onde o mouse foi clicado na Tela.

Exemplo:
' Encerra a aplicao quando houver um clique de mouse
' no objeto TelaInicial.
Sub TelaInicial_MouseDown(Button, ShiftState, MouseX, MouseY)
Application.Exit()
End Sub
MouseUp(Button, ShiftState, MouseX, MouseY)
Ocorre quando se solta qualquer boto do mouse previamente clicado sobre o objeto.
Utilize o evento MouseUp para especificar aes que sero disparadas somente
quando o boto do mouse for solto.
Variveis do evento MouseUp
NOME DESCRIO
Button Mostra o boto do mouse pressionado:
1 - O boto do mouse pressionado o esquerdo.
2 - O boto do mouse pressionado o direito.
ShiftState Mostra a tecla pressionada juntamente com o mouse:
E3 - Scripts - Manual de Referncia
Eventos 77
4=Tecla [Shift|; 8=Tecla [Ctrl|; 12=Teclas [Ctrl| + [Shift|
NouseX Mostra a posio X onde o mouse foi clicado na Tela.
NouseY Mostra a posio Y onde o mouse foi clicado na Tela.

Exemplo:
' Encerra a aplicao apenas quando o usurio soltar o boto
' depois do clique sobre o objeto Retangulo1.
Sub Retangulo1_MouseUp(Button, ShiftState, MouseX, MouseY)
Application.Exit()
End Sub
4.7.1. Eventos do Texto, Display e 8etPoint
Validate(Cancel, NewValue)
Ocorre aps os testes de limites do SetPoint (ver propriedades Min, Max,
EnableLimits) e antes do valor do SetPoint ser enviado para o tag. A finalidade deste
evento permitir que o usurio cancele o envio do valor do SetPoint para o tag.
O parmetro Cancel booleano e indica se a operao de atribuio do valor do
SetPoint ao tag deve ser cancelada (Cancel = True). O padro False, ou seja, o
valor do SetPoint ser enviado ao tag. Newvalue o valor que est sendo avaliado.
O valor antigo pode ser acessado pela propriedade Value do SetPoint .
Exemplo:
Sub Texto1_Validate(Cancel, NewValue)
' Mostra uma MessageBox que pergunta ao usurio
' se ele deseja usar o novo valor digitado no SetPoint
message = "Valor atual: " & value & vbnewline & _
"Valor novo: " & NewValue & vbnewline & vbnewline &_
"Aceita o novo valor?"
If MsgBox (message , vbQuestion + vbYesNo,_
"Evento Validate") = vbNo Then
Cancel = True
End If
End Sub
E3 - Scripts - Manual de Referncia
78 Eventos
4.8. Eventos dos ActiveX
BeforeDragOver (Index, Cancel, Data, X, Y, DragState, Effect, Shift)
Ocorre quando h uma ao de arrastar-e-soltar (drag-and-drop) sobre o objeto.
Utiliza-se este evento para monitorar se o mouse entrou, deixou ou ficou sobre um
objeto-alvo. O evento disparado quando o usurio move o mouse ou
pressiona/solta algum boto. A posio do ponteiro do mouse vai indicar qual o
objeto que ir gerar o evento. Pode-se determinar o status do ponteiro do mouse
examinando a varivel DragState.
Muitos objetos (objetos) no suportam operaes arrastar-e-soltar enquanto a
varivel Cancel False, que o default. Isso significa que o objeto rejeita qualquer
tentativa de arrastar ou soltar alguma coisa sobre si e conseqentemente, no dispara
o evento BeforeDropOrPaste. A TextBox (caixa de texto) e a ComboBox so
excees; elas aceitam operaes arrastar-e-soltar mesmo quando a Cancel False.
Variveis do evento BeforeDragOver
NOME DESCRIO
!ndex Indica o ndice da pgina, em um objeto multi-pginas, que ser
afetada pela operao que gerou o evento. Para outros objetos
ignorada.
Cancel Status do evento. O default False e indica que ser o objeto-
alvo que tratar o evento, e no a aplicao principal.
Data Dados sendo arrastados para o objeto-alvo, propriamente ditos.
X, Y Posio do mouse dentro do objeto-alvo, em pontos. X medido
a partir do lado esquerdo do objeto; Y medido a partir do topo.
DragState Indica a condio do mouse quando gerado o evento:
0 = fmDragStateEnter: o mouse est dentro do alcance do
objeto;
1 = fmDragStateLeave: o mouse est fora do alcance do objeto;
2 = fmDragStateOver: o mouse est em uma nova posio, mas
ainda est dentro do alcance do objeto
Effect Indica as aes que o objeto-alvo suporta, ou seja, o efeito de
arrastar sobre o objeto em questo:
0 = fmDropEffectNone: objeto-alvo no aceita copiar ou mover
de alguma origem.
1 = fmDropEffectCopy: objeto-alvo permite copiar de alguma
origem para si.
2 = fmDropEffectMove: objeto-alvo permite mover de alguma
origem para si.
3 = fmDropEffectCopyOrMove: objeto-alvo permite copiar ou
mover de alguma origem para si
Shift Inteiro cuja a soma dos fatores indica o status das teclas [Shift],
[Ctrl] e [Alt]: 1 = tecla [Shift] pressionada; 2 = tecla [Ctrl]
pressionada; 4 = tecla [Alt] pressionada. Por exemplo: um valor
igual a 5 indica que as teclas [Shift] e [Alt] estavam pressionadas
E3 - Scripts - Manual de Referncia
Eventos 79
(1 + 4 = 5).

BeforeDropOrPaste(Index, Cancel, Ctrl, Action, Data, X, Y, Effect, Shift)
Disparado no momento imediatamente anterior a uma operao de arrastar-e-soltar.
Normalmente, isto ocorre logo aps a ocorrncia do evento BeforeDragOver.
Variveis do evento BeforeDropOrPaste
NOME DESCRIO
!ndex Indica o ndice da pgina, em um objeto multi-pginas, que ser
afetada pela operao que gerou o evento. Para outros objetos
ignorada.
Cancel Status do evento. O default False e indica que ser o objeto-alvo
que tratar o evento, e no a aplicao principal.
Ctrl Objeto-alvo.
Data Dados sendo arrastados para o objeto-alvo, propriamente ditos.
Action Indica o resultado, baseado nas configuraes do teclado, de
uma operao arrastar-e-soltar pendente:
2 = fmActionPaste: cola o objeto selecionado no objeto-alvo;
3 = fmActionDragDrop: indica que o usurio arrastou o objeto
selecionado de sua origem e largou sobre o objeto-alvo.
X, Y Posio do mouse dentro do objeto-alvo, em pontos. X
medido a partir do lado esquerdo do objeto; Y medido a
partir do topo.
DragState Indica a condio do mouse quando gerado o evento:
0 = fmDragStateEnter: o mouse est dentro do alcance do objeto;
1 = fmDragStateLeave: o mouse est fora do alcance do objeto;
2 = fmDragStateOver: o mouse est em uma nova posio, mas ainda
est dentro do alcance do objeto
Effect Indica as aes que o objeto-alvo suporta, ou seja, o efeito de
arrastar sobre o objeto em questo:
0 = fmDropEffectNone: objeto-alvo no aceita copiar ou mover de
alguma origem.
1 = fmDropEffectCopy: objeto-alvo permite copiar de alguma origem
para si.
2 = fmDropEffectMove: objeto-alvo permite mover de alguma
origem para si.
3 = fmDropEffectCopyOrMove: objeto-alvo permite copiar ou mover
de alguma origem para si
Shift Inteiro cuja a soma dos fatores indica o status das teclas [Shift], [Ctrl]
e [Alt]: 1 = tecla [Shift] pressionada; 2 = tecla [Ctrl] pressionada; 4 =
tecla [Alt] pressionada. Por exemplo: um valor igual a 5 indica que as
teclas [Shift] e [Alt] estavam pressionadas (1 + 4 = 5).
E3 - Scripts - Manual de Referncia
80 Eventos
Change( )
Ocorre quando o valor da propriedade Value do objeto modificada. Aqui esto
alguns exemplos de aes que disparam o evento Change:
Clicar em uma caixa de seleo, em um boto de opes ou boto
incremento-decremento.
Clicar ou selecionar palavras em uma lista de seleo ou editor de texto.
Selecionar diferentes abas em um dilogo.
Mover a barra de rolagem em um objeto barra de rolagem.
Clicar nas setas de um boto incremento-decremento.
Selecionar diferentes pginas em um objeto multi-pginas.
Error(Number, Description, SCode, Source, HelpFile, HelpContext,
CancelDisplay)
Gerado por um erro interno no objeto. Se este evento no for tratado, o E3 ir
mostrar uma mensagem de erro genrica.
Variveis do evento OnError
NOME DESCRIO
Number Nmero inteiro identificador do erro.
Description String com a descrio do erro.
SCode Inteiro com o cdigo de erro do subsistema OLE (no utilizado).
Source String com o objeto que originou o erro.
HelpFile String com o nome e caminho do arquivo de ajuda.
HelpContext Nmero de contexto do tpico de ajuda referente ao erro
(inteiro).
CancelDisplay Booleano; indica se o erro deve ser mostrado em uma
MessageBox.
KeyPress(KeyAscii)
Ocorre quando o objeto tem o foco de teclado e o usurio pressiona uma tecla que
corresponde a um caractere que pode ser mostrado em tela (uma tecla ANSI, de
cdigo indicado na varivel KeyAscii). Ou seja, o evento ocorre quando alguma das
teclas a seguir so pressionadas:
qualquer caractere do teclado que possa ser impresso;
tecla [Ctrl| combinada com qualquer caractere do alfabeto padro;
tecla [Ctrl| combinada com qualquer caractere especial;
[Backspace|;
[Esc|.
E3 - Scripts - Manual de Referncia
Eventos 81
Este evento no ocorre nas seguintes condies:
pressionando [Tab|;
pressionando [Enter|;
pressionando [Delete| (essa tecla no ANSI);
pressionando as setas do teclado
quando uma tecla faz com que o foco v de um objeto a outro.
Enquanto um usurio pressiona uma tecla que produz um cdigo ANSI, o objeto
recebe os eventos KeyDown e KeyPress repetidamente. Quando o usurio libera a
tecla, o evento KeyUp ocorre. Para monitorar o estado fsico do teclado ou
manipular teclas no reconhecidas pelo evento KeyPress (como teclas de funo,
navegao etc.), utiliza-se os eventos KeyDown e KeyUp.
4.8.2. Eventos do Boto de Comando e do Boto Liga-Desliga
MouseMove()
Ocorre quando o ponteiro do mouse movimentado sobre o boto.
4.8.3. Eventos da Lista de 8eleo e Editor de Texto
DropButtonClick()
Ocorre quando a lista de opes aparece ou desaparece ao se clicar no objeto.
4.8.1. Eventos da Barra de Rolagem
Scroll()
Gerado quando o ponteiro da barra de rolagem movido para alguma direo.
4.8.2. Eventos do Boto ncremento-Decremento
SpinUp( )
Ocorre quando o usurio pressiona a seta para cima. Este evento incrementa a
propriedade Value do objeto.
SpinDown( )
Ocorre quando o usurio pressiona a seta para baixo. Este evento decrementa a
propriedade Value do objeto.
E3 - Scripts - Manual de Referncia
82 Eventos
4.9. Eventos do Viewer
OnInactive( )
Este evento ocorre enquanto o Viewer estiver inativo, se a propriedade
EnableInactivity estiver em True. Ele inicia quando constatado que o usurio est
sem utilizar o Viewer por um perodo de tempo igual ou superior ao valor da
propriedade InactivityTime.
Em um script para esse evento, o usurio pode programar o que deseja fazer quando
o Viewer estiver inativo por um determinado tempo. Por exemplo, possvel
determinar que aps 20 minutos sem uso, ser feito logout do Viewer.
Exemplo:
Sub Viewer_OnInactive()
Application.GetObject("Dados.TagDemo1").Enabled = False
MsgBox "Testando a chamada do script OnInactive"
Application.GetObject("Dados.TagInterno1").Value = 334
End Sub
4.9.1. Eventos do Usuario
IMPORTANTE: Os eventos abaixo so acessados atravs do objeto Viewer.
OnLogin( )
Ocorre quando um usurio executa um login de sistema (autenticao de usurio)
com sucesso. O login de sistema pode ser feito atravs da execuo do mtodo
Login() ou quando um objeto que s pode ser acessado por usurios com um
determinado nvel de autorizao exige autenticao.
Exemplo:
Sub Viewer_OnLogin()
MsgBox "Usurio autorizado. Seja bem-vindo ao sistema!"
End Sub
E3 - Scripts - Manual de Referncia
Eventos 83
OnLogout( )
Ocorre quando executado um logout, ou seja, a sada do usurio do sistema. O
logout feito atravs da chamada do mtodo Logout().
Exemplo:
Sub Viewer_OnLogout()
MsgBox "O usurio saiu do sistema."
End Sub
4.10. Eventos da Consulta
OnAsyncQueryFinish(Recordset, Error)
Ocorre quando o mtodo GetAsyncADORecordset() retornado. O parmetro
Recordset o ADO recordset gerado pela consulta, e o parmetro Error um
booleano que, quando verdadeiro, mostra que o objeto no conseguiu ser gerado.
Exemplo:
Sub Consulta1_OnAsyncQueryFinish(Recordset, Error)
MsgBox "Retornou " + CStr(Recordset.RecordCount) +
"registros"
End Sub
4.11. Eventos do E3Browser
OnDrawRow (bSelected, nLine, cTextColor, cBackColor)
Este evento passa 4 parmetros. bSelected indica se a linha est selecionada; nLine
indica o nmero da linha sendo desenhada; cTextColor indica a cor do texto da
linha; e cBackColor indica a cor de fundo do texto. Se a cor for modificada dentro
deste evento, esta modificao ser usada pelo E3Browser no desenho da linha.
Outra modificao importante que se o mtodo GetColumnValue() for chamado de
dentro do evento, os valores retornados sero os da linha sendo desenhada, e no os
da linha selecionada.
E3 - Scripts - Manual de Referncia
84 Eventos
4.12. Eventos do E3Chart
OnCursorChange( )
Ocorre quando o cursor do E3Chart muda de posio. Por exemplo, pode-se criar
um script para este evento quando for necessrio mostrar os valores de posio do
cursor na Tela.
Exemplo:
Sub E3Chart1_OnCursorChange()
Set Chart = Application.GetFrame("").Screen.Item("E3Chart1")
Set Pena = Chart.Pens.Item(0)
' O objeto Text1 deve mostrar a posio atual do cursor
Set Texto = Application.GetFrame("").Screen.Item("Text1")
If Pena.GetCursorPos(aa,bb) Then
Texto.Value= "Posio X=" & aa & "; posio Y=" & bb
End if
End Sub

OnLegendClick(Row, col, RowData)
Ocorre quando o usurio clica em uma linha da legenda. Os parmetros Row e Col
indicam, respectivamente, a linha e a coluna clicadas. O parmetro RowData o
ndice da pena da legenda onde ocorreu o clique.
Exemplo:
Sub E3Chart1_OnLegendClick(Row, col, RowData)
Set texto = Screen.Item("Texto1")
texto.Value = Legend.Item(col).Name & " " &_
Pens.Item(RowData).name
End Sub
OnQueryFinish( )
Ocorre quando uma ou mais consultas so encerradas no objeto.
Quando o evento gerado, a chamada do mtodo FitAll() ou FitPen() pode causar
problemas caso se esteja utilizando a consulta automtica, j que o mtodo ativa
outras consultas at todos os dados serem lidos. Neste caso, recomendado que o
valor passado pelos parmetros destes mtodos seja 1, o que enquadra verticalmente
as penas.
E3 - Scripts - Manual de Referncia
Eventos 85
4.13. Eventos dos XControls e XOb]ects
Constructor( )
Disparado quando o ElipseX iniciado. Pode-se utilizar este evento para rodar um
script que inicie valores internos de um ElipseX, por exemplo.
OnPropertyChanged( )
Ocorre quando uma propriedade de um ElipseX modificada. Pode-se utilizar este
evento para disparar scripts que executem aes de acordo com determinado status
de um ElipseX.
4.14. Eventos dos Relatrios
OnAfterPrint( )
Iniciado aps uma seo ter sido montada no relatrio. Pode-se utilizar este evento
para atualizar qualquer contador cuja a utilizao seja necessria depois do relatrio
ser completado.
OnBeforePrint( )
Iniciado antes da seo ter sido montada no relatrio. Pode-se utilizar este evento
para modificar o valor de um objeto no relatrio antes que este seja impresso.
Recomenda-se que os campos da consulta do relatrio no sejam acessados quando
este evento estiver sendo utilizada.
OnDataInitialize( )
Ocorre antes do evento OnReportStart. Este evento permite acrescentar e configurar
campos coleo Fields de um relatrio, antes de sua gerao.
Exemplo:
Sub OnDataInitialize()
Fields.Add "Nome"
Fields.Add "Setor"
Fields.Add "Cdigo"
End Sub
E3 - Scripts - Manual de Referncia
86 Eventos
OnError(Number, Description, SCode, Source, HelpFile, HelpContext,
CancelDisplay)
Gerado por um erro interno no relatrio. Se este evento no for tratado, o E3 ir
mostrar uma mensagem de erro genrica.
Variveis do evento OnError
NOME DESCRIO
Number Nmero inteiro identificador do erro.
Description String com a descrio do erro.
SCode Inteiro com o cdigo de erro do subsistema OLE (no utilizado).
Source String com o objeto origem do erro.
HelpFile String com o nome e caminho do arquivo de ajuda.
HelpContext Nmero de contexto do tpico de ajuda referente ao erro
(inteiro).
CancelDisplay Booleano; indica se o erro deve ser mostrado em uma
MessageBox.

OnFetchData(eof)
Disparado toda a vez que um novo registro processado. Este evento utilizado
para executar um script que modifica os valores dos campos que foram adicionados
ao relatrio em um script associado ao evento OnDataInitialize. A varivel eof tem
o valor padro True e indica que aps o script, o processamento do registro atual do
relatrio foi encerrado.
OnFormat( )
Iniciado depois que os dados so lidos e carregados no relatrio, mas antes da seo
ser preparada para a impresso. Este evento pode ser utilizado para modificar o
layout da seo do relatrio ou de qualquer outro objeto.
OnHyperlink(Button, Link)
Ocorre quando um link clicado no relatrio. Pode-se utilizar este evento para
executar um script que redirecione um link ou para configurar um link no relatrio.
A varivel Button indica qual o boto foi clicado (normalmente, 1) e a varivel Link
determina qual o endereo que ser seguido.
OnNoData( )
Ocorre quando no h dados a serem impressos no relatrio. Pode-se utilizar este
evento para executar um script que mostre uma mensagem de erro na tela acusando
a falta de dados para imprimir e cancele o relatrio.
E3 - Scripts - Manual de Referncia
Eventos 87
OnPageEnd( )
Ocorre ao final da impresso de cada pgina do relatrio.
OnPageStart( )
Ocorre no incio da impresso de cada pgina do relatrio.
OnPrintProgress(PageNumber)
Ocorre enquanto uma pgina do relatrio est sendo impressa. A varivel
PageNumber indica o nmero da pgina atual.
OnReportEnd( )
Disparado no final da gerao do relatrio, aps finalizar a sua impresso.
OnReportStart( )
Disparado no incio da gerao do relatrio, antes de comear a sua impresso.


Mtodos 89

Os Mtodos so procedimentos que podem ser executados por objetos. Por
exemplo, o objeto Tela tem um mtodo para abri-la e outro para fech-la.
Por estarem encapsulados (isto , guardados dentro dos objetos), a chamada de um
mtodo sempre deve constar a qual objeto est se referindo. Muitos dos mtodos do
E3 esto encapsulados no objeto Application, que representa a aplicao
propriamente dita.
5.1. Chamadas de Mtodos
Muitos mtodos pr-definidos possuem parmetros, que podem (ou devem) ser
passados na chamada do mtodo. Para isso, o VBScript possui uma regra que deve
ser seguida: se o mtodo for utilizado em uma atribuio, seus parmetros devem
estar entre parnteses. Por exemplo, veja esta chamada do mtodo GetObject():
obj = Application.GetObject("dados.tag001")
J se o mtodo for chamado sozinho, deve-se retirar os parnteses. Por exemplo,
veja esta chamada do mtodo SetVariableValue():
Screen.Item("Consulta").SetVariableValue Valor,12
Os parnteses usados nas citaes de mtodos neste manual servem apenas como
indicativo para diferenci-los das propriedades. Nos scripts, deve-se seguir esta
regra.
5.2. Mtodos Padro
Neste captulo, listamos os diversos mtodos pr-definidos no E3, agrupando-os por
tipos de objetos, iniciando pelos mtodos padro dos objetos da aplicao.
Cada entrada mostra o nome do mtodo com seus respectivos parmetros, na sintaxe
correta, e um exemplo de utilizao do mtodo.
Capitulo
5
5. Mtodos
E3 - Scripts - Manual de Referncia
90 Mtodos
Activate()
Ativa um objeto que est inativo no momento.
Exemplo:
Dim obj, novo
Set obj = Application.GetObject("Dados")
' Cria o objeto novo e deixa desativado (False).
Set novo = obj.AddObject("DemoTag", False)
' Inicializa os parmetros do objeto novo.
novo.Name = "tag001"
novo.Type = 3
' Ativa o objeto (coloca em execuo).
novo.Activate()
AddObject(strClassName, bActivate)
O mtodo AddObject() adiciona um novo objeto aplicao. Este mtodo possui o
parmetro strClassName, que indica o tipo de objeto que ser criado.
Por exemplo, para se criar um retngulo na Tela, o parmetro strClassName deve
ser DrawRect. O objeto criado fica contido no objeto que chamou o mtodo
AddObject() e pode ser acessado atravs mtodo Item().
O parmetro bActivate opcional e indica se o objeto ser ativado aps a criao.
Quando o objeto estiver ativado, os links e os scripts ficam habilitados. Se o objeto
for criado com bActivate em False, mais tarde ele pode ser ativado pelo mtodo
Activate().
O objeto s ser criado se ele for de um tipo compatvel com o objeto que o contm.
Para se ter certeza que o objeto foi criado pode-se utilizar o mtodo IsObject().
Exemplo:
Sub CommandButton_Click()
' Acrescenta um XControl (MeuXControl)
' e um retngulo (DrawRect) na Tela Screen.
Set xc = Screen.addObject("MinhaBib.MeuXControl", True)
xc.Visible = True
Set rc = Screen.AddObject("DrawRect", True)
rc.X = 1000
rc.Y = 1000
rc.width = 10000
rc.Height= 10000
rc.Visible = True
End Sub
E3 - Scripts - Manual de Referncia
Mtodos 91
NOTA: Apenas os objetos que possuem a opo Inserir no menu podem acessar
este mtodo.
Deactivate()
Este mtodo desativa um objeto criado ou previamente ativado pelo mtodo
Activate(). Pode-se desativar um objeto quando for preciso fazer uma configurao
prvia (iniciao de propriedades, por exemplo), ou quando se quiser fazer testes nos
quais o objeto no pode estar presente e ativo.
Exemplo:
Sub CommandButton1_Click()
Dim obj, novo
Set obj = Application.GetObject("Dados")
obj.AddObject("DemoTag", True)
' Desativa o objeto.
novo.Deactivate()
End Sub
DeleteObject(strChildName)
Apaga do projeto o objeto especificado. O parmetro strChildName um string
(ignora maisculas e minsculas) que indica o objeto-filho que se deseja apagar. O
mtodo retorna True caso tenha conseguido apagar o objeto, ou False caso o objeto-
filho no existir.
Para se apagar um objeto a partir de uma referncia a um elemento, utiliza-se o
mtodo DeleteObject do objeto-pai.
Exemplo:
Sub CommandButton1_Click()
Dim obj
obj = Application.GetObject ("dados.tag001")
If obj.Parent.DeleteObject(obj.Name) Then
MsgBox("Tag apagado com sucesso!")
Else
MsgBox("Falha em apagar: o tag no existe.")
End if
End Sub
NOTA: Apenas os objetos que possuem a opo Inserir no menu podem acessar
este mtodo.
E3 - Scripts - Manual de Referncia
92 Mtodos
GetObject(Link)
O mtodo GetObject() retorna a referncia do objeto especificado em Link. Isto
permite acessar todas as propriedades e/ou mtodos do objeto. Esta uma prtica
bastante comum na programao de scripts no E3. Ela facilita a manipulao de
objetos e deixa o cdigo mais inteligvel.
Exemplo:
Sub Botao1_Click()
' Atribui o valor 20 propriedade Value do objeto
' InternalTag1 que est em DataServer1.
Set tag = Application.GetObject("DataServer1.InternalTag1")
tag.Value = 20
End Sub
Item(itemid)
Retorna a referncia para o objeto-filho itemid do objeto que chamou o mtodo. O
mtodo Item() pode buscar um objeto tanto pelo nome quanto pelo ndice (inteiro, de
1 at o especificado na propriedade Count). Se o ndice ou o nome especificado for
vlido, o mtodo Item() retorna a referncia do objeto. Caso contrrio, o mtodo
retorna um erro de parmetro invlido.
Exemplo:
Sub Tela1_Click()
' Atribui a obj a referncia para o objeto-filho Botao1
' de Tela1.
Set obj = Item("Botao1")
' Configura a propriedade BackgroundColor de obj, ou seja,
' de Botao1.
obj.BackgroundColor = RGB(255,0,0)
End Sub
Save()
Este mtodo salva o objeto especificado que foi modificado em tempo de execuo
(runtime). Os objetos-filho tambm sero salvos conforme as especificaes do
objeto-pai. Este mtodo no vlido para os objetos Tela e Viewer.
Exemplo:
Sub CommandButton1_Click()
Set area = Application.GetObject("ConfigAlarms")._
AddObject("Area", True)
Application.GetObject("ConfigAlarms").Save()
End Sub
E3 - Scripts - Manual de Referncia
Mtodos 93
5.3. Mtodos do Driver de Comunicao
Write(N1, N2, N3, N4, Value, [eWriteSyncMode])
Faz a escrita sncrona de um dado no equipamento. Este mtodo retorna um
Booleano que indica o sucesso ou no da operao.
Os parmetros N1 a N+ correspondem aos parmetros [N] do driver. O parmetro
value define o valor a ser escrito no driver. O parmetro eWriteSyncNode permite
utilizar o modo de escrita diferente do utilizado no driver. As opes disponveis
para este parmetro so: 0 usa o modo de escrita configurado no driver; 1 faz
uma escrita sncrona; 2 faz uma escrita assncrona (sem confirmao). Se o
parmetro for omitido, ser tambm utilizado o modo de escrita configurado no
driver. Para maiores detalhes sobre estes parmetros, consulte a documentao do
driver.
Exemplo:
Sub Botao1_Click()
Dim val
'Quando clica no botao faz uma escrita no driver
Set driver = Application.GetObject("Driver1")
'Pega driver
driver.Write 4, 5, 1, 0, 55.5
'Faz a escrita do valor 55.5
End Sub
WriteEx(N1, N2, N3, N4, Value, vTimestamp, vQuality,
[vWriteStatus], [eWriteSyncMode])
Faz a escrita de um dado no equipamento. Este mtodo retorna um booleano que
indica o sucesso ou no da operao.
Os parmetros N1 a N+ correspondem aos parmetros [N] do driver. O parmetro
value define o valor a ser escrito no driver. Para maiores detalhes sobre estes
parmetros, consulte a documentao do driver.
Os parmetros vTimestamp, vQuality e vWriteStatus so opcionais. Se omitidos, o
comportamento do mtodo o mesmo do mtodo Write(). vTimestamp especifica a
data/hora a ser escrita no tag (se suportada pelo equipamento). Se omitido,
assumida a data/hora do momento da operao de escrita. vQuality indica a
qualidade (de 0 a 255). Se omitido, assumida a qualidade Boa (192). vWriteStatus
recebe um valor retornado pelo driver, que indica o status da escrita (se suportado
pelo driver, de acordo com sua documentao prpria).
O parmetro eWriteSyncNode permite utilizar o modo de escrita diferente do
utilizado no driver. As opes disponveis para este parmetro so: 0 usa o modo
E3 - Scripts - Manual de Referncia
94 Mtodos
de escrita configurado no driver; 1 faz uma escrita sncrona; 2 faz uma escrita
assncrona (sem confirmao). Se o parmetro for omitido, ser tambm utilizado o
modo de escrita configurado no driver.
Exemplo:
Dim status
If Driver1.WriteEx(0,0,0,0,100,,,status) Then
MsgBox "Escrita feita com sucesso, status = "& status
Else
MsgBox "Escrita falhou, status = "& status
End if
5.3.1. Mtodos do Tag de Comunicao, Bloco de
Comunicao e Elemento de Bloco
Write([eWriteSyncMode])
Faz a escrita do valor corrente do tag de comunicao, bloco de comunicao ou
elemento de bloco em questo no equipamento. Normalmente, este comando de
script s usado quando a propriedade AllowWrite deste objeto for False.
O parmetro eWriteSyncNode permite utilizar o modo de escrita diferente do
utilizado no driver. As opes disponveis para este parmetro so: 0 usa o modo
de escrita configurado no driver; 1 faz uma escrita sncrona; 2 faz uma escrita
assncrona (sem confirmao). Se o parmetro for omitido, ser tambm utilizado o
modo de escrita configurado no driver.
Para maiores detalhes, consulte a documentao do driver. Este mtodo retorna um
booleano que indica o sucesso ou no da operao.
E3 - Scripts - Manual de Referncia
Mtodos 95
WriteEx(vValue, vTimestamp, vQuality, [vWriteStatus],
[eWriteSyncMode])
Faz a escrita de um valor no equipamento. Todos os seus parmetros so opcionais;
se omitidos, o comportamento do mtodo igual ao do mtodo Write(). Este mtodo
retorna um booleano que indica o sucesso ou no da operao.
O parmetro vvalue define o valor a ser escrito no driver. O tipo de dado depende
do driver; se omitido, assumido o valor corrente do tag. vTimestamp especifica a
data/hora a ser escrita no tag (se suportada pelo equipamento). Se omitido,
assumida a data/hora do momento da operao de escrita. vQuality indica a
qualidade (de 0 a 255). Se omitido, assumida a qualidade Boa (192). vWriteStatus
recebe um valor retornado pelo driver, que indica o status da escrita (se suportado
pelo driver, de acordo com sua documentao prpria).
O parmetro eWriteSyncNode permite utilizar o modo de escrita diferente do
utilizado no driver. As opes disponveis para este parmetro so: 0 usa o modo
de escrita configurado no driver; 1 faz uma escrita sncrona; 2 faz uma escrita
assncrona (sem confirmao). Se o parmetro for omitido, ser tambm utilizado o
modo de escrita configurado no driver.
Exemplo:
Sub Tag1_OnRead()
' O mtodo WriteEx pode ser usado para transferir
' valores de variveis de um driver para outro
Application.GetObject("Driver2.Tag")._
WriteEx Value, TimeStamp, Quality
End Sub

E3 - Scripts - Manual de Referncia
96 Mtodos
5.4. Mtodo dos ob]etos do Cliente OPC
Refresh(Source)
Fora o servidor a reenviar os valores de todos os tags do grupo que estejam com a
leitura habilitada, tenham eles mudado de valor ou no.
O parmetro Source determina o argumento da fonte de dados do driver. Se o valor
informado for 1 (RefreshFromCache), os valores enviados so os valores do cache
do servidor; do contrrio, se o valor retornado for 2 (RefreshFromDevice), os
valores enviados so atualizados no cache do servidor antes de serem enviados.
Para que este mtodo funcione, a propriedade Enabled do grupo, bem como a leitura
de pelo menos um tag do grupo, deve estar habilitada. Para maiores informaes
sobre o mecanismo de habilitao de leitura (Advise), veja as propriedades
AllowRead e AdviseType.
Exemplo:
Sub CommandButton1_Click()
Application.GetObject("DriverOPC1.Grupo1").Refresh(2)
End Sub
Write()
Faz a escrita do valor corrente do tag OPC, bloco OPC ou elemento de bloco OPC
em questo no equipamento. Para maiores detalhes, consulte a documentao do
driver. Este mtodo retorna um booleano que indica o sucesso ou no da operao.
WriteEx([vValue], [vSyncWrite])
Faz a escrita de um valor no equipamento. Todos os seus parmetros so opcionais;
se omitidos, o comportamento do mtodo igual ao do mtodo Write(). Este mtodo
retorna um booleano que indica o sucesso ou no da operao.
O parmetro vvalue define o valor a ser escrito no driver. O tipo de dado depende
do driver; se omitido, assumido o valor corrente do tag. vSyncWrite um
booleano que especifica se a operao descrita deve ser sncrona (True) ou
assncrona (False). Se for omitido, ser usado o valor especificado na propriedade
SyncWrite do tag.
NOTA: assim como no mtodo Write(), a escrita feita independentemente de o
valor ser diferente do valor atual do tag, bem como independentemente da
propriedade AllowWrite do tag ser True ou False. Alm disso, se a escrita funciona
mas o tag no est em scan (seja porque a propriedade AllowRead False, ou porque
usa a opo AdviseWhenLinked quando no est sendo associado), o valor escrito
assumido imediatamente com qualidade boa e timestamp do momento da escrita.
E3 - Scripts - Manual de Referncia
Mtodos 97
5.5. Mtodos do 8ervidor
ClearFailure(strName)
Este mtodo deve ser chamado para indicar que uma falha reportada por
ReportFailure() no est mais ativa. O parmetro strName contm o nome da falha
(definido pelo usurio) e deve ser passado para o mtodo ReportFailure(), quando
de sua chamada (ver mtodo ReportFailure()).
ReportFailure(strName, strDescription, nWeight)
Este mtodo permite que o aplicativo reporte falhas para o E3 Server, que podem ser
visualizadas clicando com o boto direito sobre o cone do E3 no rea de
Notificao. Quando o mtodo usado, o cone do E3 no rea de Notificao
comea a piscar em vermelho, indicando a ocorrncia da falha. As falhas reportadas
so normalmente condies que impedem que o aplicativo funcione parcialmente
(problema de comunicao em uma porta serial, link de rede inativo, banco de dados
sem conexo), e que normalmente no podem ser detectadas pelo E3 Server. Este
mtodo serve para duas finalidades:
Avisar o operador do sistema a respeito de problemas em um servidor;
Auxiliar o gerenciador automtico de hot-standby a decidir qual o servidor
que est mais apto para executar o aplicativo.
O mtodo ReportFailure() possui os seguintes parmetros:
Parmetros do mtodo ReportFailure
NOME DESCRIO
strName Contm o nome da falha (definido pelo usurio). Este mesmo
parmetro deve ser passado para o mtodo ClearFailure()
quando o aplicativo detectar que a falha no est mais ativa.
Ex: Falha COM1.
strDescription Descrio textual da falha (definida pelo usurio).
Ex: Falha de comunicao na COM1
nWeight Define a severidade (ou peso) da falha. O valor 0 indica um
aviso (sem gravidade). Valores maiores que zero indicam
falhas: quanto maior o valor, mais grave a falha.

E3 - Scripts - Manual de Referncia
98 Mtodos
Exemplo:
Sub TagEstadoSerial_OnValueChanged()
If Value then
'O valor do tag TRUE, indica que est em falha
Application.ReportFailure "FALHA_COM1", "Falha de "_
& "comunicao na COM1", 100
Else
'O valor do tag FALSE, limpa a falha
'(indica que est OK)
Application.ClearFailure "FALHA_COM1"
End If
End Sub
Trace(MessageText [,LogTimeStamp [,BreakLine]])
Este mtodo permite registrar mensagens em um arquivo texto. As mensagens so
gravadas em um arquivo com o mesmo nome e caminho do arquivo de domnio,
com a extenso .TXT. Por exemplo, se a aplicao de domnio for c:\teste.dom,
as mensagens sero registradas no arquivo c:\teste.txt. Cada nova mensagem
adicionada sempre no final do arquivo. Caso haja falha no registro no arquivo (como
por exemplo, direito de acesso negado, falta de espao em disco etc.), ocorrer um
erro de script.
Este mtodo pode ser usado, por exemplo, para registrar mensagens de depurao de
scripts que no sejam executados no Viewer (haja vista que neste caso no
possvel utilizar o mtodo MsgBox()).
Parmetros do mtodo Trace
NOME DESCRIO
NessageText Mensagem de texto definida pelo usurio.
LogTimeStamp (Opcional) Booleano que indica se cada registro deve ter a
data e a hora (timestamp). Se omitido, assume True.
BreakLine (Opcional) Booleano que indica a presena ou no de uma
quebra-de-linha ao final de cada mensagem. Em False, faz
com que o arquivo tenha todos os registros em uma s
linha. Se omitido, assume True.

E3 - Scripts - Manual de Referncia
Mtodos 99
5.6. Mtodo do Tag Demo
Reset()
Zera a fase (deslocamento em tempo) da forma de onda do tag. A fase da onda
somente ser zerada quando o tag estiver habilitado. Este mtodo, quando o tag
estiver habilitado, no tem efeito nos tags do tipo CurrentTime e Random, que no
so peridicos. Quando o tag estiver desabilitado, seu valor simplesmente zerado,
independentemente do tipo de tag.
5.7. Mtodo do Tag nterno
WriteEx(NewValue, NewTimestamp, NewQuality)
Permite modificar o valor, a data/hora e a qualidade de um Tag Interno em uma
nica operao. Este mtodo retorna um booleano que indica o sucesso ou no da
operao.
O parmetro Newvalue especifica o novo valor do tag; se omitido, o valor do tag
no modificado. O parmetro NewTimestamp especifica a nova data/hora do tag;
se omitido, utiliza-se a data/hora do momento da chamada do mtodo. O parmetro
NewQuality especifica a nova qualidade do tag; se omitida, ser assumida a
qualidade Boa (192). Todos estes parmetros podem ser omitidos.
Exemplo:
Sub CommandButton12_Click()
dim Ret
Ret = Application.GetObject("Dados.TagInterno1")._
WriteEx(123.456,"1/1/2001", 193)
if Ret Then
MsgBox "Funcionou!"
Else
MsgBox "Falhou!"
End if
End Sub
E3 - Scripts - Manual de Referncia
100 Mtodos
5.8. Mtodos da Tela
Close(Code)
Utilize o mtodo Close() para fechar a Tela. Este mtodo gera o evento OnHide
antes de ser efetivamente executado. O parmetro Code ter o valor de retorno para
o mtodo DoModal(), se a Tela em questo tiver sido chamada por este mtodo.
Exemplo:
Sub BotaoFecha_Click()
' Quando BotaoFecha for clicado, fecha a janela
Screen.Close(0)
End Sub
SetFocus()
Utilize o mtodo SetFocus() para mover o foco do mouse ou teclado para um objeto
determinado.
Exemplo:
Sub Screen1_OnShow()
'Ao abrir a Tela, move o foco para o Boto1
Item("Button1").SetFocus()
End Sub
ToPixelX()
Converte a coordenada X da Tela de HIMETRIC para pixels.
ToPixelY()
Converte a coordenada Y da Tela de HIMETRIC para pixels.
5.9. Mtodos do Divisor {Frame}
BringToFront()
Traz para frente um divisor que esteja escondido ou abaixo de outro.
Exemplo:
Sub Botao1_Click()
Application.GetFrame("Teste").BringToFront()
End Sub
E3 - Scripts - Manual de Referncia
Mtodos 101
CaptureScreen(Filename)
Captura o contedo de um divisor, gravando-o no arquivo de nome e caminho
Filename, no formato BMP.
Exemplo:
Sub CommandButton1_Click()
' Quando o boto clicado, copia o contedo
' do divisor para o arquivo FRAME.BMP.
Screen.Frame.CaptureScreen ("c:\temp\frame.bmp")
End Sub
Close(Code)
Utilize o mtodo Close() para fechar a janela do quadro. O parmetro Code ter o
valor de retorno para o mtodo DoModal(), se a janela em questo tiver sido
chamada por este mtodo.
Exemplo:
Sub BotaoFecha_Click()
' Quando BotaoFecha for clicado, fecha a janela
Screen.Close(0)
End Sub
FlashWindow(Number, Time)
Este mtodo faz com que cone do Viewer comece a piscar na barra de tarefas do
Windows . O parmetro Number determina o nmero de vezes que a tarefa deve
piscar e Time, que determina o tempo (em milissegundos) entre uma piscada e
outra.
Exemplo:
Sub Texto1_Click()
set quadro = Application.GetFrame("_top")
quadro.FlashWindow 50, 500
End Sub
MaximizeFrame()
Maximiza um quadro ou Tela modal.
Exemplo:
Sub CommandButton4_Click()
Application.GetFrame("Outro").MaximizeFrame()
End Sub
E3 - Scripts - Manual de Referncia
102 Mtodos
MinimizeFrame()
Minimiza um quadro ou Tela modal.
Exemplo:
Sub CommandButton4_Click()
Application.GetFrame("Outro").MinimizeFrame()
End Sub
MoveFrame([PosX], [PosY], [SizeX], [SizeY])
Move e redimensiona um Divisor (Frame) para uma coordenada e tamanho
especficos. Os parmetros PosX e PosY informam a nova posio, em pixels, com
relao esquerda e ao topo, respectivamente. Os parmetros SizeX e SizeY
informam o novo comprimento e a nova altura, respectivamente, em pixels ou
HIMETRIC. Todos os parmetros so opcionais.
Exemplo:

Sub Tela2_OnPreShow(vArg)
'Quando a Tela2 aberta no frame Teste, altera a posio
'e o tamanho do frame
Application.GetFrame("Teste").MoveFrame 100,100,200,200
End Sub
NOTA: Os valores de tamanho neste mtodo podem ser informados como nmeros
ou strings. No caso de nmeros, so considerados em pixels. No caso de strings, se
vierem acompanhados da unidade hm, sero interpretados como HIMETRIC.
Qualquer outro caso considerado em pixels.
OpenScreen(ScreenName, Arg)
O mtodo OpenScreen() abre uma Tela dentro de um divisor. O parmetro
ScreenName determina o nome da Tela a ser aberta. possvel tambm especificar
o percentual de zoom da Tela e a habilitar a barra de rolagem atravs da chave ?
como o modelo abaixo:
<nome-da-tela>?<zoom>?<habilitar-rolagem>
onde <nome-da-tela> o nome da Tela a ser aberta; <zoom> o percentual de
zoom e <habilitar-rolagem> habilita ou desabilita a rolagem.
O percentual de zoom da Tela pode assumir os seguintes valores: 1= toda a pgina;
2 = a largura da Tela ocupa 100% a largura do divisor, com altura proporcional; 3 =
a altura da Tela ocupa 100% a altura do divisor, com largura proporcional; 4 = a
Tela preenche totalmente o divisor; 5 a 100 = equivale ao percentual de zoom da
Tela propriamente dito.
E3 - Scripts - Manual de Referncia
Mtodos 103
A habilitao de rolagem pode assumir os seguintes valores: 1 = habilita a rolagem;
0 = desabilita a rolagem.
O parmetro Arg permite repassar o valor especificado Tela atravs do evento
OnPreShow.
Exemplo:
Sub Botao1_Click()
'Quando clica no botao abre a Tela2 no frame Teste
'e passa o valor 1 que ser usando no evento PreShow
Application.GetFrame("Teste")._
OpenScreen "Tela2?100?0","Isso um teste."
End Sub

Sub Tela2_OnPreShow(vArg)
'A caixa de mensagem vai mostrar a
'frase "Isso um Teste."
MsgBox vArg
End Sub
Refresh(Force)
O mtodo Refresh() permite forar o redesenho do contedo de uma Tela ou divisor.
Ele deve ser usado em scripts de Viewer com processamento massivo (ex: laos), ou
em chamadas de mtodos que demandem muito tempo e exijam indicaes visuais
ao usurio do progresso do processo.
Devido ao redesenho em geral ser uma operao pesada, a verso padro do mtodo
Refresh() (sem parmetros) otimizada de forma a ignorar pedidos de redesenho
muito prximos, incluindo redesenho do prprio E3. Este comportamento padro
ideal para indicaes de progresso em laos, onde muitos redesenhos so feitos em
seqncia. O parmetro Force desabilita esta otimizao, garantindo que para cada
chamada do mtodo Refresh() seja feito um redesenho. Porm, ao utilizar-se esta
opo, o mtodo Refresh() no pode ser chamado repetidamente, como dentro de um
lao, por exemplo.
Exemplo:
Sub CommandButton1_Click()
' Desenha uma barra de progresso de uma operao
While i < 31
Screen.Item("Retangulo2")
.HorizontalPercentFill = (i/30)*100
Frame.Refresh True
' <-- alguma operao demorada -->
i=i+1
E3 - Scripts - Manual de Referncia
104 Mtodos
Wend
End Sub
RestoreFrame()
Permite restaurar a janela do quadro para o seu tamanho original.
Exemplo:
Sub CommandButton1_Click()
Application.GetFrame("Outro").RestoreFrame()
End Sub
SetForegroundWnd()
O mtodo SetForegroundWnd() ativa e d o foco para a janela do Viewer. Este
mtodo til quando se deseja chamar a ateno do operador para algum evento
ocorrido, quando a janela do Viewer encontra-se escondida ou minimizada.
Exemplo:
Sub CommandButton1_Click()
Application.GetFrame("Outro").SetForegroundWnd()
End Sub
SetFrameOptions(Title, Flags)
Utilizado para configurar o ttulo do frame na janela e o estilo da janela. O
parmetro Title um string que contm o ttulo da janela. Este texto ser mostrado
se a propriedade Caption da Tela estiver vazia.
O parmetro Flags especifica o estilo da janela. Se este parmetro for omitido, o
valor padro ser -1. Este valor usado para manter a configurao anterior da
janela. Quando o valor especificado no for -1, pode-se modificar o estilo da janela
especificando a soma dos valores das seguintes combinaes:
Combinaes possveis para o parmetro lFlags
VALOR DESCRIO
1 Habilita a barra de ttulo na janela
2 Habilita o boto Fechar na janela.
+ Habilita o boto Minimizar na janela.
8 Habilita o boto Maximizar na janela.
16 Habilita a borda na janela.
32 Especifica que a janela pode ser dimensionada. Para isso, necessrio que
a janela em questo tenha borda.
6+ Especifica que a janela pode ser movida.
256 Especifica que a janela ficar no topo da Tela.
512 Especifica que a janela ser configurada no estilo Barra de Ferramentas.
102+ Desabilita os botes de objeto.
E3 - Scripts - Manual de Referncia
Mtodos 105

Exemplo:
Sub Tela_OnPreShow()
Frame.SetFrameOptions("Tela de Alarmes", 114)
End Sub
No exemplo acima, o valor 114 (2 + 16 + 32 + 64) indica que a janela ter o boto
[Fechar| habilitado (2), ter borda (16), poder ser dimensionada (32) e poder ser
movida (64). O ttulo da janela ser Tela de Alarmes.
Nos picks Abrir tela e Abrir tela modal tambm possvel configurar o estilo da
janela durante a edio, atravs da caixa de dilogo Estilo da Janela. Para mais
informaes veja no o tpico Picks.
5.10. Mtodos de Ob]etos de Tela
BringToFront()
Faz com que o objeto se posicione frente de todos os outros objetos da tela.
Exemplo:
Sub Botao1_Click()
' Ao clicar em Botao1, o sistema
' traz o objeto Retangulo1 para frente
Screen.Item("Retangulo1").BringToFront()
End Sub
SendToBack()
Faz com que o objeto se posicione atrs de todos os outros objetos da tela.
Exemplo:
Sub Botao2_Click()
' Ao clicar em Botao2, o sistema
' leva o objeto Retangulo1 para trs
Screen.Item("Retangulo1").SendToBack()
End Sub
E3 - Scripts - Manual de Referncia
106 Mtodos
5.11. Mtodos dos ActiveX
5.11.1. Mtodos Comuns
BringToFront()
Faz com que o objeto se posicione frente de todos os outros objetos da tela.
Exemplo:
Sub Botao1_Click()
' Ao clicar em Botao1, o sistema
' traz o objeto Retangulo1 para frente
Screen.Item("Retangulo1").BringToFront()
End Sub
SendToBack()
Faz com que o objeto se posicione atrs de todos os outros objetos da tela.
Exemplo:
Sub Botao2_Click()
' Ao clicar em Botao2, o sistema
' leva o objeto Retangulo1 para trs
Screen.Item("Retangulo1").SendToBack()
End Sub
SetFocus()
Utilize o mtodo SetFocus() para mover o foco do mouse ou teclado para um objeto
determinado.
Exemplo:
Sub Screen1_OnShow()
'Ao abrir a tela, move o foco para o Boto1
Item("Button1").SetFocus()
End Sub

E3 - Scripts - Manual de Referncia
Mtodos 107
5.11.2. Mtodos da Lista de 8eleo
AddItem([pvargItem], [pvargIndex])
O mtodo AddItem utilizado para se adicionar itens a uma Lista ou a uma Lista de
Seleo. pvarg!tem um string que contm o texto que ser adicionado na lista; se
for omitido, ser acrescentado um string em branco. pvarg!ndex o ndice do texto
na lista; se for omitido, pvarg!tem adicionado como ltimo item da lista.
Exemplo:
Sub CommandButton1_Click()
EntryCount = EntryCount + 1
ComboBox1.AddItem (EntryCount & " - Selection")
End Sub

Clear()
Limpa o texto do objeto.
Exemplo:
Sub ClearTextButton_Click()
ComboBox1.Clear()
End Sub
Copy()
Copia o texto previamente selecionado para a rea de transferncia. Utilize o mtodo
Paste() para colar o texto no local indicado.
Exemplo:
Sub CommandButton1_Click()
Screen.Item("ComboBox1").Copy()
End Sub
Cut()
Recorta o texto previamente selecionado para a rea de transferncia. Utilize o
mtodo Paste() para colar o texto no local indicado.
Exemplo:
Sub CommandButton1_Click()
Screen.Item("ComboBox1").Cut()
End Sub
E3 - Scripts - Manual de Referncia
108 Mtodos
DropDown()
O mtodo DropDown() abre a lista de itens de uma Lista de Seleo. A chamada
deste mtodo o mesmo que clicar, em tempo de execuo, no boto com a seta ao
lado direito do objeto. Exemplo:
Sub CommandButton1_Click()
Dim ComboBox1
ComboBox1.AddItem "Abacaxi"
ComboBox1.AddItem "Morango"
ComboBox1.AddItem "Uva"
ComboBox1.AddItem "Laranja"
ComboBox1.DropDown()
End Sub
Paste()
Insere no objeto o contedo da rea de transferncia. Exemplo:
Sub CommandButton1_Click()
Screen.Item("ComboBox1").Paste()
End Sub
RemoveItem(pvargIndex)
Remove itens de uma Lista ou de uma Lista de Seleo. Este mtodo possui o
parmetro pvarg!ndex, que especifica a linha que ser excluda, iniciando em zero;
ou seja, o primeiro elemento 0, o segundo 1 e assim por diante. Exemplo:
Sub CommandButton2_Click()
ComboBox1.SetFocus
'Verifica se a lista contm dados selecionados
If ComboBox1.ListCount >= 1 Then
'Se nenhuma seleo, escolher o ltimo dado da lista.
If ComboBox1.ListIndex = -1 Then
ComboBox1.ListIndex = ComboBox1.ListCount 1
End If
ComboBox1.RemoveItem (ComboBox1.ListIndex)
End If
End Sub
E3 - Scripts - Manual de Referncia
Mtodos 109
5.11.3. Mtodos da Lista
AddItem([pvargItem], [pvargIndex])
O mtodo AddItem() utilizado para se adicionar itens a uma Lista ou a uma Lista
de Seleo. pvarg!tem um string que contm o texto que ser adicionado lista;
se for omitido, ser acrescentado um string em branco. pvarg!ndex o ndice do
texto na lista; se for omitido, pvarg!tem adicionado como ltimo item da lista.
Exemplo:
Sub CommandButton1_Click()
EntryCount = EntryCount + 1
ListBox1.AddItem (EntryCount & " - Selection")
End Sub
Clear()
Limpa o texto do objeto. Exemplo:
Sub ClearTextButton_Click()
ListBox1.Clear()
End Sub
RemoveItem(pvargIndex)
Remove itens da Lista. Este mtodo possui o parmetro pvarg!ndex, que especifica
a linha que ser excluda, iniciando em zero; ou seja, o primeiro elemento 0, o
segundo 1 e assim por diante. Exemplo:
Sub CommandButton2_Click()
ListBox1.SetFocus
'Verifica se a lista contm dados selecionados
If ListBox1.ListCount >= 1 Then
'Se nenhuma seleo, escolher o ltimo dado da lista.
If ListBox1.ListIndex = -1 Then
ListBox1.ListIndex = ListBox1.ListCount 1
End If
ListBox1.RemoveItem (ListBox1.ListIndex)
End If
End Sub
E3 - Scripts - Manual de Referncia
110 Mtodos
5.11.4. Mtodos do Editor de Texto
Copy()
Copia para a rea de transferncia um texto previamente selecionado. Utilize o
mtodo Paste() para colar o texto em outro local.
Exemplo:
Sub CommandButton1_Click()
Screen.Item("TextBox1").Copy()
End Sub
Cut()
Recorta para a rea de transferncia um texto previamente selecionado. Utilize o
mtodo Paste() para colar o texto em outro local.
Exemplo:
Sub CommandButton1_Click()
Screen.Item("TextBox1").Cut()
End Sub
Paste()
Insere no objeto de texto o contedo da rea de transferncia.
Exemplo:
Sub CommandButton1_Click()
Screen.Item("TextBox1").Paste()
End Sub
E3 - Scripts - Manual de Referncia
Mtodos 111
5.12. Mtodos de Conexes {Links}
Links, Conexes ou Associaes so ligaes feitas entre objetos dos aplicativos e
de seus mdulos. A propriedade Links uma colees de links do objeto. Para
maiores informaes, veja o Manual do Usurio, tpico Associaes.
CreateLink(Property, Source [,Type])
Este mtodo permite criar uma conexo com uma propriedade do objeto. Em caso de
sucesso, o mtodo retorna o objeto criado. Caso contrrio, ocorrer um erro de script
e o mtodo retornar Nothing.
O mtodo possui os seguintes parmetros: Property: especifica o nome da
propriedade para qual ser criada a conexo; Source: especifica o nome do
objeto-origem da conexo; e Type (opcional): especifica o tipo de conexo a ser
criada. Quando este parmetro for omitido, ser criada uma conexo simples.
NOTA: Nem todas as propriedades existentes em um objeto permitem a criao de
conexes. Para verificar quais as propriedades permitem este recurso, acesse a aba
Associaes. Se a propriedade for invlida para a conexo, no existir ou j
possuir uma conexo, ocorrer um erro de script.
Opes disponveis para o parmetro Type
OPO DESCRIO
0- Conexao Simples Na conexo simples, o valor da origem copiado
para a propriedade toda vez que ele for modificado.
1- Conexao Bidirecional Na conexo bidirecional ocorre o mesmo que na
simples; porm, caso haja uma variao na
propriedade, seu valor ser copiado para a origem,
gerando assim uma conexo de duas direes.
2- Conexao Analgica A conexo analgica estabelece uma escala de
converses entre a varivel-origem e a propriedade.
3- Conexao Digital Na conexo digital, so especificados valores fixos ou
alternantes para a propriedade, que so atribudos de
acordo com a fonte ser verdadeira ou falsa.
+- Conexao por Tabela Na conexo por tabela, podemos estabelecer
condies entre a varivel, valores e destino. Na
tabela so especificados os valores mnimo e mximo
e demais configuraes.
5- Conexao Reversa A conexo reversa uma associao unidirecional da
propriedade para a fonte.
E3 - Scripts - Manual de Referncia
112 Mtodos

Exemplo:
Sub CommandButton1_Click()
On Error Resume Next
Dim Bind
Set Bind = Screen.Item("Text1").Links.Item("Value")
If Bind Is Nothing Then
MsgBox "Text1 no est associado a nenhum objeto."
Dim Source
Source = "Dados.TagInterno1.Value"
MsgBox "Criando uma conexo em '" & Source & "'.."
Set Bind = Screen.Item("Text1").Links._
CreateLink("Value", Source, 0)
Bind.BiDirectional = Screen.Item("BiDirectional").Value
Bind.Reverse = Screen.Item("Reverse").Value
MsgBox "Tipo: " & TypeName(Bind)
Else
MsgBox "Text1 j est ligado " & Bind.Source & "."
End if
End Sub
Item(Property, Index)
Este mtodo retorna um objeto Conexo de uma determinada propriedade de um
objeto. Se for um texto, Property especifica o nome da propriedade cuja conexo se
deseja acessar. A conexo tambm pode ser acessada numericamente pelo ndice
!ndex. Este ndice deve ser de 1 a Count(). Caso no exista conexo com a
propriedade, ou o ndice for invlido, ocorrer um erro de script. Como as demais
colees, Links permite o uso do comando For Each do VBScript.
Exemplo:
Sub Texto1_Click()
For Each Link In Links
MsgBox "Origem do link: " " & Link.Source
Next
End Sub
E3 - Scripts - Manual de Referncia
Mtodos 113
RemoveLink(Property)
Este mtodo remove uma conexo com a propriedade especificada por Property,
caso ela exista. Caso no exista conexo com a propriedade especificada, o mtodo
no tem efeito.
Exemplo:
Sub CommandButton2_Click()
On Error Resume Next
Dim Bind
Set Bind = Screen.Item("ScrollBar1").Links.Item("Value")
if Bind Is Nothing Then
'Se a conexo no existe
MsgBox "ScrollBar1 no est conectado."
Else
MsgBox "ScrollBar1 est ligado " & Bind.Source & ""
MsgBox "Removendo o link.."
Screen.Item("ScrollBar1").Links.RemoveLink("Value")
End if
End Sub
E3 - Scripts - Manual de Referncia
114 Mtodos
5.12.1. Mtodos da Conexo por Tabela
InsertRow([Row])
Insere uma nova linha na tabela. O parmetro Row opcional e especifica em que
posio da tabela deve ser inserida a linha. Quando omitido, assume o
comportamento padro de inserir a linha no fim da tabela, o que equivale a usar Row
igual a -1. Quando informado e no for -1, deve ser um valor entre 1 e RowCount, e
a nova linha criada desloca as linhas de ndice maior ou igual para a direo
ascendente dos ndices. Uma linha nova sempre assume os seguintes valores padro
para as propriedades:
Min:0.0 Max:1.0 Blink:False BlinkValue:0.0 Value:0.0
Exemplo:
Sub Retangulo1_Click()
'Cria a associao por tabela na
'propriedade ForegroundColor
Links.CreateLink "ForegroundColor",_
"Dados1.TagDemo3.Value", 4
Dim Bind
Set Bind = Links.Item("ForegroundColor")

Bind.InsertRow(-1)
'Pisca entre Vermelho e Verde
'quando TagDemo3 estiver entre 0 e 49
Bind.Min(1) = 0
Bind.Max(1) = 49
Bind.Value(1) = RGB(255,0,0)
Bind.Blink(1) = true
Bind.BlinkValue(1) = RGB(0,255,0)
End Sub
E3 - Scripts - Manual de Referncia
Mtodos 115
RemoveRow(Row)
Remove a linha no ndice especificado. O parmetro Row determina a linha da
tabela a ser removida (deve ser de 1 a RowCount).
Exemplo:
Sub RemoveRow_Click()
On Error Resume Next
Dim Bind
Set Bind =_
Screen.Item("Retangulo1").Links.Item("ForegroundColor")
If Bind Is Nothing Then
MsgBox "Retangulo1 no tem associao!"
Else
MsgBox "Retangulo1 est ligado '" & Bind.Source & "'"
Dim row
row = Screen.Item("Row").Value
MsgBox "Removendo a linha " & row
Bind.RemoveRow row
End if
End Sub
E3 - Scripts - Manual de Referncia
116 Mtodos
5.13. Mtodos do Viewer
CaptureScreen(Filename)
O mtodo CaptureScreen() captura a Tela atual e a salva em um arquivo. Este
mtodo semelhante ao efeito realizado pela tecla [PrintScreen] no Windows. O
parmetro Filename determina o nome do arquivo no qual a Tela ser salva.
NOTA: O formato final do arquivo bitmap (.BMP), mesmo que no parmetro
Filename seja informada outra extenso (GIF, JPG etc.).
Exemplo:
Sub CommandButton1_Click()
Screen.Frame.CaptureScreen "c:\temp\tela.bmp"
End Sub
ChangePassword()
O mtodo abre uma caixa de dilogo para permitir a troca de senha do usurio atual.
O mtodo retorna True se o usurio atual tiver permisso para trocar a senha. Caso
contrrio, retorna False, indicando que houve falha na operao, ou que no
possvel trocar a senha, porque o usurio no tem autorizao.
Exemplo:
Sub Texto1_Click()
If Application.ChangePassword(True) Then
MsgBox "A senha pode ser trocada."
Else
MsgBox "No foi possvel trocar a senha."
End If
End Sub
E3 - Scripts - Manual de Referncia
Mtodos 117
DoModal(Screen, Title, Left, Top, Width, Height, Arg)
Abre uma Tela modal. Uma Tela modal uma janela que no permite clicar em
outras Telas/janelas enquanto ela no for fechada. O parmetro de ttulo passado
neste mtodo s ser utilizado se a propriedade Caption estiver vazia; do contrrio, o
parmetro deste mtodo ser ignorado.
Este mtodo possui os seguintes parmetros: Screen: determina o nome da Tela;
Title: determina o ttulo da janela modal; Left, Top: posio XY da janela modal em
pixels; Width: largura da janela modal em pixels ou HIMETRIC; Height: altura da
janela modal em pixels ou HIMETRIC; e Arg: determina a varivel a ser usada no
evento OnPreShow da Tela. Exemplo:
Sub Botao1_Click()
'Ao clicar no Boto abre uma outra Tela modal
Application.DoModal "Tela1", "Titulo", 0, 0, 400, 200, 0
End Sub
NOTA: Os valores de tamanho neste mtodo podem ser informados como nmeros
ou strings. No caso de nmeros, so considerados em pixels. No caso de strings, se
vierem acompanhados da unidade hm, sero interpretados como HIMETRIC.
Qualquer outro caso considerado em pixels.
DoModalOP(Screen, Arg, Title, Flags)
Permite abrir e configurar uma janela modal. O parmetro Screen determina o nome
da Tela modal. Atravs do parmetro Title, possvel especificar o ttulo da Tela
modal. O parmetro Arg o parmetro varivel a ser passado no evento
OnPreShow. O parmetro Flags determina a combinao utilizada na janela modal.
Tal combinao feita somando-se os valores da tabela correspondentes as opes
que o usurio deseja. Quando o valor especificado for -1, sero adotadas as
configuraes do Viewer para a janela modal.
Quando este valor for diferente de -1, pode-se fazer as seguintes combinaes:
Combinaes possveis para o parmetro Flags
VALOR DESCRIO
1 Habilita a barra de ttulo na janela
2 Habilita o boto Fechar na janela.
+ Habilita o boto Minimizar na janela.
8 Habilita o boto Maximizar na janela.
16 Habilita a borda na janela.
32 Especifica que a janela pode ser dimensionada.
6+ Especifica que a janela pode ser movida.
256 Especifica que a janela ficar no topo da Tela.
512 Especifica que a janela ser configurada no estilo Barra de Ferramentas.
E3 - Scripts - Manual de Referncia
118 Mtodos
102+ Desabilita os botes de objeto.
20+8 Centraliza a Tela modal no Quadro tanto horizontal quanto verticalmente.

Exemplo:
Sub CommandButton1_Click()
'Parmetro 3 (Habilita barra de ttulo e boto Fechar)
Application.DoModalOP "TelaInicial", 1, "Tela Modal", 3
End Sub
ESign(ObjName, Description, Action, [From], [To], [User],
[Comment])
O mtodo ESign() utilizado para fazer uma validao da alterao de um campo,
atravs de assinatura eletrnica. Quando este mtodo utilizado, a seguinte caixa de
dilogo mostrada:

Figura 26: Caixa de Dilogo de Assinatura Eletrnica
E3 - Scripts - Manual de Referncia
Mtodos 119
Parmetros do mtodo Esign()
NOME DESCRIO
ObjName Texto que contm o nome de um tag ou outro objeto da aplicao.
Description Texto que contm a descrio de ObjName. Este parmetro opcional e,
se for omitido, a caixa de dilogo tentar buscar os dados da propriedade
DocString de ObjName.
Action Texto que contm a ao a ser executada (ex: Alterao do valor). Este
parmetro opcional e o seu valor padro .
From Variant que contm o valor original , ou o estado que vai ser alterado.
Este parmetro opcional.
To Variant que contm o novo valor do tag, ou o valor a ser aplicado em
Action. Este parmetro opcional.
User Texto de retorno. Recebe o nome de login digitado na caixa de dilogo.
Este parmetro opcional.
Comment Texto de retorno. Recebe o comentrio digitado na caixa de dilogo. Este
parmetro opcional.

Este mtodo retorna True se o usurio pressionar [OK| e se os campos Usuario e
Senha forem vlidos. Caso contrrio, se a caixa de dilogo for cancelada ou se o
login ou a senha estiverem errados aps trs tentativas, o mtodo retorna False. Em
caso de falha, User e Comment so configurados para .
Os comentrios pr-definidos so guardados no registro do Windows. Apenas os
ltimos 26 comentrios so salvos. Cada vez que a janela criada, os ltimos
comentrios so buscados no registro e usados para preencher a lista de seleo. Se
um novo comentrio for informado pelo usurio, ele ser salvo e o mais antigo ser
descartado, caso no haja posio livre. Se for utilizado um comentrio pr-definido,
este passa a ser o primeiro da lista de mais recentes.
Exemplo:
Sub Button1_Click()
Dim Tag, User, Comment
Set Tag = Application.GetObject("IO.Inputs.I001")
If Application.ESign(Tag.PathName,, "Alterao do Valor",_
Tag.Value, 1, User, Comment) Then
If Tag.WriteEx 1 Then
Application.TrackEvent
"Tag IO.Inputs.I001 alterado para 1 " &_
"pelo usurio" & User, Comment
End If
End If
End Sub
E3 - Scripts - Manual de Referncia
120 Mtodos
ExecuteExternalApp(AppPath, Arguments, InitialDir, CmdShow,
[ProcessId])
Este mtodo executa um aplicativo externo de nome e caminho AppPath, com os
argumentos Arguments, iniciando no diretrio de trabalho !nitialDir. Quando
especificado um documento em AppPath, o aplicativo associado a este documento
executado, e o documento passado como um dos parmetros do aplicativo.
Process!D recebe o nmero que identifica o processo (esse nmero utilizado no
mtodo IsAppRunning()). O parmetro CmdShow especifica o modo de abertura da
janela do aplicativo, como na tabela abaixo:
Opes disponveis para o parmetro CmdShow
OPO DESCRIO
0 Esconde a janela e ativa outra janela.
1 Ativa e mostra a janela. Se a janela estiver maximizada ou
minimizada, ela ser restaurada para o tamanho e posio
originais. Uma aplicao deve especificar esse valor quando
estiver mostrando uma janela pela primeira vez.
2 Ativa a janela e mostra-a minimizada.
3 Ativa a janela e mostra-a maximizada.
+ Mostra a janela com seu tamanho e posio mais recentes. A
janela ativa permanece ativa.
5 Ativa a janela e mostra-a com seu tamanho e posio atuais.
6 Minimiza a janela e ativa a prxima janela de nvel superior.
7 Mostra a janela minimizada. A janela ativa permanece ativa.
8 Mostra a janela em seu estado atual. A janela ativa permanece
ativa.
9 Ativa e mostra a janela. Se a janela estiver maximizada ou
minimizada, ela ser restaurada para o tamanho e posio
originais. Uma aplicao deve especificar esse valor quando
estiver restaurando uma janela que estava minimizada.

Exemplo:
Sub CommandButton1_Click()
dim ret
Application.ExecuteExternalApp "calc.exe", "", "", 1, ret
Application.GetObject("Dados.TagInterno1").Value = ret
End Sub
NOTA: O parmetro retornado em Process!D pode ser 0, caso nenhum processo for
iniciado. Por exemplo, se um documento aberto for um URL e uma instncia do
Internet Explorer j estiver rodando, ela mostrar o documento. Nenhum processo
novo iniciado, portanto Process!D ser 0.
E3 - Scripts - Manual de Referncia
Mtodos 121
Exit()
Este mtodo fecha a janela no Viewer.
Exemplo:
Sub_Botao1.Click()
Application.Exit()
EndSub
GetFrame([FrameName])
O mtodo GetFrame() procura por um objeto divisor que j esteja aberto no Viewer
atual. Este mtodo possui o parmetro FrameName, que opcional e determina o
nome do quadro a ser buscado. Caso o valor especificado em FrameName seja
vazio, ele retornar um quadro que contm todos os divisores ou a Tela ativa no
momento. Com o retorno deste mtodo, utilize os mtodos do divisor, como por
exemplo, o mtodo OpenScreen() para abrir uma outra Tela.
Exemplo:
Sub Botao1_Click()
'Ao clicar no Boto pega o quadro Menu
'e substitui a Tela atual deste quadro pela tela Opes
Set frame = Application.GetFrame("Menu")
'Quadro possui um objeto do tipo divisor
frame.OpenScreen "Opes", 0
End Sub
GetFullUserName()
O mtodo GetFullUserName() retorna o nome completo do usurio logado no E3.
Caso no haja nenhum usurio logado, retornado um string vazio.
GetValue(TagName)
O mtodo GetValue() busca pelo valor de um objeto especificado no parmetro
TagName. Se TagName apontar para uma propriedade, este mtodo retornar o
valor da propriedade. Se por outro lado o parmetro TagName especificar um
objeto, o mtodo retornar o valor da propriedade Value do objeto.
Exemplo:
Sub Botao1_Click()
'Ao clicar no Boto pega o valor de um tag
'sendo executado em um DataServer
X = Application.GetValue("DataServer1.InternalTag1")
End Sub
E3 - Scripts - Manual de Referncia
122 Mtodos
GetFormulaUnitDataObj(FormulaName)
Este mtodo obtm a configurao das unidades existentes numa determinada
frmula. As unidades so o destino dos dados salvos na frmula (valores). Este
mtodo possui o parmetro FormulaName, que informa o nome da frmula.
Utilize o mtodo GetFormulaUnitDataObj() para obter uma coleo das unidades de
uma frmula. Este mtodo retorna True se conseguir realizar a operao, ou False,
caso no consiga.
Exemplo:
Sub Botao1_Click()
Dim val
'Quando clica no boto, mostra uma caixa de
'mensagem(MessageBox) com o nmero de Units e o nome da
'Primeira Unit
set obj= Application.GetFormulaUnitDataObj("Formula1")
MsgBox CStr(obj.Count)
MsgBox CStr(obj.Name(1))
End Sub
GetFormulaValueDataObj(FormulaName)
Este mtodo obtm a configurao dos valores existentes numa determinada
frmula. Os valores so o conjunto de dados salvos na frmula. Este mtodo possui
o parmetro FormulaName, que informa o nome da frmula.
Utilize o mtodo GetFormulaValueDataObj() para obter uma coleo de valores na
frmula. Este mtodo retorna True se conseguir realizar a operao, ou False, caso
no consiga.
Exemplo:
Sub Botao1_Click()
Dim val
' Quando clica no boto, mostra uma caixa de mensagem
' (MessageBox) com o nmero de Conjuntos
' e o nome do Primeiro Conjunto.
set obj= Application.GetFormulaValueDataObj("Formula1")
MsgBox CStr(Obj.Count)
MsgBox CStr(obj.Name(1))
End Sub
E3 - Scripts - Manual de Referncia
Mtodos 123
IsAppRunning(ProcessId)
Indica se uma aplicao iniciada pelo mtodo ExecuteExternalApp() estiver sendo
executada. Retorna True se o aplicativo identificado no sistema operacional por
Process!d estiver rodando. Caso contrrio, retorna False.
Exemplo:
Sub CommandButton1_Click()
Application.ExecuteExternalApp _
"www.elipse.com.br", "", "", 1, processID
while Application.IsAppRunning(processID)
' espera pelo final da aplicao
wend
MsgBox "Terminou a aplicao!"
End Sub
IsUserMemberOfGroup(GroupName)
Este mtodo verifica se o usurio logado no Viewer corrente pertence a um
determinado grupo. Este mtodo possui o parmetro GroupName, que determina o
nome do grupo de usurios que se quer verificar. O mtodo retorna True se o usurio
pertencer ao grupo GroupName, ou False, caso contrrio.
Exemplo:
Sub CommandButton1_Click()
If Application.IsUserMemberOfGroup("Suporte") then
MsgBox ("O usurio" & Aplication.User & _
" membro do grupo Suporte")
Else
MsgBox ("O usurio" & Aplication.User & _
"no membro do grupo Suporte")
End If
End Sub
IsWebViewer()
Verifica se o aplicativo est sendo visualizado pelo E3 WebViewer. O mtodo
retorna True se a aplicao estiver sendo executada no E3 WebViewer. Caso
contrrio, retorna False.
LoadFormulaDlg(FormulaName, [UnitName], [ValueName])
Este mtodo apresenta uma caixa de dilogo que permite ao usurio escolher o
conjunto de valores e a unidade de destino, carregando uma frmula. Este mtodo
E3 - Scripts - Manual de Referncia
124 Mtodos
possui o parmetro FormulaName, que determina o nome do objeto da frmula que
ser operada.
Utilize o mtodo LoadFormulaDlg() para chamar uma caixa de dilogo para
carregamento dos dados do objeto Frmula especificado por FormulaName. Nesta
caixa possvel especificar qual conjunto de valores (UnitName) ser enviado para
qual conjunto de tags (valueName). Nesta caixa de mensagem o usurio conta com
todos os conjuntos de valores e unidades disponveis no objeto Frmula, podendo
atribuir um a outro livremente. Quando o usurio clicar em [OK|, o conjunto de
valores ser carregado na unidade especificada.
Exemplo:
Sub Botao1_Click()
'Chama a caixa de dilogo para operar
Dim val
Application.LoadFormulaDlg("Formula1")
End Sub
LoadFormulaValues(FormulaName, UnitName, ValueName)
Este mtodo carrega automaticamente um conjunto de valores para uma unidade de
destino, apresentando uma caixa de dilogo que permite ao usurio informar valores
diferentes daqueles definidos na Frmula. Este mtodo possui os seguintes
parmetros: FormulaName determina o nome da frmula e UnitName determina o
nome da unidade. O nome do conjunto de valores configurado no parmetro
valueName.
Uma caixa de mensagem aparecer permitindo ao usurio informar valores
diferentes daqueles definidos para cada um dos valores da Frmula.
NOTA: O mtodo retorna um valor lgico, ou seja, retorna True quando executada
com sucesso, e False quando falha, o que no significa que houve um erro no script.
Exemplo:
Sub Botao1_Click()
Application.LoadFormulaValues "Formula1", "Unit1", "Value1"
End Sub
LoadFormulaValuesQuiet(FormulaName, UnitName, ValueName)
Carrega um conjunto de valores para uma unidade de destino, sem apresentar
nenhuma mensagem. Este mtodo possui os seguintes parmetros: FormulaName
determina o nome da Frmula e UnitName determina o nome da unidade. O nome
do conjunto de valores configurado no parmetro valueName.
NOTA: Este mtodo tambm acessado atravs do objeto Formula.
E3 - Scripts - Manual de Referncia
Mtodos 125
Exemplo:
Sub Botao1_Click()
Application.LoadFormulaValuesQuiet "Formula1", "Unidade3",
"Valores1"
End Sub
LoadReport(ReportName)
Carrega um modelo de relatrio. O parmetro ReportName o nome do relatrio a
ser carregado.
Exemplo:
Sub Rect_Click()
' Carregando o relatrio pr-definido
Set strRep = Application.LoadReport("[Relatrio3]")
strRep.PrintPreview ' Visualizando a impresso
End Sub
Login([Mode])
Abre uma caixa de dilogo para o login (autenticao de usurio) na aplicao. O
usurio logado permanece na memria at que seja feito outro login ou logout (sada
do usurio da aplicao). Este mtodo possui o parmetro Node, que um booleano
que determina se uma mensagem de confirmao ou falha da operao dever ser
mostrada (o default False). Quando uma Tela estiver para ser aberta (atravs do
mtodo OpenScreen()), verificado se existe alguma configurao de segurana.
Caso exista, a Tela s ser aberta se o usurio logado tiver permisso. Caso no
tenha permisso, aberto um dilogo para o login.
Exemplos:
Sub TelaInicial_OnPreShow(vArg)
Application.Login ' Usa False como default
Application.Login(True)
Application.Login(False)
End Sub
Logout([Mode])
Executa o logout (sada do usurio atual da aplicao) do Viewer. Caso no haja um
usurio logado, este mtodo no tem efeito. A partir deste momento, ser
considerado que um usurio annimo est utilizando a aplicao. (Pode-se utilizar
o evento OnLogout para executar um script para ir para a Tela inicial ou finalizar a
aplicao.) Este mtodo possui o parmetro opcional Node, que um booleano que
determina se uma mensagem de confirmao ou falha da operao dever ser
mostrada (o default False).
E3 - Scripts - Manual de Referncia
126 Mtodos
Exemplo:
Sub TelaInicial_OnPreShow(vArg)
Application.Logout(True)
End Sub
PasswordConfirm(Mode)
O mtodo abre um dilogo solicitando a reconfirmao da senha do usurio
atualmente logado. O mtodo retorna True se a senha for confirmada, ou False, caso
contrrio. O parmetro booleano Node determina se deve ser dado um logout em
caso de falha na confirmao (True) ou no (False).
Se o dilogo for fechado atravs do boto [Cancelar], a funo retorna False. Caso
no haja usurio logado, a funo retorna False, mas sem abrir a caixa de dilogo.
Caso a senha digitada no esteja correta, a solicitao repetida at no mximo trs
vezes. Se o usurio digitar a senha incorreta nestas trs vezes, o dilogo fechado e
a funo retorna False.
Exemplo:
Sub Texto1_Click()
If Application.PasswordConfirm(True) Then
MsgBox "ConfirmPassword retornou True"
Else
MsgBox "ConfirmPassword retornou False"
End If
End Sub
Playsound(Filename)
Toca um arquivo de som cujo caminho e nome esto indicados no parmetro
Filename. O arquivo deve seguir as seguintes especificaes:
dever estar no formato de som do Windows (extenso .wav);
se o arquivo estiver no projeto (adicionado atravs do comando Inserir
recurso), o nome do arquivo dever estar entre colchetes.
Se foi criado uma pasta no projeto e o arquivo for adicionado atravs do comando
Inserir recurso, o caminho dever ser especificado entre aspas (por exemplo:
"c:\som\ding.wav"). Se o arquivo estiver no diretrio local, o nome no precisa de
aspas, basta colocar o caminho (por exemplo: c:\som\ding.wav);
E3 - Scripts - Manual de Referncia
Mtodos 127
Exemplo:
Sub TelaInicial_OnAlarm()
'Se existir um alarme ativo, ser tocado um som de alerta.
'Quando o alarme reconhecido, o som pra.
Set Alarme = Application._
GetObject("ConfigAlarmes1.Area1.FonteAlarme1")
If Alarme.ActiveNACKAlarms = True Then
Application.PlaySound("[ringin.wav]")
End If
End Sub
SelectMenu(Menu, [Left], [Top])
Este mtodo mostra um menu pop-up conforme especificado pelo parmetro
Nenu. Este parmetro um texto que consiste em vrias opes delimitadas pelo
caractere {, sendo que cada um destes strings ser uma opo do menu. Caso haja
um conjunto de dois delimitadores sucessivos ({{), um separador ser inserido. Use
os caracteres { e ) para criar um submenu. Um caractere * na frente de um string
indica que a opo estar marcada. J um caractere ! far com que a opo esteja
desabilitada.
A posio da caixa de dilogo pode ser configurada atravs dos parmetros Left e
Top, que indicam a distncia da margem esquerda e do topo da tela em pixels,
respectivamente. Caso estes parmetros no sejam informados, o menu
posicionado de acordo com o local onde o click do mouse foi acionado.
Este mtodo retornar 0 se nenhuma opo foi selecionada, ou o nmero da opo,
sendo que 1 seria para a primeira opo contida no texto, 2 para a segunda e assim
por diante.
Exemplo:
Sub Botao1_Click()
op = Application.SelectMenu("Opo 1|Opo 2|Opo 3")
If op = 1 Then
MsgBox "Opo 1 foi escolhida"
ElseIf op = 2 Then
MsgBox "Opo 2 foi escolhida"
ElseIf op = 3 Then
MsgBox "Opo 3 foi escolhida"
ElseIf op = 0 Then
MsgBox "Nenhuma opo foi escolhida"
End If
End Sub
E3 - Scripts - Manual de Referncia
128 Mtodos
SetValue(TagName, NewVal)
Este mtodo configura o valor de um objeto dentro do servidor. O mtodo
SetValue() procura por um objeto/propriedade sendo executado no servidor e atribui
o valor especificado no parmetro definido em TagName. O tipo e valor do
parmetro Newval dever ser suportado pelo objeto especificado em TagName.
Exemplo:
Sub Botao1_Click()
'Ao clicar no Boto seta o valor de um tag sendo executado
'em um DataServer e seta o valor 20 para o tag
Application.SetValue "DataServer1.InternalTag1", 20
End Sub
ShowDatePicker(DateValue, Left, Top, [DefaultDate])
Abre uma caixa de dilogo para a alterao da data e da hora. Este mtodo retorna
True se o usurio confirmar a data, ou False se o usurio cancelar a edio. A nova
data retornada no parmetro Datevalue. A posio da caixa de dilogo pode ser
configurada atravs dos parmetros Left e Top, que indicam a distncia da margem
esquerda e do topo da tela em pixels, respectivamente. Caso estes parmetros no
sejam informados, a caixa de dilogo fica centralizada. O valor do parmetro
DefaultDate a data e a hora iniciais quando a caixa de dilogo for aberta. Se no
for informada a data, o sistema assume a data atual; se no for informada a hora,
iniciar como 00:00:00. Sem nem a data nem a hora forem informadas, iniciar com
data e hora atuais.
Exemplos:
Sub Texto2_Click()
Dim novaHora
Application.ShowDatePicker novaHora, 300, 300
MsgBox "A hora : "& novaHora
End Sub
ShowFilePicker(Open, FileName, [Extension], [Flags], [Filter])
Exibe as caixas de dilogo Salvar e Abrir Arquivo, do Windows. O parmetro
Open indica o dilogo a ser aberto; se True, abre Abrir Arquivo; se False, abre
Salvar. O parmetro FileName indica a varivel onde ser armazenado o nome do
arquivo a ser salvo ou carregado caso o mtodo retorne True. Este parmetro deve
ser obrigatoriamente uma varivel. O parmetro Extension opcional e informa a
extenso do arquivo padro a ser anexada ao nome do arquivo na caixa de entrada,
quando a extenso no for informada. Caso esteja vazio, nenhuma extenso ser
concatenada ao final do nome do arquivo. Extenses mltiplas podem ser
especificadas usando-se o caractere ; como delimitador. O string deve terminar
com ||.
E3 - Scripts - Manual de Referncia
Mtodos 129
O parmetro Flags opcional e define o comportamento da caixa de dilogo. um
nmero inteiro, soma dos valores da tabela abaixo. O parmetro Filter opcional e
define um conjunto de pares de strings que especificam filtros que podem ser
aplicados aos arquivos. O primeiro string descreve o filtro, e o segundo indica o tipo
de extenso a ser utilizada.
Combinaes possveis para o parmetro Flags
VALOR DESCRIO
1 CREATEPROMPT: Se o usurio especificar um arquivo que
no existe, este flag faz com que ele seja questionado sobre a
criao do arquivo. Se ele escolher criar o arquivo, a caixa de
dilogo fechada e o nome do arquivo retornado no parmetro
Filename. Caso contrrio, a caixa de dilogo permanece aberta.
2 FILEMUSTEXIST: Especifica que o usurio s pode digitar
nomes de arquivos existentes. Caso contrrio, a caixa de dilogo
mostra um aviso na caixa de mensagens.
+ NOCHANGEDIR: Recupera o diretrio atual para o valor
original caso o usurio tenha mudado de diretrio enquanto
buscava o arquivo. No tem efeito para Abrir Arquivo no
Windows NT4/2000/XP.
8 NODEREFERENCELINKS: Configura a caixa de dilogo
para retornar o arquivo de atalho (.lnk) selecionado. Se este flag
no for especificado, a caixa de dilogo retorna o caminho e nome
de arquivo referenciados pelo shortcut.
16 NOREADONLYRETURN: Determina que o arquivo retornado
no seja somente para leitura, e o diretrio no protegido contra
gravao.
32 PATHMUSTEXIST: Especifica que o usurio pode informar
apenas arquivos e diretrios vlidos, caso contrrio uma caixa de
mensagem mostrada para avisar o usurio.
6+ READONLY: Faz o boto de opo Somente Leitura ser
selecionado inicialmente quando o dilogo criado.
128 OVERWRITEPROMPT: Faz a caixa de dilogo de Salvar
Como gerar uma mensagem informando da existncia do
arquivo, e pede confirmao para sobrescrever o arquivo.

Exemplo de filtro:
"Arquivos de Chart (*.xlc)|*.xlc|Planilhas Excel
(*.xls)|*.xls|Arquivos de Dados (*.xlc;*.xls)|*.xlc;
*.xls|Todos os arquivos (*.*)|*.*||"
ShowPickColor(ColorValue, Color, Left, Top)
Abre a caixa "Cores" do Windows para a escolha de uma cor. O valor decimal da
cor escolhida retornado no parmetro Colorvalue. O parmetro Color indica uma
cor previamente selecionada na paleta de cores. Se este parmetro no for
informado, ele assume 0 (preto). A posio da caixa de dilogo pode ser configurada
E3 - Scripts - Manual de Referncia
130 Mtodos
atravs dos parmetros Left e Top, que indicam respectivamente, a distncia da
margem esquerda e do topo da tela, em pixels. Caso estes parmetros no sejam
informados, a caixa de dilogo fica centralizada.
Exemplo:
Sub CommandButton_Click()
Dim novaCor
Dim corPadrao
corPadrao = 65280 ' Verde Claro
If Application.ShowPickColor(novaCor,corPadrao,90,90) Then
Screen.Item("Retangulo1").ForegroundColor = novaCor
Screen.Item("Texto1").Value = novaCor
End If
End Sub
Stopsound()
Pra um som que esteja tocando.
Exemplo:
Sub CommandButton2_Click()
Application.StopSound()
End Sub
ToggleValue(TagName, ValA, ValB)
O mtodo ToggleValue() busca o valor do objeto/propriedade sendo executado no
servidor e compara com os parmetros valA e valB. Se o valor buscado for igual ao
valB, o objeto/propriedade especificado em TagName receber o valor de valA.
Caso contrrio, receber o valor de valB. Caso o valor de TagName no seja nem
valA nem valB, o mtodo ToggleValue() atribuir o valor especificado em valA.
Exemplo:
Sub Botao1_Click()
' Ao clicar no Boto atribui o valor
' a um tag sendo executado em um DataServer.
' Atribui o valor 20 para o tag.
Application.SetValue "DataServer1.InternalTag1", 20
' J que o valor do InternalTag1 j 20,
' o mtodo ToggleValue alternar o valor para 30.
Application.ToggleValue "DataServer1.InternalTag1", 30, 20
End Sub
E3 - Scripts - Manual de Referncia
Mtodos 131
TrackEvent(EventMessage, Comment, TimeStamp)
O mtodo TrackEvent permite gerar eventos via script manualmente. Estes eventos
podem ser gerados tanto no Viewer como no Servidor, e so registrados em uma
tabela no banco de dados do aplicativo.
Parmetros do mtodo TrackEvent
NOME DESCRIO
EventNessage Contm a mensagem do evento (mximo 200 caracteres).
Comment (Opcional) Contm comentrios adicionais sobre o evento
(mximo 200 caracteres).
TimeStamp (Opcional) Indica a data/hora em que o evento ocorreu. Se no for
especificado, o E3 assume a data/hora atual.

O mtodo TrackEvent s vai registrar os eventos caso a opo de Registro de
Eventos nas Opes do Domnio estiver habilitada. Os eventos so registrados
numa tabela de um banco de dados que definida tambm nas configuraes de
Registro de Eventos.
Para maiores informaes sobre o Registro de Eventos do Domnio, consulte o
Manual do Usurio.
Exemplo:
Sub Button1_Click()
Dim Tag, User, Comment
Set Tag = Application.GetObject("IO.Inputs.I001")
If Application.ESign(Tag.PathName,, "Alterao do Valor",_
Tag.Value, 1, User, Comment) Then
If Tag.WriteEx 1 Then
Application.TrackEvent
"Tag IO.Inputs.I001 alterado para 1 " &_
"pelo usurio" & User, Comment
End If
End If
End Sub
E3 - Scripts - Manual de Referncia
132 Mtodos
UserAdministration()
Este mtodo abre uma caixa que permite editar a lista de usurios do E3 Server. As
funes disponveis so:
mostrar a lista de todos os usurios;
apagar usurios (no possvel apagar o usurio atual);
adicionar e editar usurios;
editar as configuraes de um usurio;
alterar a senha do usurio;
alterar os demais dados do usurio (login, nome etc.).
IMPORTANTE: Apenas o Administrador pode ter acesso ao mtodo
UserAdministration(). A caixa de configurao dos usurios acessvel somente ao
usurio habilitado como "Administrador". O usurio Administrador no pode se
excluir e no pode marcar seu tipo para "no-administrador".
Exemplo:
Sub Texto1_Click()
Application.UserAdministration()
End Sub
5.14. Mtodos do Banco de Dados
SetDBParameters(ServerName, UserName, Password, DBName)
String de conexo com o DB nas propriedades do objeto Banco de Dados. O
parmetro ServerName determina o nome do servidor. O parmetro UserName
determina o nome do usurio. O parmetro Password determina a senha do login
para se conectar ao banco. O parmetro DBName utilizado apenas para o SQL; o
nome do DB utilizado no servidor SQL.
5.15. Mtodos dos Alarmes
5.15.1. Mtodos da Fonte de Alarmes
Ack(bstrActorID)
Executa o reconhecimento de um alarme configurado no objeto Fonte de Alarmes. O
mtodo retorna um booleano que indica o sucesso ou no da operao.
E3 - Scripts - Manual de Referncia
Mtodos 133
O parmetro bstrActor!D informa o nome do usurio responsvel pelo
reconhecimento dos alarmes.
GetAlarm()
Retorna um objeto que permite o acesso s configuraes especficas de cada tipo
alarme. Isto permite verificar ou modificar em tempo de execuo as propriedade de
um determinado alarme. Dependendo do tipo de alarme, o mtodo retornar as
seguintes propriedades:
Alarme Digital: Responsvel pelas configuraes de alarme digital.
Propriedades do Alarme Digital
ITEM DESCRIO
DigitalReturnNessageText
Mensagem de retorno do alarme digital
Digital
Habilita/Desabilita a verificao de alarme
digital
DigitalLimit
Limite para o alarme digital
DigitalNessageText
Texto da mensagem de alarme digital
DigitalSeverity
Severidade do alarme digital. Conjunto de
valores: 0 - Alta, 1 - Mdia, 2 - Baixa
DigitalAckRequired
Necessidade de reconhecimento para este tipo
de alarme (digital).

Alarme Analgico: Responsvel pelas configuraes do alarme analgico.
Propriedades deste objeto (tem quatro nveis de alarme):
Propriedades do Alarme Analgico
ITEM DESCRIO
LevelDeadBand
Banda morta para o alarme de nveis.
LevelReturnNessageText
Mensagem de retorno de alarme.
Alarme LoLo {Muito Baixo)
ITEM DESCRIO
LoLo
Habilita/Desabilita a verificao de alarme Muito Baixo
LoLoLimit
Limite para o nvel de alarme Muito Baixo
LoLoNessageText
Texto da mensagem de alarme Muito Baixo
LoLoSeverity
Importncia do nvel de alarme Muito Baixo. Conjunto
de valores: 0 - Alta, 1 - Mdia, 2 - Baixa
LoLoAckRequired
Necessidade de reconhecimento para este nvel de
alarme (Muito Baixo).
E3 - Scripts - Manual de Referncia
134 Mtodos
Alarme Lo {Baixo)
ITEM DESCRIO
Lo
Habilita/Desabilita a verificao de alarme Baixo
LoLimit
Limite para o nvel de alarme Baixo
LoNessageText
Texto da mensagem de alarme Baixo.
LoSeverity
Importncia do nvel de alarme Baixo. Conjunto de
valores: 0- Alta, 1- Mdia e 2- Baixa.
LoAckRequired
Necessidade de reconhecimento para este nvel de
alarme (Baixo).
Alarme Hi {Alto)
ITEM DESCRIO
Hi
Habilita/Desabilita a verificao de alarme Alto
HiLimit
Limite para o nvel de alarme Alto.
HiNessageText
Texto da mensagem de alarme Alto
HiSeverity
Importncia do nvel de alarme Alto. Conjunto de
valores: 0- Alta, 1- Mdia, 2- Baixa.
HiAckRequired
Necessidade de reconhecimento para este nvel de
alarme (Alto).
Alarme HiHi {Muito Alto)
ITEM DESCRIO
HiHi
Habilita/Desabilita a verificao de alarme Muito Alto.
HiHiLimit
Limite para o nvel de alarme Muito Alto
HiHiNessageText
Texto da mensagem de alarme Muito Alto
HiHiSeverity
Importncia do nvel de alarme Muito Alto. Conjunto de
valores: 0 - Alta, 1 - Mdia, 2 - Baixa
HiHiAckRequired
Necessidade de reconhecimento para este nvel de
alarme (Muito Alto).

E3 - Scripts - Manual de Referncia
Mtodos 135
Alarme Taxa de Variao: Responsvel por configuraes de alarme de taxa de
variao.
Propriedades do Alarme Taxa de Variao
ITEM DESCRIO
ROCReturnNessageText
Mensagem de retorno da taxa de mudana.
ROC
Habilita/Desabilita a verificao de alarme de taxa
de variao.
ROCLimit
Limite para o alarme de taxa de mudana. Para o
alarme ocorrer, basta que o valor do tag associado
ultrapasse esse valor em um segundo.
ROCNessageText
Texto da mensagem de alarme de taxa de
mudana.
ROCSeverity
Importncia do alarme de taxa de mudana.
Conjunto de valores: 0 - Alta, 1 - Mdia, 2
Baixa.
ROCAckRequired
Necessidade de reconhecimento para este tipo de
alarme (taxa de mudana).

Alarme Banda Morta: Responsvel por configuraes de alarme de banda morta.
Propriedades do Alarme Banda Morta
ITEM DESCRIO
DeadBandSetPoint
Limite de banda morta do alarme. Cada vez que o
valor do tag associado ultrapassar o valor desta
propriedade + ou - o valor de DeadBandLimit, o
alarme ocorrer.
DeadBandReturnNessageText
Mensagem de retorno de alarme de banda morta
DeadBand
Habilita/Desabilita a verificao de alarme de
banda morta
DeadBandLimit
Limite para o alarme de banda morta.
DeadBandNessageText
Texto da mensagem de alarme de banda morta
DeadBandSeverity
Importncia do alarme de banda morta. Conjunto
de valores: 0 - Alta, 1 - Mdia, 2 - Baixa
DeadBandAckRequired
Necessidade de reconhecimento para este tipo de
alarme (banda morta).

E3 - Scripts - Manual de Referncia
136 Mtodos
Exemplo:
Sub Botao1_Click()
Dim val
'Quando clica no botao muda o nivel de alarme Lo do
'AlarmSource BatteryLevel
Application.GetObject("ConfigAlarmes1.Area1.BatteryLevel")_
.GetAlarm().LoLimit = 10.2
End Sub
NOTA: as propriedades relativas a cada tipo de alarme podem ser acessadas
diretamente por scripts e associaes, bem como visualizadas na Lista de
Propriedades do objeto, no mais sendo obrigatria sua edio via mtodo
GetAlarm().
5.15.2. Mtodos do 8ervidor de Alarmes
AckAllAlarms(bstrActorID)
Executa o reconhecimento de todos os alarmes do servidor, independentemente da
rea. O mtodo retorna um booleano que indica o sucesso ou no da operao.
O parmetro bstrActor!D informa o nome do usurio responsvel pelo
reconhecimento dos alarmes.
Exemplo:
Sub Botao1_Click()
'Quando clica no botao reconhece todos os alarmes
Application.GetObject("ServidorAlarmes1")._
AckAllAlarms (Application.User)
End Sub
AckArea(bstrArea, bstrActorID)
Executa o reconhecimento dos alarmes em uma determinada rea. O mtodo retorna
um booleano que indica o sucesso ou no da operao.
O parmetro bstrArea especifica o nome da(s) rea(s) cujos alarmes sero
reconhecidos, atravs da comparao entre os trechos iniciais dos nomes. Por
exemplo, AckArea("ANA") reconheceria alarmes das reas "ANALOGICOS",
"ANA.AREA2", etc. Se o valor deste parmetro for vazio, o mtodo ter o mesmo
comportamento de AckAllAlarms(). O parmetro bstrActor!D informa o nome do
usurio responsvel pelo reconhecimento dos alarmes.
E3 - Scripts - Manual de Referncia
Mtodos 137
Exemplo:
Sub Botao1_Click()
'Quando clica no boto reconhece os alarmes da Area1
Application.GetObject("ServidorAlarmes1").AckArea "Area1",_
Application.User
End Sub
LogTrackingEvent(Message, ActorID, Area, Severity, EventTime,
Source, EventCategory, EventType, UserFields,
AlarmSourceName, FullAlarmSourceName)
Simula um evento/alarme e o envia direto para o banco de dados do servidor de
alarmes, sem passar pelo E3Alarm. Por isso, este evento no pode ser visto no
E3Alarm, nem tampouco o alarme pode ser reconhecido.
Cada parmetro do mtodo permite especificar o valor do campo de mesmo nome no
evento. Os campos do evento so preenchidos de acordo com os parmetros do
mtodo:
Parmetros do mtodo LogTrackingEvent
NOME DESCRIO
Nessage Parmetro texto que especifica o contedo do campo de
Mensagem do evento. Se omitido, assume o valor "".
Actor!D Parmetro texto que especifica o contedo do campo
Operador do evento. Se omitido, assume o valor "System".
Area Parmetro texto que especifica o contedo do campo rea
do evento. Se omitido, assume o valor "".
Severity Parmetro numrico que determina a severidade do evento.
Se omitido, assume o valor 0, ou seja, severidade alta.
EventTime Especifica o TimeStamp do evento. Se omitido, assume o
valor do TimeStamp do momento da chamada do mtodo.
Source Parmetro texto que especifica o contedo do campo Fonte
do evento. Se omitido, assume o valor "".
EventCategory Parmetro texto que especifica a categoria do evento. Se
omitido, assume o valor "".
EventType Parmetro texto que especifica o tipo do evento. Se omitido,
assume o valor "Tracking".
UserFields Parmetro array de quatro posies ou mais onde cada
posio especifica o valor do campo especificado pelo
usurio.
AlarmSourceName Parmetro texto que especifica o nome da fonte de alarme.
Se omitido, assume o valor "".
FullAlarmSourceName Parmetro texto que especifica o caminho completo da
fonte de alarme. Se omitido, assume o valor "".
E3 - Scripts - Manual de Referncia
138 Mtodos
Os demais campos do evento no podem ser especificados e sempre assumem os
valores a seguir:
Valor (CurrentValue) = 0.0
Qualidade (Quality) =
Condio Ativa (ConditionActive) = 0 (False)
Nome da Condio (ConditionName) =
Nome da Subcondio (SubConditionName) =
Reconhecido (Acked) = 1 (True)
Precisa Ack (AckRequired) = 0 (False)
Habilitado (Enabled) = 1 (True)
EventTimeUTC = *Sempre igual a EventTime (como em eventos de
alarme)
Mscara (ChangeMask) = 0
Cookie = 0
NOTA: O mtodo falha se a opo Guarde alarmes no banco de dados estiver
desmarcada, ou quando falha o armazenamento no banco de dados.
Exemplo:
Sub CommandButton1_Click()
'No parmetro "UserFields", para cada elemento do array,
'ser mostrado o valor atribudo a ele
Application.GetObject("ServidorAlarmes1").LogTrackingEvent_
"Clicou no boto", Application.User, "Operao", 2, ,_
"Boto1", , , array(1, 2, "a", "b")
End Sub
5.16. Mtodos do Histrico
StartAcquisition()
Habilita o Histrico a gravar os valores do seus campos periodicamente, a partir da
taxa especificada na propriedade ScanTime. Este mtodo pode ser chamado a
qualquer momento aps a chamada do mtodo StopAcquisition(). O comportamento
padro deste mtodo iniciar a aplicao habilitado, ou seja, este mtodo sempre
executado internamente ao se iniciar o Histrico.
E3 - Scripts - Manual de Referncia
Mtodos 139
Exemplo:
Sub Botao1_Click()
'Quando clica no boto, habilita o histrico
Application.GetObject("Hist1").StartAcquisition()
End Sub
StopAcquisition()
Desabilita a gravao dos registros por perodo no Histrico, independente do valor
especificado na propriedade ScanTime. A gravao por perodo fica desabilitada at
o mtodo StartAcquisition() ser chamado. O comportamento padro do objeto
Histrico iniciar a aplicao com a gravao habilitada.
Exemplo:
Sub Hist1_OnStopAcquisition()
'Desabilita o Histrico assim que iniciar.
StopAcquisition()
End Sub
WriteRecord()
Insere uma nova linha de informao no banco de dados. Os valores so obtidos a
partir dos valores atuais de cada uma das variveis especificadas como fonte de
dados dos campos do histrico. Utiliza-se este mtodo em duas situaes:
Para gravar uma nova linha de dados antes do tempo previsto para a
prxima gravao quando o Histrico est habilitado por tempo.
Para gravar um novo conjunto de dados quando o Histrico est
desabilitado.
Exemplo:
Sub Tag1_OnValueChange()
'Grava uma nova linha em um histrico
'quando um tag muda de valor
Application.GetObject("Hist1").WriteRecord()
End Sub
5.17. Mtodos do 8torage
CreateNewSession([DefaultType], [DefaultMinRecTime],
[DefaultMaxRecTime], [DefaultDeadBand], [DefaultUnit])
Gera uma sesso que tem a capacidade de incluir dados de um E3Storage de forma
independente da aquisio normal. Os parmetros opcionais so utilizados nas
E3 - Scripts - Manual de Referncia
140 Mtodos
configuraes dos tags da sesso, caso no informados em suas criaes. So eles,
respectivamente: tipo do dado, intervalo mnimo de tempo entre gravaes, intervalo
mximo de tempo sem gravaes, banda morta e unidade da banda morta do tag.
Como usar:
Criao de uma sesso:
set Session =
Application.GetObject("Storage1").CreateNewSession(0, 0, 3600,
10, 1)
Adio de um tag sesso (mtodo AddField(FieldName, [Type], [MinRecTime],
[MaxRecTime], [DeadBand], [Unit])):
result = session.AddField("TempTag", 0, 0, 100000, 15, 1)
Adio de valores (mtodo AddValue(FieldName, TimeStamp, Quality, Value)):
result = session.AddValue("TempTag", Now, 192, 10)
StartAcquisition()
Inicia ou retoma a gerao de dados que vo para o Banco. O Storage recebe
notificaes sobre quais tags cadastrados sofreram modificao, e quando isto
acontece ele verifica se os registros sero gravados ou no. Quando este mtodo
chamado, a notificao de mudana e a gerao de gravaes sero iniciadas ou
retomadas.
Exemplo:
Sub Botao1_Click()
'Quando clica no boto, habilita o Storage
Application.GetObject("Storage1").StartAcquisition()
End Sub
StopAcquisition()
Pra a gerao de dados que vo para o Banco. O Storage recebe notificaes sobre
quais tags cadastrados sofreram modificao, e quando isto acontece ele verifica se
os registros sero gravados ou no. Quando este mtodo chamado, a notificao de
mudana e a gerao de gravaes sero paralisadas.
Exemplo:
Sub Storage1_OnStopAcquisition()
'Desabilita o Storage assim que iniciar.
StopAcquisition()
End Sub
E3 - Scripts - Manual de Referncia
Mtodos 141
5.18. Mtodos da Consulta
AddField(Name, [Table])
O mtodo AddField() adiciona um novo campo da tabela na consulta. O parmetro
Name determina o nome do novo campo que ser adicionado consulta. O
parmetro Table determina o nome da tabela a qual o campo pertence. Este mtodo
foi desenvolvido apenas para manter a compatibilidade com o antigo objeto
Consulta do E3Chart.
Exemplo:
Sub Botao1_Click()
Screen.Item("E3Browser").Item("Consulta").AddField "Campo1"
End Sub
AddStorageTag(Name, fieldType)
Adiciona um tag pertencente ao Storage a ser consultado consulta. O parmetro
Name recebe o nome do tag a ser adicionado. O parmetro fieldType indica o tipo
deste tag (0 - double, 1 - bit, 2 - string). Retorna um booleano indicando o sucesso
(ou no) da operao.
AddTable(Name)
Adiciona uma tabela do banco de dados na consulta. O parmetro Table determina o
nome da tabela a ser adicionada.
Execute(ImmediateExecute)
O mtodo Execute() executa um comando SQL que no tenha retorno (como
DELETE, UPDATE ou INSERT), configurado no SQLQuery. O parmetro
!mmediateExecute indica se a operao passar pelas filas de operaes do DB
(arquivos e3i e e3o) antes de chegar ao banco (caso esteja configurada como False),
ou se ser enviada diretamente para o Banco de Dados (caso esteja configurada
como True). A vantagem de se utilizar a consulta para executar comandos a
utilizao de variveis, como em uma consulta simples.
Exemplo de comandos SQL:
DELETE FROM teste WHERE cod > 10
UPDATE teste SET cod = 10 WHERE cod > 10
INSERT INTO teste (cod) VALUES(10)
E3 - Scripts - Manual de Referncia
142 Mtodos
Exemplo:
Sub CommandButton1_Click()
Screen.Item("Consulta1").Execute
End Sub
GetADORecordSet()
O mtodo GetADORecordSet() retorna um recordset do tipo ADO (ActiveX Data
Object), resultante da execuo da consulta configurada.
Exemplo:
Sub Botao1_Click()
Set rec = Screen.Item("Consulta1").GetADORecordset()
strDatas = " "
i = 0
while (not rec.EOF and i < 10)
strDatas = strData & CStr(rec("E3TimeStamp")) & _
Chr(10) & Chr(13)
i=i+1
wend
MsgBox strDatas
End Sub
GetAsyncADORecordSet()
Cria uma consulta e, quando ela estiver finalizada, gera o evento
OnAsyncQueryFinish() do prprio objeto, passando para este evento o resultado
(recordset) gerado pela consulta..
GetE3QueryFields()
O mtodo GetE3QueryFields() retorna a coleo de campos (colunas) de uma
consulta. Cada um destes campos possui as seguintes propriedades que podem ser
modificadas, a saber:
Propriedades dos campos da consulta
NOME TIPO DESCRIO
ColumnName Texto Nome da coluna. Este nome deve existir nas
tabelas adicionadas nesta consulta.
TableName Texto Nome da tabela a que pertence a coluna. Esta
tabela deve ter sido adicionada na
configurao da consulta.
Alias Texto Apelido da coluna na consulta.
Criteria Texto Filtro sobre a coluna.
E3 - Scripts - Manual de Referncia
Mtodos 143
OrderBy Texto Ordenao dos dados da coluna. Os valores
vlidos so ASC (ordenao ascendente),
DESC (ordenao descendente) ou (sem
ordenao). Qualquer valor diferente significa
que o campo no possui ordenao.
OrderNumber Numrico Nmero de ordem da coluna em relao s
outras colunas que compem a ordenao da
consulta. Este valor s ser aceito como maior
que 0 se a coluna tiver um tipo de ordenao.
Este valor ter que ser menor ou igual ao
nmero de campos que compem a ordenao
da consulta.
Function Texto Funo para qual a coluna pode ser passada
como parmetro.
GroupBy Booleano Em True, indica que a coluna faz parte de um
agrupamento.
visible Booleano Em True, indica que a coluna est visvel.

Exemplo:
Sub Botao1_Click()
' Percorre a coleo Campos, mostrando-os em uma caixa
' de mensagem e ajustando-os como visveis na configurao da
' consulta.
Set Browser = Screen.Item("E3Browser")
Set Consulta = Browser.Item("Consulta")
Set Campos = Consulta.GetE3QueryFields()
for each campo in Campos
MsgBox CStr(campo.TableName)&"-"&CStr(campo.ColumnName)
campo.Visible = TRUE
next
' Refaz a consulta do E3Browser, que acabou de ser
' modificada, para que todos os campos apaream.
Browser.RetrieveE3QueryFields()
Browser.Requery()
End Sub
NOTA: Para usar este mtodo, a consulta dever ser previamente criada em tempo
de configurao.
RemoveField(FieldName, [Table])
O mtodo RemoveField() remove um campo previamente includo em uma consulta.
O parmetro FieldName determina o nome do campo que ser removido. O
E3 - Scripts - Manual de Referncia
144 Mtodos
parmetro Table determina o nome da tabela a qual o campo pertence. Este mtodo,
a exemplo do mtodo AddField(), foi includo para manter a compatibilidade com as
verses antigas da consulta do E3Chart.
Exemplo:
Sub CommandButton1_Click()
Screen.Item("E3Browser").Item("Consulta")._
RemoveField "Campo1"
End Sub
RemoveStorageTag(Name)
Remove um tag previamente configurado na consulta. O parmetro Name indica o
nome do tag. Retorna um booleano indicando o sucesso (ou no) da operao.
RemoveTable(TableName)
Remove uma tabela da consulta. O parmetro TableName determina o nome da
tabela a ser removida.
SetVariableValue(bstrVarName, vValue)
O mtodo SetVariableValue() ajusta o valor de uma varivel configurada na
consulta, de forma que este valor possa ser informado como um filtro ou parmetro
antes de a mesma ser realizada. Deve ser definido o nome da varivel
(bstrvarName) e seu valor (vvalue), que pode ser um nmero, texto ou data/hora.
Exemplo:
Sub CommandButton_Click()
Set cons = Screen.Item("E3Browser1").Item("Consulta1")
DataInicial = now -1
DataFinal = now
cons.SetVariableValue "DataIni",DataInicial
cons.SetVariableValue "DataFim",DataFinal
End Sub
5.19. Mtodos do E3Browser
ClearFields()
Limpa a formatao de colunas e linhas do E3Browser.
Exemplo:
Sub CommandButton1_Click()
E3 - Scripts - Manual de Referncia
Mtodos 145
Screen.Item("E3Browser1").ClearFields()
End Sub
GetColumnValue(iIndex)
Retorna o valor de uma clula, na coluna informada e linha selecionada. Este
mtodo possui o parmetro i!ndex, que determina o ndice da coluna desejada.
Exemplo:
Sub E3Browser1_DblClick()
Screen.Item("Texto1").Value = GetColumnValue(0)
Screen.Item("Texto2").Value = GetColumnValue(1)
Screen.Item("Texto3").Value = GetColumnValue(2)
Screen.Item("Texto4").Value = GetColumnValue(3)
End Sub
Requery()
O mtodo Requery() atualiza a consulta utilizando a configurao atual da consulta e
retorna os dados para o E3Browser.
Exemplo:
Sub CommandButton1_Click()
Screen.Item("E3Browser1").Requery()
End Sub
RetrieveE3QueryFields()
O mtodo RetrieveE3QueryFields() l a estrutura de dados da consulta e atualiza a
formatao do E3Browser com os campos definidos na consulta. Se for bem
sucedido retorna True. Caso contrrio, retorna False. Este mtodo especialmente
til quando se precisa usar um nico E3Browser para exibir dados de diferentes
tabelas ou consultas.
Exemplo:
Sub CommandButton1_Click()
Screen.Item("E3Browser1").RetrieveE3QueryFields()
End Sub
E3 - Scripts - Manual de Referncia
146 Mtodos
5.20. Mtodos do E3Chart
CopyConfig(SourceChart)
O mtodo CopyConfig() copia as configuraes de um E3Chart para outro. O
parmetro SourceChart indica o E3Chart origem cujas propriedades sero copiadas
para o E3Chart que chamou o mtodo.
NOTA: No caso dos Relatrios, o mtodo CopyConfig() ir funcionar somente com
penas tipo Histrica.
Por exemplo, para copiar a configurao de um E3Chart que est numa Tela
(ScreenChart) para outro que est dentro de um relatrio (ReportChart), o seguinte
script pode ser adicionado no objeto E3Report associado ao relatrio:
Sub OnBeforePrint
Set Chart =_
Report.Sections("PageHeader").Controls("ReportChart")
Chart.CopyConfig(Application.GetFrame()._
Screen.Item("ScreenChart"))
Chart.LoadData()
Chart.FitAll()
End Sub
Nota: este mtodo tambm possui o parmetro opcional e no usado !ntFlags,
somente para fins de compatibilidade com verses anteriores.
FitAll([FitStyle])
Enquadra todas as penas no E3Chart. O parmetro opcional FitStyle indica o modo
de enquadramento das penas em runtime: 0 enquadra ambos os eixos ao mesmo
tempo; 1 enquadra apenas o eixo vertical, e 2 enquadra apenas o eixo horizontal.
Exemplo:
Sub CommandButton1_Click()
Screen.Item("E3Chart1").FitAll()
End Sub
FitPen(Pen, [FitStyle])
Enquadra uma pena no E3Chart especificada pelo ndice ou nome. O parmetro Pen
define a pena que ser enquadrada no E3Chart (ndice ou nome da pena). O
parmetro opcional FitStyle indica o modo de enquadramento das penas em
runtime: 0 enquadra ambos os eixos ao mesmo tempo; 1 enquadra apenas o eixo
vertical, e 2 enquadra apenas o eixo horizontal.
E3 - Scripts - Manual de Referncia
Mtodos 147

Exemplo:
Sub CommandButton1_Click()
Set Chart = Screen.Item("E3Chart1")
Chart.FitPen(1)
Chart.FitPen("Pen1",1)
'Enquadra a Pen1 somente na vertical
End Sub
LoadData()
Carrega os dados no E3Chart. Este mtodo especialmente usado para carregar os
dados antes de imprimir, quando usado no E3Reports.
Exemplo:
Sub CommandButton1_Click()
MsgBox Screen.Item("E3Chart1").LoadData()
End Sub
ResetConfig()
Remove todas as configuraes ajustadas em um E3Chart, devolvendo-o ao estado
inicial.
Exemplo:
Sub E3Chart1_OnStartRunning()
' Ao iniciar E3Chart1, remove todas as configuraes
ResetConfig()
End Sub

Nota: este mtodo tambm possui o parmetro opcional e no usado !ntFlags,
somente para fins de compatibilidade com verses anteriores.
ShowCursor()
Ativa o modo Pesquisa de Intervalo. Em tempo de execuo, este recurso pode ser
acessado atravs do clique com o boto direito do mouse sobre o objeto e
selecionando a opo Pesquisar Intervalos do menu de contexto.
ZoomIn()
O mtodo ZoomIn() aumenta o zoom no E3Chart, isto , aproxima a visualizao
das penas. Em tempo de execuo, este recurso pode ser acessado atravs do clique
E3 - Scripts - Manual de Referncia
148 Mtodos
com o boto direito do mouse sobre o objeto e selecionando a opo Nais Zoom do
menu de contexto.
Exemplo:
Sub CommandButton1_Click()
Screen.Item("E3Chart1").ZoomIn()
End Sub
ZoomOut()
O mtodo ZoomOut() diminui o zoom no E3Chart, isto , afasta a visualizao das
penas no E3Chart. Em tempo de execuo, este recurso pode ser acessado atravs do
clique com o boto direito do mouse sobre o E3Chart e selecionando a opo Nenos
Zoom.
Exemplo:
Sub CommandButton1_Click()
Screen.Item("E3Chart1").ZoomOut()
End Sub
5.20.2. Mtodos dos Eixos
Nota: HorAxis e VerAxis so propriedades da coleo de eixos que acessam os eixos
padro horizontal e vertical, respectivamente. Por exemplo, ao invs de utilizar
Chart.Axes.Item("EixoHorizontal"), pode-se utilizar
Chart.Axes.HorAxis. Demais eixos criados pelo usurio tero nomes prprios,
escolhidos caso a caso.
GetHistoricPeriod(Begin, End)
Retorna o intervalo de tempo mostrada na escala histrica. O parmetro Begin
indica a data inicial da escala histrica, e End indica a data final.
Exemplo:
Sub CommandButton1_Click()
Set Chart = Screen.Item("E3Chart")
Chart.Axes.Item("NomeDoEixo").GetHistoricPeriod min, max
Value = cstr(dmin) & " "& cstr(dmax)
MsgBox "data inicial = " & cstr(min) & _
vbNewLine & " data final =" & cstr(max)
End Sub
E3 - Scripts - Manual de Referncia
Mtodos 149
GetMinMax(Min, Max)
Retorna nos parmetros Nin e Nax os valores mnimo e mximo da escala numrica,
respectivamente.
Exemplo:
Sub CommandButton1_DBClick()
Set Chart = Screen.Item("E3Chart")
Chart.Axes.Item("NomeDoEixo").GetMinMax dmin, dmax
MsgBox cstr(dmin) & " " & cstr(max)
End Sub
GetRealTimePeriod(pPeriod)
Retorna a unidade de tempo configurada na escala de tempo real. O parmetro
pPeriod recebe o valor da escala de tempo.
Exemplo:
Dim Unidade, Valor

Unidade = Screen.Item("E3Chart1").Axes.Item_
("EixoHorizontal").GetRealTimePeriod(Valor)

MsgBox "Valor:" & CStr(Valor) & "Unidade:" & CStr (Unidade)
GetTickSpacing(TickSpacing, TimeUnit)
Retorna o espaamento entre os ticks (subdivises da escala) e a unidade
configurada. O parmetro TickSpacing determina o espaamento entre os ticks, e
TimeUnit determina a unidade. Quando este parmetro est em zero, significa que
automtico. A unidade no utilizada quando a escala numrica.
As opes disponveis no parmetro TimeUnit so as mesmas demonstradas na
tabela do mtodo GetRealTimePeriod().
Exemplo:
Sub CommandButton1_Click()
Set Chart = Screen.Item("E3Chart1")
Unitvalue_
= Chart.Axes.Item("NomeDoEixo").GetTickSpacing(TickSpacing)
MsgBox "valor" = " & cstr(TickSpacing) & _
"unidade" &_ cstr(unitvalue)
End Sub
E3 - Scripts - Manual de Referncia
150 Mtodos
SetHistoricPeriod(Begin, End)
Configura o perodo de tempo para a escala histrica. O parmetro Begin determina
o perodo inicial da escala, e End determina o perodo final da escala.
Exemplo:
Sub CommandButton1_Click()
Set Chart = Screen.Item("E3Chart2")
Chart.Axes.Item("NomeDoEixo").ScaleType = 2
' mostra o ultimo perodo
Chart.Axes.Item("NomeDoEixo").SetHistoricPeriod now -1, now
End Sub
SetMinMax(Min, Max)
Configura os valores mnimo e mximo da escala numrica. O valor mnimo
determinado pelo parmetro Nin e o mximo por Nax.
Exemplo:
Sub Circulo1_Click()
Set Chart = Screen.Item("E3Chart2")
Chart.Axes.Item("NomeDoEixo").SetMinMax -10, 500
End Sub
SetRealTimePeriod(Times, TimeUnit)
Ajusta o intervalo de tempo na unidade definida pelo parmetro TimeUnit. As
opes disponveis neste parmetro so as mesmas demonstradas na tabela do
mtodo GetRealTimePeriod(). O parmetro Times determina o intervalo de tempo, e
a unidade da escala especificado por TimeUnit. O eixo fica sempre sendo
atualizado neste modo (tempo real).
Exemplo:
Sub CommandButton1_Click()
Set Chart = Screen.Item("E3Chart5")
' tuSeconds = 0, tuMinutes =1, tuHours = 2, tuDays = 3,
' tuWeeks = 4, tuMonths = 5, tuYears = 6
' 2 minutos
Chart.Axes.Item("NomeDoEixo").SetRealTimePeriod 2,1
Chart.Axes.Item("NomeDoEixo").SetTickSpacing 30,0
End Sub
SetTickSpacing(TickSpacing, TimeUnit)
Configura o espaamento entre os ticks (subdivises da escala) usando a unidade. O
espaamento entre os ticks determinado pelo parmetro TickSpacing. O parmetro
E3 - Scripts - Manual de Referncia
Mtodos 151
TimeUnit determina a unidade. Caso a escala seja numrica, a unidade no
considerada. As opes disponveis no parmetro TimeUnit so as mesmas
demonstradas na tabela do mtodo GetRealTimePeriod().
Exemplo:
Sub CommandButton1_Click()
Set Chart = Screen.Item("E3Chart1")
' 10 (caso seja a escala numrica,
' o valor da unidade no considerado)
Chart.Axes.Item("NomeDoEixo").SetTickSpacing 10,0
Chart.Axes.Item("NomeDoEixo").SetTickSpacing 20,0
End Sub
5.20.3. Mtodos da Coleo de Eixos
AddAxis(AxisName)
Adiciona um novo eixo com o nome determinado no parmetro AxisName e retorna
o eixo criado. Caso se tente criar um eixo com um nome que j existe, ser mostrada
uma mensagem de erro. Querendo-se que o nome seja gerado automaticamente,
deve-se passar o parmetro AxisName em branco.
Exemplo:
Sub CommandButton1_Click()
Set Chart = Screen.Item("E3Chart1")
Set newAxis = Chart.Axes.AddAxis("")
newAxis.Color = RGB(255,0,0)
End Sub
Remove(Index)
Remove o eixo atravs de seu nome ou ndice, conforme especificado no parmetro
!ndex. Os eixos principais 0 e 1 no podem ser removidos. Caso se tente
remov-los, aparecer uma mensagem de erro.
Exemplos:
Sub CommandButton1_Click()
'Este exemplo remove todos os eixos adicionais
Set Chart = Screen.Item("E3Chart")
While (Chart.Axes.Count>2)
Chart.Axes.Remove(2)
Wend
End Sub
E3 - Scripts - Manual de Referncia
152 Mtodos

Sub CommandButton1_Click()
'Remove um eixo adicional, se existir
set Chart=Screen.Item("E3Chart1")
Chart.Axes.Remove(2)
End Sub
5.20.4. Mtodos da Pena
AddPoint()
Adiciona um ponto no final do buffer de tempo real. Portanto, o nmero de pontos
que podem ser adicionados est relacionado ao tamanho deste buffer (propriedade
BufferSize da pena). O tamanho do buffer s vlido aps o mtodo Connect() da
pena. Este mtodo deve ser usado com pena de tempo real, e com a propriedade
UseTimeStamp em False.
Clear()
Apaga os dados do buffer de tempo real, sem diminuir seu tamanho. Este mtodo
no desconecta associaes, nem tampouco remove dados histricos.
E3 - Scripts - Manual de Referncia
Mtodos 153
Connect()
O mtodo Connect() faz a pena conectar-se ao servidor para receber os dados de
tempo real, associando as propriedades XField e YField. Se a pena j estiver
conectada, o mtodo fica inativo.
Exemplo:
Sub CommandButton1_Click()
Set Pen1 = Screen.Item("E3Chart1").Pens.Item("Pen1")
Pen1.Disconnect()
Pen1.Connect()
End Sub
Disconnect()
O mtodo Disconnect() limpa os dados atuais e faz com que a pena no receba mais
os dados de tempo real do seu tag associado. Se a pena j estiver desconectada o
mtodo fica inativo. Quando o mtodo Disconnect() usado em uma pena mista
(DataSourceType=2), ele remove a parte de tempo real, permanecendo a parte
histrica. Em tempo de execuo, para que os dados de tempo real sejam mostrados
novamente preciso chamar o mtodo Connect().
Exemplo:
Sub CommandButton1_Click()
Set Pen1 = Screen.Item("E3Chart1").Pens.Item("Pen1")
Pen1.Disconnect()
Pen1.Connect()
End Sub
GetCursorPos(X,Y)
Retorna a posio que o cursor interceptou a pena no E3Chart. Este mtodo possui
os parmetros X e Y, que correspondem a posio XY do cursor. Se o mtodo for
bem sucedido retorna True, caso contrrio, retorna False.
Exemplo:
Sub CommandButton1_Click()
For each pen in Chart.Pens
If pen.GetCursorPos(aa,bb) Then
strResult = strResult&pen.name&":="&CSTr(CDate(aa))+_
"y" + cstr(bb) + vbnewline
End If
Next
MsgBox strResult
End Sub
E3 - Scripts - Manual de Referncia
154 Mtodos
5.20.5. Mtodos da Coleo de Penas
NOTA: A coleo de penas do E3Chart deve ser acessada atravs da propriedade
Pens.
AddPen(pen)
O mtodo AddPen() adiciona uma nova pena ao E3Chart, retornando a pena criada.
Exemplo:
Sub CommandButton1_Click()
'Cria um nome a pena criada.
Set Pen = Screen.Item("E3Chart1").Pens.AddPen("")
MsgBox Pen.Name
End Sub

SubCommandButton1_DbClick()
'Cria uma pena com o nome "Pen1".
'Se o nome existir, a pena incrementada.
Set Pen = Screen.Item("E3Chart1").Pens.AddPen("Pen1")
MsgBox Pen.Name
End Sub

Sub CommandButton2_Click()
'Cria uma pena e associa a TagDemo1.
Set Chart = Screen.Item("E3Chart1")
Set Pen = Chart.Pens.AddPen("")
MsgBox Pen.Name
Pen.UsetimeStamp = True
Pen.YField = "Dados.TagDemo1"
Pen.Connect()
End Sub
E3 - Scripts - Manual de Referncia
Mtodos 155
ChangePenPos(Source, Dest)
Modifica a ordem de desenho das penas no E3Chart. Este mtodo possui os
seguintes parmetros: Source: determina o ndice da pena a ser movida (comeando
em 1); e Dest: determina o destino da pena (comeando em 1).
Uma situao em que este mtodo especialmente til quando temos uma pena
com o desenho de linha e outra com o desenho de rea. Se a pena de rea for
desenhada depois da pena de linha, ela poder esconder a ltima. A soluo ento
seria inverter a ordem de desenho destas penas.
Exemplo:
Sub CommandButton1_Click()
'Move a pena 1 para a posio 2
Screen.Item("E3Chart1").Pens.ChangePenPos(1,2)
End Sub
Item(Index)
O mtodo Item() retorna um objeto Pena da coleo de penas, especificado pelo
ndice. Este mtodo possui o parmetro !ndex, que pode ser do tipo numrico (se
corresponder ao ndice da pena) ou texto (se corresponder ao nome da pena).
Exemplo:
Sub CommandButton1_Click()
'Obtm a primeira pena.
Set Pen1 = Screen.Item("E3Chart1").Pens.Item(0)
End Sub
Remove(Name)
O mtodo Remove() remove uma pena atravs do nome especificado. Este mtodo
possui o parmetro Name, que determina o nome da pena a ser removida.
Exemplo:
Sub CommandButton1_Click()
Screen.Item("E3Chart1").Pens.Remove(1)
End Sub
E3 - Scripts - Manual de Referncia
156 Mtodos
5.20.6. Mtodos da Legenda
Na legenda, podem ser selecionados vrias colunas. Cada coluna mostra um tipo de
informao e possui um nome e um valor correspondente. A seguir, temos a tabela
da descrio das colunas possveis na legenda.
Opes disponveis para identificao das colunas
OPO DESCRIO
Cor da pena Mostra a cor da pena.
Descriao Mostra a propriedade DocString da pena.
DifX Mostra a diferena entre os cursores inicial e final.
DifY Mmostra a diferena entre os pontos interpolados inicial e
final no eixo Y.
EscalaX Mostra o nome da escala associada ao tagX.
EscalaY Mostra o nome da escala associada ao tagY.
Estado Mostra o status da pena.
FimX Mostra a posio final do cursor.
FimY Mostra o ponto interpolado onde o cursor final cruza a
pena.
!nicioX Mostra a posio inicial do cursor.
!nicioY Mostra o ponto interpolado onde o cursor inicial cruza a
pena.
NaximoY Mostra o valor mximo da pena no intervalo.
NediaY Mostra o valor mdio da pena no intervalo.
NinimoY Mostra o valor mnimo da pena no intervalo.
Nome da pena Mostra o nome da pena
Nome do tag X Mostra o nome do tagX associado pena.
Nome do tag Y Mostra o nome do tagY associado pena.
Unidade Mostra a unidade associada pena.
valor do tag X Mostra o valor do tagX associado pena. Este valor
mostrado quando o grfico est no modo de Pesquisa.
valor do tag Y Mostra o valor do tagY associado pena. Este valor
mostrado quando o grfico est no modo de Pesquisa.

ChangeColumnPos(Source, Dest)
Troca a posio entre duas colunas. Possui os seguintes parmetros: Source: ndice
da coluna que ser movida para Dest; e Dest: ndice da coluna que ser movida para
Source.
Exemplo:
Sub CommandButton1_Click()
Screen.Item("E3Chart1").Legend.ChangeColumnPos 1,2
End Sub
E3 - Scripts - Manual de Referncia
Mtodos 157
Count()
Retorna o nmero de colunas da legenda.
Exemplo:
Sub CommandButton1_Click()
MsgBox Screen.Item("E3Chart1").Legend.Count()
End Sub
InsertColumn(Col, Index)
Insere uma nova coluna na legenda. Este mtodo possui os seguintes parmetros:
Col: identifica a coluna a ser inserida (ver Tabela de Identificao das Colunas,
no incio do tpico Mtodos da Legenda); e !ndex: determina a posio em que a
coluna ser inserida.
Exemplo:
Sub CommandButton1_Click()
Screen.Item("E3Chart1").Legend.InsertColumn 1,2
End Sub

Sub CommandButton1_Click()
Screen.Item("E3Chart1").Legend.InsertColumn "Color",2
End Sub
Item(Col)
Retorna uma coluna da legenda pelo nome ou ndice. O parmetro Col determina o
ndice ou o nome da coluna (ver Tabela de Identificao das Colunas, no incio
do tpico Mtodos da Legenda).
Exemplo:
Sub CommandButton1_Click()
MsgBox Screen.Item("E3Chart1").Legend.Item(1)
End Sub
RemoveColumn(Col)
Remove uma coluna. Este mtodo possui o parmetro Col, que determina a coluna
que ser removida (ver Tabela de Identificao das Colunas, no incio do tpico
Mtodos da Legenda).
Exemplo:
Sub CommandButton1_Click()
Screen.Item("E3Chart1").Legend.RemoveColumn (1)
End Sub
E3 - Scripts - Manual de Referncia
158 Mtodos
5.20.7. Mtodos da Coleo de Consultas
NOTA: Os mtodos a seguir so usados para manipular a coleo de consultas
(Queries).
AddQuery(QueryName, vbIsInternal)
Adiciona uma consulta na coleo de consultas do E3Chart. Este mtodo possui os
parmetros QueryName, que determina o nome da consulta que est sendo
adicionada, e vb!s!nternal, que opcional, obsoleto e no deve ser informado.
Exemplo:
Sub CommandButton1_Click()
Screen.Item("E3Chart1").Queries.AddQuery("Consulta1")
End Sub
Item(Index)
O mtodo Item() retorna um objeto Consulta da coleo de consultas, especificado
pelo ndice. Este mtodo possui o parmetro !ndex, que pode ser do tipo numrico
(se corresponder ao ndice da consulta) ou texto (se corresponder ao nome da
consulta).
Exemplo:
Sub CommandButton1_Click()
Set query = Screen.Item("E3Chart1").Queries.Item(0)
End Sub
Remove(Index)
Remove o objeto Consulta especificado pelo nome ou ndice da coleo de consultas
Este mtodo possui o parmetro !ndex, que pode ser do tipo numrico (se
corresponder ao ndice da consulta) ou texto (se corresponder ao nome da consulta).
Exemplo:
Sub CommandButton1_Click()
Screen.Item("E3Chart1").Queries.Remove(0)
End Sub
UpdateData()
Atualiza os dados de todas as consultas.
Exemplo:
Sub Texto1_Click()
Set E3Chart1 = Screen.Item("E3Chart1")
E3Chart1.Queries.UpdateData()
E3 - Scripts - Manual de Referncia
Mtodos 159
End Sub
5.21. Mtodos de Frmulas
CreateUnit(bstrUnitName)
Cria uma unidade na tabela de frmulas. Este mtodo possui o parmetro
bstrUnitName que determina o nome da unidade a ser criada. Retorna True se
conseguir realizar a operao; caso contrrio, retorna False.
Exemplo:
Sub Botao1_Click()
Dim val
'Quando clica no boto, cria uma nova Unit
Application.GetObject("Formula1").CreateUnit("Unit2")
End Sub
CreateValue(bstrValueName)
Cria um conjunto de valores na tabela de frmulas. Este mtodo possui o parmetro
bstrvalueName, que determina o nome do conjunto a ser criado. Retorna True se
conseguir realizar a operao; caso contrrio, retorna False.
Exemplo:
Sub Boto1_Click()
Dim val
'Quando clica no boto, cria um novo Valor
Application.GetObject("Formula1").CreateValue("Modelo5")
End Sub
DeleteUnit(bstrUnitName)
Apaga uma unidade na tabela de frmulas. Este mtodo possui o parmetro
bstrUnitName, que informa o nome da unidade a ser apagada. Retorna True se
conseguir realizar a operao; caso contrrio, retorna False.
Exemplo:
Sub boto1_Click()
Dim val
'Quando clica no boto, apaga a unit
Application.GetObject("Formula1").DeleteUnit("Unit2")
End Sub
E3 - Scripts - Manual de Referncia
160 Mtodos
DeleteValue(bstrValueName)
Apaga um conjunto de valores na tabela de frmulas. Este mtodo possui o
parmetro bstrvalueName, que informa o conjunto de valores a ser apagado.
Retorna True se conseguir realizar a operao; caso contrrio, retorna False.
Exemplo:
Sub Botao1_Click()
Dim val
'Quando clica no boto, apaga um conjunto de valores
Application.GetObject("Formula1").DeleteValue("Modelo5")
End Sub
FindUnit(bstrUnitName)
Verifica se uma determinada unidade existe no banco de dados das frmulas. Este
mtodo possui o parmetro bstrUnitName, que determina o nome da unidade a ser
encontrada. O mtodo retorna True se conseguir realizar a operao; caso contrrio,
retorna False.
Exemplo:
Sub Boto1_Click()
Dim val
'Quando clica no boto, aparece uma caixa de mensagem
'(messagebox) com o resultado
MsgBox (Application.GetObject("Formula1")._
FindUnit("Unit2"))
End Sub
FindValue(bstrValueName)
Verifica se um determinado conjunto de valores existe no banco de dados de
frmulas. Este mtodo possui o parmetro bstrvalueName, que informa o nome do
conjunto a ser verificado. Retorna True se conseguir realizar a operao; caso
contrrio, retorna False.
Exemplo:
Sub Botao1_Click()
Dim val
'Quando clica no boto aparece uma caixa de mensagem
'(messagebox) com o resultado
MsgBox CStr(Application.GetObject("Formula1")._
FindValue("Modelo5"))
End Sub
E3 - Scripts - Manual de Referncia
Mtodos 161
GetUnitData(bstrUnitName, bstrTemplateName, pVal)
Coloca na varivel indicada em pval o tag associado unidade bstrUnitName do
template bstrTemplateName. Retorna True se a operao foi bem-sucedida, ou
False, caso contrrio. Exemplo:
Sub Botao1_Click()
Dim qualTag, qualFormula
Application.GetObject("Formula1").GetUnitData_
"Unidade1", "Template2", var1
End Sub
GetValueData(bstrValueName, bstrTemplateName, pVal)
Coloca na varivel pval o valor do conjunto de valores bstrvalueName que est
associado ao template bstrTemplateName. Retorna True se a operao foi
bem-sucedida, ou False, caso contrrio.
Exemplo:
Sub Botao1_Click()
Dim Valor, qualFormula
Application.GetObject("Formula1").GetValueData_
"Valores4", "Template2", var1
End Sub
LoadFormulaValuesQuiet(bstrUnitName, bstrValueName)
Carrega um conjunto de valores para uma unidade de destino, sem apresentar
nenhuma mensagem. Este mtodo possui os seguintes parmetros:
bstrUnitName: determina o nome da unidade e bstrvalueName: determina o nome
do conjunto de valores. Retorna True quando executado com sucesso, e False
quando falha (o que no significa um erro de script, necessariamente).
NOTA: Este mtodo tambm acessado atravs do objeto Viewer.
Exemplo:
Sub Botao1_Click()
Application.LoadFormulaValuesQuiet_
"Formula1", "Unidade3", "Valores1"
End Sub
RenameUnit(bstrUnitName, bstrNewUnitName)
Renomeia uma determinada unidade existente na tabela de frmulas. Retorna True
se conseguir realizar a operao, ou False, caso contrrio. Este mtodo possui os
E3 - Scripts - Manual de Referncia
162 Mtodos
seguintes parmetros: bstrUnitName: determina o nome da unidade a ser
encontrada; e bstrNewUnitName: informa o nome da unidade.
Exemplo:
Sub Botao1_Click()
Dim val
'Quando clica no boto, renomeia uma unit
Application._
GetObject("Formula1").RenameUnit "Unit2", "Unit3"
End Sub
RenameValue(bstrValueName, bstrNewValueName)
Renomeia um determinado conjunto de valores existentes na tabela de frmulas.
Retorna True se conseguir realizar a operao, ou False, caso contrrio. Este mtodo
possui os seguintes parmetros: bstrvalueName: informa o nome do conjunto de
valores; e bstrNewvalueName: informa o novo nome do conjunto de valores.
Exemplo:
Sub Boto1_Click()
Dim val
'Quando clica no boto, renomeia um conjunto de valores
Application._
GetObject("Formula1").RenameValue "Modelo5","ModeloABC"
End Sub
SaveFormulaValues(bstrUnitName, bstrValueName,
[IgnoreErrors])
Este mtodo salva os valores atuais dos tags de uma unidade de origem em um
conjunto de valores na tabela de frmulas. Este mtodo no faz a verificao dos
limites, caso o template tenha restrio do tipo absoluta. O parmetro bstrUnitName
o nome da unidade de origem, e o parmetro bstrvalueName o conjunto de
valores que ser salvo. Retorna True se conseguir realizar a operao; do contrrio,
retorna False. O parmetro !gnoreErrors, quando em True, faz com que todos os
valores sejam gravados, independentemente de haver erros de links na Frmula. Seu
valor padro False, no entanto.
Exemplo:
Sub CommandButton1_Click()
Application. GetObject("Formula1")._
SaveFormulaValues "Unid1", "Valor1"
End Sub
E3 - Scripts - Manual de Referncia
Mtodos 163
SetUnitData(bstrUnitName, bstrTemplateName, bstrData)
Carrega para a tabela de frmulas o tag identificado para um certo modelo
(template), numa determinada unidade. Retorna True se conseguir realizar a
operao, ou False, caso contrrio. Este mtodo possui os seguintes parmetros:
bstrUnitName: informa o nome da unidade; bstrTemplateName: informa o nome
do template do tag; e bstrData: informa o nome da varivel que contm o nome do
tag.
Exemplo:
Sub Botao1_Click()
Dim val
Application.GetObject("Formula1").SetUnitData_
"Unidade2", "Template5", 50
End Sub
SetValueData(bstrValueName, bstrTemplateName, bstrData)
Altera o valor referente a um template definido para um determinado conjunto de
valores. Este mtodo faz a verificao dos limites, retornando True se conseguir
realizar a operao, ou False, caso contrrio. Este mtodo possui os seguintes
parmetros: bstrvalueName: determina o nome do conjunto de valores;
bstrTemplateName: determina o nome do template; e bstrData: determina o nome
da varivel que possui o valor.
Exemplo:
Sub Botao1_Click()
Dim val
Application.GetObject("Formula1").SetValueData_
"Unidade2", "Template1", 100
End Sub
E3 - Scripts - Manual de Referncia
164 Mtodos
5.22. Mtodos dos Relatrios
Export([ExportFilter], [ExportFileName])
Imprime um relatrio de acordo com o formato especificado no arquivo. Este
mtodo possui o parmetro strExportFilter, que determina o filtro para o relatrio,
indicando o formato para a exportao. Pode assumir as seguintes opes:
PDF: Exporta os dados para o formato Adobe PDF.
Excel: Exporta os dados para o formato de planilha Excel.
HTML: Exporta os dados para o formato HTML.
TEXT: Exporta os dados para um arquivo-texto.
RTF: Exporta os dados para o formato Rich Text Format.
TIFF: Exporta os dados para o formato Tag Image File Format.

Ao simplesmente informar o nome de um filtro como exposto acima, os dados sero
exportados utilizando-se as propriedades em comum de cada filtro. Pode-se
modificar as propriedades comuns de um filtro de exportao atravs do mtodo
GetExportFilter() antes de exportar os dados.
O nome do arquivo deve ser informado no parmetro strExportFileName.
E3 - Scripts - Manual de Referncia
Mtodos 165
Exemplo:
Sub Button1_Click()
Set report = Application.LoadReport("[Relatrio3]")
Select case Application._
SelectMenu("PDF|Excel|HTML|RTF|Texto|TIFF|Texto(CSV)")
Case 1
Report.Export "PDF", "C:\correio\reports\report.pdf"
MsgBox "Exportado para PDF!"
Case 2
Report.Export "EXCEL", "C:\correio\reports\report.XLS"
MsgBox "Exportado para XLS!"
Case 3
Report.Export "HTML", "C:\correio\reports\report.html"
MsgBox "Exportado para HTML!"
Case 4
Report.Export "RTF", "C:\correio\reports\report.rtf"
MsgBox "Exportado para RTF!"
Case 5
Report.Export "TEXT", "C:\correio\reports\report.txt"
MsgBox "Exportado para TXT!"
Case 6
Report.Export "TIFF", "C:\correio\reports\report.tiff"
MsgBox "Exportado para TIFF!"
Case 7
Set reportFilter = report.GetExportFilter("TEXT")
reportFilter.FileName="C:\correio\reports\report2.txt"
reportFilter.TextDelimiter=","
report.Export reportFilter
MsgBox "Exportado para TXT usando filtro!"
End Select
End Sub
E3 - Scripts - Manual de Referncia
166 Mtodos
GetExportFilter(FilterName)
Retorna um objeto que especifica a customizao dos parmetros de exportao.
Este mtodo possui o parmetro FilterName, que determina o filtro para o relatrio,
indicando o tipo de formato para a exportao. Pode assumir as seguintes opes:
PDF: Exporta os dados para o formato Adobe PDF.
Excel: Exporta os dados para o formato de planilha Excel.
HTML: Exporta os dados para o formato HTML.
TEXT: Exporta os dados para um arquivo- texto.
RTF: Exporta os dados para o formato Rich Text Format.
TIFF: Exporta os dados para o formato Tag Image File Format.
Depois de obtido o filtro, as seguintes propriedades podem ser modificadas:
Propriedades passveis de modificao
PROPRIEDADE FILTRO DESCRIO
AutoRowHeight Excel Em True (default), configura a altura da
linha automaticamente. Em False, configura
a altura para o maior elemento na linha.
BorderSpace Excel Espaamento mnimo entre as clulas (Valor
padro: 59 twips).
CreateCSSFile HTML Se verdadeiro, gera um arquivo CSS no
diretrio TMLOutputPath.
DoubleBoundaries Excel Em True, indica que os elementos alinhados
direita devem repor os alinhados
esquerda na mesma coluna,. Caso contrrio,
deixe em falso para liberar mais espao.
ExportRange HTML Indica uma faixa de pginas para serem
exportadas. Exemplo: 1, 2, 3-9, 14
FaxExport TIFF Objeto que permite exportar os dados no
formato RFC 1314 TIFF.
FileName Todos Informa o nome do arquivo para o qual os
dados sero exportados.
GenPageBreaks HTML Em True, colocar quebras de pgina abaixo
do elemento mais inferior em cada pgina do
relatrio.
HTNLOutputPath HTML Caminho default para os arquivos HTML.
JPGQuality PDF Indica o nvel de qualidade das imagens
exportadas (0 a 100).
NinColumnWidth Excel Tamanho mnimo da coluna. O valor padro
1011 twips.
NinRowHeight Excel Tamanho mnimo da linha.
E3 - Scripts - Manual de Referncia
Mtodos 167
PROPRIEDADE FILTRO DESCRIO
NultiSheet Excel Em True, cada pgina no relatrio vai para
uma planilha separada.
PageDelimiter TEXT Configura/Retorna o caractere delimitador
entre pginas.
SuppressEmptyLines TEXT Retira/Insere linhas vazias para efeito de
layout.
TextDelimiter HTML Configura/Retorna o caractere delimitador
entre os textos.
TrimEmptySpace Excel Em True, o espao vertical entre os
elementos ser eliminado. O padro False.
Unicode TEXT Determina se o texto vai ser salvo em
formato Unicode (16 bits).
WebCacheOutput HTML Em True, o relatrio ser exportado para o
servio de WebCache. Caso contrrio
(default), no ser exportado.
Print()
Imprime um relatrio.
Exemplo:
Sub Rect_Click()
Application.LoadReport("[Relatrio3]").Print()
End Sub
PrintPreview()
Faz uma prvia de impresso de relatrio na Tela. Se o relatrio for mostrado
corretamente na tela, retorna True. Caso o usurio aperte o boto [Cancel| ou
acontea algum erro, retorna False.
E3 - Scripts - Manual de Referncia
168 Mtodos
Exemplo:
Sub CommandButton1_Click()
Set report = Application.LoadReport("[Relatrio1]")
Inicio = Application.GetObject("Dados.Grafico.datai").Value
Final = Application.GetObject("Dados.Grafico.dataf").Value
report.Item("Consulta1").SetVariableValue "Ini",Inicio
report.Item("Consulta1").SetVariableValue "Fim",Final
report.PrintPreview()
End Sub
Query()
Retorna o objeto Consulta atualmente selecionado no relatrio, informado atravs da
propriedade SourceQuery. (Pode haver mais de uma consulta no relatrio).
Exemplo:
Sub Rect_Click()
Set Query = Application.LoadReport("[Relatrio3]").Query()
Query.SetVariableValue("Chave1","XYZ")
End Sub


Propriedades 169

Todo o objeto possui Propriedades, que servem para guardar informaes a
respeito de suas caractersticas. Por exemplo: um objeto do tipo Retngulo possui a
propriedade Name, que contm seu nome, e as propriedades Width e Height, que
guardam a sua largura e a sua altura, respectivamente, entre outras.
Neste captulo, listamos todas as propriedades dos objetos do E3. Cada entrada traz
o nome da propriedade, descrio e, quando aplicvel, um exemplo de seu uso. O
primeiro tpico (Propriedades Padro) introduz as propriedades presentes em
todos os objetos do E3. Os tpicos seguintes trazem as propriedades especficas de
cada objeto ou grupo de objetos mencionados em seu ttulo. Em alguns destes
tpicos, o primeiro item tambm de propriedades comuns, neste caso, propriedades
comuns a todos os objetos do grupo sendo descrito (por exemplo, no tpico
Propriedades dos Objetos de Tela, o primeiro item Propriedades Padro dos
Objetos de Tela, onde esto agrupadas todas as propriedades comuns a este grupo
de objetos).
As propriedades so identificadas por um cone que indica o tipo de dado suportado
em seu contedo. Estes so:
Tipos de Dados disponveis
CONE DADO DESCRIO

Booleano
Retorna Verdadeiro (True) ou Falso (False).

Numrico Retorna positivo, negativo, inteiro ou
double, a ser definido pela propriedade.
Data
Retorna uma data em formato Gregoriano
(desde 1899).

Texto
Retorna um texto

variant
Retorna um tipo Varivel, que pode assumir
vrios formatos.

Cor
Retorna uma cor no formato RGB.

Link Retorna uma associao entre objetos.

Enum
Retorna um conjunto determinado de
valores.

Capitulo
6
6. Propriedades
E3 - Scripts - Manual de Referncia
170 Propriedades
Algumas propriedades podem propagar seus valores mesma propriedade em seus
objetos-filhos; neste caso, so chamadas de propriedades propagveis. Pode-se, no
entanto, forar a propriedade do objeto-filho a se comportar de modo diferente.
NOTA: O E3 utiliza para definio de coordenadas e espessura o sistema
HIMETRIC. Neste sistema, cada unidade lgica equivale a um milsimo de
centmetro; ou seja, cada 1000 unidades equivalem a 1 centmetro. Assim, este o
padro adotado na descrio das propriedades do E3, quando aplicvel.
6.1. Propriedades Padro
Application: A propriedade Application retorna o objeto de aplicao
relacionado a este objeto. Com o objeto aplicao possvel, por exemplo, buscar
outros objetos presentes no aplicativo.
Exemplo:
Sub Tela1_Click()
'Quando clica na tela, faz busca por um tag
Dim obj
Set obj = Application.GetObject("DataServer1.InternalTag1")
obj.Value = 100
End Sub
Count: Retorna o nmero de objetos-filhos (itens) que o objeto possui. Esta
propriedade funciona em conjunto com o mtodo Item(). Se o objeto no possuir
filhos, o valor retornado ser 0.
Exemplo:
Sub Tela1_Click()
'Num clique de tela, faz busca por todos
'os objetos da tela e ajusta a propriedade
'ForegroundColor para vermelho
Dim obj
For i=1 to Count
Set obj = Item(i) 'Pega objeto filho
obj.ForegroundColor = RGB(255,0,0)
Next
End Sub
E3 - Scripts - Manual de Referncia
Propriedades 171
DocString: Texto livre que tem por objetivo possibilitar a documentao das
funcionalidades e/ou caractersticas do objeto pelos programadores do projeto.
Exemplo:
Sub CommandButton1_Click()
Docstring = "Este boto ativa o condensador do sistema."
MsgBox Docstring
End Sub
Links: Retorna um objeto que uma coleo das conexes (ou associaes) de
um objeto qualquer do E3. Esta propriedade acessvel apenas em tempo de
execuo.
Name: Identifica cada um dos objetos presentes no sistema. Alterar esta
propriedade implica em modificar todas as outras propriedades/scripts que utilizam
este objeto. No aconselhvel a alterao desta propriedade em execuo.
Exemplo:
Sub CommandButton9_Click()
MsgBox "O nome da Tela "&(Screen.Name)
End Sub
Parent: Retorna o objeto-pai deste objeto. Sendo assim, se um objeto est
inserido na Tela, a propriedade Parent retorna o objeto Tela. Da mesma forma, se
um Tag Interno est inserido diretamente abaixo de um Servidor de Dados, a
propriedade Parent do Tag Interno apontar para o Servidor de Dados.
Exemplo:
Sub TagComunicacao1_OnStartRunning()
'Quando inicia o Tag de comunicao seta o P1 do pai, que
' um Driver de Comunicao
Parent.P1 = 1
End Sub
PathContainer: Retorna um string contendo o caminho do objeto que contm o
objeto atual, incluindo as pastas. Este valor determinado apenas no momento em
que for requisitado, por isso no recomendado criar associaes para esta
propriedade.
PathName: Identifica o caminho do objeto no sistema. Esta propriedade
acessvel apenas em tempo de execuo.
E3 - Scripts - Manual de Referncia
172 Propriedades
Exemplo:
Sub CommandButton9_Click()
MsgBox "O path da Tela "&(Screen.PathName)
End Sub
PathVolume: Retorna um string contendo o nome do arquivo .prj ou .lib que
contm o objeto. No E3 Studio, a propriedade retorna o caminho completo do
projeto ou biblioteca ("c:\folder\folder\volume.prj"). Em tempo de execuo, os
objetos que rodam no Viewer retornam sempre um string vazio. J os que rodam no
servidor retornam o caminho relativo do projeto ou biblioteca, conforme ele estiver
armazenado no Domnio (volume.prj). Este valor determinado apenas no
momento em que for requisitado, por isso no recomendado criar associaes para
esta propriedade.
6.2. Propriedades dos Drivers
6.2.1. Propriedades do Driver de Comunicao
DriverLocation: Define qual ser o driver utilizado pelo driver de comunicao
para efetuar a comunicao com o equipamento/dispositivo. Esta propriedade aceita
um string com o caminho completo do driver. Aps isso, a propriedade DriverName
mudar para a descrio do driver. Esta propriedade no pode ser modificada aps
iniciada a comunicao. O valor padro desta propriedade vazio.
Exemplo:
Sub Driver1_BeforeStart()
'Configura o DriverLocation como "c:\drivers\Driver1.dll"
DriverLocation = "c:\drivers\" & Name & ".dll"
End Sub
DriverName: A propriedade DriverName contm o string que descreve o driver
associado ao objeto driver de comunicao. Para isso, deve-se antes configurar a
propriedade DriverLocation. Esta propriedade somente para leitura. O valor
padro desta propriedade vazio. Exemplo:
Sub Driver1_BeforeStart()
MsgBox DriverName
End Sub
E3 - Scripts - Manual de Referncia
Propriedades 173
EnableReadGrouping: Permite otimizaes de leitura (agrupamento automtico
de tags). Esta propriedade no pode ser alterada em tempo de execuo. Seu valor
padro False (no permite otimizaes de leitura).
P1: Utilize a propriedade P1 para configurar o driver. Consulte a documentao
do driver para sua correta parametrizao. Esta propriedade no pode ser modificada
aps iniciada a comunicao. Exemplo:
Sub Driver1_BeforeStart()
'Driver1 um objeto do tipo Driver de Comunicao
DriverLocation = "c:\driver\plc.dll"
P1 = 2
P2 = 1
P3 = 9600
End Sub
P2: Utilize a propriedade P2 para configurar o driver. Consulte a documentao
do driver para sua correta parametrizao. Esta propriedade no pode ser modificada
aps iniciada a comunicao. O valor padro desta propriedade 0.
Exemplo:
Sub Driver1_BeforeStart()
'Driver1 um objeto do tipo Driver de Comunicao
DriverLocation = "c:\driver\plc.dll"
P1 = 2
P2 = 1
P3 = 9600
End Sub
P3: Utilize a propriedade P3 para configurar o driver. Consulte a documentao
do driver para sua correta parametrizao. Esta propriedade no pode ser modificada
aps iniciada a comunicao. Exemplo:
Sub Driver1_BeforeStart()
'Driver1 um objeto do tipo Driver de Comunicao
DriverLocation = "c:\driver\plc.dll"
P1 = 2
P2 = 1
P3 = 9600
End Sub
E3 - Scripts - Manual de Referncia
174 Propriedades
P4: Utilize a propriedade P4 para configurar o driver. Consulte a documentao
do driver para sua correta parametrizao. Esta propriedade no pode ser modificada
aps iniciada a comunicao. Exemplo:
Sub Driver1_BeforeStart()
'Driver1 um objeto do tipo Driver de Comunicao
DriverLocation = "c:\driver\plc.dll"
P1 = 2
P2 = 1
P3 = 9600
P4 = 500
End Sub
ParamDevice: Define o endereo do equipamento acessado pelo driver. Esta
propriedade herdada pelos tags filhos do driver, que podem sobrescrever este
valor, se necessrio.
ReadRetries: Indica o nmero de re-tentativas de leitura do driver em caso de
erro. Se for configurado para 2, por exemplo, indica que o driver vai tentar duas
vezes mais uma comunicao falhada, sem contar a tentativa original.
ShareMaximum: A propriedade ShareMaximum define o nmero mximo de
drivers de comunicao que sero agrupados em um I/O Server compartilhado. Esta
propriedade s utilizada se a propriedade ShareServer estiver habilitada.
Exemplo:
' Este driver no ser compartilhado
ShareServer = False
ShareMaximum = <qualquer valor>
'todos os drivers sero agrupados no mesmo IOServer
'no define um limite
ShareServer = True
ShareMaximum = 0
'agrupa cada 5 drivers em um IOServer
ShareServer = True
ShareMaximum = 5
ShareServer: Se a propriedade ShareServer estiver configurada para True, isto
significa que este driver ir compartilhar sua execuo entre os demais objetos
Driver de Comunicao que possuam o mesmo string em DriverLocation. Isto
implica que somente o primeiro driver de comunicao configurado executar a
inicializao da comunicao. Todos os demais objetos driver de comunicao
E3 - Scripts - Manual de Referncia
Propriedades 175
compartilhados ignoraro todos os parmetros de configurao P1 at P4, e tambm
outras configuraes. Do contrrio, se a propriedade estiver configurada para False,
o driver no compartilhar qualquer tipo de comunicao com outros objetos Driver
de Comunicao. Esta propriedade no pode ser modificada aps iniciada a
comunicao. O valor padro desta propriedade False.
WriteFeedbackMode: Esta propriedade permite controlar a confirmao (ou
feedback) das escritas em tags. aplicvel somente a tags que possam ser lidos,
ou seja, possuam a propriedade AllowRead em True. Atravs desta propriedade,
possvel tornar mais imediata a leitura de tags que recebem escritas. Esta
propriedade possui as seguintes opes de configurao:
Opes disponveis para WriteFeedbackMode
OPO DESCRIO
0- wfWaitNextRead A leitura do tag ser feita normalmente no prximo scan.
1- wf!mmediateReadAfterWrite Aps cada escrita, uma leitura de confirmao ser feita
o mais cedo possvel.
2- wfTrustWriteSuccess Se o driver indicar sucesso na escrita, o valor escrito
assumido diretamente pelo tag, sem l-lo do PLC.

O valor padro desta propriedade 1-wf!mmediateReadAfterWrite. Aplicaes
anteriores a existncia desta propriedade assumem o valor 0-wfWaitNextRead
quando carregadas. Exemplo:
Sub CommandButton1_Click()
Dim modo
modo = Application.GetObject("Driver1").WriteFeedbackMode
MsgBox modo
Select case modo
Case 0
MsgBox "A leitura do tag ser feita no prximo scan"
Case 1
MsgBox "Aps cada escrita, uma leitura de confirmao_
ser feita o mais cedo possvel"
Case 2
MsgBox "Se o driver indicar sucesso na escrita, _
o valor escrito assumido diretamente pelo o tag, _
sem l-lo do PLC."
End Select
End Sub
E3 - Scripts - Manual de Referncia
176 Propriedades
NOTA: Quando for usado o modo 2- wfTrustWriteSuccess, o timestamp e a
qualidade podem ficar errados, j que numa escrita bem sucedida, o valor
assumido pelo tag sem buscar o Timestamp e a Qualidade no PLC. Alm disso, o
prprio valor assumido pode ter um pequeno desvio devido a qualquer tipo de
arredondamento que possa ocorrer no driver e/ou PLC. Deve ser levado em conta
ainda que alguns drivers ou protocolos podem indicar sucesso, mesmo quando a
escrita falhou. Por tudo isso, os outros modos (1-wfImmediateReadAfterWrite ou 0-
wfWaitNextRead) devem ser preferidos sempre que possvel.
WriteRetries: Indica o nmero de re-tentativas de escrita do driver em caso de
erro. Se for 2, indica que o driver vai tentar duas vezes mais uma comunicao
falhada, sem contar a tentativa original.
WriteSyncMode: Determina como as escritas sero enviadas para o IOServer
(modo sncrono ou assncrono). Esta propriedade possui as seguintes opes de
configurao:
Opes disponveis para WriteSyncMode
OPO DESCRIO
0-wsmDefault
Modo sncrono (padro).
1-wsmSync
Modo sncrono. Sempre que um valor escrito em
algum tag o E3Run envia a escrita para o IOServer e
aguarda o retorno da escrita
2-wsmAsyncUnconfirmed
Modo assncrono sem confirmao. Todas as escritas
so enviadas para o IOServer sem aguardar o retorno, e
assume-se sempre que a escrita funcionou. Quando em
modo assncrono, os mtodos de escrita dos tags (Write,
WriteEx) sempre retornam True imediatamente, e o
status da escrita (nos mtodos que retornam este status)
fica sempre vazio (Empty). O script OnTagWrite do
driver executado assim que a escrita enviada para o
IOServer, e o parmetro Succeeded fica sempre em
True.

As escritas assncronas sero executadas pelo IOServer assim que o driver ficar
disponvel (quando a leitura atual tiver acabado). Se vrias escritas assncronas
forem enviadas para o IOServer, o driver s retomar as leituras depois que todas as
escritas assncronas forem executadas.
E3 - Scripts - Manual de Referncia
Propriedades 177
6.2.2. Propriedades do Tag de Comunicao
AdviseType: Controla o modo Advise. As opes disponveis so:
Opes disponveis para AdviseType
OPO DESCRIO
0- Always!nAdvise O tag mantido atualizado se a propriedade AllowRead for True.
1- AdviseWhenLinked O tag s atualizado se AllowRead for True e o tag estiver
associado a algum objeto ativo, por exemplo, um Display de uma
Tela aberta, um Alarme habilitado, entre outros. A associao do
tag para esse propsito pode ser feita nas seguintes propriedades:
Value, RawValue, TimeStamp, Quality e Bit00 .. Bit31 do Tag de
Comunicao.

Exemplo:
Sub CommandButton3_Click()
MsgBox Application._
Application.GetObject("Driver1.Tag1").AdviseType
End Sub
AllowRead: Configure esta propriedade para definir se este tag dever ou no ser
lido pelo driver de comunicao. Se esta propriedade estiver configurada para True,
o driver automaticamente atualizar as propriedades Value e Bits (de Bit00 at
Bit31) deste objeto em intervalos de tempo definidos pela propriedade Scan. Caso
contrrio, este tag de comunicao no ser lido. Esta propriedade pode ser
modificada em execuo. O valor padro desta propriedade True. Exemplo:
Sub Botao1_Click()
'Faz com que seja parada a leitura do tag
Set obj = Application.GetObject("Driver1.tag")
obj.AllowRead = False
End Sub
AllowWrite: Configure esta propriedade para definir se este tag dever ou no
ser escrito automaticamente quando for modificada a propriedade Value ou qualquer
propriedade Bit (de Bit00 at Bit31). Se esta propriedade estiver configurada para
True, as modificaes sero enviadas para o equipamento/dispositivo associado ao
driver de comunicao. Caso contrrio, as modificaes sero ignoradas. O valor
padro desta propriedade True.
Exemplo:
Sub Botao1_Click()
'Faz com que seja desabilitada a escrita do tag
E3 - Scripts - Manual de Referncia
178 Propriedades
Set obj = Application.GetObject("Driver1.tag")
obj.AllowWrite = False
End Sub
Bit00-Bit031: As propriedades de bit Bit00 at Bit31 representam juntas os 32
bits do valor presente na propriedade Value do objeto tag de comunicao, sendo
Bit00 o bit menos significativo e Bit31 o bit mais significativo. Modificar cada um
destes bits implica na igual modificao da propriedade Value do tag, e vice-versa,
mas isto somente ocorre quando a propriedade UseBitFields estiver configurada para
True. O valor padro destas propriedades False.
DeviceHigh: A propriedade DeviceHigh define qual o valor mximo atingido
pelo tag no equipamento/dispositivo. Esta propriedade ser utilizada para fazer o
ajuste de escala do valor proveniente do equipamento/dispositivo antes de ser
atribudo propriedade Value. Da mesma forma, no momento da escrita feita a
operao inversa antes de enviar o valor para o driver. Esta converso s ocorre
quando a propriedade EnableScaling est configurada para True. O valor padro
desta propriedade 1000. Exemplo:
Sub Tag_OnStartRunning()
'Faz o ajuste de escala de um tag de temperatura
'que varia de 0 a 255 no PLC mas significam na
'prtica de 0 a 100 graus Celsius
EU = "Graus Celsius"
EnableScaling = True
DeviceHigh = 255
DeviceLow = 0
EUHigh = 100
EULow = 0
End Sub
NOTA: Os valores dos bits (Propriedades Bit00..Bit31) no so afetadas pelo ajuste
de escala. Isto , representam os bits do valor lido do equipamento, antes da
converso.
DeviceLow: A propriedade DeviceLow define o valor mnimo atingido por este
tag no equipamento/dispositivo. Esta propriedade ser utilizada para fazer o ajuste
de escala do valor proveniente do equipamento/dispositivo antes de ser atribudo
propriedade Value. Da mesma forma, no momento da escrita feita a operao
inversa antes de enviar o valor para o driver. Esta converso s ocorre quando a
propriedade EnableScaling est configurada para True.
Exemplo:
E3 - Scripts - Manual de Referncia
Propriedades 179
Sub Tag_OnStartRunning()
'Faz o ajuste de escala de um tag de temperatura
'que varia de 0 a 255 no PLC, mas significam na
'prtica de 0 a 100 graus Celsius
EU = "Graus Celsius"
EnableScaling = True
DeviceHigh = 255
DeviceLow = 0
EUHigh = 100
EULow = 0
End Sub
NOTA: Os valores dos bits (Propriedades Bit00..Bit31) no so afetadas pelo ajuste
de escala, isto , representam os bits do valor lido do equipamento, antes da
converso.
EnableDeadBand: A propriedade EnableDeadBand habilita/desabilita a
propriedade PercentDeadBand. Se esta propriedade estiver configurada para True, o
valor do tag atualizado somente se este mudar e o novo valor exceder o limite
definido pela propriedade PercentDeadBand. Caso contrrio, o tag sempre
atualizado e o limite de deadband (banda morta) no verificado. Sempre mantenha
a banda morta (deadband) habilitada, pois ela melhora a performance da aquisio
de dados e processamento. Voc deve desabilitar o deadband somente em casos
onde o Driver de Comunicao estiver retornando eventos de tags digitais ou
analgicos, e seja necessrio processar estes eventos via script no evento OnRead do
tag. O valor padro desta propriedade True.
EnableDriverEvent: Esta propriedade utilizada para controlar a gerao do
evento OnTagRead, que ocorre no driver de comunicao que contm o bloco. Se a
propriedade EnableDriverEvent do tag estiver configurada para True, ser habilitada
a gerao do evento OnTagRead por este tag. Caso contrrio, no ocorre. Os trs
tipos de elementos de comunicao (tag de comunicao, bloco de comunicao e
elemento de bloco) podem gerar este evento. O evento ocorre no driver e no no
bloco.
EnableScaling: A propriedade EnableScaling habilita/desabilita a escala de valor
para o valor enviado e recebido do equipamento/dispositivo. Se esta propriedade
estiver configurada para True, todo valor proveniente do equipamento/dispositivo
sofrer ajuste de escala nas propriedades DeviceHigh, DeviceLow, EUHigh e
EULow, antes de ser atribudo propriedade Value. Caso contrrio, nenhum ajuste
de escala ser efetuado em nenhum dos dois sentidos (escrita e leitura). Exemplo:
E3 - Scripts - Manual de Referncia
180 Propriedades
Sub Tag_OnStartRunning()
'Faz o ajuste de escala de um tag de temperatura
'que varia de 0 a 255 no PLC mas significam na
'prtica de 0 a 100 graus Celsius
EU = "Graus Celsius"
EnableScaling = True
DeviceHigh = 255
DeviceLow = 0
EUHigh = 100
EULow = 0
End Sub
EU: Esta propriedade utilizada para identificar a unidade de engenharia que o
valor representa, como por exemplo: graus, metros, KW/h etc.
Exemplo:
Sub Tag_OnStartRunning()
'Faz o ajuste de escala de um tag de temperatura
'que varia de 0 a 255 no PLC mas significam na
'prtica de 0 a 100 graus Celsius
EU = "Graus Celsius"
EnableScaling = True
DeviceHigh = 255
DeviceLow = 0
EUHigh = 100
EULow = 0
End Sub
EUHigh: Define qual o valor mximo que dever ser atribudo propriedade
Value, ajustando a escala ao valor do equipamento/dispositivo antes desta atribuio.
Da mesma forma, no momento da escrita feita a operao inversa antes de enviar o
valor para o driver. Esta converso s ocorre quando a propriedade EnableScaling
est configurada para True. O valor padro desta propriedade 1000.
E3 - Scripts - Manual de Referncia
Propriedades 181
Exemplo:
Sub Tag_OnStartRunning()
'Faz o ajuste de escala de um tag de temperatura
'que varia de 0 a 255 no PLC mas significam na
'prtica de 0 a 100 graus Celsius
EU = "Graus Celsius"
EnableScaling = True
DeviceHigh = 255
DeviceLow = 0
EUHigh = 100
EULow = 0
End Sub
NOTA: Os valores dos bits (Propriedades Bit00..Bit31) no so afetadas pelo ajuste
de escala. Isto , representam os bits do valor lido do equipamento, antes da
converso.

EULow: Define qual o valor mnimo que dever ser atribudo propriedade
Value, ajustando a escala ao valor do equipamento/dispositivo antes desta atribuio.
Da mesma forma, no momento da escrita, feita a operao inversa antes de enviar
o valor para o driver. Esta converso s ocorre quando a propriedade EnableScaling
est configurada para True. O valor padro desta propriedade 0.
Exemplo:
Sub Tag_OnStartRunning()
'Faz o ajuste de escala de um tag de temperatura
'que varia de 0 a 255 no PLC mas significam na
'prtica de 0 a 100 graus Celsius
EU = "graus Celsius"
EnableScaling = True
DeviceHigh = 255
DeviceLow = 0
EULow = 100
End Sub
NOTA: Os valores dos bits (Propriedades Bit00..Bit31) no so afetadas pelo ajuste
de escala. Isto , representam os bits do valor lido do equipamento, antes da
converso.
E3 - Scripts - Manual de Referncia
182 Propriedades
N1: Especifica a varivel do equipamento/dispositivo a que este tag estar
associado. Consulte a documentao do driver para sua correta parametrizao. Esta
propriedade pode ser modificada aps iniciada a comunicao. O valor padro desta
propriedade 0.
Exemplo:
Sub Tag_OnStartRunning()
N1 = 10
End Sub
N2: Especifica a varivel do equipamento/dispositivo a que este tag estar
associado. Consulte a documentao do driver para sua correta parametrizao. Esta
propriedade pode ser modificada aps iniciada a comunicao. O valor padro desta
propriedade 0. Exemplo:
Sub Tag_OnStartRunning()
N2 = 3
End Sub
N3: Especifica a varivel do equipamento/dispositivo a que este tag estar
associado. Consulte a documentao do driver para sua correta parametrizao. Esta
propriedade pode ser modificada aps iniciada a comunicao. O valor padro desta
propriedade 0.
Exemplo:
Sub Tag_OnStartRunning()
N1 = 10
N3 = 5
N4 = 20
End Sub
N4: Especifica a varivel do equipamento/dispositivo a que este tag estar
associado. Consulte a documentao do driver para sua correta parametrizao. Esta
propriedade pode ser modificada aps iniciada a comunicao. O valor padro desta
propriedade 0. Exemplo:
Sub Tag_OnStartRunning()
N1 = 10
N4 = 20
End Sub
E3 - Scripts - Manual de Referncia
Propriedades 183
ParamDevice: Define o endereo do equipamento acessado pelo tag. Esta
propriedade herdada do driver, mas seu valor pode ser sobrescrito, se necessrio.
ParamItem: Identifica o dado que o tag acessa dentro de um equipamento.
PercentDeadBand: A propriedade PercentDeadBand determina a variao
mnima do valor (banda morta) de um tag, para que seu valor no E3 seja atualizado.
Este valor especificado como um percentual da diferena entre as propriedades
DeviceHigh e DeviceLow. Esta propriedade s ser utilizada caso a propriedade
EnableDeadBand do mesmo tag esteja configurada para True. Se a propriedade
PercentDeadband for igual a 0, o tag no ter banda morta, e qualquer variao no
seu valor ser repassada para o E3. Caso contrrio, s ser enviado para o E3 um
novo valor cuja diferena, em relao ao valor atual no E3, seja maior que a banda
morta. O valor padro desta propriedade 0.
Quality: A propriedade Quality informa qual a qualidade do valor contido na
propriedade Value. Cada vez que o Driver atribui um novo valor para o Tag, ele
tambm configura a qualidade daquele dado. Esta propriedade somente para
leitura. O valor padro desta propriedade 0 (Qualidade Ruim).
NOTA: Para maiores informaes sobre qualidade, consulte o tpico Propriedade
Quality ou o tpico Qualidade no Manual do Usurio.
RawValue: Acessa o valor original do tag anterior escala, ou seja,
independentemente da configurao da propriedade EnableScaling. Ento, se esta
propriedade for False, as propriedades Value e RawValue apresentam o mesmo
comportamento.
Scan: Utilize a propriedade Scan para especificar o tempo de varredura que ser
utilizado pelo servidor para atualizar a propriedade Value. Esta propriedade
representada em milissegundos e pode ser modificada aps iniciada a comunicao,
sendo utilizada apenas quando a propriedade AllowRead estiver configurada para
True. Ao configurar esta propriedade nos diversos tags presentes na aplicao,
recomenda-se aumentar o valor da propriedade Scan para aqueles tags que no
variam muito no equipamento/dispositivo, possibilitando assim que outros tags de
maior prioridade sejam lidos com maior freqncia, aumentando assim a
performance geral do sistema. O valor padro desta propriedade 1000 (1 segundo).
O valor do scan deve ser maior que 0.
Exemplo:
Sub Tag_OnStartRunning()
Scan = 1500
End Sub
E3 - Scripts - Manual de Referncia
184 Propriedades
TimeStamp: A propriedade TimeStamp atualizada sempre que ocorrer alguma
mudana de valor ou estado nas propriedades Value ou Quality. Ele informa qual a
data/hora associada tanto ao valor quanto qualidade do tag de comunicao. Esta
uma propriedade somente para leitura. O valor padro desta propriedade 00:00:00.
UseBitFields: Caso a propriedade UseBitFields esteja configurada para True,
toda vez que o valor da propriedade Value for modificada, ele atualizar os bits
referentes s propriedades Bit00 at Bit31. Da mesma forma, atualizar o valor de
Value toda vez que alguma das propriedades Bit00 at Bit31 mudar de valor e
posteriormente enviar para o equipamento/dispositivo, se a propriedade AllowWrite
estiver configurada para True. Caso contrrio, os bits no sofrero/acarretaro
qualquer mudana. Esta propriedade pode ser atualizao aps ter sido iniciada a
comunicao.
NOTA: Os valores dos bits (Propriedades Bit00..Bit31) no so afetados pelo ajuste
de escala, isto , representam os bits do valor lido do equipamento, antes da
converso.
Value: Atualizada sempre que uma nova leitura vlida de um valor do
equipamento/dispositivo for feita, utilizando-se a parametrizao N1 at N4.O tipo
desta varivel (nmero inteiro, ponto flutuante, texto) depende do driver ao qual o
tag est associado e da sua parametrizao.
Esta propriedade somente ser atualizada desta forma se a propriedade AllowRead
estiver configurada para True, e quando no houver erros de comunicao (neste
caso somente as propriedades Quality e TimeStamp sero atualizadas), de acordo
com o tempo de varredura definido em Scan. Outra forma de utilizar esta
propriedade para escrever valores no equipamento/dispositivo, bastando para isto
atribuir um novo valor propriedade Value ou a algum dos bits Bit00-Bit31. Neste
caso, a propriedade AllowWrite deve estar configurada para True.
Esta tambm a propriedade padro do objeto Tag de Comunicao. Sendo assim,
uma referncia por valor a um Tag de Comunicao no necessita obrigatoriamente
explicitar a propriedade Value para acessar o valor. O valor padro desta
propriedade vazio (sem valor).
Exemplo:
Sub Botao1_Click()
'Acessa um tag e mostra o valor atual
'tag1 um objeto tipo Tag de Comunicao
Set obj = Application.GetObject("Driver de Comunicao1._
tag1")
MsgBox "Valor atual de tag1: " & obj.Value
'Isto tambm pode ser feito de outra forma,
'sem mostrar a propriedade Value, que padro
MsgBox "Valor atual de tag1: " & obj
E3 - Scripts - Manual de Referncia
Propriedades 185
End Sub
NOTA: Os valores dos bits (Propriedades Bit00...Bit31) no so afetados pelo ajuste
de escala. Isto , representam os bits do valor lido do equipamento, antes da
converso.
6.2.3. Propriedades do Bloco de Comunicao
AdviseType: Controla o modo Advise. As opes disponveis so:
Opes disponveis para AdviseType
OPO DESCRIO
0- Always!nAdvise O tag mantido atualizado se a propriedade AllowRead for True.
1- AdviseWhenLinked O tag s atualizado se AllowRead for True e o tag estiver associado
a algum objeto ativo, por exemplo, um Display de uma Tela aberta,
um Alarme habilitado, entre outros. A associao do tag para esse
propsito pode ser feita nas seguintes propriedades: Value,
RawValue, Quality e Bit00 .. Bit31 de Elementos de Bloco, e Quality
e TimeStamp de Blocos de Comunicao.

AllowRead: Define se este bloco dever ou no ser lido pelo driver de
comunicao. Caso a propriedade AllowRead esteja habilitada, ento o driver
automaticamente atualizar os elemento de comunicao inseridos neste bloco, em
intervalos de tempo definidos pela propriedade Scan. Caso contrrio, este bloco de
comunicao no ser lido ou atualizado. Esta propriedade pode ser modificada em
execuo. O valor padro desta propriedade True. Exemplo:
Sub Botao1_Click()
'Faz com que seja parada a leitura do bloco
Set obj = Application.GetObject("Driver1.bloco1")
obj.AllowRead = False
End Sub
AllowWrite: Define se este bloco dever ou no ser escrito quando for
modificada a propriedade Value de seus Elemento do Bloco de comunicao. Se esta
propriedade estiver configurada para True, as modificaes sero enviadas para o
equipamento/dispositivo associado ao driver de comunicao. Caso contrrio as
modificaes sero ignoradas. Os elementos de comunicao no aceitaro valores,
caso esta propriedade estiver configurada para False, ao no ser que a propriedade
AllowRead tambm estiver configurada para False. Exemplo:
Sub Botao1_Click()
'Faz com que seja desabilitada a escrita do bloco
Set obj = Application.GetObject("Driver1.bloco1")
E3 - Scripts - Manual de Referncia
186 Propriedades
obj.AllowWrite = False
End Sub
B1: Especifica a qual conjunto de dados no equipamento/dispositivo este tag
estar associado. Consulte a documentao do driver para sua correta
parametrizao. Esta propriedade pode ser modificada aps iniciada a comunicao.
Exemplo:
Sub Bloco1_BeforeStart()
B1 = 2
B2 = 1
B3 = 9600
End Sub
B2: Especifica a qual conjunto de dados no equipamento/dispositivo este tag
estar associado. Consulte a documentao do driver para sua correta
parametrizao. Esta propriedade pode ser modificada aps iniciada a comunicao.
Exemplo:
Sub Bloco1_BeforeStart()
B1 = 2
B2 = 1
B3 = 9600
End Sub
B3: Especifica a qual conjunto de dados no equipamento/dispositivo este tag
estar associado. Consulte a documentao do driver para sua correta
parametrizao. Esta propriedade pode ser modificada aps iniciada a comunicao.
Exemplo:
Sub Bloco1_BeforeStart()
B1 = 2
B2 = 1
B3 = 9600
End Sub
B4: Especifica a qual conjunto de dados no equipamento/dispositivo este tag
estar associado. Consulte a documentao do driver para sua correta
parametrizao. Esta propriedade pode ser modificada aps iniciada a comunicao.
Exemplo:
Sub Bloco1_BeforeStart()
B1 = 2
B2 = 1
E3 - Scripts - Manual de Referncia
Propriedades 187
B3 = 9600
B4 = 524
End Sub
EnableDeadBand: A propriedade EnableDeadBand habilita/desabilita a
propriedade PercentDeadBand. Se esta opo estiver configurada para True, o valor
do bloco atualizado somente se este mudar e o novo valor exceder o limite
definido pela propriedade PercentDeadBand. Caso contrrio, o bloco sempre
atualizado e o limite de deadband (banda morta) no verificado. Sempre que
possvel, recomendado manter a deadband (banda morta) habilitada, pois ela
melhora a performance da aquisio e processamento de dados. Normalmente, a
banda morta ser desabilitada apenas para os tags que retornem valores que
representem eventos que precisem ser tratados no script OnRead do tag. O valor
padro desta propriedade True.
EnableDriverEvent: Esta propriedade utilizada para controlar a gerao do
evento OnTagRead, que ocorre no driver de comunicao que contm o bloco. Se a
propriedade EnableDriverEvent do tag estiver configurada para True, ser habilitada
a gerao do evento OnTagRead por este tag. Caso contrrio, no ocorre. Os trs
tipos de elementos de comunicao (tag de comunicao, bloco de comunicao e
elemento de bloco) podem gerar este evento. O evento ocorre no driver e no no
bloco.
ParamDevice: Define o endereo do equipamento acessado pelo bloco. Esta
propriedade herdada do driver, mas seu valor pode ser sobrescrito, se necessrio.
ParamItem: Identifica o dado que o bloco acessa dentro de um equipamento.
Quality: A propriedade Quality informa qual a qualidade do valor contido na
propriedade Value. Cada vez que o Driver atribui um novo valor para o Bloco, ele
tambm configura a qualidade daquele dado. Esta propriedade somente para
leitura. O valor padro desta propriedade 0 (Qualidade Ruim).
NOTA: Para maiores informaes sobre qualidade, consulte o tpico Propriedade
Quality ou o tpico Qualidade no Manual do Usurio.
Scan: Especifica qual o tempo de varredura ser utilizado pelo servidor para
atualizar o bloco. Esta propriedade representada em milissegundos e pode ser
modificada aps iniciada a comunicao, sendo utilizada apenas quando a
propriedade AllowRead estiver habilitada. Ao configurar esta propriedade nos
diversos blocos presentes na aplicao, recomenda-se aumentar o valor da
propriedade Scan para aqueles blocos que no variam muito no
equipamento/dispositivo, possibilitando assim que outros blocos de maior prioridade
sejam lidos com maior freqncia, aumentando assim a performance geral do
E3 - Scripts - Manual de Referncia
188 Propriedades
sistema. O valor padro desta propriedade 1000 (1 segundo). O valor do scan deve
ser maior que zero.
Exemplo:
Sub Bloco de comunicao1_BeforeStart()
Scan = 152
End Sub
Size: Define o tamanho do conjunto de valores deste bloco. Consulte a
documentao do driver utilizado para conhecer qual o limite para esta propriedade,
de acordo com os parmetros B1 at B4. Criando os elementos de bloco, voc
possibilita o acesso aos valores lidos e tambm permite a escrita de valores para
equipamento/dispositivo. Esta propriedade no pode ser modificada aps a
comunicao ser iniciada. O valor padro desta propriedade 0.
Exemplo:
Sub Bloco de comunicao1_BeforeStart()
Size = 10
End Sub
TimeStamp: A propriedade TimeStamp atualizada sempre que ocorrer alguma
mudana de valor ou estado nas propriedades Value ou Quality. Ele informa qual a
data/hora associada tanto ao valor quanto qualidade do bloco de comunicao. Esta
uma propriedade somente para leitura. O valor padro desta propriedade
00:00:00.
6.2.4. Propriedades do Elemento de Bloco
Bit00-Bit031: As propriedades de bit Bit00 at Bit31 representam juntas os 32
bits do valor presente na propriedade Value do elemento de bloco, sendo Bit00 o bit
menos significativo e Bit31 o bit mais significativo. Modificar cada um destes bits
implica na igual modificao da propriedade Value do elemento, e vice-versa, mas
isto somente ocorre quando a propriedade UseBitFields estiver configurada para
True. O valor padro destas propriedades False.
DeviceHigh: A propriedade DeviceHigh define o valor mximo atingido pelo
elemento de bloco no equipamento/dispositivo. Esta propriedade ser utilizada para
fazer o ajuste de escala do valor proveniente do equipamento/dispositivo antes de ser
atribudo propriedade Value. Da mesma forma, no momento da escrita feita a
operao inversa antes de enviar o valor para o driver. Esta converso s ocorre
quando a propriedade EnableScaling est configurada para True. O valor padro
desta propriedade 1000.
E3 - Scripts - Manual de Referncia
Propriedades 189
Exemplo:
Sub Elemento_OnStartRunning()
'Faz o ajuste de escala de um elemento temperatura
'que varia de 0 a 255 no PLC, mas significam na
'prtica de 0 a 100 graus Celsius
EU = "Graus Celsius"
EnableScaling = True
DeviceHigh = 255
DeviceLow = 0
EUHigh = 100
EULow = 0
End Sub
DeviceLow: A propriedade DeviceLow define qual o valor mnimo atingido por
este elemento no equipamento/dispositivo. Esta propriedade ser utilizada para fazer
o ajuste de escala do valor proveniente do equipamento/dispositivo antes de ser
atribudo propriedade Value. Da mesma forma, no momento da escrita, feita a
operao inversa antes de enviar o valor para o driver. Esta converso s ocorre
quando a propriedade EnableScaling est configurada para True. O valor padro
desta propriedade 0.
Exemplo:
Sub Elemento_OnStartRunning()
'Faz o ajuste de escala de um elemento temperatura
'que varia de 0 a 255 no PLC, mas significam na
'prtica de 0 a 100 graus Celsius
EU = "Graus Celsius"
EnableScaling = True
DeviceHigh = 255
DeviceLow = 0
EUHigh = 100
EULow = 0
End Sub
EnableDriverEvent: Esta propriedade utilizada para controlar a gerao do
evento OnTagRead, que ocorre no driver de comunicao que contm o bloco. Se a
propriedade EnableDriverEvent do tag estiver configurada para True, ser habilitada
a gerao do evento OnTagRead por este tag. Caso contrrio, no ocorre. Os trs
tipos de elementos de comunicao (tag de comunicao, bloco de comunicao e
elemento de bloco) podem gerar este evento. O evento ocorre no driver e no no
bloco.
E3 - Scripts - Manual de Referncia
190 Propriedades
EnableScaling: A propriedade EnableScaling habilita/desabilita a escala de valor
para o valor enviado e recebido do equipamento/dispositivo. Se esta propriedade
estiver configurada para True, todo valor proveniente do equipamento/dispositivo
sofrer ajuste de escala conforme as propriedades DeviceHigh, DeviceLow, EUHigh
e EULow antes de ser atribudo propriedade Value. Caso contrrio, nenhum ajuste
de escala ser efetuado em nenhum dos dois sentidos (escrita e leitura). O valor
padro desta propriedade False.
Exemplo:
Sub Elemento_OnStartRunning()
'Faz o ajuste de escala de um elemento temperatura
'que varia de 0 a 255 no PLC, mas significam na
'prtica de 0 a 100 graus Celsius
EU = "Graus Celsius"
EnableScaling = True
DeviceHigh = 255
DeviceLow = 0
EUHigh = 100
EULow = 0
End Sub
EU: Esta propriedade utilizada para identificar qual unidade de engenharia seu
valor representa, como por exemplo: graus, metros, KW/h etc. Exemplo:
Sub ElementodeBloco1_OnStartRunning()
'Faz o ajuste de escala de um tag de temperatura
'que varia de 0 a 255 no PLC mas significam na
'prtica de 0 a 100 graus Celsius
EU = "Graus Celsius"
EnableScaling = True
DeviceHigh = 255
DeviceLow = 0
EUHigh = 100
EULow = 0
End Sub
EUHigh: Define qual o valor mximo que dever ser atribudo propriedade
Value, ajustando a escala ao valor do equipamento/dispositivo antes desta atribuio.
Da mesma forma, no momento da escrita feita a operao inversa antes de enviar o
valor para o driver. Esta converso s ocorre quando a propriedade EnableScaling
est configurada para True. O valor padro desta propriedade 1000.
E3 - Scripts - Manual de Referncia
Propriedades 191
Exemplo:
Sub Elemento_OnStartRunning()
'Faz o ajuste de escala de um elemento temperatura
'que varia de 0 a 255 no PLC mas significam na
'prtica de 0 a 100 graus Celsius
EU = "Graus Celsius"
EnableScaling = True
DeviceHigh = 255
DeviceLow = 0
EUHigh = 100
EULow = 0
End Sub
EULow: Define qual o valor mnimo que dever ser atribudo propriedade
Value, ajustando a escala ao valor do equipamento/dispositivo antes desta atribuio.
Da mesma forma, no momento da escrita, feita a operao inversa antes de enviar
o valor para o driver. Esta converso s ocorre quando a propriedade EnableScaling
est configurada para True. O valor padro desta propriedade 0. Exemplo:
Sub Elemento_OnStartRunning()
'Faz o ajuste de escala de um elemento temperatura
'que varia de 0 a 255 no PLC mas significam na
'prtica de 0 a 100 graus Celsius
EU = "graus Celsius"
EnableScaling = True
DeviceHigh = 255
DeviceLow = 0
EULow = 100
EULow = 0
End Sub
Index: Especifica a posio que o elemento de bloco ocupa entre os elementos
configurados pela propriedade Size do bloco de comunicao no qual ele est
inserido. Esta propriedade aceita valores de 0 at um nmero menor do que a valor
definido em Size. Por exemplo: configurando um bloco de comunicao para ter Size
igual a 20, o nmero mximo vlido para a propriedade Index ser 19 e o mnimo 0.
Esta propriedade pode ser alterada aps iniciada a comunicao. O valor padro
propriedade 0, porm ao mapear os elementos de um bloco o Studio
automaticamente ajusta o parmetro Index para um valor de acordo com o
especificado.
E3 - Scripts - Manual de Referncia
192 Propriedades
Exemplo:
Sub Elemento_OnStartRunning()
Index = 15
End Sub
PercentDeadBand: A propriedade PercentDeadBand determina a variao
mnima do valor (banda morta) de um elemento de bloco, para que seu valor no E3
seja atualizado. Este valor especificado como um percentual da diferena entre as
propriedades DeviceHigh e DeviceLow. Esta propriedade s ser utilizada caso a
propriedade EnableDeadBand do mesmo elemento esteja configurada para True. Se
a propriedade PercentDeadband for igual a 0, o elemento de bloco no ter banda
morta, e qualquer variao no seu valor ser repassada para o E3. Caso contrrio, s
ser enviado para o E3 um novo valor cuja diferena, em relao ao valor atual no
E3, seja maior que a banda morta. O valor padro desta propriedade 0.
Quality: A propriedade Quality informa qual a qualidade do valor contido na
propriedade Value. Cada vez que o Driver atribui um novo valor para o Elemento,
ele tambm configura a qualidade daquele dado. Esta propriedade somente para
leitura. O valor padro desta propriedade 0 (Qualidade Ruim).
NOTA: Para maiores informaes sobre qualidade, consulte o tpico Propriedade
Quality ou o tpico Qualidade no Manual do Usurio.
RawValue: Acessa o valor original do elemento anterior escala, ou seja,
independentemente da configurao da propriedade EnableScaling. Ento, se esta
propriedade for False, as propriedades Value e RawValue apresentam o mesmo
comportamento.
UseBitFields: Se esta propriedade estiver configurada para True, toda vez que o
valor da propriedade Value for modificada, ele atualizar os bits referentes s
propriedades Bit00 at Bit31. Da mesma forma, atualizar o valor de Value toda vez
que alguma das propriedades Bit00 at Bit31 mudar de valor e posteriormente
enviar para o equipamento/dispositivo se a propriedade AllowWrite do bloco de
comunicao estiver configurada para True. Caso contrrio, os bits no
sofrero/acarretaro qualquer mudana. Esta propriedade pode ser atualizada aps
ter sido iniciada a comunicao. O valor padro desta propriedade False.
E3 - Scripts - Manual de Referncia
Propriedades 193
Value: Atualizada sempre que uma nova leitura vlida de um valor do
equipamento/dispositivo for feita, utilizando-se a parametrizao B1 at B4 do Bloco
de Comunicao onde este elemento estiver inserido, e considerando-se sua posio
na tabela lida atravs da propriedade Index. O tipo desta varivel (nmero inteiro,
ponto flutuante, texto) depende do driver ao qual o elemento est associado e da sua
parametrizao.
Esta propriedade somente ser atualizada desta forma se a propriedade AllowRead
do objeto Bloco de Comunicao ao qual o elemento pertence estiver configurada
para True, e quando no houver erros de comunicao (neste caso somente as
propriedades Quality e TimeStamp sero atualizadas), de acordo com o tempo de
varredura definido em Scan. Outra forma de utilizar esta propriedade para escrever
valores no equipamento/dispositivo, bastando para isto atribuir um novo valor
propriedade Value ou a algum dos bits Bit00-Bit31. Neste caso, a propriedade
AllowWrite do objeto Bloco de Comunicao deve estar configurada para True.
Esta tambm a propriedade padro do objeto Elemento de Bloco. Sendo assim,
uma referncia por valor a um Elemento de Bloco no necessita obrigatoriamente
explicitar a propriedade Value para acessar o valor. Caso esta propriedade no esteja
sendo atualizada, verifique se a propriedade Index est corretamente configurada. O
valor padro desta propriedade vazio (sem valor).
Exemplo:
Sub Botao1_Click()
'Acessa um elemento e mostra o valor atual
'elm1 um objeto tipo Bloco de comunicaoElement
Set obj = Application.GetObject("Driver de
Comunicao1.Block1.elm1")
MsgBox "Valor atual de elm1: " & obj.Value
'Isto tambm pode ser feito de outra forma,
'sem mostrar a propriedade Value, que padro
MsgBox "Valor atual de elm1: " & obj
End Sub

E3 - Scripts - Manual de Referncia
194 Propriedades
6.3. Propriedades dos Ob]etos do Cliente OPC
6.3.1. Propriedades do Driver OPC
Compatibility: permite controlar o uso das interfaces padro OPC pelo Cliente
OPC do E3. As opes disponveis so as seguintes: 0-Anyversion: funcionamento
normal (recomendado): o OPC driver ir comunicar com servidores DA 2.0x e 1.0a
(dando preferncia ao uso de interfaces 2.0x); 1-version10A: permite forar a
comunicao no padro DA 1.0a para servidores que suportam DA 2.0x e 1.0a; e 2-
version20: permite forar a comunicao apenas no padro OPC DA 2.0.
Essa propriedade no pode ser modificada quando a comunicao do cliente OPC
estiver habilitada (tanto no Studio, quanto em tempo de execuo).
NOTA: Apenas em ltimo caso o driver deve ser configurado num valor diferente
de 0-Anyversion (valor padro). Esta propriedade de uso avanado, e se aplica
restritamente para contornar alguma situao de possvel incompatibilidade com
algum servidor OPC especfico.
ReconnectPeriod: Controla o perodo da conexo com o Servidor OPC. Se a
conexo for perdida, o driver pra e reinicia at que esta ao retorne sucesso. O
perodo configurado em milissegundos e quando o valor configurado para 0, a
reconexo desabilitada. Pelo fato do Driver OPC ser parado e iniciado, os eventos
BeforeStart()/AfterStop() sero gerados. Quando a conexo for perdida, todos os tags
relacionados sero desconectados do seu estado atual (bad/quality/null value).
Exemplo:
Sub Driver OPC1_AfterStart()
Application.GetObject("DriverOPC1.GrupoOPC1")._
ReconnectPeriod = 0
End Sub
ServerID: Determina o servidor ao qual o Driver OPC deve se conectar. Apesar
do valor padro da propriedade ser vazio, se o campo estiver vazio, o objeto OPC
no ir conectar. Esta propriedade s pode ser modificada quando o Driver OPC no
est conectado.
E3 - Scripts - Manual de Referncia
Propriedades 195
Exemplo:
Sub CommandButton1_Click()
Set opc = Application.GetObject("DriverOPC1")
Opc.Deactivate
Opc.ServerId = "ElipseSCADA.OPCSvr.1"
Opc.ServerMachine = "\\server2"
Opc.Activate
End Sub
ServerMachine: A propriedade ServerMachine determina o endereo da estao
onde est rodando o servidor OPC. Para aplicaes que esto rodando localmente,
esta propriedade pode ficar em branco (padro). Caso contrrio, ser necessrio
especificar o caminho (por exemplo: "\\NomeServidor"). Esta propriedade s pode
ser modificada quando o driver OPC estiver desconectado.
Exemplo:
Sub CommandButton1_Click()
Set opc = Application.GetObject("DriverOPC1")
Opc.Deactivate
Opc.ServerId = "ElipseSCADA.OPCSvr.1"
Opc.ServerMachine = "\\server2"
Opc.Activate
End Sub
ServerName: A propriedade ServerName retorna o nome/descrio do servidor
OPC. Esta propriedade diferente da propriedade ServerID, que um cdigo.
Exemplo:
Sub Driver OPC1_AfterStart()
MsgBox _
Application.GetObject("DriverOPC1.GrupoOPC1").ServerName
End Sub

E3 - Scripts - Manual de Referncia
196 Propriedades
ServerStatus: Determina o estado da conexo com o servidor OPC. As opes
disponveis so as seguintes:
Opes disponveis para ServerStatus
OPO DESCRIO
-1 - ServerStatus_Unknown O Driver OPC est conectado ao servidor OPC mas o
estado no informado ou o cliente OPC possui a
propriedade ReconnectPeriod em 0.
0 - ServerStatus_NoConnected O Driver OPC no est conectado ao servidor OPC. Isso
acontece quando, por exemplo, o Driver OPC no est
ativo, ou a conexo no foi estabelecida por algum
problema qualquer.

Os valores abaixo so informados apenas quando a propriedade ReconnectPeriod
diferente de 0. Esta passagem de perodo especificando o estado buscada no
servidor. Caso o estado no seja informado corretamente, a propriedade pode manter
o valor igual a -1, ou a desconexo pode ser detectada neste caso, levando a
propriedade ServerStatus para 0. Os valores so baseados nos cinco status padro
definidos para servidores OPC.
Opes disponveis para ReconnectPeriod diferente de zero
OPO DESCRIO
1- ServerStatus_Running O servidor est rodando normalmente.
2- ServerStatus_Failed O servidor no est rodando. Um erro no
especificado ocorreu no servidor.
3- ServerStatus_NoConfig O servidor est rodando, porm sem informaes
de configurao.
+- ServerStatus_Suspended O servidor foi suspenso temporariamente.
5- ServerStatus_Test O servidor est em Modo de Testes.

E3 - Scripts - Manual de Referncia
Propriedades 197
Exemplo:
Sub CommandButton1_Click()
Dim status
status = Application.GetObject("DriverOPC1").ServerStatus
MsgBox "O status do driver " & status
Select Case status
Case -1
MsgBox "O DriverOPC est conectado ao servidor OPC mas_
seu estado no foi informado"
Case 0
MsgBox "O DriverOPC no est conectado ao servidor OPC"
Case 1
MsgBox "O servidor est rodando normalmente"
Case 2
MsgBox "O servidor no est rodando"
Case 3
MsgBox "O servidor est rodando mas sem informaes de_
configurao"
Case 4
MsgBox "O servidor foi suspenso temporariamente"
Case 5
MsgBox "O servidor est em Modo de Testes"
End Select
End Sub
NOTA: Para obter o comportamento equivalente a uma propriedade Booleana, o
recomendado usar ServerStatus diferente de 0 (zero). Isso basicamente
diferencia apenas entre haver a conexo ou no, desconsiderando estados mais
especficos do servidor. Alm disso, dessa forma, a expresso independe do uso da
propriedade ReconnectPeriod diferente de 0 (zero).
6.3.2. Propriedades do Grupo OPC
BlockMode: A propriedade BlockMode determina o comportamento de
ativao/desativao do Grupo OPC. Quando esta propriedade estiver configurada
para True, a comunicao dos tags OPC do grupo ser iniciada em conjunto. Isso em
geral ir ocasionar uma melhor performance (menor tempo de ativao), por
minimizar o nmero de chamadas ao servidor OPC. Quando a propriedade estiver
configurada para False, o comportamento ser de ativar a comunicao de cada tag
OPC do grupo individualmente (de acordo com a seqncia normal de ativao dos
E3 - Scripts - Manual de Referncia
198 Propriedades
objetos). Com isso, por exemplo, o primeiro tag do grupo (na ordem vista no
Organizer) ir comunicar antes do ltimo tag. Apesar de mais lento, pode ser uma
vantagem usar esse modo de ativao do bloco quando se deseja, por exemplo, fazer
alguma operao (uma escrita no tag, por exemplo) num Script do evento
OnStartRunning do tag. Na desativao ocorre tudo de maneira anloga. Quando o
valor da propriedade True, a desativao da comunicao do tags do grupo ocorre
em conjunto, ao trmino da desativao de todo Grupo OPC. Caso a propriedade
esteja configurada para False, a desativao da comunicao ocorre individualmente
para cada tag (de acordo com a seqncia normal de desativao de objetos).
DeadBand: A propriedade DeadBand permite ajustar o nvel mnimo de variao
de um tag OPC, para que este seja atualizado. Esse parmetro s se aplica para os
tags do grupo que forem considerados do tipo analgico pelo servidor OPC ao qual
o OPC Driver est conectado. O intervalo vlido para esta propriedade de 0 a 100
por cento. Um valor de 0 (zero) para o DeadBand significa que qualquer variao do
valor de um tag do grupo implicar na atualizao do grupo. Esse valor percentual
aplicado para cada tag em relao aos seus limites de Engenharia (o que fica
definido no servidor OPC). Para que um tag seja atualizado, a seguinte expresso
deve ser verdadeira (isso avaliado no Servidor OPC):
Abs(Valor_guardado_anteriormente Valor_corrente) > _
(DeadBand / 100) * Abs (Limite_Superior Limite_Inferior)
O valor padro desta propriedade 0.
Enabled: A propriedade Enabled habilita a atualizao dos tags dentro de um
Grupo OPC. Se esta propriedade estiver em False, nenhum tag dentro do Grupo
OPC ser atualizado. Caso contrrio, os tags que tenham a propriedade AllowRead
configurados em True e que esteja em Advise (para maiores informaes, ver
propriedade AdviseType), sero mantidos atualizados de acordo com o tempo de
atualizao (propriedade Scan) e banda morta (propriedade DeadBand) do grupo.
Estando essa propriedade em False, no possvel utilizar o mtodo Refresh() do
grupo.
RealScan: Scan efetivo usado pelo servidor do Grupo OPC.
Exemplo:
Sub CommandButton3_Click()
MsgBox _
Application.GetObject("DriverOPC2.GrupoOPC2").RealScan
End Sub
Scan: Especifica o tempo de varredura de atualizao dos tags do grupo que
sero utilizado pelo servidor. Esta propriedade representada em milissegundos e
E3 - Scripts - Manual de Referncia
Propriedades 199
pode ser modificada aps iniciada a comunicao, sendo utilizada apenas quando a
propriedade Enable estiver configurada para True.
Ao configurar esta propriedade nos diversos tags presentes na aplicao, recomenda-
se aumentar o valor da propriedade Scan para aqueles grupos de tags que no variam
muito no equipamento/dispositivo, possibilitando assim que outros grupos de tags de
maior prioridade sejam lidos com maior freqncia, aumentando assim a
performance e resposta do sistema.
O valor padro desta propriedade 1000.
6.3.3. Propriedades do Tag OPC
AdviseType: Controla o modo Advise. As opes disponveis so:
Opes disponveis para AdviseType
OPO DESCRIO
0- Always!nAdvise O tag mantido atualizado se a propriedade AllowRead do Tag
OPC for True e a propriedade Enabled do Grupo OPC
tambm for True.
1- AdviseWhenLinked O tag s atualizado se a propriedade AllowRead do Tag OPC
e a propriedade Enabled do Grupo OPC forem True, e o tag
estiver associado a algum objeto ativo, por exemplo, um
Display de uma Tela aberta, um Alarme habilitado, entre
outros. A associao do tag para esse propsito pode ser feita
nas seguintes propriedades: Value, RawValue, TimeStamp,
Quality e Bit00 .. Bit31 de Tags OPC.

Exemplo:
Sub CommandButton3_Click()
MsgBox Application._
GetObject("Driver OPC.GrupoOPC.Tag_ OPC1").AdviseType
End Sub
AllowRead: Define se este tag dever ou no ser lido pelo driver OPC. Caso a
propriedade esteja configurada para True, o driver automaticamente atualizar as
propriedades Value e Bits (de Bit00 at Bit31) deste objeto em intervalos de tempo.
Caso contrrio, este tag OPC no ser lido. Esta propriedade pode ser modificada em
execuo. O valor padro desta propriedade True.
E3 - Scripts - Manual de Referncia
200 Propriedades
Exemplo:
Sub Botao1_Click()
'Faz com que seja parada a leitura do tag
Set obj = Application.GetObject("Driver1.tag")
obj.AllowRead = False
End Sub
AllowWrite: Define se este tag dever ou no ser escrito automaticamente
quando a propriedade Value ou qualquer propriedade Bit (de Bit00 at Bit31) for
modificada. Se a propriedade estiver True, as modificaes sero enviadas para o
equipamento/dispositivo associado ao driver OPC; do contrrio, as modificaes
sero ignoradas. O valor padro desta propriedade True.
Exemplo:
Sub Botao1_Click()
'Faz com que seja desabilitada a escrita do tag
Set obj = Application.GetObject("Driver1.tag")
obj.AllowWrite = False
End Sub
Bit00-Bit031: As propriedades de bit Bit00 at Bit31 representam juntas os 32
bits do valor presente na propriedade Value do objeto OPC Tag, sendo Bit00 o bit
menos significativo e Bit31 o bit mais significativo. Modificar cada um destes bits
implica na igual modificao da propriedade Value do tag, e vice-versa, mas isto
somente ocorre quando a propriedade UseBitFields estiver configurada para True. O
valor padro destas propriedades False.
NOTA: Os valores dos bits (Propriedades Bit00..Bit31) no so afetadas pelo ajuste
de escala. Isto , representam os bits do valor lido do equipamento, antes da
converso.
E3 - Scripts - Manual de Referncia
Propriedades 201
DataType: Propriedade somente de leitura. Determina o tipo de dado associado
ao tag OPC (ver tabela).
Opes disponveis para DataType
OPO DESCRIO
0- _Undefined Valor unidimensional no definido (Vazio).
1- _Null Valor nulo.
2 - _!nteger Valor unidimensional Inteiro de 16 bits sinalizado.
3 - _Long Valor unidimensional inteiro de 32 bits sinalizado.
+ - _Single Valor unidimensional de ponto flutuante de 32 bits.
5 - _Double Valor unidimensional de ponto flutuante de 64 bits.
6 - _Currency Valor unidimensional monetrio com 4 casas decimais.
7 - _Date Valor de data/hora.
8 - _String Valor literal - Texto.
9 - _Object Valor unidimensional de referncia a um objeto.
10 - _Error Valor unidimensional de cdigo de erro.
11 - _Boolean Valor unidimensional booleano (verdadeiro/falso).
12 - _variant Dados de qualquer tipo usados para objeto e outros valores para os
quais o tipo de dados desconhecido.
13 - _UnkObject Valor unidimensional de referncia a um objeto.
1+ - _Decimal Valor unidimensional de ponto flutuante de 96 bits.
36 - _Record Valor unidimensional de gravao.
16 - _Char Valor unidimensional inteiro de 8 bits.
17 - _Byte utilizado para criao de DLLs e para OLE. Ocupa de memria
1 byte.
18 - _Word Valor unidimensional inteiro de 16 bits.
19 - _Dword Valor unidimensional inteiro de 32 bits.
20 - _LongLong Valor unidimensional inteiro de 64 bits sinalizado.
21 - _DDWord Valor unidimensional inteiro de 64 bits.
22 - _!nteger_ Nmeros sem decimais, cujo intervalo de ocorrncia dever ser do
32.768 a 32.767. Ocupa 2 bytes.
23 - _Uinteger Nmero inteiro sem sinal (no caso equivale a um DWORD), que
vai de 0 a4294967295 (2^32 - 1).
819+ - _Arr!nteger Array unidimensional de valores integer (inteiros).
8195 - _ArrLong Array unidimensional de valores inteiros de 32 bits sinalizados.
8196 - _ArrSingle Array unidimensional de ponto flutuante de 32 bits.
8197 - _ArrDouble Array unidimensional de valor de ponto flutuante de 64 bits.
8198 - _ArrCurrency Array unidimensional de valor monetrio com 4 casas decimais.
8199 - _ArrDate Array unidimensional de valor de data/hora.
8200 - _ArrString Array unidimensional de valor literal Texto.
8201 - _ArrObject Array unidimensional de valor de referncia a um objeto.
8202 - _ArrError Array unidimensional de valor de cdigo de erro.
8203 - _ArrBoolean Array unidimensional de valor booleano (verdadeiro/falso).
E3 - Scripts - Manual de Referncia
202 Propriedades
OPO DESCRIO
820+ - _Arrvariant Array de dados de qualquer tipo usados para objeto e outros
valores para os quais o tipo de dados desconhecido.
8205-_ArrUnkObject Array unidimensional de valor de referncia a um objeto.
8206 - _ArrDecimal Array unidimensional de valor de ponto flutuante de 96 bits.
8228 - _ArrRecord Array unidimensional de valor record.
8208 - _ArrChar Array unidimensional de valor char.
8209 - _ArrByte Array unidimensional de bytes, que so valores utilizados para
criao de DLLs e para OLE. Ocupa de memria 1 byte.
8210 - _ArrWord Array unidimensional de valor inteiro de 32 bits.
8211 - _ArrDWord Array unidimensional de valor inteiro de 32 bits.
8212- _ArrLongLong Array unidimensional de valor inteiro de 16 bits.
8213 - _ArrDDWord Array unidimensional de valor inteiro de 32 bits sinalizado.
821+ - _Arr!nteger_ Array unidimensional de Inteiro de 16 bits sinalizado
8215 - _ArrU!nteger Array unidimensional de nmero inteiro sem sinal (no caso
equivale a um DWORD), que vai de 0 a 4294967295 (232 - 1).

DeviceHigh: A propriedade DeviceHigh define o valor mximo atingido por um
tag no equipamento/dispositivo. Esta propriedade ser utilizada para fazer o ajuste
de escala do valor proveniente do equipamento/dispositivo antes de ser atribudo
propriedade Value. Da mesma forma, no momento da escrita, feita a operao
inversa antes de enviar o valor para o driver. Esta converso s ocorre quando a
propriedade EnableScalling estiver configurada para True, seno, os valores
permanecem os mesmos. O valor padro desta propriedade 1000.
Exemplo:
Sub Tag_OnStartRunning()
'Faz o ajuste de escala de um tag de temperatura
'que varia de 0 a 255 no PLC mas significam na
'prtica de 0 a 100 graus Celsius
EU = "Graus Celsius"
EnableScaling = True
DeviceHigh = 255
DeviceLow = 0
EUHigh = 100
EULow = 0
End Sub
NOTA: Os valores dos bits (Propriedades Bit00..Bit31) no so afetadas pelo ajuste
de escala. Isto , representam os bits do valor lido do equipamento, antes da
converso.
E3 - Scripts - Manual de Referncia
Propriedades 203
DeviceLow: A propriedade DeviceLow define o valor mnimo atingido por um
tag no equipamento/dispositivo. Esta propriedade ser utilizada para fazer o ajuste
de escala do valor proveniente do equipamento/dispositivo antes de ser atribudo
propriedade Value. Da mesma forma, no momento da escrita, feita a operao
inversa antes de enviar o valor para o driver. Esta converso s ocorre quando a
propriedade EnableScalling est configurada para True, seno as configuraes
permanecem as mesmas. O valor padro desta propriedade 0.
Exemplo:
Sub Tag_OnStartRunning()
'Faz o ajuste de escala de um tag de temperatura
'que varia de 0 a 255 no PLC mas significam na
'prtica de 0 a 100 graus Celsius
EU = "Graus Celsius"
EnableScaling = True
DeviceHigh = 255
DeviceLow = 0
EUHigh = 100
EULow = 0
End Sub
NOTA: Os valores dos bits (Propriedades Bit00..Bit31) no so afetadas pelo ajuste
de escala. Isto , representam os bits do valor lido do equipamento, antes da
converso.
EnableScaling: Se esta propriedade estiver configurada para True, todo valor
proveniente do equipamento/dispositivo sofrer ajuste de escala conforme as
propriedades EUHigh e EULow antes de ser atribudo propriedade Value. Caso a
propriedade EnableScaling tenha o valor configurado para False, nenhum ajuste de
escala ser efetuado em nenhum dos dois sentidos (tanto para escrita como para
leitura). O valor padro desta propriedade False.
E3 - Scripts - Manual de Referncia
204 Propriedades
Exemplo:
Sub Tag_OnStartRunning()
'Faz o ajuste de escala de um tag de temperatura
'que varia de 0 a 255 no PLC mas significam na
'prtica de 0 a 100 graus Celsius
EU = "Graus Celsius"
EnableScaling = TrueDeviceHigh = 255
DeviceLow = 0
EUHigh = 100
EULow = 0
End Sub
EU: Identifica a unidade de engenharia representada pelo valor, como por
exemplo: graus, metros, KW/h etc. O valor desta propriedade vazio.
Exemplo:
Sub Tag_OnStartRunning()
'Faz o ajuste de escala de um tag de temperatura
'que varia de 0 a 255 no PLC mas significam na
'prtica de 0 a 100 graus Celsius
EU = "Graus Celsius"
EnableScaling = True
DeviceHigh = 255
DeviceLow = 0
EUHigh = 100
EULow = 0
End Sub
E3 - Scripts - Manual de Referncia
Propriedades 205
EuHigh: Define qual o valor mximo que dever ser atribudo propriedade
Value, ajustando a escala ao valor do equipamento/dispositivo antes desta atribuio.
Da mesma forma, no momento da escrita feita a operao inversa antes de enviar o
valor para o driver. Esta converso s ocorre quando a propriedade EnableScaling
est configurada para True. O valor padro desta propriedade 1000.
Exemplo:
Sub Tag_OnStartRunning()
'Faz o ajuste de escala de um tag de temperatura
'que varia de 0 a 255 no PLC mas significam na
'prtica de 0 a 100 graus Celsius
EU = "Graus Celsius"
EnableScaling = True
DeviceHigh = 255
DeviceLow = 0
EUHigh = 100
EULow = 0
End Sub
NOTA: Os valores dos bits (propriedades Bit00..Bit31) no so afetadas pelo ajuste
de escala. Isto , representam os bits do valor lido do equipamento, antes da
converso.
EuLow: Define qual o valor mnimo que dever ser atribudo propriedade
Value, ajustando a escala ao valor do equipamento/dispositivo antes desta atribuio.
Da mesma forma, no momento da escrita, feita a operao inversa antes de enviar
o valor para o driver. Esta converso s ocorre quando a propriedade EnableScaling
est configurada para True. O valor padro desta propriedade 0. Exemplo:
Sub Tag_OnStartRunning()
'Faz o ajuste de escala de um tag de temperatura
'que varia de 0 a 255 no PLC mas significam na
'prtica de 0 a 100 graus Celsius
EU = "graus Celsius"
EnableScaling = True
DeviceHigh = 255
DeviceLow = 0
EULow = 100
EULow = 0
End Sub
E3 - Scripts - Manual de Referncia
206 Propriedades
NOTA: Os valores dos bits (propriedades Bit00..Bit31) no so afetadas pelo ajuste
de escala. Isto , representam os bits do valor lido do equipamento, antes da
converso.
ItemID: A propriedade ItemID determina o caminho que identifica o tag OPC no
servidor OPC ao qual o driver OPC se conecta. A definio desse caminho flexvel
e depende do servidor especfico. Normalmente os servidores especificam um
espao de ID com itens hierrquicos, do tipo "ItemPai.ItemFilho.Tag1". Esta
propriedade funciona como uma "chave" nica para os dados, considerando o
"onde" ou "o que" que permite o servidor OPC se conectar fonte dos dados. Apesar
de o valor padro ser vazio, necessrio especificar algum valor para que o tag OPC
seja vlido. Exemplo:
Sub Tag OPC1_Click()
MsgBox ItemID
End Sub
Quality: A propriedade Quality informa qual a qualidade do valor contido na
propriedade Value. Cada vez que o Driver atribui um novo valor para o Tag, ele
tambm configura a qualidade daquele dado. Esta propriedade somente para
leitura. O valor padro desta propriedade 0 (Qualidade Ruim).
NOTA: Para maiores informaes sobre qualidade, consulte o tpico Propriedade
Quality ou o tpico Qualidade no Manual do Usurio.
RawValue: Acessa o valor original do tag anterior escala, ou seja,
independentemente da configurao da propriedade EnableScaling. Ento, se esta
propriedade for False, as propriedades Value e RawValue apresentam o mesmo
comportamento.
SyncWrite: A propriedade SyncWrite determina o tipo de escrita usada por um
tag OPC. Se a propriedade estiver configurada para True, a escrita ser sncrona, isto
, o driver OPC espera o resultado da escrita do servidor. Caso contrrio, a escrita
assncrona, isto , o valor do tag OPC ser enviado e o processamento do OPC
Driver continuar imediatamente. O valor padro desta propriedade False.
NOTA: No modo assncrono (propriedade configurada para False), a performance
da comunicao tende a ser maior, porm no modo sncrono (propriedade
configurada para True), o sucesso da operao de escrita verificado e informado.
TimeStamp: A propriedade TimeStamp atualizada sempre que ocorrer alguma
mudana de valor ou estado nas propriedades Value ou Quality. Ele informa qual a
data/hora associada tanto ao valor quanto qualidade do tag OPC. Esta uma
propriedade somente para leitura. O valor padro desta propriedade 00:00:00.
E3 - Scripts - Manual de Referncia
Propriedades 207
UseBitFields: Caso a propriedade UseBitFields tenha o valor True, toda vez que
o valor da propriedade Value for modificada ele atualizar os bits referentes s
propriedades Bit00 at Bit31. Da mesma forma atualizar o valor de Value toda vez
que alguma das propriedades Bit00 at Bit31 mudar de valor e posteriormente
enviar para o equipamento/dispositivo se a propriedade AllowWrite estiver
configurada para True. Caso contrrio, se a propriedade UseBitFields estiver
configurada para False, os bits no sofrero qualquer mudana. Esta propriedade
pode sofrer atualizao aps ter sido iniciada a comunicao. O valor padro desta
propriedade False. Exemplo:
Sub Tag OPC1_Click()
UseBitFields = True
End Sub
NOTA: Os valores dos bits (Propriedades Bit00..Bit31) no so afetadas pelo ajuste
de escala. Isto , representam os bits do valor lido do equipamento, antes da
converso.
Value: A propriedade Value atualizada quando feita uma nova leitura vlida
de um valor do equipamento/dispositivo utilizando sua parametrizao, porm o tipo
desta varivel (nmero inteiro, ponto flutuante, texto) depende do driver OPC, ao
qual ele est associado e da sua parametrizao. Esta propriedade somente ir ser
atualizada desta forma, se a propriedade AllowRead estiver configurada para True e
quando no houver erros de comunicao (neste caso somente as propriedades
Quality e TimeStamp so atualizadas), mas de acordo com o tempo de varredura
definido no grupo ao qual ele pertence. Outra forma de utilizar esta propriedade
escrever valores no equipamento/dispositivo. Basta para isso, atribuir um novo valor
para a propriedade Value ou algum dos bits Bit00-Bit31, desde que a propriedade
AllowWrite esteja configurado para True. Esta propriedade tambm a propriedade
padro do objeto tag OPC. Sendo assim, uma referncia por valor a um objeto tag
OPC no necessita obrigatoriamente explicitar a propriedade Value para acessar o
valor. O valor padro desta propriedade vazio. Exemplo:
Sub Botao1_Click()
'Acessa um tag e mostra o valor atual
'tag1 um objeto tipo OPCTag
Set obj = Application._
GetObject("Driver de_ Comunicao1.tag1")
MsgBox "Valor atual de tag1: " & obj.Value
'sem mostrar a propriedade Value, que padro
MsgBox "Valor atual de tag1: " & obj
End Sub
E3 - Scripts - Manual de Referncia
208 Propriedades
6.3.4. Propriedades do Bloco OPC
AdviseType: Controla o modo Advise. As opes disponveis so:
Opes disponveis para AdviseType
OPO DESCRIO
0- Always!nAdvise O tag mantido atualizado se a propriedade AllowRead do Bloco
OPC for True e a propriedade Enabled do Grupo OPC tambm for
True.
1- AdviseWhenLinked O tag s atualizado se a propriedade AllowRead do Bloco OPC e a
propriedade Enabled do Grupo OPC forem True, e o tag estiver
associado a algum objeto ativo, por exemplo, um Display de uma
Tela aberta, um Alarme habilitado, entre outros. A associao do tag
para esse propsito pode ser feita nas seguintes propriedades: Value,
RawValue, Quality e Bit00 .. Bit31 de Elementos de Bloco OPC, e
Quality e TimeStamp de Blocos OPC.

Exemplo:
Sub CommandButton3_Click()
MsgBox Application._
GetObject("DriverOPC.GrupoOPC.SCRIPT1").AdviseType
End Sub
AllowRead: Configure esta propriedade para definir se este bloco dever ou no
ser lido pelo driver OPC. Caso a propriedade AllowRead esteja configurada para
True, ento o driver automaticamente atualizar as propriedades Value e Bits (de
Bit00 at Bit31) dos elementos do bloco OPC em intervalos de tempo. Caso
contrrio, este bloco OPC no ser lido se a propriedade AllowRead estiver
configurada para False. Esta propriedade pode ser modificada em execuo. O valor
padro desta propriedade True.
Exemplo:
Sub Botao1_Click()
'Faz com que seja parada a leitura do tag
Set obj = Application.GetObject("Driver1.tag")
obj.AllowRead = False
End Sub
AllowWrite: Configure esta propriedade para definir se este tag dever ou no
ser escrito automaticamente quando a propriedade Value ou qualquer propriedade
Bit (de Bit00 at Bit031) for modificada. Se a propriedade estiver True, as
modificaes sero enviadas para o equipamento/dispositivo associado ao Driver
E3 - Scripts - Manual de Referncia
Propriedades 209
OPC, seno as modificaes sero ignoradas. Estando esta propriedade configurada
para True, ento o driver automaticamente atualizar as propriedades Value e Bits
(de Bit00 at Bit31) deste objeto, em intervalos de tempo. Caso contrrio, este Bloco
OPC no ser lido. O valor padro desta propriedade True. Exemplo:
Sub Botao1_Click()
Set obj = Application.GetObject("Driver1.tag")
obj.AllowWrite = False
End Sub
DataType: Propriedade somente de leitura. Determina o tipo de dado associado
ao bloco OPC (ver tabela).
Opes disponveis para DataType
OPO DESCRIO
0- _Undefined Valor unidimensional no definido (Vazio).
1- _Null Valor nulo.
2 - _!nteger Valor unidimensional Inteiro de 16 bits sinalizado.
3 - _Long Valor unidimensional inteiro de 32 bits sinalizado.
+ - _Single Valor unidimensional de ponto flutuante de 32 bits.
5 - _Double Valor unidimensional de ponto flutuante de 64 bits.
6 - _Currency Valor unidimensional monetrio com 4 casas decimais.
7 - _Date Valor de data/hora.
8 - _String Valor literal - Texto.
9 - _Object Valor unidimensional de referncia a um objeto.
10 - _Error Valor unidimensional de cdigo de erro.
11 - _Boolean Valor unidimensional booleano (verdadeiro/falso).
12 - _variant Dados de qualquer tipo usados para objeto e outros valores
para os quais o tipo de dados desconhecido.
13 - _UnkObject Valor unidimensional de referncia a um objeto.
1+ - _Decimal Valor unidimensional de ponto flutuante de 96 bits.
36 - _Record Valor unidimensional de gravao.
16 - _Char Valor unidimensional inteiro de 8 bits.
17 - _Byte utilizado para criao de DLLs e para OLE. Ocupa de
memria 1 byte.
18 - _Word Valor unidimensional inteiro de 16 bits.
19 - _Dword Valor unidimensional inteiro de 32 bits.
20 - _LongLong Valor unidimensional inteiro de 64 bits sinalizado.
21 - _DDWord Valor unidimensional inteiro de 64 bits.
22 - _!nteger_ Nmeros sem decimais, cujo intervalo de ocorrncia dever
ser do 32.768 a 32.767. Ocupa 2 bytes.
23 - _Uinteger Nmero inteiro sem sinal (no caso equivale a um
DWORD), que vai de 0 a4294967295 (2^32 - 1).
819+ - _Arr!nteger Array unidimensional de valores integer (inteiros).
8195 - _ArrLong Array unidimensional de valores inteiros de 32 bits
sinalizados.
E3 - Scripts - Manual de Referncia
210 Propriedades
OPO DESCRIO
8196 - _ArrSingle Array unidimensional de ponto flutuante de 32 bits.

8197 - _ArrDouble Array unidimensional de valor de ponto flutuante de 64 bits.
8198 - _ArrCurrency Array unidimensional de valor monetrio com 4 casas
decimais.
8199 - _ArrDate Array unidimensional de valor de data/hora.
8200 - _ArrString Array unidimensional de valor literal Texto.
8201 - _ArrObject Array unidimensional de valor de referncia a um objeto.
8202 - _ArrError Array unidimensional de valor de cdigo de erro.
8203 - _ArrBoolean Array unidimensional de valor booleano (verdadeiro/falso).
820+ - _Arrvariant Array de dados de qualquer tipo usados para objeto e outros
valores para os quais o tipo de dados desconhecido.
8205 - _ArrUnkObject Array unidimensional de valor de referncia a um objeto.
8206 - _ArrDecimal Array unidimensional de valor de ponto flutuante de 96 bits.
8228 - _ArrRecord Array unidimensional de valor record.
8208 - _ArrChar Array unidimensional de valor char.
8209 - _ArrByte Array unidimensional de bytes, que so valores utilizados
para criao de DLLs e para OLE. Ocupa de memria 1
byte.
8210 - _ArrWord Array unidimensional de valor inteiro de 32 bits.
8211 - _ArrDWord Array unidimensional de valor inteiro de 32 bits.
8212 - _ArrLongLong Array unidimensional de valor inteiro de 16 bits.
8213 - _ArrDDWord Array unidimensional de valor inteiro de 32 bits sinalizado.
821+ - _Arr!nteger_ Array unidimensional de Inteiro de 16 bits sinalizado
8215 - _ArrU!nteger Array unidimensional de nmero inteiro sem sinal (neste
caso equivale a um DWORD), que vai de 0 a 4294967295
(232 - 1).

ItemID: A propriedade ItemID determina o caminho que identifica o Bloco OPC
no servidor ao qual o Driver OPC se conecta. A definio deste caminho flexvel e
depende do servidor especfico. Normalmente, os servidores especificam um espao
de ID com itens hierrquicos, do tipo "ItemPai.ItemFilho.Tag1". A propriedade
ItemID funciona como uma "chave" nica para os dados, considerando o "onde" ou
"o que" que permite ao servidor OPC se conectar fonte dos dados. Apesar de o
valor padro ser vazio, necessrio especificar algum valor para que o Bloco OPC
seja vlido. Exemplo:
Sub Bloco OPC1_OnStartRunning()
MsgBox ItemID
End Sub
Quality: A propriedade Quality informa qual a qualidade do valor contido na
propriedade Value. Cada vez que o Driver atribui um novo valor para o Bloco, ele
tambm configura a qualidade daquele dado. Esta propriedade somente para
leitura. O valor padro desta propriedade 0 (Qualidade Ruim).
E3 - Scripts - Manual de Referncia
Propriedades 211
NOTA: Para maiores informaes sobre qualidade, consulte o tpico Propriedade
Quality ou o tpico Qualidade no Manual do Usurio.
Size: Define o tamanho do conjunto de valores do bloco. Consulte a
documentao do driver utilizado, para conhecer qual o limite para esta propriedade
de acordo com os parmetros B1 at B4. Criando os elementos para o bloco,
possibilita acessar os valor lidos e tambm permite a escrita de valores para
equipamento/dispositivo. Esta propriedade no pode ser modificada aps iniciada a
comunicao. O valor padro desta propriedade 0. Exemplo:
Sub Bloco OPC1_OnStartRunning()
Size = 12
End Sub
SyncWrite: A propriedade SyncWrite determina o tipo de escrita usada por um
Bloco OPC. Se a propriedade estiver configurada para True, a escrita ser sncrona,
isto , o Driver OPC espera o resultado da escrita do servidor. Caso contrrio, a
escrita assncrona, isto , o valor do OPCTag ser enviado e o processamento do
Driver OPC continuar imediatamente. O valor padro desta propriedade False.
NOTA: No modo assncrono (propriedade desabilitada), a performance da
comunicao tende a ser maior, porm no modo sncrono (propriedade habilitada), o
sucesso da operao de escrita verificado e informado.
TimeStamp: A propriedade TimeStamp atualizada sempre que ocorrer alguma
mudana de valor ou estado nas propriedades Value ou Quality. Ele informa qual a
data/hora associada tanto ao valor quanto a qualidade do Bloco OPC. Esta uma
propriedade somente para leitura. O valor padro desta propriedade 00:00:00.
6.3.5. Propriedades do Elemento de Bloco OPC
Bit00-Bit031: As propriedades de bit Bit00 at Bit31 representam juntas os 32
bits do valor presente na propriedade Value do objeto elemento de bloco OPC, sendo
Bit00 o bit menos significativo e Bit31 o bit mais significativo. Modificar cada um
destes bits implica na igual modificao da propriedade Value do elemento, e vice-
versa, mas isto somente ocorre quando a propriedade UseBitFields estiver
configurada para True. O valor padro destas propriedades False.
DeviceHigh: A propriedade DeviceHigh define o valor mximo atingido por um
elemento de bloco no equipamento/dispositivo. Esta propriedade ser utilizada para
fazer o ajuste de escala do valor proveniente do equipamento/dispositivo antes de ser
atribudo propriedade Value. Da mesma forma, no momento da escrita feita a
operao inversa antes de enviar o valor para o driver. Esta converso s ocorre
E3 - Scripts - Manual de Referncia
212 Propriedades
quando a propriedade EnableScaling est configurada para True. O valor padro
desta propriedade 1000. Exemplo:
Sub Elemento_OnStartRunning()
'Faz o ajuste de escala de um elemento temperatura
'que varia de 0 a 255 no OPC, mas significam na
'prtica de 0 a 100 graus Celsius
EU = "Graus Celsius"
EnableScaling = True
DeviceHigh = 255
DeviceLow = 0
EUHigh = 100
EULow = 0
End Sub
DeviceLow: A propriedade DeviceLow define o valor mnimo atingido por um
elemento no equipamento/dispositivo. Esta propriedade ser utilizada para fazer o
ajuste de escala do valor proveniente do equipamento/dispositivo antes de ser
atribudo propriedade Value. Da mesma forma, no momento da escrita, feita a
operao inversa antes de enviar o valor para o driver. Esta converso s ocorre
quando a propriedade EnableScaling est configurada para True. O valor padro
desta propriedade 0.
Exemplo:
Sub Elemento_OnStartRunning()
'Faz o ajuste de escala de um elemento temperatura
'que varia de 0 a 255 no OPC, mas significam na
'prtica de 0 a 100 graus Celsius
EU = "Graus Celsius"
EnableScaling = True
DeviceHigh = 255
DeviceLow = 0
EUHigh = 100
EULow = 0
End Sub
EnableScaling: A propriedade EnableScaling habilita/desabilita a escala de valor
para o valor enviado e recebido do equipamento/dispositivo. Se esta propriedade
estiver configurada para True, todo valor proveniente do equipamento/dispositivo
sofrer ajuste de escala conforme as propriedades DeviceHigh, DeviceLow, EUHigh
e EULow antes de ser atribudo propriedade Value. O mesmo ocorrer quando uma
escrita for necessria, quando o valor presente em Value sofrer ajuste de escala
E3 - Scripts - Manual de Referncia
Propriedades 213
(sem com isso alterar a propriedade Value) e posteriormente ser enviado para o
equipamento/dispositivo. Caso a propriedade EnableScaling tenha o valor False,
nenhum ajuste de escala ser efetuado em nenhum dos dois sentidos (escrita e
leitura). O valor padro desta propriedade False.
Exemplo:
Sub Elemento_OnStartRunning()
'Faz o ajuste de escala de um elemento temperatura
'que varia de 0 a 255 no OPC mas significam na
'prtica de 0 a 100 graus Celsius
EU = "Graus Celsius"
EnableScaling = True
DeviceHigh = 255
DeviceLow = 0
EUHigh = 100
EULow = 0
End Sub
EU: Identifica a unidade de engenharia representada por seu valor, como por
exemplo: graus, metros, KW/h etc.
Exemplo:
Sub Elemento_OnStartRunning()
'Faz o ajuste de escala de um tag de temperatura
'que varia de 0 a 255 no OPC mas significam na
'prtica de 0 a 100 graus Celsius
EU = "Graus Celsius"
EnableScaling = True
DeviceHigh = 255
DeviceLow = 0
EUHigh = 100
EULow = 0
End Sub
EUHigh: Define qual o valor mximo que dever ser atribudo propriedade
Value, ajustando a escala ao valor do equipamento/dispositivo antes desta atribuio.
Da mesma forma, no momento da escrita feita a operao inversa antes de enviar o
valor para o driver. Esta converso s ocorre quando a propriedade EnableScaling
est configurada para True. O valor padro desta propriedade 1000.
E3 - Scripts - Manual de Referncia
214 Propriedades
Exemplo:
Sub Elemento_OnStartRunning()
'Faz o ajuste de escala de um elemento temperatura
'que varia de 0 a 255 no OPC mas significam na
'prtica de 0 a 100 graus Celsius
EU = "graus Celsius"
EnableScaling = True
DeviceHigh = 255
DeviceLow = 0
EULow = 100
EULow = 0
End Sub
EULow: Define qual o valor mnimo que dever ser atribudo propriedade
Value, ajustando a escala ao valor do equipamento/dispositivo antes desta atribuio.
Da mesma forma, no momento da escrita, feita a operao inversa antes de enviar
o valor para o driver. Esta converso s ocorre quando a propriedade EnableScaling
est configurada para True. O valor padro desta propriedade 0.
Exemplo:
Sub Elemento_OnStartRunning()
'Faz o ajuste de escala de um elemento temperatura
'que varia de 0 a 255 no OPC mas significam na
'prtica de 0 a 100 graus Celsius
EU = "Graus Celsius"
EnableScaling = True
DeviceHigh = 255
DeviceLow = 0
EUHigh = 100
EULow = 0
End Sub
Index: Utilize esta propriedade para especificar a posio que um elemento
ocupa entre os elementos configurados pela propriedade Size do objeto Bloco OPC
no qual ele est inserido. Esta propriedade aceita valores de 0 at um nmero menor
do que a valor definido em Size. Por exemplo: configurando um bloco OPC para ter
Size igual a 20, o nmero mximo vlido para a propriedade Index ser 19 e o
mnimo 0. Esta propriedade pode ser alterada aps iniciada a comunicao. O valor
padro propriedade 0, porm ao mapear os elementos de um bloco o Studio
automaticamente configura o parmetro Index para um valor de acordo com o
especificado.
E3 - Scripts - Manual de Referncia
Propriedades 215
Exemplo:
Sub Elemento1_OnRead()
MsgBox Index
End Sub
Quality: A propriedade Quality informa qual a qualidade do valor contido na
propriedade Value. Cada vez que o Driver atribui um novo valor para o Elemento,
ele tambm configura a qualidade daquele dado. Esta propriedade somente para
leitura. O valor padro desta propriedade 0 (Qualidade Ruim).
NOTA: Para maiores informaes sobre qualidade, consulte o tpico Propriedade
Quality, ou o tpico Qualidade no Manual do Usurio.
RawValue: Acessa o valor original do elemento anterior escala, ou seja,
independentemente da configurao da propriedade EnableScaling. Ento, se esta
propriedade for False, as propriedades Value e RawValue apresentam o mesmo
comportamento.
UseBitFields: Caso a propriedade UseBitFields tenha o valor True, toda vez que
o valor da propriedade Value for modificada, ele atualizar os bits referentes s
propriedades Bit00 at Bit31. Da mesma forma, atualizar o valor de Value toda vez
que alguma das propriedades Bit00 at Bit31 mudar de valor e posteriormente
enviar para o equipamento/dispositivo se a propriedade AllowWrite do bloco de
comunicao estiver configurada para True. Caso contrrio, se a propriedade
UseBitFields estiver configurada para False, os bits no sofrero/acarretaro
qualquer mudana. Esta propriedade pode ser atualizada aps ter sido iniciada a
comunicao. O valor padro desta propriedade False.
Value: Atualizada sempre que um novo valor lido no servidor OPC, de acordo
com a especificao da propriedade ItemID do Bloco OPC onde este objeto est
inserido, e considerando a propriedade Index (que especifica a posio do elemento
no vetor do bloco). O tipo desta propriedade (nmero inteiro, ponto flutuante, texto,
etc.) depende do driver ao qual ele est associado e da sua parametrizao.
Esta propriedade somente ser atualizada desta forma se a propriedade AllowRead
do objeto Bloco OPC ao qual o elemento pertence estiver configurada para True, e
de acordo com o tempo de varredura definido na propriedade Scan do Grupo OPC
que contm o bloco. Se a propriedade AllowWrite do objeto Bloco OPC estiver
configurada em True, pode-se escrever valores no equipamento/dispositivo
simplesmente atribuindo um novo valor para a propriedade Value.
Esta tambm a propriedade padro do objeto Elemento de Bloco OPC. Sendo
assim, uma referncia por valor a um objeto Elemento de Bloco OPC no necessita
obrigatoriamente explicitar a propriedade Value para acessar o valor. Caso esta
propriedade no esteja sendo atualizada, verifique se a propriedade Index est
E3 - Scripts - Manual de Referncia
216 Propriedades
corretamente configurada (seu valor deve ser zero at o tamanho do Bloco OPC
menos um). Exemplo:
Sub Botao1_Click()
'Acessa um elemento e mostra o valor atual
'elm1 um objeto tipo Elemento de Bloco OPC
Set obj = Application.GetObject_
("OPCDriver1.Grupo1.BlocoOPC1.elm1")
MsgBox "Valor atual de elm1: " & obj.Value
'Isto tambm pode ser feito de outra forma,
'sem mostrar a propriedade Value, que padro
MsgBox "Valor atual de elm1: " & obj
End Sub
Propriedade Quality
Quality: A propriedade Quality representa o estado de qualidade do valor. O E3
utiliza o padro OPC para informar essa propriedade. O campo formado por uma
palavra de 16 bits, sendo que os primeiros 8 bits so definidos na forma de 3 campos
de bits: Qualidade, Substatus e Limite, nessa disposio: QQSSSSLL. Qualidade
pode ser: ruim, incerta ou boa (ver tabela a seguir). Substatus tem informaes
complementares de Qualidade. Limite pode indicar informaes de diagnstico.
Servidores que no suportam estas ltimas informaes, retornam zero nos bits
correspondentes.
Os outros 8 bits (de maior ordem) esto disponveis para uso de cada fabricante. Se
esses bits forem utilizados, os bits de qualidade padro ainda so utilizados para
indicar quais dedues pode-se fazer sobre os dados retornados. Assim, de
responsabilidade do cliente interpretar o campo de informaes especficas de
qualidade para garantir que o servidor que est provendo essa informao usa as
mesmas regras que o cliente.
Um driver ou servidor OPC que no suporta informao de qualidade sempre
retorna o valor 192 (qualidade boa). Tambm aceitvel que um servidor retorne
simplesmente qualidade ruim (0) ou boa (192) e no passar nenhuma informao
nos bits de substatus e limite (retornar 0 nesses bits).
Uma lista dos valores possveis de Quality e seu significado pode ser vista nas
tabelas a seguir.
E3 - Scripts - Manual de Referncia
Propriedades 217
Faixas de valor para Quality
FAIXA QUALIDADE DESCRIO
0 - 63 RUIM O valor no utilizvel pelas razes indicadas
em substatus.
6+ - 127 INCERTA A qualidade do valor incerta pelas razes
indicadas em substatus.
128 - 191 N/A No usado pelo padro OPC.
192 - 255 BOA A qualidade do valor boa.

Opes possveis para Limite
LIMITE DESCRIO
Sem limite O valor livre para mover acima ou abaixo.
Baixo O valor est limitado em algum valor inferior.
Alto O valor est limitado em algum valor superior.
Constante O valor uma constante e no pode mover-se.

E3 - Scripts - Manual de Referncia
218 Propriedades
Substatus para Qualidade Ruim (0 63)
SUBSTATUS DESCRIO LIMITES

S
E
M

B
A
I
X
O

A
L
T
O

C
O
N
S
T
A
N
T
E

Nao-especifico O valor ruim, mas nenhuma
razo especfica conhecida.
000 001 002 003
Erro de
configuraao
H algum problema de
configurao no servidor. Por
exemplo: o item em questo pode
ter sido apagado.
004 005 006 007
Nao conectado A entrada deveria estar
logicamente conectada a algo, mas
no est. Esta qualidade pode
refletir que no h valor disponvel
neste momento porque o mesmo
pode no ter sido fornecido pela
fonte de dados, por exemplo.
008 009 010 011
Falha de
dispositivo
Uma falha de dispositivo foi
detectada.
012 013 014 015
Falha de sensor Uma falha de sensor foi detectada
(o campo Limite pode prover
informao adicional).
016 017 018 019
Ultimo valor
conhecido
Comunicao em falha, mas o
ltimo valor conhecido est
disponvel. A idade do valor pode
ser determinada atravs da
propriedade TimeStamp.
020 021 022 023
Falha de
comunicaao
Comunicao em falha, mas no h
valor conhecido disponvel.
024 025 026 027
Fora de servio O bloco est fora de scan ou
trancado.
028 029 030 031
NfA No usado. 032 063

E3 - Scripts - Manual de Referncia
Propriedades 219
Substatus para Qualidade Incerta (64 127)
SUBSTATUS DESCRIO LIMITES

S
E
M

B
A
I
X
O

A
L
T
O

C
O
N
S
T
A
N
T
E

Nao-especifico O valor incerto, mas nenhuma razo
especfica conhecida.
064 065 066 067
Ultimo valor
utilizado
O dispositivo que estava providenciando o
valor parou de faz-lo. O valor deve ser
considerado velho. Note que isso difere
de um valor ruim com o substatus ltimo
Valor Conhecido. Esse estado associado
com uma falha de comunicao num valor
buscado possvel de ser detectada. Este
erro associado falha de alguma fonte
externa que iria atualizar o valor em um
perodo aceitvel. A idade do dado pode
ser determinada atravs da propriedade
TimeStamp.
068 069 070 071
NfA No usado. 072 - 079
Sensor sem
precisao
O valor est colado em um dos limites
do sensor (nesse caso o campo limite deve
estar ajustado para 1 ou 2) ou o sensor est
de algum modo conhecido fora de
calibrao (nesse caso, Limite deve ser 0).
080 081 082 083
Unidade de
engenharia
excedida
O valor retornado est fora dos limites
definidos para esse parmetro. Note que
nesse caso o valor em Limite indica quais
limites foram excedidos mas no
necessariamente implica que o valor no
possa ir alm da faixa especificada.
084 085 086 087
Subnormal O valor derivado de mltiplas fontes e h
um nmero menor do que o requerido de
boas fontes.
088 089 090 091
NfA No usado. 092 127

E3 - Scripts - Manual de Referncia
220 Propriedades
Substatus para Qualidade Boa (192 255)
SUBSTATUS DESCRIO LIMITE

S
E
M

B
A
I
X
O

A
L
T
O

C
O
N
S
T
A
N
T
E

Nao-especifico O valor bom, mas nenhuma razo
especfica conhecida.
192 193 194 195
Nao utilizado No utilizado. 196 215
Sobrescrita local O valor foi sobrescrito. Tipicamente
indica que a entrada foi desconectada e
um valor entrado manualmente foi
forado.
216 217 218 219
Nao-especifico O valor bom, mas nenhuma razo
especfica conhecida.
220 - 255
6.4. Propriedades do Tag Contador
AutoRestart: Indica que a contagem deve ser recomeada do zero aps ter sido
atingido o valor estabelecido na propriedade Preset. Esta propriedade somente
vlida quando a propriedade CounterType est configurada com o valor 0-Preset.
CounterType: Define o comportamento do contador. Os valores disponveis
para esta propriedade so: 0-Preset: a contagem interrompida quando o valor
estabelecido na propriedade Preset atingido; e 1-!nfinite: a contagem prossegue
infinitamente.
Enabled: Inicia ou pra o contador. Em True, a contagem iniciada; em False,
ela interrompida.
Increment: Define o intervalo de atualizao da propriedade Value. Caso esta
propriedade tenha seu valor modificado enquanto a contagem estiver em curso, esta
modificao s ter efeito quando o contador for parado e reiniciado.
Preset: Limite a ser atingido pelo contador, em segundos.
ResetCounterWhenEnabled: Habilita o reincio da contagem (do zero) cada
vez que o valor da propriedade Enabled retorna a True. Quando desabilitada, o
contador reinicia a contagem de onde ela foi interrompida anteriormente.
E3 - Scripts - Manual de Referncia
Propriedades 221
Value: Mostra a contagem do contador, em segundos. Propriedade somente de
leitura.
6.5. Propriedades do Tag Demo
Enabled: A propriedade Enabled habilita/desabilita a variao do tag Demo. Se
Enabled estiver configurado para False, a variao estar desabilitada. Caso
contrrio, o tag atualizar a propriedade Value conforme a configurao das
propriedade Period e Scan. O valor padro desta propriedade True.
Maximum: A propriedade Maximum determina o valor mximo do tag. O valor
padro desta propriedade 100.
Exemplo:
Sub CommandButton2_Click()
'Ao clicar no boto, abre uma caixa de mensagens,
'indicando o valor da propriedade Maximum do TagDemo6
MsgBox Application.GetObject("Dados.TagDemo6").Maximum
End Sub
Minimum: A propriedade Mininum determina o valor mnimo do tag. O valor
padro desta propriedade 0. Exemplo:
Sub CommandButton2_Click()
'Ao clicar no boto, abre um messagebox indicando o valor
'da propriedade Minimum do TagDemo6
MsgBox Application.GetObject("Dados.TagDemo6").Minimum
End Sub
Period: Define o comprimento da forma de onda, em milissegundos. No se
aplica quando a propriedade Type estiver configurada para 0-Random ou 3-
CurrentTime. O valor padro desta propriedade 10000 ms. Exemplo:
Sub Tag Demo1_OnStartRunning()
Period = 1000
End Sub
Scan: A propriedade Scan define o intervalo de tempo, em milissegundos, entre
duas variaes da propriedade Value. Utilize esta propriedade se voc desejar maior
ou menor quantidade de dados gerados pelo tag Demo. O valor padro desta
propriedade 1000. O valor do scan deve ser maior que 0. Exemplo:
E3 - Scripts - Manual de Referncia
222 Propriedades
Sub Linha1_Click()
Application.GetObject("Dados.TagDemo2").Scan = 200
End Sub
TimeStamp: A propriedade TimeStamp atualizada sempre que ocorrer alguma
mudana de valor ou estado nas propriedades Value ou Quality. Ele informa qual a
data/hora associada tanto ao valor quanto qualidade do tag demo. Esta uma
propriedade somente para leitura. O valor padro desta propriedade 00:00:00.
Type: Determina o tipo de onda do tag. Modifique a propriedade conforme a
tabela abaixo. Quanto a propriedade Type estiver configurado para 3 (CurrentTime),
a propriedade Value ir conter a data/hora atual do servidor.
Opes disponveis para Type
VALOR FORMA DE ONDA
0

Random (aleatria)
1

Sine (onda senide)
2

Square (onda quadrada)
3 N/A CurrentTime (data/hora)
+

RampUp (rampa de subida)
5

RampDown (rampa de descida)
6

RampUpDown (rampa de subida
e descida)
Exemplo:
Sub Linha1_Click()
Application.GetObject("Dados.TagDemo2").Type = 2
End Sub
Value: A propriedade Value varia de acordo com o tipo da forma de onda,
estabelecida na propriedade Type. Esta uma propriedade apenas de leitura. O valor
padro desta propriedade 0. Exemplo:
Sub Figura1_Click()
MsgBox Application.GetObject("Dados.TagDemo2").Value=10
End Sub

E3 - Scripts - Manual de Referncia
Propriedades 223
6.6. Propriedades do Tag nterno
Quality: Informa a qualidade do valor contido na propriedade Value. Esta
propriedade de leitura/escrita, mas sempre que o valor do Tag Interno for
modificado - seja por Script ou por uma associao - ela ser atualizada de acordo.
Exemplo:
Sub CommandButton1_Click()
MsgBox Application.GetObject("Dados.TagInterno1").Quality
End Sub
NOTA: Para maiores informaes sobre qualidade, consulte o tpico Propriedade
Quality ou o tpico Qualidade no Manual do Usurio.
Retentive: A propriedade Retentive determina se o valor do tag interno deve ser
armazenado automaticamente, caso o domnio seja parado. Se esta propriedade
estiver configurada para True, o valor do tag interno ser armazenado
automaticamente, no caso de troca de servidor do domnio ativo. Isso garante que o
valor do tag ser sincronizado com um servidor standby. Assim, quando o servidor
for executado, o valor do tag ser o mesmo do servidor que parou. Caso contrrio, o
valor do tag ser ajustado para o valor inicial sempre que o domnio for executado
ou ocorrer troca do servidor ativo. Esta propriedade no tem efeito se for alterada em
execuo.
E3 - Scripts - Manual de Referncia
224 Propriedades
Exemplo:
Sub CommandButton1_Click()
Dim status
status = Application.GetObject("Dados.TagInterno1").Retentive
MsgBox status
Select Case status
Case True
MsgBox "O valor do tag interno ser _
armazenado automaticamente."
Case False
MsgBox "O valor do tag ser ajustado para o valor _
inicial sempre que o domnio for executado ou _
ocorrer troca do servidor ativo."
End Select
End Sub
NOTA: Esta propriedade s vlida para tags internos contidos no Servidor. Tags
internos contidos no Viewer no podem ser retentivos.
TimeStamp: A propriedade TimeStamp informa a data/hora associada ao valor
contido na propriedade Value. Esta propriedade de leitura/escrita, mas sempre que
o valor do Tag Interno for modificado - seja por Script ou por uma associao - ela
ser atualizada de acordo.
Value: A propriedade Value do tipo Variant, o que permite armazenar valores
de todo e qualquer tipo, desde um inteiro at referncias para objetos (veja o
exemplo abaixo). Utilize-o para guardar valores dentro do Viewer ou Servidor e para
trocar dados entre os diversos pontos de sua aplicao. O valor padro desta
propriedade vazio. Esta propriedade de leitura/escrita. Exemplo:
Sub Meses_OnStartRunning()
'Meses um tag do tipo InternalTag.
'Utiliza-se o evento para inicializar o vetor.
Value = Array("Janeiro","Fevereiro", "Maro", _
"Abril", "Maio", "Junho", "Julho", "Agosto", _
"Setembro", "Outubro", "Novembro", "Dezembro")
End Sub
6.7. Propriedades do Tag Timer
Enabled: Habilita/desabilita o Timer. O valor padro desta propriedade True.
E3 - Scripts - Manual de Referncia
Propriedades 225
NextExecTime: Exibe o prximo horrio de disparo. uma propriedade
somente de leitura.
RepeatInterval: utilizada sempre que o tag for do tipo contnuo. O valor
padro desta propriedade 00:00:01.
StartTime: Data/hora inicial do timer. Para o tipo Single, a prpria data/hora
de disparo. Para os demais, o momento a partir do qual o timer comea a disparar.
O valor padro o dia e a hora locais.
TriggerType: Tipo de disparo do timer. As opes disponveis so:
Opes disponveis para TriggerType
OPO DESCRIO
0-ttSingle Disparo nico.
1-ttContinuous Disparo contnuo.
2-ttDaily Disparo dirio.
3-ttNonthly Disparo mensal.
6.8. Propriedades da Tela
NOTA: O E3 utiliza para definio de coordenadas e espessura o sistema
HIMETRIC. Neste sistema, cada unidade lgica equivale a um milsimo de
centmetro; ou seja, cada 1000 unidades equivalem a 1 centmetro. Assim, este o
padro adotado na descrio das propriedades do E3, quando aplicvel.
BackgroundColor: Especifica a cor de preenchimento do fundo da Tela. Nos
scripts, utilize a funo do VBScript RGB para montar a cor a ser associada a esta
propriedade. O valor padro desta propriedade cinza (RGB(192, 192, 192)).
Caption: A propriedade Caption define o ttulo da Tela a ser mostrado na barra
de ttulo no Viewer.
FillStyle: Esta propriedade especifica o estilo do preenchimento da Tela. A
seguinte tabela contm os valores vlidos para a propriedade FillStyle:
Opes disponveis para FillStyle
OPO DESCRIO
0- bkSolid O preenchimento ser slido. (Default)
E3 - Scripts - Manual de Referncia
226 Propriedades
2- bkHorizontal O preenchimento ser com listras horizontais.
3- bkvertical O preenchimento ser com listras verticais.
+-bkDownward O preenchimento ser com listras descendo da esquerda
para a direita em ngulo de 45 graus.
5-bkUpward O preenchimento ser com listras subindo da esquerda
para a direita em ngulo de 45 graus.
6-bkCross O preenchimento ser com listras horizontais e verticais.
7-bkDiagonalCross O preenchimento ser com listras descendo e subindo da
esquerda para a direita em angulo de 45 graus.
8-bkGradient O preenchimento ser em degrad utilizando tanto
ForegroundColor quanto BackgroundColor. O efeito
ser definido pela propriedade GradientStyle.
11- bkBackground Preenche a Tela com a cor de fundo.
12 - bkPicture Preenche a Tela com a figura selecionada na propriedade
PictureFile.

ForegroundColor: Especifica a cor do preenchimento da frente da Tela. Nos
scripts, utilize a funo do VBScript RGB() para montar a cor a ser associada a esta
propriedade. O valor padro para esta propriedade preto (RGB (0, 0, 0)).
Aplicaes anteriores introduo desta propriedade tero ambas as propriedades
ForegroundColor e BackgroundColor configuradas com a cor antes armazenada na
propriedade BackgroundColor, e o estilo de preenchimento configurado como 11-
bkBackground, que pinta toda a Tela com a cor de fundo (comportamento antigo,
anterior criao dos estilos).
Exemplo:
Sub Tela1_Click()
'Troca a cor de fundo da Tela para azul
ForegroundColor = RGB(0, 0, 255)
End Sub
Frame: Retorna o quadro-pai do objeto. Esta propriedade acessvel apenas em
tempo de execuo.
GradientStyle: Esta propriedade especifica o estilo de preenchimento degrad
da Tela. Esta propriedade s ser utilizada quando a valor da propriedade FillStyle
estiver configurada para 8 (gradient). Os degrads consideram a mudana da cor
partindo de ForegroundColor e indo para BackgroundColor.
Opes disponveis para GradientStyle
OPO DESCRIO
0- LeftToRight Degrad vertical da esquerda para a direita.
1- RightToLeft Degrad vertical da direita para a esquerda.
E3 - Scripts - Manual de Referncia
Propriedades 227
2- verFromCenter Degrad vertical do centro para as bordas.
3- verToCenter Degrad vertical das bordas para o centro.
+- BottonUp Degrad horizontal de baixo para cima.
5- TopDown Degrad horizontal de cima para baixo.
6- HorzFromCenter Degrad do centro para as bordas.
7- HorzToCenter Degrad das bordas para o centro.
8- DiagUpRight Degrad diagonal para cima com a cor de frente na direita.
(Padro).
9- DiagUpLeft Degrad diagonal para cima com a cor de frente na esquerda.
10- DiagUpFromCenter Degrad diagonal para cima do centro para as bordas.
11- DiagUpToCenter Degrad diagonal para cima das bordas para o centro.
12- DiagDownLeft Degrad diagonal para baixo com cor de frente na esquerda.
13- DiagDownRight Degrad diagonal para baixo com cor de frente na direita.
1+- DiagDownFromCenter Degrad diagonal para baixo do centro para as bordas.
15- DiagDownToCenter Degrad diagonal para baixo das bordas para o centro.
16- SpotSouthEast Degrad com cor de frente partindo do canto inferior direito.
17- SpotSouthWest Degrad com cor de frente partindo do canto inferior esquerdo.
18- SpotNorthWest Degrad com cor de frente partindo do canto superior esquerdo.
19- SpotNorthEast Degrad com cor de frente partindo do canto superior direito.
20- SpotFromCenter Degrad com cor de fundo do centro para as bordas.
21- SpotToCenter Degrad com cor de fundo das bordas para o centro.

HasFocus: Esta propriedade determina que o objeto selecionado est com o foco.
Esta propriedade acessvel apenas em tempo de execuo.
Height: A propriedade Height define a altura da Tela, em unidade Himetric.
Layer: Esta propriedade define em quais camadas o objeto deve aparecer. O
valor representa uma mscara de 32 bits, um bit para cada camada. Portanto, podem
ser definidas at 32 camadas individuais. Assim, objetos podem ser agrupados
logicamente e mostrados/escondidos apenas com a modificao da mscara da
propriedade Layer.

Figura 27: Opes disponveis na Lista de Propriedades
E3 - Scripts - Manual de Referncia
228 Propriedades
Exemplo:
Sub Tela1_Click()
Layer = 1
End Sub
NOTA: A visibilidade do objeto depende de trs fatores: a propriedade Visible tem
que estar configurada para True; o objeto que pai deste objeto tem que estar
visvel; a propriedade Layer deste objeto tem que estar habilitada para a Tela.
MouseOver: A propriedade MouseOver informa se o ponteiro do mouse
encontra-se em cima da tela. Caso afirmativo, a propriedade MouseOver
habilitada; do contrrio, ser False. Esta propriedade somente de leitura e
acessvel apenas em tempo de execuo. O valor padro desta propriedade False.
MouseOverChild: A propriedade MouseOverChild informa se o ponteiro do
mouse encontra-se em cima de um dos objetos inseridos na Tela. Caso afirmativo, a
propriedade MouseOverChild habilitada. Caso contrrio, para False. Esta
propriedade para somente leitura, e acessvel apenas em tempo de execuo. O
valor padro desta propriedade False.
PictureFile: Contm o nome do arquivo da figura que ser utilizada como fundo
na Tela. Pode ser qualquer formato j suportado no E3 pelo objeto DrawPicture
(*.bmp;*.gif;*.jpg;*.cur;*.ico;*.emf;*.wmf). O valor padro desta propriedade um
string em branco. Esta propriedade s ser vlida se a propriedade FillStyle estiver
selecionada como 12 - bkPicture.
PicturePosition: Indica a posio da figura selecionada na propriedade
PictureFile na Tela. Esta propriedade s ser vlida se a propriedade FillStyle
estiver selecionada como 12 - bkPicture. As opes vlidas so:
Opes disponveis para PicturePosition
OPO DESCRIO
0 - Center Figura no tamanho original, centralizada na Tela
1 - Tile Figura no tamanho original, repetida tantas vezes
quantas necessrias para preencher a Tela.
2 - Stretch Figura redimensionada para preencher a Tela.
3 - TopLeft Figura no tamanho original, no canto esquerdo superior
da Tela.
+ - BottomLeft Figura no tamanho original, no canto esquerdo inferior
da Tela.
5 - BottomRight Figura no tamanho original, no canto direito inferior da
Tela.
6 - TopRight Figura no tamanho original, no canto direito superior da
E3 - Scripts - Manual de Referncia
Propriedades 229
Tela.
Screen: Retorna a Tela-pai do objeto. Esta propriedade acessvel apenas em
tempo de execuo.
TabStop: Esta propriedade determina a utilizao da tecla [TAB| no sistema. Se
o campo estiver True, possvel utilizar a tecla; caso contrrio, a tecla no pode ser
utilizada.
Width: A propriedade Width define a largura, em unidade Himetric, da Tela.
6.9. Propriedades do Ouadro e do Divisor
6.9.1. Propriedade do Ouadro
Caption: A propriedade Caption define o ttulo da Quadro a ser mostrado na
barra de ttulo no Viewer.
6.9.2. Propriedades do Divisor
IsHTML: A propriedade IsHTML retorna True se o divisor contm Htmls
inseridos no quadro. Caso contrrio, retorna False.
SplitBorder: Habilita/desabilita a borda do divisor, e determina se a borda entre
o divisor mandante e o divisor restante deve ser exibida em tempo de execuo. Esta
propriedade no tem efeito no divisor restante. O valor padro desta propriedade
True.
SplitDockPosition: Indica a posio do divisor desejado na Tela. As opes
disponveis so:
Opes disponveis para SplitDockPosition
OPO DESCRIO
0 - dockRemaining Posiciona o divisor como restante, ou seja: ele ocupar o
espao que sobra na diviso horizontal ou vertical.
1 - dockTop Posiciona o divisor como mandante, acima do restante.
2 - dockBottom Posiciona o divisor como mandante, abaixo do restante.
3 - dockLeft Posiciona o divisor como mandante, esquerda do
restante.
E3 - Scripts - Manual de Referncia
230 Propriedades
+ - dockRight Posiciona o divisor como mandante, direita do restante.

SplitLink: A propriedade SplitLink contm um "link" que deve ser mostrado no
divisor. possvel especificar uma Tela do projeto, um executvel ou um link na
Internet. No caso de Telas, possvel especificar um percentual de zoom e a
habilitao das barras de rolagem usando a chave "?", como no modelo: <nome-da-
tela>?<zoom>?<barra-de-rolagem>, onde <nome-da-tela> o nome da Tela
a ser aberta; <zoom> o percentual de zoom e <barra-de-rolagem> 1 para
habilitar ou 0 para no habilitar. Os parmetros <zoom> e <barra-de-rolagem>
so vlidos apenas se o link indicado se tratar de uma Tela. Caso contrrio, sero
ignorados. Se o parmetro <zoom> no for informado, assumido 100%. Se o
parmetro <barra-de-rolagem> no for informado, assumido 1, ou seja,
habilitado.
Exemplo:
Sub CommandButton1_Click()
Application.GetFrame("Divisor1").SplitLink = "Tela1?10?1"
End Sub
SplitResizable: Determina se o divisor mandante pode ser redimensionado em
tempo de execuo. Esta propriedade no tem efeito no divisor restante. O valor
padro desta propriedade True.
SplitValue: A propriedade SplitValue determina o valor que ser atribudo ao
divisor do quadro, que tanto pode ser % (percentagem), hm (HIMETRIC) ou px
(pixels). Se a unidade for omitida, o valor ser considerado em HIMETRIC.
Exemplo:
Sub Divisor1_Click()
SplitValue = 10
End Sub
6.10. Propriedades de Ob]etos de Tela
Neste tpicos, so listadas as propriedades dos Objetos de Tela. As propriedades
explicadas abaixo no se aplicam nos seguintes objetos: ActiveX (MSForms),
E3Chart, E3Browser e E3Alarm. Estes so citados posteriormente, em captulos
especficos para estes objetos.
NOTA: O E3 utiliza para definio de coordenadas e espessura o sistema
HIMETRIC. Neste sistema, cada unidade lgica equivale a um milsimo de
E3 - Scripts - Manual de Referncia
Propriedades 231
centmetro; ou seja, cada 1000 unidades equivalem a 1 centmetro. Assim, este o
padro adotado na descrio das propriedades do E3, quando aplicvel.
6.10.1. Propriedades Comuns a Todos os Ob]etos de Tela
NOTA: As propriedades listadas a seguir so comuns a todos os objetos citados
acima, inclusive o Grupo de objetos e movimentos de Rotao e Translao.
Enabled: Esta propriedade habilita/desabilita o recebimento de eventos
provenientes do teclado e mouse. O valor padro desta propriedade True.
Frame: Retorna o quadro-pai do objeto. Esta propriedade acessvel apenas em
tempo de execuo.
HasFocus: Esta propriedade determina que o objeto selecionado est com o foco.
Esta propriedade acessvel apenas em tempo de execuo.
Height: A propriedade Height define a altura do objeto, em unidade Himetric.
Layer: Esta propriedade define em quais camadas o objeto deve aparecer. O
valor representa uma mscara de 32 bits, um bit para cada camada. Portanto, podem
ser definidas at 32 camadas individuais. Assim, objetos podem ser agrupados
logicamente e mostrados/escondidos apenas com a modificao da mscara da
propriedade Layer.
MouseOver: A propriedade MouseOver informa se o ponteiro do mouse
encontra-se em cima da Tela. Caso afirmativo, a propriedade MouseOver
habilitada; do contrrio, ser False. Esta propriedade somente de leitura e
acessvel apenas em tempo de execuo. O valor padro desta propriedade False.
MouseOverChild: A propriedade MouseOverChild informa se o ponteiro do
mouse encontra-se em cima de um dos objetos inseridos na Tela. Caso afirmativo, a
propriedade MouseOverChild habilitada. Caso contrrio, para False. Esta
propriedade para somente leitura, e acessvel apenas em tempo de execuo. O
valor padro desta propriedade False.
Screen: Retorna a Tela-pai do objeto. Esta propriedade acessvel apenas em
tempo de execuo.
TabStop: Esta propriedade determina a utilizao da tecla [TAB| no sistema. Se
o campo estiver True, possvel utilizar a tecla; caso contrrio, a tecla no pode ser
utilizada.
E3 - Scripts - Manual de Referncia
232 Propriedades
Tip: A propriedade Tip mostra uma texto popup quando o mouse estiver por um
breve momento sobre o objeto em execuo.
Exemplo:
Sub RetanguloArr1_MouseUp(nButton, nShiftState, x, y)
Tip= "This is a test!"
End Sub
Visible: Esta propriedade define se o objeto deve ou no estar visvel. Se a
propriedade estiver configurada para True, o objeto fica visvel, desde que os
seguintes itens sejam tambm obedecidos, obrigatoriamente: o objeto-pai deste
objeto tambm deve estar visvel, e a propriedade Layer do objeto deve estar
presente na camada de Tela. Do contrrio, o objeto fica invisvel.
Width: A propriedade Width define a largura, em unidade Himetric, do objeto.
X: A propriedade X define a coordenada horizontal esquerda, em unidade
Himetric, do objeto.
Y: Esta propriedade define a coordenada vertical acima, em unidade Himetric,
do objeto.
6.10.2. Propriedades Comuns dos Ob]etos de Tela de Desenho
e Texto
NOTA: As propriedades listadas a seguir so comuns a todos os Objetos de Tela de
Desenho (Linha, Retngulo, Retngulo Arredondado, Elipse, Arco, Desenho Livre,
Polgono e Polgono de Curvas) e a todos os Objetos de Tela de Texto (Texto,
Display e SetPoint).
Angle: A propriedade Angle define o ngulo de rotao em graus, no sentido
anti-horrio, que o objeto deve ser rotacionado. Isto tambm se aplica aos filhos que
este objeto tiver, respeitando as limitaes de rotao de cada objeto filho. O objeto
rotacionar de acordo com o seu centro, que pode ser editado durante a operao de
rotao. O valor padro desta propriedade 0 (sem rotao).
BackgroundColor: Esta propriedade especifica a cor de preenchimento do
fundo do objeto. Esta cor utilizada quando a propriedade BackgroundStyle est
configurada para 1 (opaco) e umas das propriedades VerticalPercentFill ou
HorizontalPercentFill est com valores diferentes de 100. Outro uso desta cor
quando a propriedade FillStyle est configurada entre os valores 2 e 8. Isto faz com
que a rea restante utilize a cor de fundo para preenchimento. Nos scripts, utilize a
E3 - Scripts - Manual de Referncia
Propriedades 233
funo do VBScript RGB para montar a cor a ser associada a esta propriedade. O
valor padro desta propriedade cinza (RGB(192, 192, 192)).
BackgroundStyle: Esta propriedade especifica o modo do preenchimento do
fundo do objeto. Esta propriedade habilita a utilizao das propriedades
VerticalPercentFill e HorizontalPercentFill com valores diferentes de 100 e tambm
da propriedade FillStyle configurada entre os valores 2 e 8. Isto faz com que a rea
restante utilize a cor de fundo BackgroundColor para preenchimento. A seguinte
tabela contm os valores vlidos para a propriedade BackgroundStyle:
Opes disponveis para BackgroundStyle
OPO DESCRIO
0 - Transparente Nenhum fundo deste objeto ser desenhado.
1- Opaco Caso visvel, o fundo ser desenhado.
BorderColor: Especifica a cor da borda ou a cor da linha deste objeto. Esta
propriedade s utilizada quando a propriedade BorderStyle no est configurada
para o valor 5 (null), onde o objeto fica sem borda. Nos scripts, utilize a funo do
VBScript RGB para montar a cor a ser associada a esta propriedade. O valor padro
desta propriedade branco (RGB(255, 255, 255)), exceto para os objetos Display e
SetPoint, cujo valor padro da propriedade cinza escuro (RGB(128,128,128)).
BorderStyle: A propriedade BorderStyle determina o estilo de borda que ser
aplicada ao objeto.
Opes disponveis para BorderStyle
OPO DESCRIO
0- Normal (Padro) Aplica uma borda slida no grade vertical na escala.
1- Dash Aplica uma borda linha tracejada na escala.
2- Dot Aplica uma borda pontilhada na escala.
3- Dashdot Aplica uma borda trao e ponto na escala.
+- Dashdotdot Aplica uma borda trao ponto ponto na escala.
5- Null O objeto no ter borda.
BorderWidth: Define a espessura, em unidade Himetric, da linha/borda do
objeto. S utilizado se a propriedade BorderStyle no estiver configurada para o
valor 5 (null). O valor padro desta propriedade 0. Esta uma exceo no sistema
de medidas do E3, pois quando seu valor 0, a espessura da linha/borda no
definida em unidade Himetric, mas sim em pixels: BorderWidth=0 indica a
espessura de 1 pixel. Exemplo:
Sub CommandButton1_Click()
Screen.Item("Label1").BorderWidth=120
End Sub
E3 - Scripts - Manual de Referncia
234 Propriedades
Effect3D: Determina a aplicao de efeito 3D no objeto selecionado. As opes
disponveis para esta propriedade so:
Opes disponveis para Effect3D
OPO DESCRIO
0- No3D Transparente. (Padro)
1-Raised Aplica efeito 3D em relevo.
2-Sunken Aplica efeito 3D em baixo relevo. (Afundado)
Effect3D_X: Especifica a dimenso do efeito 3D no eixo horizontal do objeto
(eixo X). O valor padro desta propriedade 30.
Exemplo:
Sub Linha1_Click()
Effect3D_X=50
End Sub
Effect3D_Y: Especifica a dimenso do efeito 3D no eixo vertical do objeto (eixo
Y). O valor padro desta propriedade 30.
Exemplo:
Sub Linha1_Click()
Effect3D_Y=50
End Sub
Effect3DColorBase: Determina a cor da base do efeito 3D no objeto. O valor
padro desta propriedade preto (RGB (0, 0, 0)).
Exemplo:
Sub Linha1_Click()
Effect3DColorBase= RGB (0,150,200)
End Sub
Effect3DColorTop: Determina a cor do topo do efeito 3D no objeto. O valor
padro desta propriedade branco (RGB (255, 255, 255)). Exemplo:
Sub Linha1_Click()
Effect3DColorTop= RGB (0,255,200)
End Sub
E3 - Scripts - Manual de Referncia
Propriedades 235
FillStyle: Esta propriedade especifica o estilo do preenchimento do objeto. A
seguinte tabela contm os valores vlidos para a propriedade FillStyle:
Opes disponveis para FillStyle
OPO DESCRIO
0- Solid O preenchimento ser slido. (Default)
1- Hollow No haver preenchimento.
2- Horizontal O preenchimento ser com listras horizontais.
3- vertical O preenchimento ser com listras verticais.
+-Downward O preenchimento ser com listras descendo da esquerda
para a direita em ngulo de 45 graus.
5-Upward O preenchimento ser com listras subindo da esquerda
para a direita em ngulo de 45 graus.
6-Cross O preenchimento ser com listras horizontais e verticais.
7-DiagonalCross O preenchimento ser com listras descendo e subindo da
esquerda para a direita em angulo de 45 graus.
8-Gradient O preenchimento ser em degrad utilizando tanto
ForegroundColor quanto BackgroundColor. O efeito
ser definido pela propriedade GradientStyle.
9-SemiTransparent Deixa o objeto translcido.
10- NouseArea O preenchimento ser vazio, mas o objeto continua
sensvel aos eventos

ForegroundColor: Esta propriedade especifica a cor do preenchimento do
frente do objeto. Esta cor utilizada quando a propriedade FillStyle est configurada
para 0 (slido) ou entre 2 e 9. Nos scripts, utilize a funo do VBScript RGB() para
montar a cor a ser associada a esta propriedade. O valor padro para esta
propriedade azul (RGB (0, 0, 255)), exceto para os objetos Display e SetPoint,
cujo valor padro para esta propriedade branco (RGB (255, 255, 255)).
Exemplo:
Sub Botao1_Click()
'Troca a cor de fundo do botao para verde
'quando clica no objeto
ForegroundColor = RGB(0, 255, 0)
End Sub
GradientStyle: Esta propriedade especifica o estilo de preenchimento degrad
do objeto. Esta propriedade s ser utilizada quando a valor da propriedade FillStyle
estiver configurada para 8 (gradient). Os degrads consideram a mudana da cor
partindo de ForegroundColor e indo para BackgroundColor.
E3 - Scripts - Manual de Referncia
236 Propriedades
Opes disponveis para GradientStyle
OPO DESCRIO
0- LeftToRight Degrad vertical da esquerda para a direita.
1- RightToLeft Degrad vertical da direita para a esquerda.
2- verFromCenter Degrad vertical do centro para as bordas.
3- verToCenter Degrad vertical das bordas para o centro.
+- BottonUp Degrad horizontal de baixo para cima.
5- TopDown Degrad horizontal de cima para baixo.
6- HorzFromCenter Degrad do centro para as bordas.
7- HorzToCenter Degrad das bordas para o centro.
8- DiagUpRight Degrad diagonal para cima com a cor de frente na direita.
(Padro).
9- DiagUpLeft Degrad diagonal para cima com a cor de frente na esquerda.
10- DiagUpFromCenter Degrad diagonal para cima do centro para as bordas.
11- DiagUpToCenter Degrad diagonal para cima das bordas para o centro.
12- DiagDownLeft Degrad diagonal para baixo com cor de frente na esquerda.
13- DiagDownRight Degrad diagonal para baixo com cor de frente na direita.
1+- DiagDownFromCenter Degrad diagonal para baixo do centro para as bordas.
15- DiagDownToCenter Degrad diagonal para baixo das bordas para o centro.
16- SpotSouthEast Degrad com cor de frente partindo do canto inferior direito.
17- SpotSouthWest Degrad com cor de frente partindo do canto inferior esquerdo.
18- SpotNorthWest Degrad com cor de frente partindo do canto superior esquerdo.
19- SpotNorthEast Degrad com cor de frente partindo do canto superior direito.
20- SpotFromCenter Degrad com cor de fundo do centro para as bordas.
21- SpotToCenter Degrad com cor de fundo das bordas para o centro.
IMPORTANTE: Um grande nmero de objetos sendo mostrados com degrad
simultaneamente acarreta uma perda de performance na atualizao da tela. O uso de
figuras no lugar pode resolver o problema.
Exemplo:
Sub Botao1_Click()
'Objeto fica com degrade
FillStyle = 8 'GradientFill
GradientStyle = 0 'leftToRight
End Sub
HorizontalFillStyle: Define como ser o preenchimento horizontal do objeto.
Esta propriedade trabalha em conjunto com a propriedade HorizontalPercentFill,
que informa qual porcentagem do objeto dever ser preenchida. Estas duas
propriedades permitem uma simulao de um preenchimento de nvel em um objeto,
como ocorre em um nvel de um tanque, por exemplo.
E3 - Scripts - Manual de Referncia
Propriedades 237
Opes disponveis para HorizontalFillStyle
OPO DESCRIO
0- FillLeftToRight A porcentagem de preenchimento ser da esquerda para a direita.
(Padro)
1-FillRightToLeft A porcentagem de preenchimento ser da direita para a esquerda.
2-FillCenterToEdgesH A porcentagem de preenchimento ser do centro para as bordas.

Exemplo:
Sub Circulo1_OnStartRunning()
HorizontalFillStyle=2
End Sub
HorizontalPercentFill: Utilize a propriedade HorizontalPercentFill para
especificar qual a porcentagem da rea horizontal do objeto dever ser preenchida.
Os valores aceitos por esta propriedade variam de 0 a 100. Esta propriedade trabalha
em conjunto com a propriedade HorizontalFillStyle, que informa como este
preenchimento ocorrer. O valor padro desta propriedade 100. Exemplo:
Sub Circulo1_OnStartRunning()
HorizontalPercentFill=200
End Sub
Shadow: Indica a presena do efeito de sombra no objeto. Se True, o objeto
possui uma sombra, cujas coordenadas so estabelecidas pelas propriedades
ShadowX e ShadowY. Do contrrio, o objeto no possui o efeito de sombra. O valor
padro desta propriedade False.
ShadowColor: Especifica a cor do preenchimento da sombra do objeto. Esta cor
utilizada quando a propriedade Shadow est configurada para True. Nos scripts,
utilize a funo do VBScript RGB() para montar a cor a ser associada a esta
propriedade. O valor padro desta propriedade cinza escuro (RGB(128, 128, 128)).
Exemplo:
Sub Botao1_Click()
'Troca a cor de fundo do botao para cinza claro
'quando clica no objeto
ShadowColor = RGB(192, 192, 192)
End Sub
ShadowX: Define a coordenada vertical esquerda da sombra deste objeto, em
unidades Himetric. Este sombra sempre relativa a propriedade X do objeto.
Valores positivos indicam que a sombra estar direita do objeto, e negativos,
esquerda. O valor padro desta propriedade 200.
E3 - Scripts - Manual de Referncia
238 Propriedades
ShadowY: Define a coordenada horizontal superior da sombra deste objeto, em
unidades Himetric. Este sombra sempre relativa a propriedade Y do objeto. Valores
positivos indicam que a sombra estar abaixo do objeto, e negativos, acima. O valor
padro desta propriedade 200.
Exemplo:
Sub Botao1_Click()
ShadowY = 250
End Sub
VerticalFillStyle: Define como ser o preenchimento vertical do objeto. Esta
propriedade trabalha em conjunto com a propriedade VerticalPercentFill, que
informa qual porcentagem do objeto dever ser preenchida. Estas duas propriedades
permitem uma simulao de um preenchimento de nvel em um objeto.
Opes disponveis para VerticalFillStyle
OPO DESCRIO
0- FillBottonToTop A porcentagem de preenchimento ser de baixo para cima.
1-FillTopToBottom A porcentagem de preenchimento ser de cima para baixo.
2-FillCenterToEdgesv A porcentagem de preenchimento ser do centro para as bordas.

Exemplo:
Sub Circulo1_OnStartRunning()
VerticalFillStyle= 2
End Sub
VerticalPercentFill: Utilize a propriedade VerticalPercentFill para especificar
qual a porcentagem da rea vertical do objeto dever ser preenchida. Os valores
aceitos por esta propriedade variam de 0 a 100. Esta propriedade trabalha em
conjunto com a propriedade VerticalFillStyle, que informa como este preenchimento
ocorrer. O valor padro desta propriedade 100.
Exemplo:
E3 - Scripts - Manual de Referncia
Propriedades 239
Sub Circulo1_OnStartRunning()
VerticalPercentFill= 254
End Sub
6.10.3. Propriedades do Retngulo Arredondado
RoundAspectX: A propriedade RoundAspectX define o tamanho da dimenso
das laterais do retngulo no eixo X. Sendo assim, de acordo com o valor definido na
propriedade, os cantos do retngulo iro mudar a sua forma, desde um retngulo at
uma elipse. Esta propriedade pode variar seu valor de 0.1 at 1.0.
Exemplo:
Sub RetanguloArred_Click()
RoundAspectX = 0.5
End Sub
RoundAspectY: A propriedade RoundAspectY define o tamanho da dimenso da
altura do retngulo no eixo Y. Sendo assim, de acordo com o valor definido na
propriedade, os cantos do retngulo iro mudar a sua forma, desde um retngulo at
uma elipse. Esta propriedade pode variar seu valor de 0.1 at 1.0.
Exemplo:
Sub RetanguloArred_Click()
RoundAspectY = 0.5
End Sub
6.10.4. Propriedades do Arco
ArcBeginAngle: Esta propriedade configura o ngulo inicial do arco do objeto,
em graus. O intervalo aceito por essa propriedade vai de 0 at 359. O estilo e forma
do arco dependero tambm das configuraes das propriedades ArcEndAngle e
ArcStyle. O valor padro desta propriedade 0.
Exemplo:
Sub CommandButton9_Click()
Screen.Item("Arco1").ArcBeginAngle = 12
End Sub
ArcEndAngle: Esta propriedade configura o ngulo final do arco do objeto, em
graus. O intervalo aceito por essa propriedade vai de 0 at 359. O estilo e forma do
arco dependero tambm das configuraes das propriedades ArcBeginAngle e
ArcStyle. O valor padro desta propriedade 270.
E3 - Scripts - Manual de Referncia
240 Propriedades
Exemplo:
Sub CommandButton9_Click()
Screen.Item("Arco1").ArcEndAngle = 12
End Sub
ArcStyle: Esta propriedade especifica o estilo da borda/linha do objeto. A borda
do objeto ser desenhada conforme o estilo definido, utilizando a cor especificada
em BorderColor com a espessura BorderWidth. A seguinte tabela contm os valores
vlidos para a propriedade ArcStyle:
Opes disponveis para ArcStyle
OPO DESCRIO
0- arc O estilo do desenho ser um arco.
1- chord O estilo do desenho ser uma corda, unindo o ponto inicial e final.
2- pie O estilo do desenho ser uma pizza. (Padro)

Exemplo:
Sub CommandButton9_Click()
Screen.Item("Arco1").ArcStyle = 1
End Sub
6.10.5. Propriedades da Figura
BackgroundColor: Esta propriedade especifica a cor de preenchimento do
fundo do objeto. Esta cor utilizada quando a propriedade BackgroundStyle est
configurada para 1 (opaco) e umas das propriedades VerticalPercentFill ou
HorizontalPercentFill est com valores diferentes de 100. Outro uso desta cor
quando a propriedade FillStyle est configurada entre os valores 2 e 8. Isto faz com
que a rea restante utilize a cor de fundo para preenchimento. Nos scripts, utilize a
funo do VBScript RGB para montar a cor a ser associada a esta propriedade. O
valor padro desta propriedade cinza (RGB(192, 192, 192)).
BackgroundStyle: Esta propriedade especifica o modo do preenchimento do
fundo do objeto. Esta propriedade habilita a utilizao das propriedades
VerticalPercentFill e HorizontalPercentFill com valores diferentes de 100 e tambm
da propriedade FillStyle configurada entre os valores 2 e 8. Isto faz com que a rea
restante utilize a cor de fundo BackgroundColor para preenchimento. A seguinte
tabela contm os valores vlidos para a propriedade BackgroundStyle:
Opes disponveis para BackgroundStyle
OPO DESCRIO
E3 - Scripts - Manual de Referncia
Propriedades 241
0 - Transparente Nenhum fundo deste objeto ser desenhado.
1- Opaco Caso visvel, o fundo ser desenhado.
Convert: Esta propriedade permite a converso da figura. Se a opo do campo
estiver em 0 possvel visualizar a converso. Caso contrrio, no ser possvel
visualizar a converso. O campo s aceita os valores 0 e 1. O valor padro desta
propriedade 0.
EnableOverrideLineColor: Esta propriedade habilita/desabilita o objeto a
sobrescrever a cor original da linha da imagem pela cor definida na propriedade
OverrideLineColor. Se a propriedade EnableOverrideLineColor estiver habilitada,
faz com que sejam modificadas a cor original da linha do objeto pela cor de
OverrideLineColor. Caso contrrio, o objeto figura exibir a cor original.
Filename: Define o nome do arquivo de imagem associado a esse objeto. O
caminho do arquivo pode ser tanto o caminho completo do arquivo no disco ou o
caminho relativo aplicao (quando inserido o arquivo de imagem como um
recurso da aplicao). O valor padro desta propriedade vazio. Os seguintes tipos
de arquivos de imagem so suportados:

PROPRIEDADE FILTRO DESCRIO FILTRO
Bitmap file BMP No Sim
Graphics Interchange Format GIF No Sim
Joint Picture Expert Group JPG No Sim
Icon File ICO No Sim
HorizontalFillStyle: Define como ser o preenchimento horizontal do objeto.
Esta propriedade trabalha em conjunto com a propriedade HorizontalPercentFill,
que informa qual porcentagem do objeto dever ser preenchida. Estas duas
propriedades permitem uma simulao de um preenchimento de nvel em um objeto,
como ocorre em um nvel de um tanque, por exemplo.
Opes disponveis para HorizontalFillStyle
OPO DESCRIO
0- FillLeftToRight A porcentagem de preenchimento ser da esquerda para a direita.
(Padro)
1-FillRightToLeft A porcentagem de preenchimento ser da direita para a esquerda.
2-FillCenterToEdgesH A porcentagem de preenchimento ser do centro para as bordas.

Exemplo:
Sub Circulo1_OnStartRunning()
HorizontalFillStyle=2
End Sub
E3 - Scripts - Manual de Referncia
242 Propriedades
HorizontalPercentFill: Utilize a propriedade HorizontalPercentFill para
especificar qual a porcentagem da rea horizontal do objeto dever ser preenchida.
Os valores aceitos por esta propriedade variam de 0 a 100. Esta propriedade trabalha
em conjunto com a propriedade HorizontalFillStyle, que informa como este
preenchimento ocorrer. O valor padro desta propriedade 100. Exemplo:
Sub Circulo1_OnStartRunning()
HorizontalPercentFill=200
End Sub
OverrideFillColor: Quando a propriedade OverrideFillMode estiver
especificada para valores 2 ou 3, a propriedade OverrideFillColor ser usada para
definir a cor a ser usada no preenchimento da imagem, ao invs da cor original. Nos
scripts, utilize a funo do VBScript RGB() para montar a cor a ser associada a esta
propriedade. O valor padro desta propriedade vermelho (RGB(255, 0, 0)).
Exemplo:
Sub DrawPicture1_Click()
'Ao clicar no objeto seta o modo
'Override para slido e troca a cor de
'preenchimento da imagem para azul
OverrideFillMode = 2
OverrideFillColor = RGB(0, 0, 255)
End Sub
NOTA: Esta propriedade s funciona quando o objeto Figura est trabalhando com
arquivos metafile (WMF ou EMF).
OverrideFillMode: A propriedade OverrideFillMode especifica o modo do
preenchimento da imagem do objeto, quando este est mostrando um arquivo
Windows Metafile. Ela altera o modo original de preenchimento da imagem sem
alterar o arquivo definido pela propriedade Filename. A seguinte tabela contm os
valores vlidos para a propriedade OverrideFillMode:
Opes disponveis para OverrideFillMode
OPO DESCRIO
0- NoOverride (Padro) A imagem manter seu preenchimento original.
1- WideFrame A imagem no ser preenchida.
2- SolidFill A imagem ser preenchida com a cor especificada pela propriedade
OverrideFillColor.
3- ByBrightness A imagem ser preenchida com a cor especificada pela propriedade
OverrideFillColor, porm levar em conta qual era a intensidade da
cor original da imagem.
E3 - Scripts - Manual de Referncia
Propriedades 243
Exemplo:
Sub DrawPicture1_Click()
'Ao clicar no objeto seta o modo
'Override para slido e troca a cor de
'preenchimento da imagem para azul
OverrideFillMode = 2
OverrideFillColor = RGB(0, 0, 255)
End Sub
NOTA: Esta propriedade s funciona quando o objeto Figura est trabalhando com
arquivos metafile (WMF ou EMF).
OverrideLineColor: Quando a propriedade EnableOverrideLineColor estiver
configurada para True, a propriedade OverrideLineColor ser usada para definir a
cor a ser usada na cor da linha da figura, ao invs da cor original. Nos scripts, utilize
a funo do VBScript RGB() para montar a cor a ser associada a esta propriedade. O
valor padro desta propriedade vermelho (RGB(255, 0, 0)). Exemplo:
Sub DrawPicture1_Click()
OverrideLineColor = RGB(0, 0, 255)
End Sub
NOTA: Esta propriedade s funciona quando o objeto Figura est trabalhando com
arquivos metafile (WMF ou EMF).
Shadow: Indica a presena do efeito de sombra no objeto. Se True, o objeto
possui uma sombra, cujas coordenadas so estabelecidas pelas propriedades
ShadowX e ShadowY. Do contrrio, o objeto no possui o efeito de sombra. O valor
padro desta propriedade False.
ShadowColor: Especifica a cor do preenchimento da sombra do objeto. Esta cor
utilizada quando a propriedade Shadow est configurada para True. Nos scripts,
utilize a funo do VBScript RGB() para montar a cor a ser associada a esta
propriedade. O valor padro desta propriedade cinza escuro (RGB(128, 128, 128)).
Exemplo:
Sub Botao1_Click()
'Troca a cor de fundo do botao para cinza claro
'quando clica no objeto
ShadowColor = RGB(192, 192, 192)
End Sub
NOTA: Esta propriedade s funciona quando o objeto Figura est trabalhando com
arquivos metafile (WMF ou EMF).
E3 - Scripts - Manual de Referncia
244 Propriedades
ShadowX: Define a coordenada vertical esquerda da sombra deste objeto, em
unidades Himetric. Este sombra sempre relativa a propriedade X do objeto.
Valores positivos indicam que a sombra estar direita do objeto, e negativos,
esquerda. O valor padro desta propriedade 200.
ShadowY: Define a coordenada horizontal superior da sombra deste objeto, em
unidades Himetric. Este sombra sempre relativa a propriedade Y do objeto.
Valores positivos indicam que a sombra estar abaixo do objeto, e negativos, acima.
O valor padro desta propriedade 200.
Exemplo:
Sub Botao1_Click()
ShadowY = 250
End Sub
NOTA: Esta propriedade s funciona quando o objeto Figura est trabalhando com
arquivos metafile (WMF ou EMF).
TransparentColor: Quando a propriedade TransparentMode estiver configurada
para 1, esta propriedade definir qual cor da imagem no ser desenhada, e a
imagem ficar transparente nestes pontos. Nos scripts, utilize a funo do VBScript
RGB para montar a cor a ser associada a esta propriedade. O valor padro desta
propriedade branco (RGB(255, 255, 255)).
Exemplo:
Sub DrawPicture1_Click()
'Deixa a cor da imagem azul transparente
'quando clica no objeto Figura
TransparentMode = 1 'ByColor
TransparentColor = RGB(0, 0, 255)
End Sub
NOTA: Esta propriedade s funciona quando o objeto Figura est trabalhando com
arquivos metafile (WMF ou EMF).
E3 - Scripts - Manual de Referncia
Propriedades 245
TransparentMode: A propriedade TransparentMode especifica o modo como a
imagem ter o efeito de transparncia.
Opes disponveis para TransparentMode
OPO DESCRIO
0- Disabled Nenhuma transparncia ser efetuada.
1-ByColor A transparncia ser de acordo com a cor definida na propriedade
TransparentColor.
2- ByPercent A imagem ficar translcida com porcentagem de transparncia
especificada na propriedade TransparentPercent.
Exemplo:
Sub DrawPicture1_Click()
'Deixa a cor da imagem azul transparente
'quando clica no objeto Figura
TransparentMode = 1 'ByColor
TransparentColor = RGB(0, 0, 255)
End Sub
NOTA: Esta propriedade s funciona quando o objeto Figura est trabalhando com
arquivos metafile (WMF ou EMF).
TransparentPercent: Quando a propriedade TransparentMode estiver
configurada para 2, esta propriedade define quo translcida a imagem ser exibida,
variando de 0 (totalmente translcido) a 100 (opaco - slido). Exemplo:
Sub DrawPicture1_Click()
'Deixa a imagem translcida quando clica no objeto
TransparentMode = 1 'ByPercent
TransparentPercent = 50 '50% translcido
End Sub
NOTA: Esta propriedade s funciona quando o objeto Figura est trabalhando com
arquivos metafile (WMF ou EMF).
VerticalFillStyle: Define como ser o preenchimento vertical do objeto. Esta
propriedade trabalha em conjunto com a propriedade VerticalPercentFill, que
informa qual porcentagem do objeto dever ser preenchida. Estas duas propriedades
permitem uma simulao de um preenchimento de nvel em um objeto.
E3 - Scripts - Manual de Referncia
246 Propriedades
Opes disponveis para VerticalFillStyle
OPO DESCRIO
0- FillBottonToTop A porcentagem de preenchimento ser de baixo para cima.
1-FillTopToBottom A porcentagem de preenchimento ser de cima para baixo.
2-FillCenterToEdgesv A porcentagem de preenchimento ser do centro para as bordas.

Exemplo:
Sub Circulo1_OnStartRunning()
VerticalFillStyle= 2
End Sub
VerticalPercentFill: Utilize a propriedade VerticalPercentFill para especificar
qual a porcentagem da rea vertical do objeto dever ser preenchida. Os valores
aceitos por esta propriedade variam de 0 a 100. Esta propriedade trabalha em
conjunto com a propriedade VerticalFillStyle, que informa como este preenchimento
ocorrer. O valor padro desta propriedade 100. Exemplo:
Sub Circulo1_OnStartRunning()
VerticalPercentFill= 254
End Sub
6.10.6. Propriedades do Texto, Display e 8etPoint
EnableLimits: Indica se ser feita a verificao de limites no texto. Quando
EnableLimits for True, e o usurio inserir um valor no-numrico ou colocar um
valor fora dos limites definidos em MinValue e MaxValue, uma mensagem de erro
mostrada (a propriedade IsSetPoint deve ser True).
Exemplo:
Sub CommandButton1_Click()
Screen.Item("Texto1").EnableLimits = _
Not(Screen.Item("Texto1").EnableLimits)
End Sub
Format: A propriedade Format especifica que tipo de formato ser atribudo ao
objeto. Permite mudar a forma como os dados so apresentados sem mudar o valor
que existe por trs deles. Esta propriedade pode ser editada manualmente ou
configurada atravs da janela de formatao. Seu uso semelhante aos formatadores
usados nas planilhas de dados, seguindo a mesma sintaxe. So suportados os
seguintes tipos de dados:
E3 - Scripts - Manual de Referncia
Propriedades 247
Tipos de dados suportados por Format
DADOS DESCRIO
Numrico Sada decimal, cientfica, hexadecimal, binria e octal.
Texto Textos em geral.
Booleano Valores boleanos.
DatafHora Calendrio Gregoriano
IsSetPoint: A propriedade IsSetPoint utilizada para determinar se o objeto tem
comportamento de SetPoint, ou seja, permite edio da propriedade Value. A
propriedade Value consiste em um variant, que pode assumir valores de todo e
qualquer tipo. A propriedade IsSetPoint propriedade booleana e assume o seguinte
comportamento: se a opo for True, ser permitida a edio; j se a opo estiver
False, a edio no ser permitida. Isto pode ser visualizado quando o objeto Viewer
est em execuo. O valor padro desta propriedade False.
KeepFormatWhenEditing: Permite que o valor do objeto seja editado com ou
sem formatao. As opes disponveis so: 0 - kfNever = neste caso o valor
sempre editado sem formatao (padro); e 1 - kfAutomatic = permite que o valor
seja editado no valor formatado, caso o E3 detecte que o texto formatado passvel
de ser interpretado como um valor. Caso o formato seja considerado incompatvel o
valor editado sem formatao.
MaxLimits: Contm o valor mximo permitido no objeto (a propriedade
EnableLimits deve ser True). Exemplo:
Sub CommandButton3_Click()
Screen.Item("Texto1").MaxLimit=Screen.Item("Texto6").Value
End Sub
MinLimits: Contm o valor mnimo permitido no objeto (a propriedade
EnableLimits deve ser True). Exemplo:
Sub CommandButton2_Click()
Screen.Item("Texto1").MinLimit= Screen.Item("Texto5").Value
End Sub
Multiline: A propriedade Multiline indica se o texto ter mltiplas linhas (True)
ou ser uma caixa de texto simples (False). Isto pode ser visualizado quando o
objeto Viewer est em execuo. O valor padro desta propriedade False.
Exemplo:
Sub Tela1_OnStartRunning()
Screen.Item("TextBox1").Multiline=True
End Sub
E3 - Scripts - Manual de Referncia
248 Propriedades
SetPointDataType: Determina o tipo de valor que enviado do SetPoint para o
tag.
Opes disponveis para SetPointDataType
OPO DESCRIO
0- stCurrentType Mantm o tipo do valor atual no SetPoint (ver a seguir).
1- stChar Valor inteiro de 8 bits com sinal.
2- stByte Valor inteiro de 8 bits sem sinal.
3- stWord Valor inteiro de 16 bits sem sinal.
+- st!nteger Valor inteiro de 16 bits com sinal.
5- stLong Valor inteiro de 32 bits com sinal.
6- stDWord Valor inteiro de 16 bits sem sinal.
7- stSingle Valor de ponto flutuante de 32 bits.
8- stDouble Valor de ponto flutuante de 64 bits.
9- stDateTime Valor data/hora.
10- stString Texto.
Quando o texto digitado enviado pelo SetPoint, este primeiro tentar converter o
valor para o tipo configurado (Word, String, Double etc.). Se a converso no for
possvel - ou seja, o valor digitado invlido para o tipo escolhido nenhum valor
enviado (por exemplo, se o usurio digitar -1 e o tipo for Byte). J quando o valor
da propriedade for 0-stCurrentType, o tipo do dado enviado pelo SetPoint ser
extrado do valor anterior presente no objeto. Caso o valor anterior seja empty ou
null, nenhuma converso ser feita e o valor digitado ser enviado como texto.
Exemplo:
Sub Combobox1_Change( )
Screen.Item("Texto1").SetPointDataType = CInt(Left(Value, 2))
End Sub
StretchText: Redimensiona o tamanho do objeto. A partir do momento que a
propriedade StretchText for habilitada, o objeto automaticamente redimensiona o
tamanho da fonte do texto para que a rea ocupada por ele continue sempre a
mesma. De outra forma, se a propriedade StretchText estiver configurada para False,
nenhum redimensionamento ser efetuado.
TextAlignment: Esta propriedade especifica o alinhamento horizontal do texto
mostrado no objeto.
Opes disponveis para TextAlignment
OPO DESCRIO
0-LeftAlignment O alinhamento horizontal do texto ser esquerda.
1-CenterAlignment O alinhamento horizontal do texto ser centralizado.
2-RightAlignment O alinhamento horizontal do texto ser direita.
E3 - Scripts - Manual de Referncia
Propriedades 249

TextColor: Esta propriedade especifica a cor da fonte do texto a ser exibido.
Nos scripts, utilize a funo do VBScript RGB para montar a cor a ser associada a
esta propriedade. O valor padro desta propriedade preto (RGB(0, 0, 0)).
TextFont: Define o tipo da fonte a ser utilizado pelo objeto. Esta propriedade
no pode ser utilizada em scripts e/ou associaes e configurada somente via
Studio.
Value: A propriedade Value consiste em um variant, que pode assumir valores de
todo e qualquer tipo, e que ser exibido pelo objeto. Geralmente esta propriedade
conter um texto, pois automaticamente preenchida quando ocorre a criao de um
novo objeto texto. A propriedade IsSetPoint, utilizada para determinar se o objeto
texto vai ter comportamento de IsSetPoint, ou seja, permitir edio da propriedade
Value.
Exemplo:
Sub DrawString1_OnStartRunning()
'L o valor de um tag e mostra o Texto
Dim obj
Set obj = Application.GetObject("DataServer1.DemoTag1")
Value = "Valor de DemoTag1 = " & obj.Value
End Sub
VertTextAlignment: Determina o alinhamento vertical do texto do objeto.
Opes disponveis para VertTextAlignment
OPO DESCRIO
0-TopAlignment Alinhamento vertical do texto no topo do objeto.
1-NidAlignment Alinhamento vertical do texto no centro do objeto.
2-BottonAlignment Alinhamento vertical do texto na base do objeto.

WordWrap: Habilita/desabilita uma quebra de linha no texto, caso a rea
disponvel para o texto ultrapasse os limites determinados no objeto. Para que esta
propriedade funcione, a propriedade Multiline deve ser obrigatoriamente igual a
True.
E3 - Scripts - Manual de Referncia
250 Propriedades
6.10.7. Propriedades da Escala
Angle: A propriedade Angle define o ngulo de rotao em graus, no sentido
anti-horrio, que o objeto deve ser rotacionado. Isto tambm se aplica aos filhos que
este objeto tiver, respeitando as limitaes de rotao de cada objeto filho. O objeto
rotacionar de acordo com o seu centro, que pode ser editado durante a operao de
rotao. O valor padro desta propriedade 0 (sem rotao).
BackgroundColor: Esta propriedade especifica a cor de preenchimento do
fundo do objeto. Esta cor utilizada quando a propriedade BackgroundStyle est
configurada para 1 (opaco) e umas das propriedades VerticalPercentFill ou
HorizontalPercentFill est com valores diferentes de 100. Outro uso desta cor
quando a propriedade FillStyle est configurada entre os valores 2 e 8. Isto faz com
que a rea restante utilize a cor de fundo para preenchimento. Nos scripts, utilize a
funo do VBScript RGB para montar a cor a ser associada a esta propriedade. O
valor padro desta propriedade cinza (RGB(192, 192, 192)).
BorderColor: Esta propriedade determina a cor da borda que ser aplicada no
objeto escala. Com esta propriedade, possvel aplicar a cor padro ou personaliz-
la atravs da sua edio. O valor padro desta propriedade branco (RGB (255, 255,
255)). Exemplo:
Sub Escala1_Click()
BorderColor = RGB (255,0,0)
End Sub
BorderStyle: A propriedade BorderStyle determina o estilo de borda que ser
aplicada ao objeto escala.
Opes disponveis para BorderStyle
OPO DESCRIO
0- Normal (Padro) Aplica uma borda slida no grade vertical na escala.
1- Dash Aplica uma borda linha tracejada na escala.
2- Dot Aplica uma borda pontilhada na escala.
3- Dashdot Aplica uma borda trao e ponto na escala.
+- Dashdotdot Aplica uma borda trao ponto ponto na escala.
5- Null O objeto no ter borda.
Exemplo:
Sub Escala1_Click()
BorderStyle = 1
End Sub
E3 - Scripts - Manual de Referncia
Propriedades 251
BorderWidth: Esta propriedade determina a altura (em pixels) da borda do
objeto escala. Atravs desta propriedade, possvel configurar a altura da borda,
sem ter que mexer na sua estrutura. O valor padro desta propriedade 0. Exemplo:
Sub CommandButton1_Click()
Screen.Item("Escala1").BorderWidth=120
End Sub
FillStyle: Esta propriedade especifica o estilo do preenchimento do objeto. A
seguinte tabela contm os valores vlidos para a propriedade FillStyle:
Opes disponveis para FillStyle
OPO DESCRIO
0- Solid O preenchimento ser slido.
1- Hollow No haver preenchimento.
2- Horizontal O preenchimento ser com listras horizontais.
3- vertical O preenchimento ser com listras verticais.
+-Downward O preenchimento ser com listras descendo da esquerda
para a direita em ngulo de 45 graus.
5-Upward O preenchimento ser com listras subindo da esquerda
para a direita em ngulo de 45 graus.
6-Cross O preenchimento ser com listras horizontais e verticais.
7-DiagonalCross O preenchimento ser com listras descendo e subindo da
esquerda para a direita em angulo de 45 graus.
8-Gradient O preenchimento ser em degrad utilizando tanto
ForegroundColor quanto BackgroundColor. O efeito
ser definido pela propriedade GradientStyle.
9-SemiTransparent Deixa o objeto translcido.
10- NouseArea O preenchimento ser vazio, mas o objeto continua
sensvel aos eventos (Padro)
ForegroundColor: Esta propriedade especifica a cor do preenchimento do
frente do objeto. Esta cor utilizada quando a propriedade FillStyle est configurada
para 0 (slido) ou entre 2 e 9. Nos scripts, utilize a funo do VBScript RGB() para
montar a cor a ser associada a esta propriedade. O valor padro para esta
propriedade azul (RGB (0, 0, 255)). Exemplo:
Sub Botao1_Click()
'Troca a cor de fundo do botao para verde
'quando clica no objeto
ForegroundColor = RGB(0, 255, 0)
End Sub
Format: A propriedade Format especifica que tipo de formato ser atribudo ao
objeto. Permite mudar a forma como os dados so apresentados sem mudar o valor
E3 - Scripts - Manual de Referncia
252 Propriedades
que existe por trs deles. Esta propriedade pode ser editada manualmente ou
configurada atravs da janela de formatao. Seu uso semelhante aos formatadores
usados nas planilhas de dados, seguindo a mesma sintaxe. So suportados os
seguintes tipos de dados:
Tipos de dados suportados por Format
DADOS DESCRIO
Numrico Sada decimal, cientfica, hexadecimal, binria e octal.
Texto Textos em geral.
Booleano Valores boleanos.
DatafHora Calendrio Gregoriano
GradientStyle: Esta propriedade especifica o estilo de preenchimento degrad
do objeto. Esta propriedade s ser utilizada quando a valor da propriedade FillStyle
estiver configurada para 8 (gradient). Os degrads consideram a mudana da cor
partindo de ForegroundColor e indo para BackgroundColor.
E3 - Scripts - Manual de Referncia
Propriedades 253
Opes disponveis para GradientStyle
OPO DESCRIO
0- LeftToRight Degrad vertical da esquerda para a direita.
1- RightToLeft Degrad vertical da direita para a esquerda.
2- verFromCenter Degrad vertical do centro para as bordas.
3- verToCenter Degrad vertical das bordas para o centro.
+- BottonUp Degrad horizontal de baixo para cima.
5- TopDown Degrad horizontal de cima para baixo.
6- HorzFromCenter Degrad do centro para as bordas.
7- HorzToCenter Degrad das bordas para o centro.
8- DiagUpRight Degrad diagonal para cima com a cor de frente na direita.
(Padro).
9- DiagUpLeft Degrad diagonal para cima com a cor de frente na esquerda.
10- DiagUpFromCenter Degrad diagonal para cima do centro para as bordas.
11- DiagUpToCenter Degrad diagonal para cima das bordas para o centro.
12- DiagDownLeft Degrad diagonal para baixo com cor de frente na esquerda.
13- DiagDownRight Degrad diagonal para baixo com cor de frente na direita.
1+- DiagDownFromCenter Degrad diagonal para baixo do centro para as bordas.
15- DiagDownToCenter Degrad diagonal para baixo das bordas para o centro.
16- SpotSouthEast Degrad com cor de frente partindo do canto inferior direito.
17- SpotSouthWest Degrad com cor de frente partindo do canto inferior esquerdo.
18- SpotNorthWest Degrad com cor de frente partindo do canto superior
esquerdo.
19- SpotNorthEast Degrad com cor de frente partindo do canto superior direito.
20- SpotFromCenter Degrad com cor de fundo do centro para as bordas.
21- SpotToCenter Degrad com cor de fundo das bordas para o centro.
IMPORTANTE: Um grande nmero de objetos sendo mostrados com degrad
simultaneamente acarreta uma perda de performance na atualizao da Tela. O uso
de figuras no lugar pode resolver o problema.
Exemplo:
Sub Botao1_Click()
'Objeto fica com degrade
FillStyle = 8 'GradientFill
GradientStyle = 0 'leftToRight
End Sub
LineColor: Determina a cor da linha com as marcas divisrias e subdivisrias da
escala. Para determinar a cor da legenda com nmeros do objeto, use a propriedade
TextColor. O valor padro desta propriedade preto (RGB (0, 0, 0)).
MaximumValue: Esta propriedade determina o valor mximo atingido pela
escala. O valor padro desta propriedade 100.
E3 - Scripts - Manual de Referncia
254 Propriedades
Exemplo:
Sub CommandButton_Click()
'Ao clicar no boto, abre um messagebox indicando
'o valor da mximo da propriedade da escala
MsgBox CSTr(Screen.Item("Escala1").MaximumValue)
End Sub
MinimumValue: Esta propriedade determina o valor mnimo requerido pela
escala. O valor padro desta propriedade 0. Exemplo:
Sub CommandButton1_Click()
'Ao clicar no boto, abre um messagebox indicando
'o valor da propriedade Minimum do TagDemo1
MsgBox _
CSTr(Application.GetObject("Dados.Scala1").MinimumValue)
End Sub
MinorTicks: Esta propriedade determina a quantidade de marcas da escala. O
valor padro desta propriedade 3. Exemplo:
Sub CommandButton1_Click()
'Mostra o total de marcas da escala
MsgBox CStr(Screen.Item("Escala1").MinorTicks)
End Sub
MinorTicksPercentSize: Esta propriedade determina o tamanho das marcas que
subdividem cada medida do objeto escala. O valor padro desta propriedade 10.
Exemplo:
Sub CommandButton1_Click()
MsgBox CStr(Screen.Item("Escala1").MinorTicksPercentSize)
End Sub
ScaleAlignment: Esta propriedade determina o tipo de alinhamento que ser
atribudo escala: 0-RightSide = direita (valor padro); 1-LeftSide = esquerda.
Exemplo:
Sub CommandButton1_Click()
Screen.Item("Escala1").ScaleAlignment=1
End Sub
ShowText: Esta propriedade determina a visibilidade do texto na legenda do
objeto escala. Se a opo estiver habilitada, o texto mostrado. Caso contrrio, o
E3 - Scripts - Manual de Referncia
Propriedades 255
objeto mostra somente as linhas e subdivises da escala. O valor padro desta
propriedade True.
StretchText: Esta propriedade determina a aplicao de extenso (stretch) ao
texto do objeto escala (caso a largura ou altura da escala seja alterados, o texto
acompanha esta variao). Se a propriedade estiver habilitada, o objeto acompanha
as variaes de altura e largura do objeto conforme for transformado. Caso
contrrio, o texto permanece com as configuraes iniciais. O valor padro desta
propriedade False.
TextAlignment: A propriedade TextAlignment determina o alinhamento do texto
no objeto.
Opes disponveis para TextAlignment
OPO DESCRIO
0- leftAlignment (Padro) O alinhamento do texto ser esquerda.
1- centerAlignment O alinhamento do texto ser centralizado.
2- rightAlignment O alinhamento do texto ser direita.
TextColor: Determina a cor da fonte aplicada na legenda com nmeros do
objeto escala. Para determinar a cor da linha com as marcas divisrias e
subdivisrias da escala, utilize a propriedade LineColor. O valor padro desta
propriedade preto (RGB (0, 0, 0)).
TextFont: A propriedade TextFont determina a fonte que ser aplicada na
escala. A fonte escolhida ser aplicada em todo o objeto escala. Esta propriedade
no pode ser utilizada em scripts e/ou associaes e configurada somente via
Studio.
Ticks: Determina a quantidade de divisrias que a escala ter. O valor padro
desta propriedade 5.
TickPercentSize: Determina o tamanho das linhas que dividem o objeto escala.
Conforme for o valor especificado nesta propriedade, maior ou menor ficar ao
tamanho da linha da divisria padro da escala. O valor padro desta propriedade
20.
E3 - Scripts - Manual de Referncia
256 Propriedades
6.10.8. Propriedades do Grupo de Ob]etos
Angle: A propriedade Angle define o ngulo de rotao em graus, no sentido
anti-horrio, que o grupo deve ser rotacionado. Isto tambm se aplica aos filhos que
este objeto tiver, respeitando as limitaes de rotao de cada objeto filho. O objeto
rotacionar de acordo com o seu centro, que pode ser editado durante a operao de
rotao. O valor padro desta propriedade 0 (sem rotao). Exemplo:
Sub Arco1_Click()
Angle = 180
End Sub
EnableOverrideLineColor: Esta propriedade habilita/desabilita o objeto grupo a
sobrescrever as cores originais das linhas dos objetos contidos no grupo. Se a
propriedade EnableOverrideLineColor estiver habilitada, faz com que sejam
modificadas as cores originais das linhas dos objetos do grupo pela cor definida na
propriedade OverrideLineColor. Caso contrrio, cada objeto contido no grupo
apresentar sua cor de linha original. O valor padro desta propriedade False.
OverrideFillColor: Quando a propriedade OverrideFillMode estiver
especificada para valores 2 ou 3, a propriedade OverrideFillColor ser usada para
definir a cor a ser usada no preenchimento dos objetos contguos no grupo, ao invs
da cor original. Nos scripts, utilize a funo do VBScript RGB() para montar a cor a
ser associada a esta propriedade. O valor padro desta propriedade vermelho
(RGB(255, 0, 0)).
Exemplo:
Sub DrawGroup1_Click()
'Ao clicar no objeto seta o modo
'Override para slido e troca a cor de
'preenchimento da imagem para azul
OverrideFillMode = 2
OverrideFillColor = RGB(0, 0, 255)
End Sub
OverrideFillMode: A propriedade OverrideFillMode especifica o modo do
preenchimento dos objetos que esto dentro do grupo. Ela altera o modo original de
preenchimento da imagem sem alterar a configurao original de preenchimento dos
objetos.
E3 - Scripts - Manual de Referncia
Propriedades 257
Opes disponveis para OverrideFillMode
OPO DESCRIO
0- NoOverride Preenchimento original do objeto.
1- WireFrame Os objetos no sero preenchidos, desenharo somente suas bordas.
2- SolidFill O preenchimento dos objetos contidos no grupo ser slido com a cor
especificada na propriedade OverrideFillColor.
3-ByBrightness O preenchimento dos objetos contidos no grupo ser slido com a cor
especificada pela propriedade OverrideFillColor, porm levar em conta
qual era a intensidade da cor original de preenchimento de cada objeto.
Exemplo:
Sub DrawGroup1_Click()
'Ao clicar no objeto seta o modo
'Override para slido e troca a cor de
'preenchimento da imagem para azul
OverrideFillMode = 2
OverrideFillColor = RGB(0, 0, 255)
End Sub
OverrideLineColor: Quando a propriedade EnableOverrideLineColor estiver
configurada para True, a propriedade OverrideLineColor ser usada para definir a
cor a ser usada na cor da linha dos objetos do grupo, ao invs da cor original. Nos
scripts, utilize a funo do VBScript RGB() para montar a cor a ser associada a esta
propriedade. O valor padro desta propriedade vermelho (RGB(255, 0, 0)).
Exemplo:
Sub Grupo1_Click()
OverrideLineColor = RGB (255,0,0)
End Sub
Shadow: Indica a presena do efeito de sombra no objeto. Se True, o objeto
possui uma sombra, cujas coordenadas so estabelecidas pelas propriedades
ShadowX e ShadowY. Do contrrio, o objeto no possui o efeito de sombra. O valor
padro desta propriedade False.
ShadowColor: Especifica a cor do preenchimento da sombra do grupo. Esta cor
utilizada quando a propriedade Shadow est configurada para True. Nos scripts,
utilize a funo do VBScript RGB() para montar a cor a ser associada a esta
propriedade. O valor padro desta propriedade cinza escuro (RGB(128, 128, 128)).
E3 - Scripts - Manual de Referncia
258 Propriedades
Exemplo:
Sub Botao1_Click()
'Troca a cor de fundo do botao para cinza claro
'quando clica no objeto
ShadowColor = RGB(192, 192, 192)
End Sub
ShadowX: Define a coordenada vertical esquerda da sombra deste objeto, em
unidades Himetric. Este sombra sempre relativa a propriedade X do objeto.
Valores positivos indicam que a sombra estar direita do objeto, e negativos,
esquerda. O valor padro desta propriedade 200.
ShadowY: Define a coordenada horizontal superior da sombra deste grupo, em
unidades Himetric. Este sombra sempre relativa a propriedade Y do grupo. Valores
positivos indicam que a sombra estar abaixo do grupo, e negativos, acima. O valor
padro desta propriedade 200. Exemplo:
Sub Botao1_Click()
ShadowY = 250
End Sub
6.10.9. Propriedades do Movimento {Translao e Rotao}
Angle: A propriedade Angle define o ngulo de rotao em graus, no sentido
anti-horrio, que o objeto deve ser rotacionado. Isto tambm se aplica aos filhos que
este objeto tiver, respeitando as limitaes de rotao de cada objeto filho. O objeto
rotacionar de acordo com o seu centro, que pode ser editado durante a operao de
rotao. O valor padro desta propriedade 0 (sem rotao). Exemplo:
Sub Arco1_Click()
Angle = 180
End Sub
Detents: Atravs da propriedade Detents determinado o nmero de passos do
movimento no objeto. Exemplo:
Sub CommandButton1_Click()
MsgBox Screen.Item("DynamicRotate1").Detents
End Sub
EnableOverrideLineColor: Esta propriedade habilita/desabilita o objeto a
sobrescrever a cor original da linha da imagem pela cor definida na propriedade
OverrideLineColor. Se a propriedade EnableOverrideLineColor estiver habilitada,
E3 - Scripts - Manual de Referncia
Propriedades 259
faz com que sejam modificadas a cor original da linha do objeto pela cor de
OverrideLineColor. Caso contrrio, o objeto figura exibir a cor original. O valor
padro desta propriedade False.
EnableSlider: A propriedade EnableSlider habilita o slider no movimento do
objeto. Se a propriedade estiver habilitada, o slider do movimento habilitado. Caso
contrrio, isto no ocorre. Exemplo:
OverrideFillColor: Quando a propriedade OverrideFillMode estiver
especificada para valores 2 ou 3, a propriedade OverrideFillColor ser usada para
definir a cor a ser usada no preenchimento dos objetos no movimento, ao invs da
cor original. Nos scripts, utilize a funo do VBScript RGB() para montar a cor a ser
associada a esta propriedade. O valor padro desta propriedade vermelho
(RGB(255, 0, 0)). Exemplo:
Sub DrawGroup1_Click()
'Ao clicar no objeto seta o modo
'Override para slido e troca a cor de
'preenchimento da imagem para azul
OverrideFillMode = 2
OverrideFillColor = RGB(0, 0, 255)
End Sub
OverrideFillMode: A propriedade OverrideFillMode especifica o modo do
preenchimento dos objetos que esto em movimento. Ela altera o modo original de
preenchimento da imagem sem alterar a configurao original de preenchimento dos
objetos.
Opes disponveis para OverrideFillMode
OPO DESCRIO
0- NoOverride Preenchimento original do objeto.
1- WireFrame Os objetos no sero preenchidos, desenharo somente suas bordas.
2- SolidFill O preenchimento dos objetos contidos no grupo ser slido com a cor
especificada na propriedade OverrideFillColor.
3-ByBrightness O preenchimento dos objetos contidos no grupo ser slido com a cor
especificada pela propriedade OverrideFillColor, porm levar em conta
qual era a intensidade da cor original de preenchimento de cada objeto.

E3 - Scripts - Manual de Referncia
260 Propriedades
Exemplo:
Sub DrawGroup1_Click()
'Ao clicar no objeto seta o modo
'Override para slido e troca a cor de
'preenchimento da imagem para azul
OverrideFillMode = 2
OverrideFillColor = RGB(0, 0, 255)
End Sub
OverrideLineColor: Quando a propriedade EnableOverrideLineColor estiver
configurada para True, a propriedade OverrideLineColor ser usada para definir a
cor a ser usada na cor da linha do objeto em movimento, ao invs da cor original.
Nos scripts, utilize a funo do VBScript RGB() para montar a cor a ser associada a
esta propriedade. O valor padro desta propriedade vermelho (RGB(255, 0, 0)).
Exemplo:
Sub Grupo1_Click()
OverrideLineColor = RGB (255,0,0)
End Sub
RangeMax: Atravs da propriedade RangeMax determina o alcance mximo
do movimento linear ou rotacional no objeto. Exemplo:
Sub CommandButton1_Click()
MsgBox Screen.Item("DynamicMove1").RangeMax
End Sub
RangeMin: Atravs da propriedade RangeMin determinado o alcance mnimo
do movimento linear ou rotacional no objeto. Exemplo:
Sub CommandButton1_Click()
MsgBox Screen.Item("DynamicMove1").RangeMin
End Sub
Shadow: Indica a presena do efeito de sombra no objeto. Se True, o objeto
possui uma sombra, cujas coordenadas so estabelecidas pelas propriedades
ShadowX e ShadowY. Do contrrio, o objeto no possui o efeito de sombra. O valor
padro desta propriedade False.
ShadowColor: Especifica a cor do preenchimento da sombra do movimento.
Esta cor utilizada quando a propriedade Shadow est configurada para True. Nos
scripts, utilize a funo do VBScript RGB() para montar a cor a ser associada a esta
propriedade. O valor padro desta propriedade cinza escuro (RGB(128, 128, 128)).
E3 - Scripts - Manual de Referncia
Propriedades 261
Exemplo:
Sub Botao1_Click()
'Troca a cor de fundo do botao para cinza claro
'quando clica no objeto
ShadowColor = RGB(192, 192, 192)
End Sub
ShadowX: Define a coordenada vertical esquerda da sombra deste objeto, em
unidades Himetric. Este sombra sempre relativa a propriedade X do objeto.
Valores positivos indicam que a sombra estar direita do objeto, e negativos,
esquerda. O valor padro desta propriedade 200.
ShadowY: Define a coordenada horizontal superior da sombra deste movimento,
em unidades Himetric. Este sombra sempre relativa a propriedade Y do objeto.
Valores positivos indicam que a sombra estar abaixo do objeto, e negativos, acima.
O valor padro desta propriedade 200.
Value: o valor inicial do movimento. Deve ser um valor entre os valores nas
propriedades RangeMax e RangeMin.
6.10.10. Propriedades da Rotao
RotationAngle: Esta propriedade determina o ngulo de rotao do movimento
no objeto. Exemplo:
Sub CommandButton1_DbClick()
Screen.Item("DynamicMove1").RotationAngle = 180
End Sub
RotationDirection: Atravs da propriedade RotationDirection determinada a
direo do ngulo de rotao do movimento no objeto.
Opes disponveis para RotationDirection
OPO DESCRIO
0- Clockwise Direciona o ngulo de rotao a direita do objeto.
1- CounterClockWise Direciona o ngulo de rotao a esquerda do objeto.
E3 - Scripts - Manual de Referncia
262 Propriedades

Exemplo:
Sub CommandButton1_Click()
'Direciona o ngulo de rotao a direita do objeto
Screen.Item("DynamicMove1").RotationDirection = 1
End Sub
6.11. Propriedades dos ActiveX
NOTA: O E3 utiliza para definio de coordenadas e espessura o sistema
HIMETRIC. Neste sistema, cada unidade lgica equivale a um milsimo de
centmetro; ou seja, cada 1000 unidades equivalem a 1 centmetro. Assim, este o
padro adotado na descrio das propriedades do E3, quando aplicvel.
6.11.1. Propriedades comuns
BackColor: Determina a cor de fundo do objeto. Nos scripts, utilize a funo do
VBScript RGB para montar a cor a ser associada a esta propriedade. O valor padro
desta propriedade para os objetos Lista de Seleo, Lista e Editor de Texto a cor
branca (RGB (255,255,255)), e para os demais objetos a cor bege (RGB
(236,233,216)).
Enabled: Habilita/desabilita o objeto, isto , o foco e a resposta eventos
gerados pelo usurio. Se a propriedade estiver configurada para True, o objeto pode
receber o foco, responder a eventos gerados pelo usurio e estar acessvel atravs
de scripts (padro). Caso contrrio, o usurio no poder interagir com o objeto
usando o mouse, pressionando teclas ou teclas de atalho e o objeto aparece
esmaecido. Alm disso, se o objeto exibir um bitmap, o bitmap fica esmaecido
sempre que este objeto estiver desabilitado.
As propriedades Enabled e Locked so interligadas. Quando as propriedades
Enabled e Locked forem ambas True, o objeto pode receber foco e aparecer
normalmente na Tela, e os dados podem ser copiados, mas no editados. Quando
Enabled for True, mas Locked for False, os dados podem ser no s copiados, mas
tambm editados. No entanto, quando Enabled for False, o objeto no recebe foco e
fica esmaecido na Tela, independentemente do status de Locked. Alm disso, os
dados no podem ser copiados ou tampouco editados.
possvel combinar as configuraes das propriedades Enabled e TabStop para
impedir que o usurio selecione um boto de comando com TAB, embora ainda seja
E3 - Scripts - Manual de Referncia
Propriedades 263
permitido ao usurio clicar o boto. Definir a propriedade TabStop como False
significa que o boto de comando no aparecer na ordem de tabulao. Entretanto,
se Enabled for True, o usurio ainda poder clicar no boto de comando, desde que a
propriedade TakeFocusOnClick esteja definida como True.
ForeColor: Especifica a cor do preenchimento do fundo do objeto. Nos scripts,
utilize a funo do VBScript RGB para formar a cor a ser associada a esta
propriedade. O valor padro desta propriedade para todos os objetos MSForms a
cor preta (RGB(0, 0, 0)).
Frame: Retorna o quadro-pai do objeto. Esta propriedade acessvel apenas em
tempo de execuo.
HasFocus: Esta propriedade determina que o objeto selecionado est com o foco.
Esta propriedade acessvel apenas em tempo de execuo.
Height: Determina a altura do objeto.
Layer: Esta propriedade define em quais camadas o objeto deve aparecer. O
valor representa uma mscara de 32 bits, um bit para cada camada. Portanto podem
ser definidas at 32 camadas individuais. Assim, objetos podem ser agrupados
logicamente e mostrados/escondidos apenas com a modificao da mscara da
propriedade Layer. Para que o objeto aparea na tela, pelo menos uma das suas
camadas precisa estar visvel, ou seja, pelo menos 1 bit configurado na sua mscara
tambm precisa estar configurado na propriedade Layer da Tela.
MouseIcon: A propriedade MouseIcon atribui uma imagem ao ponteiro do
mouse, quando este movido sobre o objeto. Esta propriedade vlida somente
quando a propriedade MousePointer definida como 99 fmMousePointerCustom.
Um arquivo com imagem pode ser selecionado para o ponteiro do mouse de duas
formas: atravs da Lista de Propriedades (extenses .cur ou .ico); ou via scripts,
utilizando-se a funo LoadPicture para especificar o caminho e o nome do arquivo
que contm o cone personalizado (somente extenso .cur). Exemplo:
Sub CommandButton1_Click()
' Atribuindo o item 99- fmMousePointerCustom propriedade
' para que ela aceite a customizao do cone do mouse
Screen.Item("CheckBox1").MousePointer = 99
Screen.Item("CheckBox1").MouseIcon =LoadPicture("C:\a.cur")
End Sub
E3 - Scripts - Manual de Referncia
264 Propriedades
MouseOver: A propriedade MouseOver informa se o ponteiro do mouse
encontra-se em cima da Tela. Caso afirmativo, a propriedade MouseOver
habilitada; do contrrio, ser False. Esta propriedade apenas de leitura, e
acessvel apenas em tempo de execuo.. O valor padro desta propriedade False.
MouseOverChild: A propriedade MouseOverChild informa se o ponteiro do
mouse encontra-se em cima de um dos objetos inseridos na Tela. Caso afirmativo, a
propriedade MouseOverChild habilitada; do contrrio, ser False. Esta propriedade
apenas de leitura, e acessvel apenas em tempo de execuo.. O valor padro
desta propriedade False.
MouserPointer: A propriedade MousePointer especifica o tipo de ponteiro do
mouse que mostrado quando o usurio posiciona o mesmo sobre um objeto. As
opes disponveis para esta propriedade so as seguintes:
Opes disponveis para MousePointer
OPO DESCRIO
0- fmNousePointerDefault Ponteiro padro. A imagem determinada
pelo objeto.
1- fmNousePointerArrow Seta.
2- fmNousePointerCross Ponteiro em forma de cruz.
3- fmNousePointerBeam Em forma de I.
6- fmNousePointerSizeNesw Seta dupla apontando para nordeste e
sudoeste.
7- fmNousePointerSizeNS Seta dupla apontando para norte e sul.
8- fmNousePointerNWse Seta dupla apontando para noroeste e
sudeste.
9- fmNousePointerWE Seta dupla apontando para oeste e leste.
10- fmNousePointerUpArrow Seta para cima.
11- NousePointerStarHourGlassring Ampulheta.
12- fmNousePointerHelpNoDrop Smbolo de "Not" (crculo com uma linha
diagonal) na parte superior do objeto sendo
arrastado. Indica um destino de soltar
invlido.
13- fmNousePointerAppStarting Seta com uma ampulheta.
1+- fmNousePointerHelp Seta com um ponto de interrogao.
15- fmNousePointerSizeAll Dimensiona todo o cursor (setas apontando
para norte, sul, leste e oeste).
99- fmNousePointerCustom Usa o cone especificado pela propriedade
MouseIcon.

Use a propriedade MousePointer para indicar alteraes de funcionalidade conforme
o ponteiro do mouse passar sobre os objetos em uma Tela. Por exemplo, a
configurao de ampulheta (opo 11) til para indicar que o usurio precisa
E3 - Scripts - Manual de Referncia
Propriedades 265
esperar por tempo um processo ou operao a ser finalizada. Alguns cones podem
variar, dependendo das configuraes do sistema, como os cones associados aos
temas da rea de trabalho. O valor padro desta propriedade
0-fmNousePointerDefault.
Screen: Retorna a Tela-pai do objeto. Esta propriedade acessvel apenas em
tempo de execuo.
TabStop: Esta propriedade determina a utilizao da tecla [Tab| no sistema. Se
o campo estiver True, possvel utilizar a tecla; caso contrrio, a tecla no pode ser
utilizada.
Tip: A propriedade Tip mostra uma texto popup quando o mouse estiver por um
breve momento sobre o objeto em execuo. Exemplo:
Sub RetanguloArr1_MouseUp(nButton, nShiftState, x, y)
Tip= "Isto um teste!"
End Sub
Visible: Esta propriedade define a visibilidade do objeto. Se configurada como
True, o objeto fica visvel, desde que tambm sejam obedecidos os seguintes fatores:
o objeto-pai deste objeto tambm deve estar visvel, e a propriedade Layer deste
objeto tambm deve estar presente na camada da Tela.
Width: Determina a largura do objeto.
X: A propriedade X define a coordenada horizontal esquerda, em unidade
Himetric, do objeto.
Y: Esta propriedade define a coordenada vertical acima, em unidade Himetric,
do objeto.
6.11.2. Propriedades da Caixa de 8eleo e Boto de Opes
Accelerator: Define ou recupera a tecla aceleradora do objeto. Esta tecla
aceleradora uma tecla de atalho que usada em conjunto com a tecla [Alt], d o foco
ao objeto. O valor padro desta propriedade vazio.
Alignment: A propriedade Alignment especifica a posio do objeto relativa a
sua legenda. As opes disponveis para esta propriedade so as seguintes: 0-
fmAlignmentLeft: coloca a legenda esquerda do objeto; e 1- fmAligmentRight:
coloca a legenda direita do objeto.
E3 - Scripts - Manual de Referncia
266 Propriedades
AutoSize: A propriedade AutoSize ajusta a largura do texto, caso a rea
disponvel para o mesmo ultrapasse o tamanho do objeto. Para os objetos Caixa de
Seleo (Check-box) e Boto de Opes (Option Button), quando a propriedade
estiver configurada para True, o texto ser redimensionado para coincidir com o
tamanho atual do objeto.
BackStyle: A propriedade BackStyle define o estilo do plano de fundo para os
objetos. As opes disponveis para esta propriedade so as seguintes:
0-fmBackStyleTransparent: define o objeto como transparente, isto , nenhum
fundo deste objeto ser desenhado; e 1-fmBackStyleOpaque: define o objeto como
opaco, isto , o fundo ser desenhado (valor padro).
NOTA: Esta propriedade no afeta a transparncia de bitmaps. Voc deve usar um
editor de figura como o Paintbrush, por exemplo, para tornar um bitmap
transparente. Nem todos os objetos ActiveX suportam bitmaps transparentes.
Caption: Define o texto que ser mostrado no objeto.
Font: A propriedade Font utilizada para determinar a fonte do objeto. Esta
propriedade no pode ser utilizada em scripts e/ou associaes, sendo configurada
unicamente via Studio.
GroupName: A propriedade GroupName utilizado para criar um grupo de
objetos mutuamente exclusivos.
NOTA: Esta propriedade no utilizada no E3 e foi mantida por motivos de
compatibilidade com a especificao padro dos objetos Microsoft Forms.
Locked: A propriedade Locked habilita/desabilita a edio do objeto. Se esta
propriedade estiver configurada para True, a edio no permitida. Caso contrrio,
possvel editar o objeto. Os valores configurados na propriedade Enabled
influenciam o comportamento de Locked. Para maiores detalhes, consulte a
propriedade Enabled. O valor padro desta propriedade False.
Picture: A propriedade Picture especifica a figura (bitmap) atribuda ao objeto.
Um arquivo com imagem pode ser selecionado de duas maneiras: atravs da Lista de
Propriedades; ou via scripts, utilizando-se a funo LoadPicture para especificar o
caminho e o nome do arquivo que contm a figura. Para remover a figura, clique o
valor da propriedade Picture e pressione a tecla Delete. A tecla Backspace (tecla de
espao do teclado) no remove a figura. Exemplo:
Sub CommandButton1_Click()
Screen.Item("CheckBox1").Picture =LoadPicture("C:\aba.gif")
End Sub
E3 - Scripts - Manual de Referncia
Propriedades 267
PicturePosition: A propriedade PicturePosition especifica a posio da figura
atribuda ao objeto em relao a sua legenda. As opes disponveis para esta
propriedades so as seguintes:
Opes disponveis para PicturePosition
OPO DESCRIO
0- fmPicturePositionLeftTop A figura aparece esquerda de sua legenda.
A legenda alinhada com a parte superior da
figura.
1- fmPicturePositionLeftCenter A figura aparece esquerda da legenda. A
legenda centralizada relativamente
imagem.
2- fmPicturePositionLeftBotton A figura aparece esquerda da legenda. A
legenda alinhada com a parte inferior da
figura.
3- fmPicturePositionRightTop A figura aparece direita da legenda. A
legenda alinhada com a parte superior da
figura.
+- fmPicturePositionRightCenter A figura aparece direita da legenda. A
legenda centralizada relativamente figura.
5- fmPicturePositionRightBotton A figura aparece direita da legenda. A
legenda alinhada com a parte inferior da
figura.
6- fmPicturePositionAboveLeft A figura aparece acima da legenda. A
legenda alinhada com a extremidade
esquerda da figura.
7- fmPicturePositionAboveCenter A figura aparece acima da legenda. A
legenda centralizada abaixo da figura
(padro).
8- fmPicturePositionAboveRight A figura aparece acima da legenda. A
legenda alinhada com a extremidade direita
da figura.
9- fmPicturePositionBelowLeft A figura aparece abaixo da legenda. A
legenda alinhada com a extremidade
esquerda da figura.
10- fmPicturePositionBelowCenter A figura aparece abaixo da legenda. A
legenda centralizada acima da figura.
11- fmPicturePositionBelowRight A figura aparece abaixo da legenda. A
legenda alinhada com a extremidade direita
da figura.

SpecialEffect: A propriedade SpecialEffect especifica a aparncia de um objeto.
As opes disponveis para esta propriedade so as seguintes:
E3 - Scripts - Manual de Referncia
268 Propriedades
Opes disponveis para SpecialEffect
OPO DESCRIO
0- fmButtonEffectFlat O objeto aparece plano e possui um destaque na
borda, uma alterao de cor ou ambos.
2- fmButtonlEffectSunked O objeto possui uma sombra na parte superior
esquerda e um destaque na parte inferior direita,
como se estivessem afundados na Tela.

TextAlign: Especifica como o texto alinhado no objeto. As opes disponveis
so as seguintes: 1- fmTextAlignLeft: alinha o texto com a extremidade esquerda do
objeto; 2- fmTextAlignCenter: centraliza o texto com a extremidade direita do
objeto; 3- fmTextAlignRight: alinha o texto com a extremidade direita do objeto.
TripleState: A propriedade TripleState determina at trs estados de valores para
o objeto. Se a propriedade estiver configurada para True, o usurio poder escolher
entre trs opes de estados: Falso, verdadeiro ou Nulo. O valor Nulo exibido
como um boto sombreado. Caso contrrio, o usurio pode escolher entre os valores
False ou True. O valor padro desta propriedade False.
Value: Indica o valor inicial do objeto. Tem comportamento booleano; se True, o
objeto inicia marcado, do contrrio, seu estado inicial no marcado. O valor padro
desta propriedade False.
WordWrap: Habilita/desabilita uma quebra de linha no texto, caso a rea
disponvel para o texto ultrapasse os limites determinados no objeto. Para que esta
propriedade funcione, a propriedade Multiline deve ser obrigatoriamente igual a
True.
6.11.3. Propriedades da Lista de 8eleo
AutoSize: A propriedade AutoSize ajusta a largura do texto, caso a rea
disponvel para o mesmo ultrapasse o tamanho do objeto. Para o objeto Lista de
Seleo (Combo Box), quando a propriedade estiver configurada para True, a
largura do texto reajustada para a mesma do objeto.
AutoTab: A propriedade AutoTab habilita/desabilita a tabulao automtica no
objeto. Se a propriedade estiver configurada para True, a tabulao automtica
ocorre. Caso contrrio, no utilizada.
Aps o usurio digitar o nmero mximo de caracteres em um objeto (utilizando a
propriedade MaxLength), o foco se move automaticamente para o prximo objeto da
ordem de tabulao, quando estes caracteres forem atingidos. Por exemplo, para que
E3 - Scripts - Manual de Referncia
Propriedades 269
uma Lista de Seleo exiba dados de estoque que possuam sempre cinco caracteres,
pode-se usar a propriedade MaxLength para especificar o nmero mximo de
caracteres a serem introduzidos no objeto e a propriedade AutoTab para tabular
automaticamente para o prximo objeto depois que o usurio digitar cinco
caracteres.
AutoWordSelect: Habilita/desabilita a seleo automtica de palavras no objeto.
Se esta propriedade estiver configurada para True, a palavra indicada selecionada
no texto mais o espao seguinte, caso voc tenha selecionado parte dela. Caso
contrrio, somente o caractere indicado na palavra selecionado.
BackStyle: A propriedade BackStyle define o estilo do plano de fundo para os
objetos. As opes disponveis para esta propriedade so as seguintes: 0-
fmBackStyleTransparent: define o objeto como transparente, isto , nenhum fundo
deste objeto ser desenhado; e 1 - fmBackStyleOpaque: define o objeto como
opaco, isto , o fundo ser desenhado (valor padro).
NOTA: Esta propriedade no afeta a transparncia de bitmaps. Voc deve usar um
editor de figura como o Paintbrush, por exemplo, para tornar um bitmap
transparente. Nem todos os objetos ActiveX suportam bitmaps transparentes.
BorderColor: Esta propriedade determina a cor da borda que ser aplicada no
objeto. Com esta propriedade, possvel aplicar a cor padro ou personaliz-la
atravs da sua edio. Para que esta propriedade seja aplicvel, necessrio que a
propriedade BorderStyle esteja configurada para 1 - fmBorderStyleSingle. O valor
padro desta propriedade preto (RGB 0,0,0).
BorderStyle: A propriedade BorderStyle determina o estilo de borda que ser
aplicada ao objeto. As opes disponveis so: 0-fmBorderStyleNone: sem borda;
e 1-fmBorderStyleSingle: com borda simples.
BoundColumn: Determina a coluna da lista onde os dados sero armazenados.
Por exemplo, se cada linha contm 8 itens e a propriedade BoundColumn 3, o
sistema armazena as informaes na terceira coluna da linha atualmente selecionada.
Se o valor for igual a 0, este valor passado para a propriedade ListIndex do objeto.
Se o valor for 1 ou superior, o dado indicado atribudo coluna referente ao valor
especificado na propriedade. As colunas so numeradas a partir de 1.
NOTA: Esta propriedade no tem efeito no E3 e foi mantida por motivos de
compatibilidade com a especificao padro dos objetos Microsoft Forms.
CanPaste: A propriedade CanPaste especifica se a rea de transferncia contm
os dados aos quais o objeto d suporte. Se a opo estiver configurada para True, o
E3 - Scripts - Manual de Referncia
270 Propriedades
objeto pode receber informaes coladas da rea de transferncia. Se os dados da
rea de transferncia estiverem em um formato ao qual o objeto no d suporte, a
propriedade CanPaste ser False. Por exemplo, se voc tentar colar um bitmap em
um objeto que s d suporte a texto, CanPaste ser False. Esta propriedade
acessvel apenas em tempo de execuo.
Column: Especifica a linha e coluna no objeto. Se for especificado somente o
valor de coluna, a propriedade Column l ou escreve a coluna especificada na linha
atual do objeto. Por exemplo, MinhaListadeSeleo.Column (3) l ou escreve a
terceira coluna do objeto. Esta propriedade acessvel apenas em tempo de
execuo.
ColumnCount: A propriedade ColumnCount especifica o nmero de colunas do
objeto. A configurao de ColumnCount como 0 exibe zero colunas, e a
configurao desta propriedade como -1 exibe todas as colunas disponveis. O valor
padro desta propriedade 1.
ColumnHeads: A propriedade ColumnHeads habilita/desabilita a exibio do
ttulo das colunas no objeto. Se a propriedade estiver configurada para True, o ttulo
mostrado. Caso contrrio, o ttulo das colunas no mostrado. O valor padro
False.
ColumnWidths: A propriedade ColumnWidth utilizada para especificar a
largura da coluna do objeto, em pontos. Um valor igual a 1 ou branco faz com que
a largura seja calculada na coluna (a largura mnima de uma coluna calculada 72
pontos (1 polegada). Um valor igual a 0 oculta a coluna. Para produzir colunas mais
estreitas, deve-se especificar a largura na propriedade ou utilizar alguma dos valores
abaixo:
E3 - Scripts - Manual de Referncia
Propriedades 271
Opes disponveis para ColumnWidth
OPO DESCRIO
90;72;90 A primeira coluna possui 90 pontos (1,25 polegada); a segunda
coluna possui 72 pontos (1 polegada); a terceira coluna possui 90
pontos.
6 cm;0;6 cm A primeira coluna possui 6 centmetros; a segunda coluna est
oculta; a terceira coluna possui 6 centmetros. Como parte da
terceira coluna visvel, uma barra de rolagem horizontal
aparece.
1,5 pol;0;2,5 pol A primeira coluna possui 1,5 polegadas, a segunda coluna est
oculta, e a terceira coluna possui 2,5 polegadas.
2 pol;;2 pol A primeira coluna possui 2 polegadas, a segunda coluna possui 1
polegada (padro) e a terceira coluna possui 2 polegadas. Como
somente metade da terceira coluna visvel, uma barra de
rolagem horizontal aparece.
(vazio) Todas as trs colunas possuem a mesma largura (1,33
polegadas). O valor padro desta propriedade vazio (o E3 ir
utilizar o valor padro do sistema).

CurTargetX: Retorna a posio horizontal de insero de um texto no objeto.
Esta posio medida em unidades himtricas (um himetro 0,0001 do metro).
Pode-se usar CurTargetX e CurX para mover o ponto de insero de um texto
conforme o usurio percorre pelo contedo do objeto. Quando o usurio move o
ponto de insero para outra linha do texto, a propriedade CurTargetX especifica a
posio mais indicada para o ponto de insero do texto desejado. A propriedade
CurX definida neste valor, se a linha do texto for maior que o valor de
CurTargetX. Caso contrrio, a propriedade CurX definida como o final da linha do
texto. Esta propriedade acessvel apenas em tempo de execuo.
NOTA: Esta propriedade no tem efeito no E3 e foi mantida por motivos de
compatibilidade com a especificao padro dos objetos Microsoft Forms.
CurX: A propriedade CurX especifica a posio atual horizontal do ponto de
insero no objeto. Esta propriedades aplicada num objeto que possua vrias
linhas, isto , a propriedade Multiline est habilitada. O valor de retorno vlido
quando o objeto possui o foco. Voc pode usar a propriedade Multiline e a
propriedade CurX para posicionar o ponto de insero do texto conforme o usurio
rola pelo contedo no objeto. Quando o usurio move o ponto de insero para uma
outra linha de texto rolando o contedo do objeto, a propriedade CurTargetX
especifica a posio desejada para o ponto de insero. A propriedade CurX
definida com este valor se a linha de texto for maior do que o valor de CurTargetX.
Caso contrrio, CurX definido no fim da linha de texto. Esta propriedade
acessvel apenas em tempo de execuo.
E3 - Scripts - Manual de Referncia
272 Propriedades
DragBehavior: Habilita/desabilita o recurso de arrastar e soltar um texto no
contedo do objeto. As opes disponveis para esta propriedade so as seguintes: 0-
fmDragBehaviorDisabled: no permite a ao de arrastar e soltar o texto no
contedo do objeto; e 1- fmDragBehaviorEnabled: permite a ao de arrastar e
soltar o texto no contedo do objeto. O valor padro desta propriedade 0.
NOTA: A propriedade DragBehavior no tem efeito se a propriedade Style estiver
configurada para 2.
DropButtonStyle: Esta propriedade especifica o smbolo exibido no boto da
Lista de Seleo. As opes disponveis para esta propriedade so as seguintes:
Opes disponveis para DropButtonStyle
OPO DESCRIO
0- fmDropButtonStylePlain Exibe um boto plano, sem smbolo.
1- fmDropButtonStyleArrow Exibe um seta para baixo (padro).
2- fmDropButtonStyleElipsis Exibe trs pontos (...).
3- fmDropButtonStyleReduce Exibe uma reta horizontal como um caractere
sublinhado.
O valor padro desta propriedade 1- fmDropButtonStyleArrow.
EnterFieldBehavior: Esta propriedade controla a forma como o contedo do
texto selecionado na rea de edio quando se pressiona a tecla [TAB| no objeto, e
no quando o objeto recebe o foco como um resultado do mtodo SetFocus(). As
opes disponveis para esta propriedade so as seguintes: 0-
fmEnterFieldBehaviorSelectAll: seleciona todo o contedo do texto quando a tecla
TAB pressionada no objeto; e 1- fmEnterFieldBehaviorRecallSelection: deixa a
seleo inalterada.
O valor padro desta propriedade 0- fmEnterFieldBehaviorSelectAll.
Font: A propriedade Font utilizada para determinar a fonte do objeto. Esta
propriedade no pode ser utilizada em scripts e/ou associaes, sendo configurada
unicamente via Studio.
HideSelection: A propriedade HideSelection especifica se o texto selecionado
continua em destaque quando um objeto no tiver mais o foco. Se a propriedade
estiver configurada para True, o texto selecionado somente se mantm em destaque
caso o objeto tenha o foco. Caso contrrio, o texto selecionado sempre aparece em
destaque, independente do foco no objeto. O valor padro desta propriedade True.
E3 - Scripts - Manual de Referncia
Propriedades 273
IMEMode: A propriedade IMEMode especifica o modo IME de um objeto.
NOTA: Essa propriedade aplica-se apenas em aplicativos escritos em idiomas
asiticos (chins simplificado, chins tradicional, coreano e japons) e ignorada em
outros aplicativos. Foi mantida por motivos de compatibilidade com a especificao
padro dos objetos Microsoft Forms.
As opes disponveis so as seguintes:
Opes disponveis para IMEMode
OPO DESCRIO
0- fm!NENodeNoControl No controla IME (padro).
1- fm!NENodeOn IME ativado.
2- fm!NENodeOff IME desativado. Modo ingls.
3- fm!NENodeDisable IME desativado. O usurio no pode ativar IME
pelo teclado.
+- fm!NENodeHiragana IME ativado com modo Hiragana de largura total.
5- fm!NENodeKatakanaFull IME ativado com modo Katakana de largura total.
6- fm!NENodeKatakana IME ativado com modo Katakana de meia
largura.
7- fm!NENodeAlphaFull IME ativado com modo Alfanumrico de largura
total.
8- fm!NENodeAlpha IME ativado com modo Alfanumrico de meia
largura.
9- fm!NENodeHangulFull IME ativado com modo Hangul de largura total.
10- fm!NENodeHangul IME ativado com modo Hangul de meia largura.
11-fm!NENodeHanziFull IME ativado com modo Hanzi de largura total
12-fm!NENodeHanzi IME ativado com modo Hanzi de meia largura.
LineCount: A propriedade LineCount retorna o nmero de linhas do objeto. Esta
propriedade acessvel apenas em tempo de execuo.
List: Retorna ou define as entradas da linha e coluna na lista do objeto. A
numerao de linha e coluna comea com zero. Isto , o nmero de linha da primeira
linha na lista zero; o nmero de coluna da primeira coluna zero. O nmero da
segunda linha ou coluna 1 e assim por diante. Esta propriedade acessvel apenas
em tempo de execuo.
ListCount: Retorna o nmero de itens contidos na lista do objeto. Esta
propriedade acessvel apenas em tempo de execuo.
ListIndex: Identifica o item atualmente selecionado na lista, chamado de ndice.
Os valores de ListIndex vo de 1 ao nmero total de linhas em uma lista menos um
(isto , ListCount 1). Quando nenhuma linha selecionada, ListIndex retorna 1.
E3 - Scripts - Manual de Referncia
274 Propriedades
Quando o usurio seleciona uma linha em uma Lista de seleo, o sistema define o
valor da propriedade ListIndex. O valor da propriedade ListIndex da primeira linha
de uma lista 0, o valor da segunda linha 1 e assim por diante. Esta propriedade
acessvel apenas em tempo de execuo.
ListRows: A propriedade ListRows determina o nmero mximo de linhas na
lista do objeto. O valor padro desta propriedade 8.
ListStyle: A propriedade ListStyle determina o estilo da lista do objeto. As
opes disponveis para esta propriedade so as seguintes: 0-fmListStylePlain:
listagem com os itens do plano de fundo em destaque; e 1- fmListStyleOption:
exibe botes de opo ou caixas de seleo para uma lista de vrias opesquando
o usurio seleciona um item do grupo, o boto de opo associado ao item
selecionado e os botes de opo para outros itens no grupo so desmarcados. O
valor padro desta propriedade 0- fmListStylePlain.
ListWidth: A propriedade ListWidth determina a largura da lista do objeto. O
valor padro desta propriedade 0.
Locked: A propriedade Locked habilita/desabilita a edio do objeto. Se esta
propriedade estiver configurada para True, a edio no permitida. Caso contrrio,
possvel editar o objeto. Os valores configurados na propriedade Enabled
influenciam o comportamento de Locked. Para maiores detalhes, consulte a
propriedade Enabled. O valor padro desta propriedade False.
MatchEntry: Procura, atravs do texto digitado pelo usurio, por uma entrada de
texto que coincida com os dados existentes no objeto. Ao encontrar uma incidncia
do texto, a linha contendo a mesma selecionada e o contedo da coluna exibido.
As opes disponveis so as seguintes: 0- fmNatchEntryFirstLetter: procura pela
entrada de texto que coincida com o primeiro caractere digitado no objeto. Se for
digitada repetidamente a mesma letra, passada para a prxima entrada de texto que
comece com esta letra e assim por diante; 1- fmNatchEntryComplete: conforme
cada caractere digitado, o objeto procura por uma entrada de texto que coincida
com os caracteres digitados; e 2- fmNatchEntryNone: no faz a procura no objeto.
O valor padro desta propriedade 1- fmNatchEntryComplete.
E3 - Scripts - Manual de Referncia
Propriedades 275
MatchFound: Indica se o texto que o usurio digitou no objeto coincide com
qualquer entrada na lista. Se a propriedade estiver configurada para True, o contedo
da propriedade Value coincide com um dos registros na lista. Caso contrrio, o
contedo da propriedade Value no coincide nenhum dos registros na lista (padro).
Esta propriedade acessvel apenas em tempo de execuo, no sendo aplicvel
quando a propriedade MatchEntry definida como 2. O valor padro desta
propriedade False.
MatchRequired: Especifica se o texto digitado deve ou no coincidir com os
itens existente na Lista de seleo. Se a propriedade estiver configurada para True, o
usurio no pode sair da Lista de seleo at que o texto inserido coincida com um
item existente do objeto. Caso contrrio, o texto inserido na Lista de seleo pode
ser diferente de todos os dados existente da mesma.
MaxLength: A propriedade MaxLength determina o nmero mximo de
caracteres no objeto. Configurando esta propriedade como 0, no h limite de
caractere no objeto.
SelectionMargin: Habilita/desabilita a margem de seleo do objeto. Se esta
propriedade estiver configurada para True, o texto ser selecionado ao se clicar na
margem do objeto. Caso contrrio, o texto no ser selecionado ao se clicar na
margem.
NOTA: Se a propriedade SelectionMargin estiver configurada para True quando o
objeto for impresso, a margem de seleo tambm ser impressa.
SelLength: Retorna o nmero de caracteres selecionados no objeto. Esta
propriedade acessvel apenas em tempo de execuo.
SelStart: Indica o ponto inicial do texto selecionado ou o ponto de insero se
nenhum texto for selecionado. Esta propriedade acessvel apenas em tempo de
execuo.
SelText: Retorna o texto selecionado no objeto. Esta propriedade acessvel
apenas em tempo de execuo.
ShowDropButtonWhen: A propriedade ShowDropButtonWhen especifica
quando mostrar o boto suspenso (tecla de navegao do objeto). As opes
disponveis para esta propriedade so as seguintes: 0-
fmShowDropButtonWhenNever: no mostra o boto suspenso em nenhuma
circunstncia; 1- fmShowDropButtonWhenFocus: mostra o boto suspenso
quando o objeto possui o foco; e 2- fmShowDropButtonWhenAlways: sempre
mostra o boto suspenso.
E3 - Scripts - Manual de Referncia
276 Propriedades
SpecialEffect: A propriedade SpecialEffect especifica a aparncia de um objeto.
As opes disponveis para esta propriedade so as seguintes:
Opes disponveis para SpecialEffect
OPO DESCRIO
0- fmSpecialEffectFlat O objeto aparece plano e possui um destaque na
borda, uma alterao de cor ou ambos.
1- fmSpecialEffectRaised O objeto possui um destaque na parte superior
esquerda e uma sombra na parte inferior direita, como
se estivesse em relevo
2- fmSpecialEffectSunked O objeto possui uma sombra na parte superior
esquerda e um destaque na parte inferior direita. O
objeto e a sua borda afundados na Tela.
3- fmSpecialEffectEtchet A borda parece estar esculpida ao redor da
extremidade do objeto.
6- fmSpecialEffectBump O objeto possui uma cresta na parte inferior direita e
parece plano na parte superior esquerda..
Style: Determina o estilo do objeto. As opes disponveis so as seguintes: 0-
fmStyleDropDownCombo: a lista de seleo se comporta como uma caixa de
combinao suspensa. O usurio pode digitar um valor na regio de edio ou
selecionar um valor da lista suspensa (padro); e 2- fmStyleDropDownList: a Lista
de seleo se comporta como uma caixa de listagem. O usurio deve escolher um
valor da lista.
Text: retorna o texto da opo selecionada. Esta propriedade acessvel apenas
em tempo de execuo.
TextAlign: Especifica como o texto alinhado no objeto. As opes disponveis
so as seguintes: 1- fmTextAlignLeft: alinha o texto com a extremidade esquerda do
objeto; 2- fmTextAlignCenter: centraliza o texto com a extremidade direita do
objeto; 3- fmTextAlignRight: alinha o texto com a extremidade direita do objeto.
TextColumn: A propriedade TextColumn identifica a coluna no objeto. Os
valores para a propriedade TextColumn vo de 1 ao nmero de colunas na lista. O
valor TextColumn para a primeira coluna 1, o valor da segunda coluna 2, e da por
diante. A configurao de TextColumn como 0 exibe os valores para a propriedade
ListIndex. A configurao de TextColumn como 1 exibe a primeira coluna que
possui o valor da propriedade ColumnWidths superior a zero 0.
TextLength: Retorna o nmero de caracteres digitados no objeto. Esta
propriedade acessvel apenas em tempo de execuo.
E3 - Scripts - Manual de Referncia
Propriedades 277
TopIndex: A propriedade TopIndex define ou retorna o item da lista que aparece
na posio mais prxima do topo na lista. Esta propriedade retorna o valor 1 se a
lista est vazia ou no exibida
Value: o valor da propriedade BoundColumn das linhas atualmente
selecionadas. Uma mudana de valor na propriedade Value no implica em mudana
de valor na propriedade BoundColumn. Para adicionar ou deletar entradas em uma
lista de seleo, pode-se usar os mtodos AddItem() ou RemoveItem().
6.11.4. Propriedades do Boto de Comando
Accelerator: Define ou recupera a tecla aceleradora do objeto. Esta tecla
aceleradora uma tecla de atalho que usada em conjunto com a tecla [Alt], d o foco
ao objeto. O valor padro desta propriedade vazio.
AutoSize: A propriedade AutoSize ajusta a largura do texto, caso a rea
disponvel para o mesmo ultrapasse o tamanho do objeto. Para o objeto Boto de
Comando (Command Button), quando a propriedade estiver configurada para True,
a largura do texto reajustada para a mesma do objeto. O contedo do texto
cortado quando ele excede a rea do objeto.
BackStyle: A propriedade BackStyle define o estilo do plano de fundo para os
objetos. As opes disponveis para esta propriedade so as seguintes: 0-
fmBackStyleTransparent: define o objeto como transparente, isto , nenhum fundo
deste objeto ser desenhado; e 1 - fmBackStyleOpaque: define o objeto como
opaco, isto , o fundo ser desenhado (valor padro).
NOTA: Esta propriedade no afeta a transparncia de bitmaps. Voc deve usar um
editor de figura como o Paintbrush, por exemplo, para tornar um bitmap
transparente. Nem todos os objetos ActiveX suportam bitmaps transparentes.
Caption: Define o texto que ser mostrado no objeto.
Font: A propriedade Font utilizada para determinar a fonte do objeto. Esta
propriedade no pode ser utilizada em scripts e/ou associaes, sendo configurada
unicamente via Studio.
Locked: A propriedade Locked habilita/desabilita a edio do objeto. Se esta
propriedade estiver configurada para True, a edio no permitida. Caso contrrio,
possvel editar o objeto. Os valores configurados na propriedade Enabled
influenciam o comportamento de Locked. Para maiores detalhes, consulte a
propriedade Enabled. O valor padro desta propriedade False.
E3 - Scripts - Manual de Referncia
278 Propriedades
Picture: A propriedade Picture especifica a figura (bitmap) atribuda ao objeto.
Um arquivo com imagem pode ser selecionado de duas maneiras: atravs da Lista de
Propriedades; ou via scripts, utilizando-se a funo LoadPicture para especificar o
caminho e o nome do arquivo que contm a figura. Para remover a figura, clique o
valor da propriedade Picture e pressione a tecla [Delete|. A tecla [Backspace|
(tecla de espao do teclado) no remove a figura.
PicturePosition: A propriedade PicturePosition especifica a posio da figura
atribuda ao objeto em relao a sua legenda. As opes disponveis para esta
propriedades so as seguintes:
Opes disponveis para PicturePosition
OPO DESCRIO
0- fmPicturePositionLeftTop A figura aparece esquerda de sua legenda.
A legenda alinhada com a parte superior da
figura.
1- fmPicturePositionLeftCenter A figura aparece esquerda da legenda. A
legenda centralizada relativamente
imagem.
2- fmPicturePositionLeftBotton A figura aparece esquerda da legenda. A
legenda alinhada com a parte inferior da
figura.
3- fmPicturePositionRightTop A figura aparece direita da legenda. A
legenda alinhada com a parte superior da
figura.
+- fmPicturePositionRightCenter A figura aparece direita da legenda. A
legenda centralizada relativamente figura.
5- fmPicturePositionRightBotton A figura aparece direita da legenda. A
legenda alinhada com a parte inferior da
figura.
6- fmPicturePositionAboveLeft A figura aparece acima da legenda. A
legenda alinhada com a extremidade
esquerda da figura.
7- fmPicturePositionAboveCenter A figura aparece acima da legenda. A
legenda centralizada abaixo da figura
(padro).
8- fmPicturePositionAboveRight A figura aparece acima da legenda. A
legenda alinhada com a extremidade direita
da figura.
9- fmPicturePositionBelowLeft A figura aparece abaixo da legenda. A
legenda alinhada com a extremidade
esquerda da figura.
10- fmPicturePositionBelowCenter A figura aparece abaixo da legenda. A
legenda centralizada acima da figura.
11- fmPicturePositionBelowRight A figura aparece abaixo da legenda. A
legenda alinhada com a extremidade direita
da figura.
E3 - Scripts - Manual de Referncia
Propriedades 279
TakeFocusOnClick: Especifica se o objeto recebe o foco quando clicado. Se a
propriedade estiver configurada para True, o objeto recebe o foco quando clicado.
Caso contrrio, o objeto no recebe o foco quando clicado.
WordWrap: Habilita/desabilita uma quebra de linha no texto, caso a rea
disponvel para o texto ultrapasse os limites determinados no objeto. Para que esta
propriedade funcione, a propriedade Multiline deve ser obrigatoriamente igual a
True.
6.11.5. Propriedades do Texto
Accelerator: Define ou recupera a tecla aceleradora do objeto. Esta tecla
aceleradora uma tecla de atalho que usada em conjunto com a tecla [Alt], d o foco
ao objeto. O valor padro desta propriedade vazio.
AutoSize: A propriedade AutoSize ajusta a largura do texto, caso a rea
disponvel para o mesmo ultrapasse o tamanho do objeto. Para o objeto Texto
(Label), quando a propriedade estiver configurada para True, o texto
redimensionado para coincidir com o tamanho atual o objeto, permitindo assim a sua
exibio completa.
BackStyle: A propriedade BackStyle define o estilo do plano de fundo para os
objetos. As opes disponveis para esta propriedade so as seguintes:
0-fmBackStyleTransparent: define o objeto como transparente, isto , nenhum
fundo deste objeto ser desenhado; e 1-fmBackStyleOpaque (valor padro): define
o objeto como opaco, isto , o fundo ser desenhado.
NOTA: Esta propriedade no afeta a transparncia de bitmaps. Voc deve usar um
editor de figura como o Paintbrush, por exemplo, para tornar um bitmap
transparente. Nem todos os objetos ActiveX suportam bitmaps transparentes.
BorderColor: Esta propriedade determina a cor da borda que ser aplicada no
objeto. Com esta propriedade, possvel aplicar a cor padro ou personaliz-la
atravs da sua edio. Para que esta propriedade seja aplicvel, necessrio que a
propriedade BorderStyle esteja configurada para 1 - fmBorderStyleSingle. O valor
padro desta propriedade preto (RGB (0,0,0)).
BorderStyle: A propriedade BorderStyle determina o estilo de borda que ser
aplicada ao objeto. As opes disponveis so: 0-fmBorderStyleNone: sem borda;
e 1-fmBorderStyleSingle: com borda simples.
Caption: Define o texto que ser mostrado no objeto.
E3 - Scripts - Manual de Referncia
280 Propriedades
Font: A propriedade Font utilizada para determinar a fonte do objeto. Esta
propriedade no pode ser utilizada em scripts e/ou associaes, sendo configurada
unicamente via Studio.
Picture: A propriedade Picture especifica a figura (bitmap) atribuda ao objeto.
Um arquivo com imagem pode ser selecionado de duas maneiras: atravs da Lista de
Propriedades; ou via scripts, utilizando-se a funo LoadPicture para especificar o
caminho e o nome do arquivo que contm a figura. Para remover a figura, clique o
valor da propriedade Picture e pressione a tecla Delete. A tecla Backspace (tecla de
espao do teclado) no remove a figura. Exemplo:
Sub CommandButton1_Click()
Screen.Item("CheckBox1").Picture =LoadPicture("C:\aba.gif")
End Sub
E3 - Scripts - Manual de Referncia
Propriedades 281
PicturePosition: A propriedade PicturePosition especifica a posio da figura
atribuda ao objeto em relao a sua legenda. As opes disponveis para esta
propriedades so as seguintes:
Opes disponveis para PicturePosition
OPO DESCRIO
0- fmPicturePositionLeftTop A figura aparece esquerda de sua legenda.
A legenda alinhada com a parte superior da
figura.
1- fmPicturePositionLeftCenter A figura aparece esquerda da legenda. A
legenda centralizada relativamente
imagem.
2- fmPicturePositionLeftBotton A figura aparece esquerda da legenda. A
legenda alinhada com a parte inferior da
figura.
3- fmPicturePositionRightTop A figura aparece direita da legenda. A
legenda alinhada com a parte superior da
figura.
+- fmPicturePositionRightCenter A figura aparece direita da legenda. A
legenda centralizada relativamente figura.
5- fmPicturePositionRightBotton A figura aparece direita da legenda. A
legenda alinhada com a parte inferior da
figura.
6- fmPicturePositionAboveLeft A figura aparece acima da legenda. A
legenda alinhada com a extremidade
esquerda da figura.
7- fmPicturePositionAboveCenter A figura aparece acima da legenda. A
legenda centralizada abaixo da figura
(padro).
8- fmPicturePositionAboveRight A figura aparece acima da legenda. A
legenda alinhada com a extremidade direita
da figura.
9- fmPicturePositionBelowLeft A figura aparece abaixo da legenda. A
legenda alinhada com a extremidade
esquerda da figura.
10- fmPicturePositionBelowCenter A figura aparece abaixo da legenda. A
legenda centralizada acima da figura.
11- fmPicturePositionBelowRight A figura aparece abaixo da legenda. A
legenda alinhada com a extremidade direita
da figura.

E3 - Scripts - Manual de Referncia
282 Propriedades
SpecialEffect: A propriedade SpecialEffect especifica a aparncia de um objeto.
As opes disponveis para esta propriedade so as seguintes:
Opes disponveis para SpecialEffect
OPO DESCRIO
0- fmSpecialEffectFlat O objeto aparece plano e possui um destaque na
borda, uma alterao de cor ou ambos.
1- fmSpecialEffectRaised O objeto possui um destaque na parte superior
esquerda e uma sombra na parte inferior direita. O
objeto parece estar em relevo.
2- fmSpecialEffectSunked O objeto possui uma sombra na parte superior
esquerda e um destaque na parte inferior direita. O
objeto e a sua borda parecem estar afundados na Tela.
3- fmSpecialEffectEtchet A borda parece estar esculpida ao redor da
extremidade do objeto.
6- fmSpecialEffectBump O objeto possui uma cresta na parte inferior direita e
parece plano na parte superior esquerda.
TextAlign: Especifica como o texto alinhado no objeto. As opes disponveis
so as seguintes: 1- fmTextAlignLeft: alinha o texto com a extremidade esquerda do
objeto; 2- fmTextAlignCenter: centraliza o texto com a extremidade direita do
objeto; 3- fmTextAlignRight: alinha o texto com a extremidade direita do objeto.
WordWrap: Habilita/desabilita uma quebra de linha no texto, caso a rea
disponvel para o texto ultrapasse os limites determinados no objeto. Para que esta
propriedade funcione, a propriedade Multiline deve ser obrigatoriamente igual a
True.
6.11.6. Propriedades da Lista
BorderColor: Esta propriedade determina a cor da borda que ser aplicada no
objeto. Com esta propriedade, possvel aplicar a cor padro ou personaliz-la
atravs da sua edio. Para que esta propriedade seja aplicvel, necessrio que a
propriedade BorderStyle esteja configurada para 1 - fmBorderStyleSingle. O valor
padro desta propriedade preto (RGB (0,0,0)).
BorderStyle: A propriedade BorderStyle determina o estilo de borda que ser
aplicada ao objeto. As opes disponveis so: 0-fmBorderStyleNone: sem borda;
e 1-fmBorderStyleSingle: com borda simples.
BoundColumn: Determina a coluna da lista onde os dados sero armazenados.
Por exemplo, se cada linha contm 8 itens e a propriedade BoundColumn 3, o
sistema armazena as informaes na terceira coluna da linha atualmente selecionada.
Se o valor for igual a 0, este valor passado para a propriedade ListIndex do objeto.
E3 - Scripts - Manual de Referncia
Propriedades 283
Se o valor for 1 ou superior, o dado indicado atribudo coluna referente ao valor
especificado na propriedade. As colunas so numeradas a partir de 1.
NOTA: Esta propriedade no tem efeito no E3 e foi mantida por motivos de
compatibilidade com a especificao padro dos objetos Microsoft Forms.
Column: Especifica a linha e coluna no objeto. Se for especificado somente o
valor de coluna, a propriedade Column l ou escreve a coluna especificada na linha
atual do objeto. Por exemplo, MinhaListadeSeleo.Column (3) l ou escreve a
terceira coluna do objeto. Esta propriedade acessvel apenas em tempo de
execuo.
ColumnCount: A propriedade ColumnCount especifica o nmero de colunas do
objeto. A configurao de ColumnCount como 0 exibe zero colunas, e a
configurao desta propriedade como -1 exibe todas as colunas disponveis. O valor
padro desta propriedade 1.
ColumnHeads: A propriedade ColumnHeads habilita/desabilita a exibio do
ttulo das colunas no objeto. Se a propriedade estiver configurada para True, o ttulo
mostrado. Caso contrrio, o ttulo das colunas no mostrado. O valor padro
False.
ColumnWidths: A propriedade ColumnWidth utilizada para especificar a
largura da coluna do objeto, em pontos. Um valor igual a 1 ou branco faz com que
a largura seja calculada na coluna (a largura mnima de uma coluna calculada 72
pontos (1 polegada). Um valor igual a 0 oculta a coluna. Para produzir colunas mais
estreitas, deve-se especificar a largura na propriedade ou utilizar alguma dos valores
abaixo:
E3 - Scripts - Manual de Referncia
284 Propriedades
Opes disponveis para ColumnWidth
OPO DESCRIO
90;72;90 A primeira coluna possui 90 pontos (1,25 polegada); a segunda
coluna possui 72 pontos (1 polegada); a terceira coluna possui 90
pontos.
6 cm;0;6 cm A primeira coluna possui 6 centmetros; a segunda coluna est
oculta; a terceira coluna possui 6 centmetros. Como parte da
terceira coluna visvel, uma barra de rolagem horizontal
aparece.
1,5 pol;0;2,5 pol A primeira coluna possui 1,5 polegadas, a segunda coluna est
oculta, e a terceira coluna possui 2,5 polegadas.
2 pol;;2 pol A primeira coluna possui 2 polegadas, a segunda coluna possui 1
polegada (padro) e a terceira coluna possui 2 polegadas. Como
somente metade da terceira coluna visvel, uma barra de
rolagem horizontal aparece.
(vazio) Todas as trs colunas possuem a mesma largura (1,33
polegadas). O valor padro desta propriedade vazio (o E3 ir
utilizar o valor padro do sistema).
Font: A propriedade Font utilizada para determinar a fonte do objeto. Esta
propriedade no pode ser utilizada em scripts e/ou associaes, sendo configurada
unicamente via Studio.
IMEMode: A propriedade IMEMode especifica o modo IME de um objeto. Essa
propriedade aplica-se apenas em aplicativos escritos em idiomas asiticos (chins
simplificado, chins tradicional, coreano e japons) e ignorada em outros
aplicativos. Ela no tem efeito no E3 e foi mantida por motivos de compatibilidade
com a especificao padro dos objetos Microsoft Forms. As opes disponveis so
as seguintes:
E3 - Scripts - Manual de Referncia
Propriedades 285
Opes disponveis para IMEMode
OPO DESCRIO
0- fm!NENodeNoControl No controla IME (padro).
1- fm!NENodeOn IME ativado.
2- fm!NENodeOff IME desativado. Modo ingls.
3- fm!NENodeDisable IME desativado. O usurio no pode ativar IME pelo
teclado.
+- fm!NENodeHiragana IME ativado com modo Hiragana de largura total.
5- fm!NENodeKatakanaFull IME ativado com modo Katakana de largura total.
6- fm!NENodeKatakana IME ativado com modo Katakana de meia largura.
7- fm!NENodeAlphaFull IME ativado com modo Alfanumrico de largura total.
8- fm!NENodeAlpha IME ativado com modo Alfanumrico de meia largura.
9- fm!NENodeHangulFull IME ativado com modo Hangul de largura total.
10- fm!NENodeHangul IME ativado com modo Hangul de meia largura.
11-fm!NENodeHanziFull IME ativado com modo Hanzi de largura total
12-fm!NENodeHanzi IME ativado com modo Hanzi de meia largura.

IntegralHeight: A propriedade IntegralHeight ajusta a altura da rea de edio
do texto, caso a rea disponvel para o mesmo ultrapasse o tamanho do objeto. Se
esta propriedade estiver configurada para True, a altura da rea de edio do texto
reajustada para coincidir com o tamanho atual o objeto, permitindo assim a exibio
completa do contedo do texto. Caso contrrio, a rea de edio do texto continua
com seu tamanho original. Se os textos so maiores que o espao disponvel, este
no exibido no objeto.
List: Retorna ou define as entradas da linha e coluna na lista do objeto. A
numerao de linha e coluna comea com zero. Isto , o nmero de linha da primeira
linha na lista zero; o nmero de coluna da primeira coluna zero. O nmero da
segunda linha ou coluna 1 e assim por diante. Esta propriedade acessvel apenas
em tempo de execuo.
ListCount: Retorna o nmero de itens contidos na lista do objeto. Esta
propriedade acessvel apenas em tempo de execuo.
ListIndex: Identifica o item atualmente selecionado na lista, chamado de ndice.
Os valores de ListIndex vo de 1 ao nmero total de linhas em uma lista menos um
(isto , ListCount 1). Quando nenhuma linha selecionada, ListIndex retorna 1.
Quando o usurio seleciona uma linha em uma Lista de seleo, o sistema define o
valor da propriedade ListIndex. O valor da propriedade ListIndex da primeira linha
de uma lista 0, o valor da segunda linha 1 e assim por diante. Esta propriedade
acessvel apenas em tempo de execuo.
ListStyle: A propriedade ListStyle determina o estilo da lista do objeto. As
opes disponveis para esta propriedade so as seguintes: 0-fmListStylePlain:
E3 - Scripts - Manual de Referncia
286 Propriedades
listagem com os itens do plano de fundo em destaque; e 1- fmListStyleOption:
exibe botes de opo ou caixas de seleo para uma lista de vrias opesquando
o usurio seleciona um item do grupo, o boto de opo associado ao item
selecionado e os botes de opo para outros itens no grupo so desmarcados. O
valor padro desta propriedade 0- fmListStylePlain.
NOTA: A opo 1- fmListStyleOption s pode ser habilitada se a propriedade
MultiSelect estiver configurada como 1- fmNultiselectNulti.
Locked: A propriedade Locked habilita/desabilita a edio do objeto. Se esta
propriedade estiver configurada para True, a edio no permitida. Caso contrrio,
possvel editar o objeto. Os valores configurados na propriedade Enabled
influenciam o comportamento de Locked. Para maiores detalhes, consulte a
propriedade Enabled. O valor padro desta propriedade False.
MatchEntry: Procura, atravs do texto digitado pelo usurio, por uma entrada de
texto que coincida com os dados existentes no objeto. Ao encontrar uma incidncia
do texto, a linha contendo a mesma selecionada e o contedo da coluna exibido.
As opes disponveis so as seguintes: 0- fmNatchEntryFirstLetter: procura pela
entrada de texto que coincida com o primeiro caractere digitado no objeto. Se for
digitada repetidamente a mesma letra, passada para a prxima entrada de texto que
comece com esta letra e assim por diante; 1- fmNatchEntryComplete: conforme
cada caractere digitado, o objeto procura por uma entrada de texto que coincida
com os caracteres digitados; e 2- fmNatchEntryNone: no faz a procura no objeto.
O valor padro desta propriedade 1- fmNatchEntryComplete.
MultiSelect: A propriedade MultiSelect indica se o objeto permite mltiplas
selees. As opes disponveis para esta propriedade so as seguintes: 0-
fmNultiselectSingle: somente um item pode ser selecionado; 1-
fmNultiselectNulti: permite selecionar um item atravs da barra de espao ou
clique com o mouse, fazendo com que marque ou desmarque um item na lista; e 2-
fmNultiselectExtended: permite selecionar um item atravs da tecla SHIFT,
clicando com o mouse ou pressionando SHIFT e uma das teclas de seta, estendendo
a seleo para o item atual. Pressionando [CTRL] e clicando com o mouse, marca ou
desmarca um item.
O valor padro desta propriedade 0- fmNultiSelectSingle.
Selected: Seleciona/desseleciona um item, e verifica se um item est selecionado,
quando a propriedade Multiline est configurada como True. Para saber se um
determinado item est selecionado, o ndice do item a ser consultado deve ser
passado, e a propriedade retorna se o item est selecionado ou no. Dessa forma,
E3 - Scripts - Manual de Referncia
Propriedades 287
possvel ver quais itens esto selecionados quando o usurio selecionar mais de um.
Esta propriedade acessvel apenas em tempo de execuo.
Quando o usurio no estiver utilizando mltiplas selees, recomenda-se que sejam
usadas as propriedades Value ou ListIndex.
SpecialEffect: A propriedade SpecialEffect especifica a aparncia de um objeto.
As opes disponveis para esta propriedade so as seguintes:
Opes disponveis para SpecialEffect
OPO DESCRIO
0- fmSpecialEffectFlat O objeto aparece plano e possui um destaque na
borda, uma alterao de cor ou ambos.
1- fmSpecialEffectRaised O objeto possui um destaque na parte superior
esquerda e uma sombra na parte inferior direita. O
objeto parece estar em relevo.
2- fmSpecialEffectSunked O objeto possui uma sombra na parte superior
esquerda e um destaque na parte inferior direita. O
objeto e a sua borda parecem estar afundados na
Tela.
3- fmSpecialEffectEtchet A borda parece estar esculpida ao redor da
extremidade do objeto.
6- fmSpecialEffectBump O objeto possui uma cresta na parte inferior direita
e parece plano na parte superior esquerda.

Text: retorna o texto da opo selecionada. Esta propriedade acessvel apenas
em tempo de execuo.
TextAlign: Especifica como o texto alinhado no objeto. As opes disponveis
so as seguintes: 1- fmTextAlignLeft: alinha o texto com a extremidade esquerda do
objeto; 2- fmTextAlignCenter: centraliza o texto com a extremidade direita do
objeto; 3- fmTextAlignRight: alinha o texto com a extremidade direita do objeto.
TextColumn: A propriedade TextColumn identifica a coluna no objeto. Os
valores para a propriedade TextColumn vo de 1 ao nmero de colunas na lista. O
valor TextColumn para a primeira coluna 1, o valor da segunda coluna 2, e da por
diante. A configurao de TextColumn como 0 exibe os valores para a propriedade
ListIndex. A configurao de TextColumn como 1 exibe a primeira coluna que
possui o valor da propriedade ColumnWidths superior a zero 0.
TopIndex: A propriedade TopIndex define ou retorna o item da lista que aparece
na posio mais prxima do topo na lista. Esta propriedade retorna o valor 1 se a
lista est vazia ou no exibida.
E3 - Scripts - Manual de Referncia
288 Propriedades
Value: o valor da propriedade BoundColumn das linhas atualmente
selecionadas. Esta propriedade no tem efeito no E3 e foi mantida por motivos de
compatibilidade com a especificao padro dos objetos Microsoft Forms.
6.11.7. Propriedades da Barra de Rolagem
Delay: Especifica um tempo de espera para o objeto. A propriedade Delay afeta a
durao de tempo entre os eventos SpinUp, SpinDown e Change consecutivos,
gerados quando o usurio clica e mantm pressionada a Barra de rolagem. O
primeiro evento ocorre imediatamente. O tempo de espera at a segunda ocorrncia
do evento de cinco vezes o valor especificado na propriedade Delay. Aps o tempo
inicial, o intervalo entre os eventos o valor especificado para Delay.
O valor padro de Delay 50 ms. Isto significa que o objeto inicia o primeiro evento
depois de 250 ms (5 vezes o valor especificado) e inicia cada evento subseqente
depois de 50 ms.
LargeChange: Especifica a quantidade de passos do cursor da Barra de rolagem.
O valor da propriedade LargeChange a quantidade pela qual a propriedade Value
alterada, quando o usurio clica na rea entre a caixa de rolagem e o cursor da Barra
de rolagem. Qualquer valor inteiro permitido para a propriedade LargeChange,
mas o intervalo recomendado de -32,767 a +32,767, sendo que este valor deve
estar entre os valores determinados nas propriedade Max e Min da Barra de rolagem.
Max: A propriedade Max utilizada para determinar o limite mximo do objeto.
Min: A propriedade Min utilizada para determinar o limite mximo do objeto.
Orientation: A propriedade Orientation utilizada para determinar a orientao
do objeto na Tela. As opes disponveis para esta propriedade so as seguintes: -1-
fmOrientationAuto: determina automaticamente a orientao com base nas
dimenses do objeto, isto , conforme ele foi criado; 0- fmOrientationvertical: o
objeto disposto verticalmente; e 1- fmOrientationHorizontal: o objeto disposto
horizontalmente.
O valor padro desta propriedade -1- fmOrientationAuto.
ProportionalThumb: A propriedade ProportionalThumb especifica se o
tamanho da caixa de rolagem igual a dimenso do objeto. Se a propriedade estiver
configurada para True, a caixa da Barra de Rolagem tem a mesma dimenso do
objeto. Caso contrrio, se for dimensionado o objeto, a caixa de rolagem permanece
com o tamanho original.
E3 - Scripts - Manual de Referncia
Propriedades 289
O valor padro desta propriedade True.
SmallChange: A propriedade SmallChange especifica a quantidade de
movimento que ocorre quando o usurio clica em uma seta de rolagem no objeto.O
valor padro desta propriedade 1.
Value: Nmero inteiro entre os valores definidos pelas propriedades Min e Max.
Indica a posio inicial da barra de rolagem. No aceita valores menores que o valor
de Min, ou maiores que o valor de Max.
6.11.8. Propriedades do Boto ncremento-Decremento
Delay: Especifica um tempo de espera para o objeto. A propriedade Delay afeta a
durao de tempo entre os eventos SpinUp, SpinDown e Change consecutivos,
gerados quando o usurio clica e mantm pressionada O Boto Incremento-
Decremento. O primeiro evento ocorre imediatamente. O tempo de espera at a
segunda ocorrncia do evento de cinco vezes o valor especificado na propriedade
Delay. Aps o tempo inicial, o intervalo entre os eventos o valor especificado para
Delay.
O valor padro de Delay 50 ms. Isto significa que o objeto inicia o primeiro evento
depois de 250 ms (5 vezes o valor especificado) e inicia cada evento subseqente
depois de 50 ms.
Max: A propriedade Max utilizada para determinar o limite mximo do objeto.
Min: A propriedade Min utilizada para determinar o limite mximo do objeto.
Orientation: A propriedade Orientation utilizada para determinar a orientao
do objeto na Tela. As opes disponveis para esta propriedade so as seguintes: -1-
fmOrientationAuto: determina automaticamente a orientao com base nas
dimenses do objeto, isto , conforme ele foi criado; 0- fmOrientationvertical: o
objeto disposto verticalmente; e 1- fmOrientationHorizontal: o objeto disposto
horizontalmente.
O valor padro desta propriedade -1- fmOrientationAuto.
SmallChange: A propriedade SmallChange especifica a quantidade de
movimento que ocorre quando o usurio clica em uma seta de rolagem no objeto. O
valor padro desta propriedade 1.
E3 - Scripts - Manual de Referncia
290 Propriedades
Value: Nmero inteiro entre os valores definidos pelas propriedades Min e Max.
Indica a posio inicial do incremento ou decremento. No aceita valores menores
que o valor de Min, ou maiores que o valor de Max.
6.11.9. Propriedades do Editor de Texto
AutoSize: A propriedade AutoSize ajusta a largura do texto, caso a rea
disponvel para o mesmo ultrapasse o tamanho do objeto. Para o objeto Editor de
Texto (Text Box), quando a propriedade estiver configurada para True, a largura do
texto reajustada para a mesma do objeto. O valor padro desta propriedade False.
NOTA: Recomenda-se evitar o uso da propriedade AutoSize com um Editor de
Texto vazio que tambm utilize as propriedades Multiline e WordWrap. Quando o
usurio digita um texto em um Editor de Texto com essas propriedades, ele
automaticamente se dimensionar como uma caixa longa e estreita, como um
caractere de largura e uma linha de texto de comprimento.
AutoTab: A propriedade AutoTab habilita/desabilita a tabulao automtica no
objeto. Se a propriedade estiver configurada para True, a tabulao automtica
ocorre. Caso contrrio, no utilizada.
Aps o usurio digitar o nmero mximo de caracteres em um objeto (utilizando a
propriedade MaxLength), o foco se move automaticamente para o prximo objeto da
ordem de tabulao, quando estes caracteres forem atingidos. Por exemplo, quando
se quer que um Editor de Texto exiba dados de estoque que possuam sempre cinco
caracteres, pode-se usar a propriedade MaxLength para especificar o nmero
mximo de caracteres a serem introduzidos no objeto e a propriedade AutoTab para
tabular automaticamente para o prximo objeto depois que o usurio digitar cinco
caracteres.
AutoWordSelect: Habilita/desabilita a seleo automtica de palavras no objeto.
Se esta propriedade estiver configurada para True, a palavra indicada selecionada
no texto mais o espao seguinte, caso voc tenha selecionado parte dela. Caso
contrrio, somente o caractere indicado na palavra selecionado.
E3 - Scripts - Manual de Referncia
Propriedades 291
BackStyle: A propriedade BackStyle define o estilo do plano de fundo para os
objetos. As opes disponveis para esta propriedade so as seguintes: 0-
fmBackStyleTransparent: define o objeto como transparente, isto , nenhum fundo
deste objeto ser desenhado; e 1 - fmBackStyleOpaque: define o objeto como
opaco, isto , o fundo ser desenhado (valor padro).
NOTA: Esta propriedade no afeta a transparncia de bitmaps. Voc deve usar um
editor de figura como o Paintbrush, por exemplo, para tornar um bitmap
transparente. Nem todos os objetos ActiveX suportam bitmaps transparentes.
BorderColor: Esta propriedade determina a cor da borda que ser aplicada no
objeto. Com esta propriedade, possvel aplicar a cor padro ou personaliz-la
atravs da sua edio. Para que esta propriedade seja aplicvel, necessrio que a
propriedade BorderStyle esteja configurada para 1 - fmBorderStyleSingle. O valor
padro desta propriedade preto (RGB (0,0,0)).
BorderStyle: A propriedade BorderStyle determina o estilo de borda que ser
aplicada ao objeto. As opes disponveis so: 0-fmBorderStyleNone: sem borda;
e 1-fmBorderStyleSingle: com borda simples.
CanPaste: A propriedade CanPaste especifica se a rea de transferncia contm
os dados aos quais o objeto d suporte. Se a opo estiver configurada para True, o
objeto pode receber informaes coladas da rea de transferncia. Se os dados da
rea de transferncia estiverem em um formato ao qual o objeto no d suporte, a
propriedade CanPaste ser False. Por exemplo, se voc tentar colar um bitmap em
um objeto que s d suporte a texto, CanPaste ser False.
Esta propriedade acessvel apenas em tempo de execuo.
CurLine: Especifica a linha corrente do objeto, ou seja, a linha que contm o
ponto de insero de texto. O nmero da primeira linha 0. O valor padro desta
propriedade 0.
CurTargetX: Retorna a posio horizontal de insero de um texto no objeto.
Esta posio medida em unidades himtricas (um himetro 0,0001 do metro).
Voc pode usar CurTargetX e CurX para mover o ponto de insero de um texto
conforme o usurio percorre pelo contedo do objeto. Quando o usurio move o
ponto de insero para outra linha do texto, a propriedade CurTargetX especifica a
posio mais indicada para o ponto de insero do texto desejado. A propriedade
CurX definida neste valor, se a linha do texto for maior que o valor de
CurTargetX. Caso contrrio, a propriedade CurX definida como o final da linha do
texto.
E3 - Scripts - Manual de Referncia
292 Propriedades
Esta propriedade acessvel apenas em tempo de execuo.
CurX: A propriedade CurX especifica a posio atual horizontal do ponto de
insero no objeto. Esta propriedades aplicada num objeto que possua vrias
linhas, isto , a propriedade Multiline est habilitada. O valor de retorno vlido
quando o objeto possui o foco. Voc pode usar a propriedade Multiline e a
propriedade CurX para posicionar o ponto de insero do texto conforme o usurio
rola pelo contedo no objeto. Quando o usurio move o ponto de insero para uma
outra linha de texto rolando o contedo do objeto, a propriedade CurTargetX
especifica a posio desejada para o ponto de insero. A propriedade CurX
definida com este valor se a linha de texto for maior do que o valor de CurTargetX.
Caso contrrio, CurX definido no fim da linha de texto. Esta propriedade
acessvel apenas em tempo de execuo.
DragBehavior: Habilita/desabilita o recurso de arrastar e soltar um texto no
contedo do objeto. As opes disponveis para esta propriedade so as seguintes: 0-
fmDragBehaviorDisabled: no permite a ao de arrastar e soltar o texto no
contedo do objeto; e 1- fmDragBehaviorEnabled: permite a ao de arrastar e
soltar o texto no contedo do objeto. O valor padro desta propriedade 0.
NOTA: A propriedade DragBehavior no tem efeito se a propriedade Style estiver
configurada para 2.
EnterFieldBehavior: Esta propriedade controla a forma como o contedo do
texto selecionado na rea de edio, quando se pressiona a tecla [Tab| no objeto e
no quando o objeto recebe o foco como um resultado do mtodo SetFocus(). As
opes disponveis para esta propriedade so as seguintes:
0-fmEnterFieldBehaviorSelectAll (valor padro): seleciona todo o contedo do
texto quando a tecla [Tab| pressionada no objeto; e
1-fmEnterFieldBehaviorRecallSelection: deixa a seleo inalterada.
EnterKeyBehavior: Define o efeito da tecla [Enter| no objeto. Se esta
propriedade estiver configurada para True, ao pressionar a tecla [Enter|, uma nova
linha criada na rea de edio do texto no objeto. Caso contrrio, ao pressionar a
tecla [Enter|, o foco passado para o prximo objeto da ordem de tabulao. Isto
tambm ocorre se a propriedade Multiline estiver configurada para False,
independente do valor da propriedade EnterKeyBehavior.
A combinao das teclas [CTRL|+[Enter| tambm dependem do valor da
propriedade Multiline. Se esta propriedade estiver configurada para True, ao
pressionar estas teclas, uma nova linha criada na rea de edio do texto do objeto,
independente do valor da propriedade EnterKeyBehavior. Se a propriedade for
False, as teclas no tero efeito sobre o texto.
E3 - Scripts - Manual de Referncia
Propriedades 293
Font: A propriedade Font utilizada para determinar a fonte do objeto. Esta
propriedade no pode ser utilizada em scripts e/ou associaes, sendo configurada
unicamente via Studio.
HideSelection: A propriedade HideSelection especifica se o texto selecionado
continua em destaque quando um objeto no tem mais o foco. Se a propriedade
estiver configurada para True, o texto selecionado no est em destaque, ao menos
que o objeto tenha o foco. Caso contrrio, o texto selecionado sempre aparece em
destaque. O valor padro desta propriedade True.
IMEMode: A propriedade IMEMode especifica o modo IME de um objeto. Essa
propriedade aplica-se apenas em aplicativos escritos em idiomas asiticos (chins
simplificado, chins tradicional, coreano e japons) e ignorada em outros
aplicativos. Foi mantida por motivos de compatibilidade com a especificao padro
dos objetos Microsoft Forms. As opes disponveis so as seguintes:
Opes disponveis para IMEMode
OPO DESCRIO
0- fm!NENodeNoControl No controla IME (padro).
1- fm!NENodeOn IME ativado.
2- fm!NENodeOff IME desativado. Modo ingls.
3- fm!NENodeDisable IME desativado. O usurio no pode ativar IME
pelo teclado.
+- fm!NENodeHiragana IME ativado com modo Hiragana de largura total.
5- fm!NENodeKatakanaFull IME ativado com modo Katakana de largura total.
6- fm!NENodeKatakana IME ativado com modo Katakana de meia
largura.
7- fm!NENodeAlphaFull IME ativado com modo Alfanumrico de largura
total.
8- fm!NENodeAlpha IME ativado com modo Alfanumrico de meia
largura.
9- fm!NENodeHangulFull IME ativado com modo Hangul de largura total.
10- fm!NENodeHangul IME ativado com modo Hangul de meia largura.
11-fm!NENodeHanziFull IME ativado com modo Hanzi de largura total
12-fm!NENodeHanzi IME ativado com modo Hanzi de meia largura.

IntegralHeight: A propriedade IntegralHeight ajusta a altura da rea de edio
do texto, caso a rea disponvel para o mesmo ultrapasse o tamanho do objeto. Se
esta propriedade estiver configurada para True, a altura da rea de edio do texto
reajustada para coincidir com o tamanho atual o objeto, permitindo assim a exibio
completa do contedo do texto. Caso contrrio, a rea de edio do texto continua
com seu tamanho original. Se os textos so maiores que o espao disponvel, estes
no so exibidos no objeto.
E3 - Scripts - Manual de Referncia
294 Propriedades
LineCount: A propriedade LineCount retorna o nmero de linhas do objeto. Esta
propriedade acessvel apenas em tempo de execuo.
Locked: A propriedade Locked habilita/desabilita a edio do objeto. Se esta
propriedade estiver configurada para True, a edio no permitida. Caso contrrio,
possvel editar o objeto. Os valores configurados na propriedade Enabled
influenciam o comportamento de Locked. Para maiores detalhes, consulte a
propriedade Enabled. O valor padro desta propriedade False.
MaxLength: A propriedade MaxLength determina o nmero mximo de
caracteres no objeto. Configurando esta propriedade como 0, no h limite de
caractere no objeto.
Multiline: A propriedade Multiline indica se o texto ter mltiplas linhas (True)
ou ser uma caixa de texto simples (False). Isto pode ser visualizado quando o
objeto Viewer est em execuo. O valor padro desta propriedade False.
PasswordChar: Converte o texto do objeto para um caractere especial
configurado na propriedade. Utilize esta propriedade para proteger informaes
sensveis, como senhas ou cdigos de segurana. O valor de PasswordChar o
caractere (normalmente um asterisco) que aparece em um objeto, ao invs dos
caracteres reais que o usurio digita. Se no for especificado um caractere, o
controle exibe os caracteres que o usurio digita.
ScrollBars: Especifica se o objeto possui barras de rolagem verticais, horizontais
ou ambas. As opes disponveis so as seguintes: 0- fmScrollBarNone: no exibe
barras de rolagem; 1- fmScrollBarHorizontal: exibe uma barra de rolagem
horizontal; 2- fmScrollBarvertical: exibe uma barra de rolagem vertical.
O valor padro desta propriedade 0- fmScrollBarNone.
SelectionMargin: Habilita/desabilita a margem de seleo do objeto. Se esta
propriedade estiver configurada para True, ao clicar na margem do objeto, o texto
ser selecionado. Caso contrrio, ao clicar na margem o texto no ser selecionado.
NOTA: Se a propriedade SelectionMargin estiver configurada para True quando o
objeto for impresso, a margem de seleo tambm ser impressa.
SelLength: Retorna o nmero de caracteres selecionados no objeto. Esta
propriedade acessvel apenas em tempo de execuo.
SelStart: Indica o ponto inicial do texto selecionado ou o ponto de insero se
nenhum texto for selecionado. Esta propriedade acessvel apenas em tempo de
execuo.
E3 - Scripts - Manual de Referncia
Propriedades 295
SelText: Retorna o texto selecionado no objeto. Esta propriedade acessvel
apenas em tempo de execuo.
SpecialEffect: A propriedade SpecialEffect especifica a aparncia de um objeto.
As opes disponveis para esta propriedade so as seguintes:
Opes disponveis para SpecialEffect
OPO DESCRIO
0- fmSpecialEffectFlat O objeto aparece plano e possui um destaque na
borda, uma alterao de cor ou ambos.
1- fmSpecialEffectRaised O objeto possui um destaque na parte superior
esquerda e uma sombra na parte inferior direita. O
objeto parece estar em relevo.
2- fmSpecialEffectSunked O objeto possui uma sombra na parte superior
esquerda e um destaque na parte inferior direita. O
objeto e a sua borda parecem estar afundados na
Tela.
3- fmSpecialEffectEtchet A borda parece estar esculpida ao redor da
extremidade do objeto.
6- fmSpecialEffectBump O objeto possui uma cresta na parte inferior direita
e parece plano na parte superior esquerda.

TabKeyBehavior: Determina se as tabulaes so permitidas na regio de
edio. Se a propriedade estiver configurada para True, ao pressionar a tecla TAB,
inserido um caractere de espaamento na regio de edio. Caso contrrio, ao
pressionar TAB, o foco passado para o prximo objeto na ordem de tabulao.
Text: retorna o texto sendo digitado na opo selecionada. Esta propriedade
acessvel apenas em tempo de execuo.
TextAlign: Especifica como o texto alinhado no objeto. As opes disponveis
so as seguintes: 1- fmTextAlignLeft: alinha o texto com a extremidade esquerda do
objeto; 2- fmTextAlignCenter: centraliza o texto com a extremidade direita do
objeto; 3- fmTextAlignRight: alinha o texto com a extremidade direita do objeto.
TextLength: Retorna o nmero de caracteres digitados no objeto. Esta
propriedade acessvel apenas em tempo de execuo.
Value: o texto na rea de edio.
WordWrap: Habilita/desabilita uma quebra de linha no texto, caso a rea
disponvel para o texto ultrapasse os limites determinados no objeto. Para que esta
E3 - Scripts - Manual de Referncia
296 Propriedades
propriedade funcione, a propriedade Multiline deve ser obrigatoriamente igual a
True.
6.11.10. Propriedades do Boto Liga-Desliga
Accelerator: Define ou recupera a tecla aceleradora do objeto. Esta tecla
aceleradora uma tecla de atalho que usada em conjunto com a tecla [Alt], d o foco
ao objeto. O valor padro desta propriedade vazio.
Alignment: A propriedade Alignment especifica a posio do objeto relativa a
sua legenda. As opes disponveis para esta propriedade so as seguintes: 0-
fmAlignmentLeft: coloca a legenda esquerda do objeto; e 1- fmAligmentRight:
coloca a legenda direita do objeto. Esta propriedade acessvel apenas em tempo
de execuo.
AutoSize: A propriedade AutoSize ajusta a largura do texto, caso a rea
disponvel para o mesmo ultrapasse o tamanho do objeto. Para o objeto Boto Liga-
Desliga (Toggle Button), quando a propriedade estiver configurada para True, o
texto redimensionado para coincidir com o tamanho atual o objeto, permitindo
assim a sua exibio completa.
BackStyle: A propriedade BackStyle define o estilo do plano de fundo para os
objetos. As opes disponveis para esta propriedade so as seguintes: 0-
fmBackStyleTransparent: define o objeto como transparente, isto , nenhum fundo
deste objeto ser desenhado; e 1 - fmBackStyleOpaque: define o objeto como
opaco, isto , o fundo ser desenhado (valor padro).
NOTA: Esta propriedade no afeta a transparncia de bitmaps. Voc deve usar um
editor de figura como o Paintbrush, por exemplo, para tornar um bitmap
transparente. Nem todos os objetos ActiveX suportam bitmaps transparentes.
Caption: Define o texto que ser mostrado no objeto.
Font: A propriedade Font utilizada para determinar a fonte do objeto. Esta
propriedade no pode ser utilizada em scripts e/ou associaes, sendo configurada
unicamente via Studio.
GroupName: A propriedade GroupName utilizado para criar um grupo de
objetos mutuamente exclusivos. Esta propriedade acessvel apenas em tempo de
execuo.
NOTA: Esta propriedade no utilizada no E3 e foi mantida por motivos de
compatibilidade com a especificao padro dos objetos Microsoft Forms.
E3 - Scripts - Manual de Referncia
Propriedades 297
Locked: A propriedade Locked habilita/desabilita a edio do objeto. Se esta
propriedade estiver configurada para True, a edio no permitida. Caso contrrio,
possvel editar o objeto. Os valores configurados na propriedade Enabled
influenciam o comportamento de Locked. Para maiores detalhes, consulte a
propriedade Enabled. O valor padro desta propriedade False.
Picture: A propriedade Picture especifica a figura (bitmap) atribuda ao objeto.
Um arquivo com imagem pode ser selecionado de duas maneiras: atravs da Lista de
Propriedades; ou via scripts, utilizando-se a funo LoadPicture para especificar o
caminho e o nome do arquivo que contm a figura. Para remover a figura, clique o
valor da propriedade Picture e pressione a tecla Delete. A tecla Backspace (tecla de
espao do teclado) no remove a figura. Exemplo:
Sub CommandButton1_Click()
Screen.Item("CheckBox1").Picture =LoadPicture("C:\aba.gif")
End Sub
PicturePosition: A propriedade PicturePosition especifica a posio da figura
atribuda ao objeto em relao a sua legenda. As opes disponveis para esta
propriedades so as seguintes:
E3 - Scripts - Manual de Referncia
298 Propriedades
Opes disponveis para PicturePosition
OPO DESCRIO
0- fmPicturePositionLeftTop A figura aparece esquerda de sua legenda.
A legenda alinhada com a parte superior da
figura.
1- fmPicturePositionLeftCenter A figura aparece esquerda da legenda. A
legenda centralizada relativamente
imagem.
2- fmPicturePositionLeftBotton A figura aparece esquerda da legenda. A
legenda alinhada com a parte inferior da
figura.
3- fmPicturePositionRightTop A figura aparece direita da legenda. A
legenda alinhada com a parte superior da
figura.
+- fmPicturePositionRightCenter A figura aparece direita da legenda. A
legenda centralizada relativamente figura.
5- fmPicturePositionRightBotton A figura aparece direita da legenda. A
legenda alinhada com a parte inferior da
figura.
6- fmPicturePositionAboveLeft A figura aparece acima da legenda. A
legenda alinhada com a extremidade
esquerda da figura.
7- fmPicturePositionAboveCenter A figura aparece acima da legenda. A
legenda centralizada abaixo da figura
(padro).
8- fmPicturePositionAboveRight A figura aparece acima da legenda. A
legenda alinhada com a extremidade direita
da figura.
9- fmPicturePositionBelowLeft A figura aparece abaixo da legenda. A
legenda alinhada com a extremidade
esquerda da figura.
10- fmPicturePositionBelowCenter A figura aparece abaixo da legenda. A
legenda centralizada acima da figura.
11- fmPicturePositionBelowRight A figura aparece abaixo da legenda. A
legenda alinhada com a extremidade direita
da figura.

E3 - Scripts - Manual de Referncia
Propriedades 299
SpecialEffect: A propriedade SpecialEffect especifica a aparncia de um objeto.
Esta propriedade acessvel apenas em tempo de execuo. As opes disponveis
para esta propriedade so as seguintes:
Opes disponveis para SpecialEffect
OPO DESCRIO
0- fmSpecialEffectFlat O objeto aparece plano e possui um destaque na
borda, uma alterao de cor ou ambos.
1- fmSpecialEffectRaised O objeto possui um destaque na parte superior
esquerda e uma sombra na parte inferior direita. O
objeto parece estar em relevo.
2- fmSpecialEffectSunked O objeto possui uma sombra na parte superior
esquerda e um destaque na parte inferior direita. O
objeto e a sua borda parecem estar afundados na Tela.
3- fmSpecialEffectEtchet A borda parece estar esculpida ao redor da
extremidade do objeto.
6- fmSpecialEffectBump O objeto possui uma cresta na parte inferior direita e
parece plano na parte superior esquerda.

TextAlign: Especifica como o texto alinhado no objeto. As opes disponveis
so as seguintes: 1- fmTextAlignLeft: alinha o texto com a extremidade esquerda do
objeto; 2- fmTextAlignCenter: centraliza o texto com a extremidade direita do
objeto; 3- fmTextAlignRight: alinha o texto com a extremidade direita do objeto.
TripleState: A propriedade TripleState determina at trs estados de valores para
o objeto. Se a propriedade estiver configurada para True, o usurio poder escolher
entre trs opes de estados: Falso, verdadeiro ou Nulo. O valor Nulo exibido
como um boto sombreado. Caso contrrio, o usurio pode escolher entre os valores
False ou True. O valor padro desta propriedade False.
Value: Indica o valor inicial do objeto. Tem comportamento booleano; se True,
o objeto inicia marcado, do contrrio, seu estado inicial no marcado. O valor
padro desta propriedade False.
WordWrap: Habilita/desabilita uma quebra de linha no texto, caso a rea
disponvel para o texto ultrapasse os limites determinados no objeto. Para que esta
propriedade funcione, a propriedade Multiline deve ser obrigatoriamente igual a
True.
E3 - Scripts - Manual de Referncia
300 Propriedades
6.12. Propriedades dos Links
Os Links trazem grande facilidade para criar diversos tipos de associaes, visto que
no necessria a execuo lgica ou via scripts para associar duas variveis
quaisquer. O objeto Links retorna uma coleo das associaes de um objeto
qualquer do E3. A propriedade comum toda a coleo Links Count.
Count: Informa a quantidade de links do objeto. Retorna o valor 0 (zero) se o
objeto no possuir links.
Exemplo:
Sub CommandButton1_Click()
MsgBox Screen.Item("ScrollBar1").Links.Count
End Sub
6.12.1. Propriedades Comuns dos Ob]etos de Conexo {Links}
Para acessar ou modificar uma conexo, so usadas as propriedades e mtodos dos
objetos de conexo (Links). Cada tipo de conexo tem propriedades especficas,
exceto pelas propriedades Property, Source e Type, comuns a todos os tipos de
conexo.
Property: Especifica o nome da propriedade que est conectada. Ao ser
modificada, permite deslocar a conexo para outra propriedade do mesmo objeto.
Exemplo:
Sub CommandButton1_Click()
dim bind
set bind = Screen.Item("TableBind").Links.Item(1)
bind.Property = "Caption"
End Sub
Source: Especifica a fonte da conexo, que pode ser o nome de outro objeto da
aplicao ou uma expresso mais complexa acessando vrios objetos.
Exemplo:
Sub CommandButton25_Click()
dim bind
set bind = Screen.Item("TableBind").Links.Item(1)
bind.Source = "Dados.TagDemo1.Value"
End Sub
E3 - Scripts - Manual de Referncia
Propriedades 301
Type: Esta propriedade apenas de leitura e informa o tipo de conexo. Os
valores disponveis so os seguintes:
Opes disponveis para Type
OPO DESCRIO
0- bsSimples Conexo simples.
1- bsSimpleBiDir Conexo bidirecional.
2- bsAnalog Conexo analgica.
3- bsAnimation Conexo digital.
+- bsTable Conexo por tabela.
5- bsReverse Conexo reversa.

Exemplo:
Sub CommandButton1_Click()
dim bind
set bind = Screen.Item("TableBind").Links.Item(1)
MsgBox bind.Type & " - Conexo por Tabela"
End Sub
6.12.2. Propriedades dos Links 8imples, Bidirecional e Reverso
As conexes simples, bidirecionais e reversas so implementadas por um mesmo
objeto. De acordo com o valor destas propriedades, determinado qual desses trs
tipos de conexo se trata.
Bidirectional: True se a conexo for bidirecional; False se a conexo for reversa
ou simples. Exemplo:
Sub CommandButton29_Click()
dim bind
set bind = Screen.Item("SimpleBind").Links.Item(1)
bind.BiDirectional = True
End Sub
Reverse: True se a conexo for reversa; False se a conexo for bidirecional ou
simples. Exemplo:
Sub CommandButton29_Click()
dim bind
set bind = Screen.Item("SimpleBind").Links.Item(1)
bind.Reverse = True
End Sub
E3 - Scripts - Manual de Referncia
302 Propriedades
6.12.3. Propriedades da Conexo Digital
BlinkOff: Quando esta propriedade estiver configurada para True, a propriedade
conectada ir alternar periodicamente entre os valores das propriedades OffValue e
BlinkOffValue, caso a fonte retorne False. Exemplo:
Sub BlinkOff_Change()
On Error Resume Next
Dim Bind
Set Bind = Screen.Item("Retangulo1")._
Links.Item("ForegroundColor")
If Bind Is Nothing Then
MsgBox "Retangulo1 is not linked"
Else
MsgBox "Retangulo1 is linked to " & Bind.Source & " "
MsgBox "Changing BlinkOff from " &_
Bind.BlinkOff & " to " & Value
Bind.BlinkOff = Value
End If
End Sub
E3 - Scripts - Manual de Referncia
Propriedades 303
BlinkOffValue: Especifica o valor alternativo a ser assumido periodicamente
pela propriedade quando a expresso da fonte resultar em False, e a propriedade
BlinkOff estiver configurada em True. Exemplo:
Sub BlinkOffValue_Click()
On Error Resume Next
Dim Value
If Application.ShowPickColor_
(Value, ForegroundColor, 400, 300) Then
Dim Bind
Set Bind = Screen.Item("Retangulo1").Links._
Item("ForegroundColor")
if Bind Is Nothing Then
MsgBox "Retangulo1 is not linked"
Else
MsgBox "Retangulo1 is linked to "& Bind.Source & " "
MsgBox "Changing BlinkOffValue from " &_
Bind.BlinkOffValue & " to " & Value
Bind.BlinkOffValue = Value
End If
ForegroundColor = Value
End If
End Sub
BlinkOn: Quando esta propriedade estiver configurada para True, a propriedade
conectada ir alternar periodicamente entre os valores da propriedade OnValue e
BlinkOnValue, caso a fonte retorne True.
E3 - Scripts - Manual de Referncia
304 Propriedades
Exemplo:
Sub BlinkOn_Change()
On error resume next
dim Bind
Set Bind =_
Screen.Item("Retangulo1").Links.Item("ForegroundColor")
if Bind Is Nothing Then
MsgBox "Retangulo1 is not linked"
Else
MsgBox "Retangulo1 is linked to " & Bind.Source & " "
MsgBox "Changing BlinkOn from " & Bind._
BlinkOn & " to " & Value
Bind.BlinkOn = Value
End if
End Sub
BlinkOnValue: Especifica o valor alternativo a ser assumido periodicamente
pela propriedade quando a expresso da fonte resultar em True e a propriedade
BlinkOn estiver configurada para True. Exemplo:
Sub BlinkOnValue_Click()
On Error Resume Next
Dim Value
If Application.ShowPickColor_
(Value, ForegroundColor, 400, 300) Then
Dim Bind
Set Bind = Screen.Item("Retangulo1").Links._
Item("ForegroundColor")
If Bind Is Nothing Then
MsgBox "Retangulo1 is not linked"
Else
MsgBox "Retangulo1 is linked to "& Bind.Source & " "
MsgBox "Changing BlinkOnValue from " &_
Bind.BlinkOnValue & " to " & Value
Bind.BlinkOnValue = Value
End If
ForegroundColor = Value
End If
End Sub
E3 - Scripts - Manual de Referncia
Propriedades 305
OffValue: Especifica o valor assumido pela propriedade quando a expresso da
fonte resultar em False.
Exemplo:
Sub OffValue_Click()
On Error Resume Next
Dim Value
If Application.ShowPickColor_
(Value, ForegroundColor, 400, 300) Then
Dim Bind
Set Bind = Screen.Item("Retangulo1").Links._
Item("ForegroundColor")
if Bind Is Nothing Then
MsgBox "Retangulo1 is not linked"
Else
MsgBox "Retangulo1 is linked to "& Bind.Source & " "
MsgBox "Changing OffValue from " &_
Bind.OffValue & " to " & Value
Bind.OffValue = Value
End If
ForegroundColor = Value
End If
End Sub
E3 - Scripts - Manual de Referncia
306 Propriedades
OnValue: Especifica o valor assumido pela propriedade quando a expresso da
fonte for True.
Exemplo:
Sub OnValue_Click()
On error resume next
Dim Value
If Application.ShowPickColor_
(Value, ForegroundColor, 400, 300) Then
Dim Bind
Set Bind = Screen.Item("Retangulo1").Links._
Item("ForegroundColor")
if Bind Is Nothing Then
MsgBox "Retangulo1 is not linked"
Else
MsgBox "Retangulo1 is linked to "& Bind.Source & " "
MsgBox "Changing OnValue from " &_
Bind.OnValue & " to " & Value
Bind.OnValue = Value
End If
ForegroundColor = Value
End If
End Sub
6.12.4. Propriedades da Conexo Analgica
Atravs de quatro valores especificados, feita uma escala linear entre os valores da
propriedade e os valores da fonte. As propriedades disponveis na conexo analgica
so as seguintes:
DstHiValue: Especifica o valor mximo atingido na propriedade. Exemplo:
Sub DstHiValue_ValueChange()
On Error Resume Next
Dim Bind
Set Bind = Screen.Item("ScrollBar1").Links.Item("Value")
Screen.Item("ScrollBar1").Max = Value
If Bind Is Nothing Then
MsgBox "ScrollBar1 is not linked"
Else
MsgBox "ScrollBar1 is linked to " & Bind.Source & ""
E3 - Scripts - Manual de Referncia
Propriedades 307
MsgBox "Changing DstHiValue from " &_
Bind.DstHiValue & " to " & Value
Bind.DstHiValue = Value
End If
End Sub

DstLoValue: Especifica o valor mnimo atingido na propriedade. Exemplo:
Sub DstLoValue_ValueChange()
On Error Resume Next
Dim Bind
Set Bind = Screen.Item("ScrollBar1").Links.Item("Value")
Screen.Item("ScrollBar1").Min = Value
If Bind Is Nothing Then
MsgBox "ScrollBar1 is not linked"
Else
MsgBox "ScrollBar1 is linked to " & Bind.Source & " "
MsgBox "Changing DstLoValue from " &_
Bind.DstLoValue & " to " & Value
Bind.DstLoValue = Value
End If
End Sub
SrcHiValue: Especifica o valor mximo atingido na fonte. Exemplo:
Sub SrcHiValue_ValueChange()
On error resume next
Dim Bind
Set Bind = Screen.Item("ScrollBar1").Links.Item("Value")
Screen.Item("ScrollBar2").Max = Value
If Bind Is Nothing Then
MsgBox "ScrollBar1 is not linked"
Else
MsgBox "ScrollBar1 is linked to " & Bind.Source & " "
MsgBox "Changing SrcHiValue from " &_
Bind.SrcHiValue & " to " & Value
Bind.SrcHiValue = Value
End If
End Sub
E3 - Scripts - Manual de Referncia
308 Propriedades
SrcLoValue: Especifica o valor mnimo atingido na fonte. Exemplo:
Sub SrcLoValue_ValueChange()
On error resume next
Dim Bind
Set Bind = Screen.Item("ScrollBar1").Links.Item("Value")
Screen.Item("ScrollBar2").Min = Value
If Bind Is Nothing Then
MsgBox "ScrollBar1 is not linked"
Else
MsgBox "ScrollBar1 is linked to " & Bind.Source & " "
MsgBox "Changing SrcLoValue from " &_
Bind.SrcLoValue & " to " & Value
Bind.SrcLoValue = Value
End if
End Sub
NOTA: Caso os valores especificados para as propriedades SrcHiValue e
SrcLoValue sejam iguais, no possvel fazer a escala, e a conexo funcionar como
se fosse uma conexo simples.
6.12.5. Propriedade da Conexo por Tabela
Count: A propriedade Count informa o nmero de linhas da tabela. Esta
propriedade somente de leitura.
Exemplo:
Sub Retangulo1_Click()
Dim Bind
Set Bind = Links.Item("ForegroundColor")
If Bind Is Nothing Then
MsgBox "Associao inexistente"
Else
MsgBox Bind.Count
End If
End Sub
E3 - Scripts - Manual de Referncia
Propriedades 309
6.12.6. Propriedades da Linha da Conexo por Tabela
Blink: Determina que quando a fonte estiver no intervalo desta linha, a
propriedade ir alternar periodicamente entre os valores especificados nas
propriedades Value e BlinkValue.
Exemplo:
Sub CheckBox1_Click()
Screen.Item("Retangulo1").Links.Item("ForegroundColor")._
Item(1).Blink = Value
Screen.Item("Retangulo1").Links.Item("ForegroundColor")._
Item(2).Blink = Value
End Sub

BlinkValue: Especifica o valor alternativo (para piscar) da propriedade a ser
assumido quando a fonte estiver no intervalo especificado na linha, e a propriedade
Blink estiver configurada para True.
Exemplo:
Sub CommandButton1_Click()
Dim Cor
' Escolhe uma cor
Application.ShowPickColor Cor, 0, 100, 100
Screen.Item("Retangulo1").Links.Item("ForegroundColor")._
Item(1).BlinkValue = Cor
End Sub

Max: Especifica o valor mximo da fonte para uma linha da tabela.
Min: Especifica o valor mnimo da fonte para uma linha da tabela.
Exemplo (para Max e Min):
Sub CommandButton1_Click()
Set Bind = _
Screen.Item("Retangulo1").Links.Item("ForegroundColor")
Set Linha1 = Bind.Item(1)
Linha1.Min = 0
Linha1.Max = 20
Set Linha2 = Bind.Item(2)
Linha2.Min = 21
Linha2.Max = 100
End Sub
E3 - Scripts - Manual de Referncia
310 Propriedades
Value: Especifica o valor da propriedade a ser assumido quando a fonte estiver
no intervalo especificado na linha.
Exemplo:
Sub CommandButton1_Click()
Dim Cor
' Escolhe uma cor
Application.ShowPickColor Cor, 0, 100, 100
Screen.Item("Retangulo1").Links.Item("ForegroundColor")._
Item(1).Value = Cor
End Sub
6.13. Propriedades do Viewer
BlinkTime: Define o tempo, em milissegundos, entre cada mudana de estado
quando um objeto tem que piscar (ou seja, toda vez que algum objeto de tela tem
uma associao e marcada a opo Piscar). O valor padro desta propriedade
200 ms.
NOTA: O tempo mnimo de atualizao da tela 55ms; portanto, se esta
propriedade for configurada com tempo inferior a 55ms, a configurao no ter
efeito algum.
CacheEnable: Mantm em memria as Telas j abertas instanciadas no Viewer,
permitindo uma troca mais rpida entre elas. Se a propriedade for habilitada, ento o
cache de Telas tambm habilitado.
Caption: Determina o nome da aplicao que est utilizando o Viewer. O valor
padro desta propriedade vazio.
CenterWindow: Quando habilitada, determina que a janela de visualizao do
Viewer dever iniciar centralizada. Caso contrrio, ser utilizada a configurao
default. O valor padro desta propriedade True.
CloseButton: Se a opo estiver habilitada, o boto [Fechar| habilitado no
Viewer, e possvel utilizar este boto. Caso contrrio, este boto no aparece na
janela. O valor padro desta propriedade True.
DisableTaskSwitching: Se estiver configurada para True, desabilita a troca de
janelas no Viewer. Caso contrrio, a troca de janelas habilitada. O valor padro
desta propriedade False.
E3 - Scripts - Manual de Referncia
Propriedades 311
EnableHeartbeat: Habilita/desabilita o envio de heartbeat (mensagem enviada
em intervalos fixos, que indica que o E3 Server est ativo) entre o Viewer e o
servidor. Caso o Viewer pare de receber as mensagens de heartbeat, sinal de que
algum problema ocorreu, portanto a conexo deve ser abortada. O valor padro desta
propriedade False.
EnableInactivity: Habilita/desabilita a verificao do perodo de inatividade do
usurio. Para maiores informaes, veja o evento OnInactive, do objeto Viewer. O
valor padro desta propriedade False.
EnableZoomMenu: Se estiver configurada como True, habilita a exibio do
menu de configurao do zoom da tela atravs do boto direito do mouse em tempo
de execuo, exceto quando algum script estiver configurado com informao
divergente nos eventos MouseDown() ou MouseUp(). Caso contrrio, o menu no
ser mostrado. O valor padro desta propriedade True.
HeartbeatPeriodMs: Indica o intervalo (em milissegundos) entre as mensagens
de heartbeat enviadas pelo E3 Server. A mensagem de heartbeat sempre enviada
quando o servidor fica o perodo indicado por esta propriedade sem enviar nenhuma
mensagem para o Viewer. O valor padro desta propriedade 2000 (dois segundos).
HeartbeatTimeoutMs: Indica o tempo, em milissegundos, que o Viewer tolera
sem receber nenhuma mensagem do E3 Server. Se este tempo passar, e nenhuma
mensagem for recebida, o Viewer assume que a conexo foi perdida, e inicia o
processo de reconexo. Este tempo deve ser maior que o tempo determinado na
propriedade HeartbeatPeriodMs, de preferncia maior que o dobro. O valor padro
desta propriedade 5000 (cinco segundos).
InactivityTime: Define o tempo mximo de espera por um evento de mouse ou
teclado antes do perodo de inatividade, em minutos. Para maiores informaes, veja
o evento OnInactive do objeto Viewer. O valor padro desta propriedade 5 (cinco)
minutos. Exemplo:
Sub CommandButton3_Click()
MsgBox "A aplicao ficar inativa em " & _
Application.InactivityTime & " minuto(s)."
End Sub
InitialScreen: Indica a Tela/Quadro inicial que dever ser mostrada quando o
Viewer chamado. Atravs da propriedade WindowStyle, possvel determinar se a
janela dever iniciar maximizada, janelada ou minimizada. O valor padro desta
propriedade TelaInicial.
E3 - Scripts - Manual de Referncia
312 Propriedades
IsViewerReadOnly: Se True, indica que o Viewer est no modo Somente
Leitura (acesso restrito).
LoginRetries: Especifica o nmero de retentativas de login do Viewer, isto ,
quantas vezes o dilogo de login ser exibido alm da primeira vez. O valor padro
desta propriedade 2.
MaximizeButton: Se a opo estiver habilitada (True), o boto [Naximizar|
habilitado no Viewer, e possvel utilizar esse boto. Caso contrrio, esse boto no
aparece na janela. O valor padro desta propriedade True.
MinimizeButton: Se a opo estiver habilitada (True), o boto [Ninimizar]
habilitado no Viewer, e possvel utilizar esse boto. Caso contrrio, esse boto no
aparece na janela. O valor padro desta propriedade True.
ReconnectDialogDelaySec: Indica o nmero de segundos em que o Viewer ir
esperar durante uma possvel reconexo ao servidor antes de mostrar uma mensagem
avisando o usurio desta ao (esta propriedade no afeta a primeira conexo). Se
for igual a 0, a mensagem de reconexo sempre ser mostrada. Para evitar que a
mensagem seja mostrada, recomendvel colocar um nmero muito grande (1
bilho, por exemplo).
NOTA: Quando a reconexo ocorre em silncio, todas as janelas do Viewer ativo
ficam desabilitadas e uma ampulheta mostrada indicando que o aplicativo est
indisponvel. Durante o tempo da reconexo, no possvel o usurio cancelar o
processo.
TargetDPIX: Define o valor de pontos por polegada, na horizontal, do monitor
do micro de destino. O valor padro desta propriedade -1, que faz com que seja
assumido o valor do micro atual.
TargetDPIY: Define o valor de pontos por polegada, na vertical, do monitor do
micro de destino. O valor padro desta propriedade -1, que faz com que seja
assumido o valor do micro atual.
TargetMarginX: Define o nmero de pixels que devem ser descontados da
resoluo horizontal da tela (a rea til do Viewer). O valor padro da propriedade
-1, que faz com que seja assumida a configurao da janela do Viewer (com/sem
barra de ttulo, com/sem borda) em conjunto com a configurao do micro atual
(largura de borda e barra de ttulo definidas pelo Windows).
TargetMarginY: Define o nmero de pixels que devem ser descontados da
resoluo vertical da tela (a rea til do Viewer). O valor padro da propriedade -1,
que faz com que seja assumida a configurao da janela do Viewer (com/sem barra
E3 - Scripts - Manual de Referncia
Propriedades 313
de ttulo, com/sem borda) em conjunto com a configurao do micro atual (largura
de borda e barra de ttulo definidas pelo Windows).
TargetResolutionX: Define a resoluo horizontal da tela para qual esta
aplicao est destinada (em pixels). O valor padro da propriedade -1, que faz
com que seja assumida a resoluo do micro atual.
TargetResolutionY: Define a resoluo vertical da tela para qual esta aplicao
est destinada (em pixels). O valor padro da propriedade -1, que faz com que seja
assumida a resoluo do micro atual.
TitleBar: Se a opo estiver habilitada (True), a barra de ttulo do Viewer
mostrada, conforme as especificaes da propriedade Caption. Do contrrio, ela
escondida. O valor padro desta propriedade True.
User: Contm o nome do usurio que est utilizando o Viewer. Esta propriedade
somente para leitura.
WindowHeight: Determina a altura da janela do Viewer, em pixels. O valor
padro dessa propriedade 300.
WindowStyle: Define o estilo inicial de janela do Viewer. As opes disponveis
so: 0-Naximized: inicia o Viewer maximizado; 1-Windowed: inicia o Viewer
janelado; e 2-Ninimized: inicia o Viewer minimizado.
WindowWidth: Determina a largura da janela do Viewer, em pixels. O valor
padro dessa propriedade 400.
6.14. Propriedades do Banco de Dados
ConnectionActive: Mostra o status da conexo principal do Banco de Dados. Se
a conexo estiver ativa, a propriedade tem o valor True. Caso contrrio, tem o valor
False.
EnableLocalCreation: Define se o Viewer criar a conexo do banco de dados
localmente ou no. A conexo local ser utilizada somente para a criao de
consultas. Se a propriedade estiver habilitada (True), o Viewer tenta criar a conexo
localmente, e se isso no for possvel, busca a consulta pedida no servidor. O valor
padro desta propriedade False.
E3 - Scripts - Manual de Referncia
314 Propriedades
EnableSynchronization: Indica ao E3, se habilitada (True), que ele tambm
deve fazer a gravao dos dados em uma segunda base simultaneamente, para
permitir uma maior segurana. Se a propriedade estiver habilitada e houver um
servidor StandBy, o E3 faz a sincronizao entre os bancos de dados dos dois
servidores. O valor padro desta propriedade False, ou seja, a sincronia est
desabilitada.
NetLibrary: Configura o tipo de biblioteca de rede do Banco de Dados. As
opes disponveis so:
Opes disponveis para NetLibrary
OPO DESCRIO
0-Default Biblioteca do tipo padro.
1-NamedPipes Biblioteca do tipo Named Pipes.
2-Tcp!p Biblioteca do tipo Winstock TCP/IP.
3-Spx!px Biblioteca do tipo SPX/IPX.
+-Banyanvines Biblioteca do tipo Banyan Vines.
5-NultiProtocol Biblioteca do tipo Multi-protocolo (RPC).
NOTA: a propriedade NetLibrary somente est disponvel no Banco de Dados do
tipo SQL.
ReconnectDelay: A propriedade ReconnectDelay determina o tempo de espera
(em milissegundos) para o sistema fazer uma tentativa de restabelecer uma conexo
perdida com o banco de dados. O valor padro desta propriedade 2000 (2
segundos).
SourceDatabase: Caso o Banco de Dados seja Access, este o nome do arquivo
.mdb. Caso o Banco de Dados seja SQL, este o nome do servidor SQL
concatenado com o Banco escolhido no formato Servidor/Banco. Caso o Banco de
Dados seja Oracle, este o nome da conexo criada. Esta propriedade somente
para leitura.
SourceType: Indica o banco de dados utilizado pelo objeto. As opes
disponveis so: 0-stOracle: Banco de dados Oracle; 1-stAccess: Banco de dados
Access; 2-stSQLServer: Banco de dados SQL Server. Exemplo:
Sub Grupo1_Click()
op = Application.SelectMenu("Oracle|Access|SQLServer")
If op = 1 Then
Application.GetObject("ServidorDB").SourceType = 0
MsgBox "Est sendo usado um servidor Oracle."
ElseIf op = 2 Then
Application.GetObject("ServidorDB").SourceType = 1
E3 - Scripts - Manual de Referncia
Propriedades 315
MsgBox "Est sendo usado um servidor Access."
ElseIf op = 3 Then
Application.GetObject("ServidorDB").SourceType = 2
MsgBox "Est sendo usado um servidor Access."
End If
End Sub
TimeOutCommand: Contm o tempo de espera para qualquer operao do
banco de dados, antes que o sistema gere um erro por timeout. O valor padro 180
(3 minutos).
TimeOutConnection: Contm o tempo de espera pela realizao da conexo
com o Banco de Dados, antes que o sistema gere um erro por timeout. O valor
padro 15 segundos.
TotalFailedWrites: Contm o nmero total de erros em operaes de banco de
dados que aconteceram at o momento.
UserName: Login utilizado para se conectar ao Banco de Dados. Esta
propriedade somente para leitura.
UseTransaction: Define se o DBServer ir utilizar as transaes do banco de
dados ou no. Se True, cada bloco de operaes (200 operaes) de DB (operaes
do Histrico, Storage, Formulas e Alarmes) sero executadas de uma vez s, ou seja,
em uma transao.
6.15. Propriedades dos Alarmes
6.15.1. Propriedades da Area de Alarmes
ActiveAlarms: Determina o nmero de alarmes ativos dentro da rea do sistema.
Se esta propriedade estiver com valor 0, os alarmes que esto desativados sero
listados atravs da propriedade ActiveNACKAlarms. Esta propriedade somente de
leitura. O valor padro desta propriedade 0.
ActiveHighAlarms: Indica o nmero de alarmes ativos com severidade alta. Esta
propriedade somente de leitura.
ActiveHighNACKAlarms: Indica o nmero de alarmes no-reconhecidos com
severidade alta. Esta propriedade somente de leitura.
E3 - Scripts - Manual de Referncia
316 Propriedades
ActiveLowAlarms: Indica o nmero de alarmes ativos com severidade baixa.
Esta propriedade somente de leitura.
ActiveLowNACKAlarms: Indica o nmero de alarmes no-reconhecidos com
severidade baixa. Esta propriedade somente de leitura.
ActiveMedAlarms: Indica o nmero de alarmes ativos com severidade mdia.
Esta propriedade somente de leitura.
ActiveMedNACKAlarms: Indica o nmero de alarmes no-reconhecidos com
severidade mdia. Esta propriedade somente de leitura.
ActiveNACKAlarms: Indica o nmero de alarmes que esto sem
reconhecimento dentro da rea. Esta propriedade somente de leitura.
Alarm: Estabelece a existncia alarmes ativos dentro da rea. Se a opo estiver
True, o sistema tem pelo menos um alarme ativo dentro da rea, e a propriedade
ActiveAlarms far a leitura no sistema, indicando a quantidade de alarme ativos.
Caso contrrio, a propriedade ActiveNACKAlarms far a leitura dos alarmes sem
reconhecimento. Esta propriedade somente de leitura.
AlarmVerify: Habilita a verificao de todos os alarmes dentro da rea. Depois
de habilitada esta verificao (True), se a propriedade ActiveAlarms possuir valor
maior que 0, o sistema verifica tanto os alarmes ativos quanto os sem
reconhecimento, listando estes ltimos pela propriedade ActiveNACKAlarms. Esta
propriedade til para evitarmos o efeito de avalanche de alguns sistemas, onde o
acontecimento de um evento gera uma grande quantidade de alarmes
correlacionados.
6.15.2. Propriedades da Fonte de Alarmes
NOTA: as propriedades relativas a cada tipo de alarme podem ser acessadas
diretamente por scripts e associaes, bem como visualizadas na Lista de
Propriedades do objeto, no mais sendo obrigatria sua edio via mtodo
GetAlarm().
E3 - Scripts - Manual de Referncia
Propriedades 317
ActiveNACKAlarm: Quando configurado para True, indica que a fonte de
alarme no foi reconhecida desde a ltima a ativao. Essa propriedade somente de
leitura.
Alarm: Quando configurado para True, indica que o alarme est em condio
ativa.
AlarmVerify: Quando configurado para True, habilita a verificao da fonte de
alarmes (ou seja, a gerao de alarmes).
CurrentSeverity: Indica a ltima severidade do alarme ativo, a saber:
0 = severidade alta; 1 = severidade mdia; 2 = severidade baixa.
CurrentSubConditionName: Determina o nome da ltima condio de alarme
ativa. As opes disponveis para esta propriedade so:
Opes disponveis para CurrentSubConditionName
OPO DESCRIO
BN Alarme Banda Morta
D!G Alarme Digital
Tv Alarme Taxa de Variao
LOLO Alarme Analgico na faixa LOLO
LO Alarme Analgico na faixa LO
H! Alarme Analgico na faixa HI
H!H! Alarme Analgico na faixa HIHI
DoubleAckRequired: Quando configurada como True, indica que o alarme pode
ser reconhecido tanto quando est ativo como quando passa a inativo, ou seja, pode
ser reconhecido duplamente. Quando configurada como False, indica que o alarme
s pode ser reconhecido uma vez, e ao ser reconhecido sai da lista de alarmes.
Alarmes que no necessitem reconhecimento (propriedade AckRequired) no
possibilitam esta personalizao. Aplicaes anteriores verso 2.5. vm com esta
propriedade configurada como False.
Event: Quando configurada como True, indica que o alarme do tipo evento.
Um alarme do tipo evento, ao ser ativado, reconhecido pelo usurio System.
Portanto, ao ser reconhecido nada acontece (no tem efeito algum), assim como no
incrementa o nmero de alarmes ativos nem o nmero de alarmes no-reconhecidos.
No pode ser modificada em tempo de execuo.
Format: A propriedade Format especifica que tipo de formato ser atribudo ao
objeto. Permite mudar a forma como os dados so apresentados sem mudar o valor
que existe por trs deles. Esta propriedade pode ser editada manualmente ou
configurada atravs da janela de formatao. Seu uso semelhante aos formatadores
usados nas planilhas de dados, seguindo a mesma sintaxe bsica. So suportados os
seguintes tipos de dados:
E3 - Scripts - Manual de Referncia
318 Propriedades
Tipos de dados suportados por Format
DADOS DESCRIO
Numrico Sada decimal, cientfica, hexadecimal, binria e octal.
Texto Textos em geral.
Booleano Valores boleanos.
DatafHora Calendrio Gregoriano

FormattedValue: Contm o valor do alarme formatado de acordo com a
propriedade Format. Esta propriedade somente de leitura.
RawAlarm: Indica se o alarme deve estar ativo, independentemente da espera.
Quando a espera for igual a 0 (zero), o valor de RawAlarm ser o mesmo da
propriedade Alarm. Esta propriedade somente de leitura.
Source: Contm a expresso que dever ser avaliada para determinar se o alarme
deve ocorrer ou no.
Value: Contm o valor do que foi avaliado para determinar se o alarme ocorre ou
no.
6.15.3. Propriedades do 8ervidor de Alarmes
ActiveAlarms: Determina o nmero total de alarmes ativos do sistema. Esta
propriedade somente de leitura.
ActiveHighAlarms: Indica o nmero de alarmes ativos com severidade alta. Esta
propriedade somente de leitura.
ActiveHighNACKAlarms: Indica o nmero de alarmes no-reconhecidos com
severidade alta. Esta propriedade somente de leitura.
ActiveLowAlarms: Indica o nmero de alarmes ativos com severidade baixa.
Esta propriedade somente de leitura.
ActiveLowNACKAlarms: Indica o nmero de alarmes no-reconhecidos com
severidade baixa. Esta propriedade somente de leitura.
ActiveMedAlarms: Indica o nmero de alarmes ativos com severidade mdia.
Esta propriedade somente de leitura.
E3 - Scripts - Manual de Referncia
Propriedades 319
ActiveMedNACKAlarms: Indica o nmero de alarmes no-reconhecidos com
severidade mdia. Esta propriedade somente de leitura.
ActiveNACKAlarms: Indica o nmero total de alarmes que esto sem
reconhecimento no sistema (ativos ou no). Esta propriedade somente de leitura.
BackupDiscardInterval: Indica a quantidade de unidades de tempo durante o
qual os dados de backup sero mantidos na tabela principal e na tabela de backup,
at serem descartados (por exemplo, para manter os dados por 24 meses na tabela
principal, e mais seis meses na tabela de backup, o valor da propriedade deve ser de
30 meses). Esta propriedade trabalha em conjunto com a propriedade
BackupDiscardTimeUnit. O valor padro desta propriedade 12 (doze unidades de
tempo indicadas em BackupDiscardTimeUnit).
NOTA: O tempo total indicado pela combinao das propriedades
BackupDiscardInterval e BackupDiscardTimeUnit deve ser maior que o tempo
indicado pelas propriedades DiscardInterval e DiscardIntervalTimeUnit.
BackupDiscardTimeUnit: A propriedade BackupDiscardTimeUnit indica a
unidade de tempo em que os dados de backup ficaro armazenados at serem
descartados. As opes disponveis so: 0-dtHour = horas; 1-dtDay = dias;
2-dtNonth = meses (padro); 3-dtNinute = minutos. Esta propriedade trabalha em
conjunto com a propriedade BackupDiscardInterval.
DataSource: Define o objeto Banco de Dados que ser utilizado para gravao
dos dados dos alarmes. O valor padro desta propriedade vazio, ou seja, no h
nenhum Banco de Dados para armazenar os dados.
DiscardInterval: Esta propriedade trabalha em conjunto com a propriedade
DiscardTimeUnit. A propriedade DiscardInterval indica o intervalo de tempo
durante o qual os dados do Histrico ficaro armazenados na tabela do banco de
dados, at serem descartados. O valor padro desta propriedade 1 (uma unidade de
tempo indicada em DiscardTimeUnit). Se esta propriedade for configurada com um
valor menor ou igual ao valor da propriedade BackupDiscardInterval, o E3
automaticamente ajusta o valor de BackupDiscardInterval como o dobro do valor de
DiscardInterval. Esta propriedade pode ser modificada em tempo de execuo.
E3 - Scripts - Manual de Referncia
320 Propriedades
DiscardTimeUnit: Esta propriedade trabalha em conjunto com a propriedade
DiscardInterval. A propriedade DiscardTimeUnit indica a unidade de tempo em que
os dados da tabela ficaro armazenados at serem descartados. As opes
disponveis so: 0-dtHour: horas; 1-dtDay: dias; 2-dtNonth: meses (padro); 3-
dtNinute: minutos.
EnableBackupTable: Cria uma tabela de backup onde os dados descartados
permanecero por segurana. Se configurada para True, a tabela ser criada; do
contrrio, no haver tabela de backup. O valor padro desta propriedade True.
EnableDiscard: Indica descarte dos dados dos alarmes aps um certo tempo. Se
configurada para False, os dados sero armazenados indefinidamente na tabela; do
contrrio, sero descartados aps determinado tempo. O valor padro dessa
propriedade False.
Logging: Cria o registro das informaes dos alarmes no banco de dados
especificado pela propriedade DataSource. Se configurado para False, o registro no
criado; do contrrio, o registro feito. O valor padro desta propriedade False.
TableName: Define um nome para a tabela de alarmes. O valor padro
Alarms. Pode ser modificada em tempo de execuo; seu efeito ser imediato.
VerificationInternal: Esta propriedade trabalha em conjunto com a propriedade
VerificationUnit para controlar o intervalo de tempo que o E3 verifica a antiguidade
dos dados, para depois descart-los. O valor padro desta propriedade 1 (uma
unidade de tempo indicada em VerificationUnit).
VerificationUnit: Esta propriedade trabalha em conjunto com a propriedade
VerificationInternal. A propriedade VerificationUnit indica a unidade de tempo em
que ser feita a verificao para descarte dos dados. As opes disponveis so:
0-dtHour: horas; 1-dtDay: dias; 2-dtNonth: meses (padro); e 3-dtNinute:
minutos.
6.16. Propriedades do E3Alarm
NOTA: O E3 utiliza para definio de coordenadas e espessura o sistema
HIMETRIC. Neste sistema, cada unidade lgica equivale a um milsimo de
centmetro; ou seja, cada 1000 unidades equivalem a 1 centmetro. Assim, este o
padro adotado na descrio das propriedades do E3, quando aplicvel.
AllowAckAll: Habilita a opo presente no menu pop-up do E3Alarm, que
permite o reconhecimento de todos os alarmes. O valor default desta propriedade
True.
E3 - Scripts - Manual de Referncia
Propriedades 321
AllowAckCurrentFilter: Habilita a opo presente no menu pop-up do
E3Alarm, que permite o reconhecimento de todos os alarmes do filtro atual. Se no
houverem alarmes visveis, a propriedade no tem efeito. O valor default desta
propriedade True.
AllowAckSelected: Habilita a opo presente no menu pop-up do E3Alarm, que
permite o reconhecimento de alarmes selecionados. Se no houverem alarmes
selecionados, a propriedade no tem efeito. O valor default desta propriedade True.
AllowColumnClick: Habilita/desabilita a seleo dos campos e a direo de
ordenao destes atravs do clique no cabealho das colunas do E3Alarm em tempo
de execuo. Se esta opo estiver configurada para True e o cabealho for visvel
(ver propriedade ColumnHeader), ao clicar o ttulo da coluna, os dados sero
ordenados tendo esta coluna como chave. Clicando novamente esta mesma coluna, a
ordenao ser feita na direo contrria (muda-se a ordem ascendente para
descendente e vice-versa). Ao clicar a coluna com a tecla [Shift| pressionada, o
campo usado como segunda chave. Como na chave primria, um segundo clique
com [Shift| inverte a ordenao do campo secundrio.
AlarmServer: Nome do servidor de alarmes nico existente na aplicao.
ColumnHeader: Quando configurada como True, esta propriedade habilita a
visualizao do cabealho do E3Alarm. O cabealho tambm permite que seja feita
a reordenao dos dados da tabela visualmente (ver propriedade
AllowColumnClick). O valor padro desta propriedade True.
Domain: Especifica o domnio ao qual o E3Alarm ir se conectar. O padro desta
propriedade vazio, ou seja, o E3Alarm se conecta ao mesmo domnio do Viewer
onde ele se encontra. Por exemplo: \\NomeDeOutroServidor.
Enabled: Habilita o objeto activeX no projeto. O valor padro desta propriedade
True.
Font: Determina a fonte (tipo de letra) do cabealho e linhas do E3Alarm. Esta
propriedade somente de leitura e s pode ser modificada via Studio, no em
execuo.
Filter: Controla as reas de alarmes visveis no E3Alarm. Se seu valor no for
vazio, sero apresentados eventos cujo nome das reas comecem com o texto
indicado. Por exemplo: se Filter Ana, sero mostrados os alarmes de reas como
Analogicos.Producao ou Analise, mas no Digitais.Analise ou
Digitais.Producao. Quando a propriedade SimpleAreaFilter for False, a rea de
alarme tambm permitir o uso de coringas para a filtragem (* ou ?).
E3 - Scripts - Manual de Referncia
322 Propriedades
Os coringas permitidos so:
"*": aceita nenhum ou qualquer quantidade de caracteres
"?": aceita um caractere qualquer
"#": aceita um dgito qualquer
"[ ]": permite especificar um conjunto de caracteres. Ex:
"[ab]": aceita um caractere se for "a" ou "b"
"[f-h]": aceita um caractere entre "f" e "h"
"[!cz]": aceita um caractere que no seja "c" ou "z"
"[!m-p]": aceita um caractere que no seja de "m" a "p"
O padro dessa propriedade vazio, ou seja, sem filtragem por rea (ver tambm
propriedades SimpleAreaFilter, ShowHighPriority, ShowMediumPriority e
ShowLowPriority).
Exemplo:
Sub ComboBox1_Change()
' O valor da ComboBox indica o filtro de area do E3Alarm
Screen.Item("E3Alarm1").Filter = Value
End Sub
FilterType: Efetua os filtros de alarme. As opes disponveis so: 1-
OnlyAlarms: mostra apenas alarmes; 2-Only Events: mostra apenas eventos; e 3-
AlarmsAndEvents, mostra tanto alarmes quanto eventos.
Frame: Retorna o quadro-pai do objeto. Esta propriedade acessvel apenas em
tempo de execuo.
GridBkColor: Esta propriedade determina a cor de fundo do E3Alarm. O valor
padro desta propriedade a cor configurada no Windows para o item Janela
(Painel de ControleVdeoAparnciaAvanadaItem: Janela).
HasFocus: Esta propriedade determina que o objeto selecionado est com o foco.
Esta propriedade acessvel apenas em tempo de execuo.
Height: A propriedade Height define a altura do E3Alarm, em unidade Himetric.
Layer: Esta propriedade define em quais camadas o objeto deve aparecer. O
valor representa uma mscara de 32 bits, um bit para cada camada. Portanto, podem
ser definidas at 32 camadas individuais. Assim, objetos podem ser agrupados
logicamente e mostrados/escondidos apenas com a modificao da mscara da
propriedade Layer.
E3 - Scripts - Manual de Referncia
Propriedades 323
MouseOver: A propriedade MouseOver informa se o ponteiro do mouse
encontra-se em cima da Tela. Caso afirmativo, a propriedade MouseOver
habilitada; do contrrio, ser False. Esta propriedade somente de leitura, e
acessvel apenas em tempo de execuo. O valor padro desta propriedade False.
MouseOverChild: A propriedade MouseOverChild informa se o ponteiro do
mouse encontra-se em cima de um dos objetos inseridos na Tela. Caso afirmativo, a
propriedade MouseOverChild habilitada. Caso contrrio, para False. Esta
propriedade para somente leitura, e acessvel apenas em tempo de execuo. O
valor padro desta propriedade False.
PopupMenu: Habilita um menu pop-up acessado ao clicar com o boto
secundrio sobre o E3Alarm. O valor padro desta propriedade True.
PrimarySortAscending: Quando esta propriedade estiver configurada para
False, a ordenao de eventos pelo campo primrio ser no sentido descendente.
Caso contrrio, o sentido ser ascendente. O valor padro desta propriedade False.
PrimarySortField: Determina o campo primrio para a ordenao dos eventos
no E3Alarm. O nome do campo deve ser sempre especificado em ingls (ver tabela
de campos dos alarmes no apndice deste manual). O valor padro dessa
propriedade EventTime. Quando esta opo est vazia, a propriedade
SecundarySortField no tem efeito.
SecondarySortAscending: Quando esta propriedade estiver configurada para
True, a ordenao de eventos pelo campo secundrio ser no sentido ascendente.
Caso contrrio, o sentido ser descendente. O valor padro desta propriedade
False.
SecondarySortField: Determina o campo secundrio para a ordenao dos
eventos no E3Alarm. O nome do campo deve ser sempre especificado em ingls (ver
tabela de campos dos alarmes no apndice deste manual). O valor padro dessa
propriedade vazio. Essa propriedade no tem efeito quando PrimarySortField
estiver vazia.
ShowHighPriority: Filtra quais alarmes sero mostrados ou no, de acordo com
a sua severidade. Quando estiver em True, sero mostrados os alarmes de severidade
alta; do contrrio, estes alarmes no sero mostrados. O valor padro desta
propriedade True.
ShowLowPriority: Filtra quais alarmes sero mostrados ou no, de acordo com a
sua severidade. Quando estiver em True, sero mostrados os alarmes de severidade
baixa; do contrrio, estes alarmes no sero mostrados. O valor padro desta
propriedade True.
E3 - Scripts - Manual de Referncia
324 Propriedades
ShowMediumPriority: Filtra quais alarmes sero mostrados ou no, de acordo
com a sua severidade. Quando estiver em True, sero mostrados os alarmes de
severidade mdia; do contrrio, estes alarmes no sero mostrados. O valor padro
desta propriedade True.
SimpleAreaFilter: Quanto esta propriedade for True, o comportamento de
filtragem pelo nome de rea de alarmes baseado apenas na coincidncia da parte
inicial do nome. Quando for False, o comportamento leva em conta o nome todo da
rea, mas permite o uso de caracteres-coringa. Ver tambm a propriedade Filter, que
especifica o filtro por nome de rea.
TabStop: Esta propriedade determina a utilizao da tecla [TAB| no sistema. Se
o campo estiver True, possvel utilizar a tecla; caso contrrio, a tecla no pode ser
utilizada.
Tip: A propriedade Tip mostra uma texto popup quando o mouse estiver por um
breve momento sobre o objeto em execuo.
Visible: Esta propriedade define se o objeto deve ou no estar visvel. Se a
propriedade estiver configurada para True, o objeto fica visvel, desde que os
seguintes itens sejam tambm obedecidos, obrigatoriamente: o objeto-pai deste
objeto tambm deve estar visvel, e a propriedade Layer do objeto deve estar
presente na camada de Tela. Do contrrio, o objeto fica invisvel.
Width: A propriedade Width define a largura, em unidade Himetric, do objeto.
X: A propriedade X define a coordenada horizontal esquerda, em unidade
Himetric, do objeto.
Y: Esta propriedade define a coordenada vertical acima, em unidade Himetric,
do objeto.
6.17. Propriedades do Histrico
BackupDiscardInterval: Indica a quantidade de unidades de tempo durante o
qual os dados de backup sero mantidos na tabela principal e na tabela de backup,
at serem descartados (por exemplo, para manter os dados por 24 meses na tabela
principal, e mais seis meses na tabela de backup, o valor da propriedade deve ser de
30 meses). Esta propriedade trabalha em conjunto com a propriedade
BackupDiscardTimeUnit. O valor padro desta propriedade 12 (doze unidades de
tempo indicadas em BackupDiscardTimeUnit).
E3 - Scripts - Manual de Referncia
Propriedades 325
NOTA: O tempo total indicado pela combinao das propriedades
BackupDiscardInterval e BackupDiscardTimeUnit deve ser maior que o tempo
indicado pelas propriedades DiscardInterval e DiscardIntervalTimeUnit.
BackupDiscardTimeUnit: A propriedade BackupDiscardTimeUnit indica a
unidade de tempo em que os dados de backup ficaro armazenados at serem
descartados. As opes disponveis so: 0-dtHour = horas; 1-dtDay = dias;
2-dtNonth = meses (padro); 3-dtNinute = minutos. Esta propriedade trabalha em
conjunto com a propriedade BackupDiscardInterval.
CacheSize: Define o nmero de registros que devem ser lidos pelo histrico
antes de serem enviados para o banco de dados. Por exemplo, se um histrico tem
CacheSize = 4, ele vai esperar obter 4 registros para ento envi-los para o DBServer
associado. Os valores vlidos para esta propriedade devem estar no intervalo de 1 e
4. O valor padro desta propriedade 1.
CompressedTable: Habilita o uso de banda morta para a gravao de dados. O
valor padro desta propriedade False.
DBServer: Indica o objeto Banco de Dados utilizado no histrico para criao de
tabelas e registros de dados. O valor padro desta propriedade vazio.
DeadBand: Esta propriedade trabalha em conjunto com a propriedade
CompressedTable. Indica o valor calculado sobre o ltimo valor gravado (em
percentagem) que define se este novo valor ser gravado. Se o valor gravado no for
numrico, sua modificao faz com que todos os valores sejam gravados.
DiscardInterval: Esta propriedade trabalha em conjunto com a propriedade
DiscardTimeUnit. A propriedade DiscardInterval indica o intervalo de tempo
durante o qual os dados do Histrico ficaro armazenados na tabela do banco de
dados, at serem descartados. O valor padro desta propriedade 1 (uma unidade de
tempo indicada em DiscardTimeUnit). Se esta propriedade for configurada com um
valor menor ou igual ao valor da propriedade BackupDiscardInterval, o E3
automaticamente ajusta o valor de BackupDiscardInterval como o dobro do valor de
DiscardInterval. Esta propriedade pode ser modificada em tempo de execuo.
DiscardTimeUnit: Esta propriedade trabalha em conjunto com a propriedade
DiscardInterval. A propriedade DiscardTimeUnit indica a unidade de tempo em que
os dados da tabela ficaro armazenados at serem descartados. As opes
disponveis so: 0-dtHour: horas; 1-dtDay: dias; 2-dtNonth: meses (padro); 3-
dtNinute: minutos.
E3 - Scripts - Manual de Referncia
326 Propriedades
EnableBackupTable: Cria uma tabela de backup onde os dados descartados
permanecero por segurana. Se configurada para True, a tabela ser criada; do
contrrio, no haver tabela de backup. O valor padro desta propriedade False.
EnableDiscard: Indica descarte dos dados do Histrico aps um certo tempo. Se
configurada para False, os dados sero armazenados indefinidamente na tabela; do
contrrio, sero descartados aps determinado tempo. O valor padro dessa
propriedade False.
EnableQualityLogs: Quando em True, ao iniciar o Histrico o E3 gera um
registro igual ao primeiro registro coletado mas com qualidade ruim (0) e timestamp
de um segundo antes.
ScanTime: Define a variao de intervalo do tempo, em milissegundos, que o
Histrico ir esperar para fazer a aquisio e gravao de um novo registro na tabela.
Utilize esta propriedade se voc desejar maior ou menor quantidade de dados
gerados por segundo. O valor padro desta propriedade 1000.
TableName: Define o nome da tabela que ser utilizada no Histrico.
UserTable: Quando esta propriedade est configurada para True, identifica que o
Histrico do usurio, ou seja, os dados da tabela foram importados do banco. Caso
contrrio, um histrico normal do E3. Esta propriedade apenas de leitura.
UseTagQuality: Se for True, o Histrico vai usar o valor de qualidade da fonte
do tag; caso contrrio, ser utilizado o mtodo antigo de avaliao (0 = valor
duvidoso; 1 = valor bom).
VerificationInternal: Esta propriedade trabalha em conjunto com a propriedade
VerificationUnit para controlar o intervalo de tempo que o E3 verifica a antiguidade
dos dados, para depois descart-los. O valor padro desta propriedade 1 (uma
unidade de tempo indicada em VerificationUnit).
VerificationUnit: Esta propriedade trabalha em conjunto com a propriedade
VerificationInternal. A propriedade VerificationUnit indica a unidade de tempo em
que ser feita a verificao para descarte dos dados. As opes disponveis so:
0-dtHour: horas; 1-dtDay: dias; 2-dtNonth: meses (padro); e 3-dtNinute:
minutos.
E3 - Scripts - Manual de Referncia
Propriedades 327
6.18. Propriedades do 8torage
BackupDiscardInterval: Indica a quantidade de unidades de tempo durante o
qual os dados de backup sero mantidos na tabela principal e na tabela de backup,
at serem descartados (por exemplo, para manter os dados por 24 meses na tabela
principal, e mais seis meses na tabela de backup, o valor da propriedade deve ser de
30 meses). Esta propriedade trabalha em conjunto com a propriedade
BackupDiscardTimeUnit. O valor padro desta propriedade 12 (doze unidades de
tempo indicadas em BackupDiscardTimeUnit).
NOTA: O tempo total indicado pela combinao das propriedades
BackupDiscardInterval e BackupDiscardTimeUnit deve ser maior que o tempo
indicado pelas propriedades DiscardInterval e DiscardIntervalTimeUnit.
BackupDiscardTimeUnit: A propriedade BackupDiscardTimeUnit indica a
unidade de tempo em que os dados de backup ficaro armazenados at serem
descartados. As opes disponveis so: 0-dtHour = horas; 1-dtDay = dias;
2-dtNonth = meses (padro); 3-dtNinute = minutos. Esta propriedade trabalha em
conjunto com a propriedade BackupDiscardInterval.
CacheSize: Define o nmero de registros que devem ser lidos antes de serem
enviados para o banco de dados. Por exemplo, se CacheSize = 4, sero obtidos
quatro registros para ento envi-los para o DBServer associado. O valor padro
desta propriedade 10.
CompressedTable: Habilita o uso de banda morta para a gravao de dados. O
valor padro desta propriedade False.
CompressionRate: Mostra a taxa de compresso de dados obtida at o momento.
DBServer: Indica o objeto Banco de Dados utilizado no Storage para criao de
tabelas e registros de dados. O valor padro desta propriedade vazio.
DeadBand: Esta propriedade trabalha em conjunto com a propriedade
CompressedTable. Indica o valor calculado sobre o ltimo valor gravado (em
percentagem) que define se este novo valor ser gravado. Se o valor gravado no for
numrico, sua modificao faz com que todos os valores sejam gravados.
E3 - Scripts - Manual de Referncia
328 Propriedades
DiscardInterval: Esta propriedade trabalha em conjunto com a propriedade
DiscardTimeUnit. A propriedade DiscardInterval indica o intervalo de tempo
durante o qual os dados do Histrico ficaro armazenados na tabela do banco de
dados, at serem descartados. O valor padro desta propriedade 1 (uma unidade de
tempo indicada em DiscardTimeUnit). Se esta propriedade for configurada com um
valor menor ou igual ao valor da propriedade BackupDiscardInterval, o E3
automaticamente ajusta o valor de BackupDiscardInterval como o dobro do valor de
DiscardInterval. Esta propriedade pode ser modificada em tempo de execuo.
DiscardTimeUnit: Esta propriedade trabalha em conjunto com a propriedade
DiscardInterval. A propriedade DiscardTimeUnit indica a unidade de tempo em que
os dados ficaro armazenados at serem descartados. As opes disponveis so:
0-dtHour: horas; 1-dtDay: dias; 2-dtNonth: meses (padro); 3-dtNinute: minutos.
EnableBackupTable: Cria uma tabela de backup onde os dados descartados
permanecero por segurana. Se configurada para True, a tabela ser criada; do
contrrio, no haver tabela de backup. O valor padro desta propriedade False.
EnableDiscard: Habilita o descarte dos dados aps um certo tempo. Se
configurada para False, os dados sero armazenados indefinidamente na tabela; do
contrrio, sero descartados aps determinado tempo. O valor padro dessa
propriedade False.
Fields: Coleo que aponta para os campos criados no Storage. Para cada campo
possvel visualizar as propriedades Name e Link, e modificar as propriedades Type,
MinRecTime, MaxRecTime, DeadBand e DeadBandUnit.
StringFieldSize: Esta propriedade especifica o tamanho mximo que os campos
do tipo string do objeto Storage podero ter (ser o tamanho utilizado na criao do
campo Value da tabela de strings)
TableName: Define o nome da tabela que ser utilizada no Storage.
VerificationInternal: Esta propriedade trabalha em conjunto com a propriedade
VerificationUnit para controlar o intervalo de tempo que o E3 verifica a antiguidade
dos dados, para depois descart-los. O valor padro desta propriedade 1 (uma
unidade de tempo indicada em VerificationUnit).
VerificationUnit: Esta propriedade trabalha em conjunto com a propriedade
VerificationInternal. A propriedade VerificationUnit indica a unidade de tempo em
que ser feita a verificao para descarte dos dados. As opes disponveis so:
0-dtHour: horas; 1-dtDay: dias; 2-dtNonth: meses (padro); e 3-dtNinute:
minutos.
E3 - Scripts - Manual de Referncia
Propriedades 329
6.18.1. Propriedades do Campo
DeadBand: Banda morta para clculo do algoritmo.
DeadBandUnit: Valor absoluto ou a porcentagem de modificao.
Link: Determina a fonte de dados que ser associada ao campo. Propriedade
apenas de leitura.
MaxRecTime: Tempo mximo de espera por um dado. Se este tempo for
ultrapassado, o dado torna-se antigo e armazenado.
MinRecTime: Tempo mnimo para insero de um dado na tabela. Este tempo
calculado em milissegundos.
Name: Propriedade que retorna o nome configurado para este campo no objeto
Storage. Atravs dele, possvel buscar itens na coleo.
Type: Retorna o tipo do objeto no formato do Storage (0 - Double, 1 - Bit, 2 -
String). Esta propriedade de leitura e escrita, mas s aceita mudanas enquanto a
coleta de dados para este campo ainda no comeou.
6.19. Propriedades da Consulta {E3Ouery}
NOTA: No recomendvel o acesso direto destas propriedades via scripts. O ideal
acessar o objeto Consulta, passando parmetros atravs do mtodo
SetVariableValue() e modificando filtros ou campos atravs da coleo retornada
com o mtodo GetE3QueryFields().
CursorLocation: Define o local onde a consulta ser gerada e manipulada, sob o
ponto de vista do SGBD (Sistema Gerenciador do Banco de Dados). As opes
disponveis so: 0-clServer: a consulta ser gerada no SGBD (servidor); e 1-
clClient: a consulta ser gerada no E3 Server (cliente). O valor padro desta
propriedade 0-clServer. Ver tambm a propriedade CursorType.
NOTA: A utilizao da opo 1-clClient requer um certo cuidado, pois neste modo
a consulta ser gerada em memria no E3 Server e pode comprometer a performance
do sistema dependendo do tamanho da consulta.
CursorType: Define o tipo de consulta de acordo com a visualizao dos dados.
O valor padro desta propriedade 0-ctKeyset. Todas as opes disponveis esto
na tabela abaixo.
E3 - Scripts - Manual de Referncia
330 Propriedades
Opes disponveis para CursorType
OPO DESCRIO
0- ctKeyset Qualquer mudana nos registros inicialmente retornados pela
consulta ser visvel. (Padro)
1- ctStatic Nenhuma mudana nos registros inicialmente retornados pela
consulta ser visvel.
2- ctDynamic Todos os novos registros adicionados na consulta sero visveis,
alm das mudanas nos registros inicialmente retornados pela
consulta.
DataSource: Indica o objeto Banco de Dados ou o objeto Storage que ser usado
na consulta. Esta propriedade somente de leitura, mas pode ser modificada em
tempo de execuo.
Fields: Texto com os campos a serem visualizados na consulta, separados por
vrgula. Corresponde ao argumento da clusula SELECT do cdigo SQL da consulta.
Em branco (vazio), determina que a consulta deve mostrar todos os campos da
tabela. Esta propriedade somente de leitura, mas pode ser modificada em tempo de
execuo.
Frame: Retorna o quadro-pai do objeto. Esta propriedade acessvel apenas em
tempo de execuo.
FunctionType: Esta propriedade vlida quando um objeto Storage fonte da
Consulta (isto indicado pela propriedade DataSource). Ela especifica a funo que
ir definir os dados gerados pela Consulta. Algumas funes possuem subfunes,
que podem ser indicadas na propriedade FunctionSubType. A propriedade
FunctionType pode assumir os seguintes valores:
E3 - Scripts - Manual de Referncia
Propriedades 331
Opes disponveis para FunctionType
OPO DESCRIO
-1-ftNoFunction No h nenhuma funo definida.
0-ftLastvalue Retorna o ltimo valor armazenado na Base de
Dados.
1-ftArchivedvalue Retorna um valor armazenado em relao a um
determinado instante de tempo definido na varivel
TimeStamp. O tipo de relao definido em
FunctionSubType.
2-ftTagAttribute Devolve um atributo do Tag, definido em
FunctionSubType.
3-ftCompressedDataNvalues Retorna, para um nico Tag, N valores definidos na
varivel NumVals, armazenados a partir de um
instante inicial, definido na varivel StartTime.
+-ftCompressedDataStartEndTime Retorna, para um nico Tag, os valores armazenados
que esto entre o intervalo definido pelas variveis
StartTime e EndTime.
5-ftSampledData Retorna, para um ou mais Tags, os valores
interpolados (ou seja, estimados) entre os instantes
definidos pelas variveis StartTime e EndTime, a
intervalos fixos definidos pela varivel TimeInterval.
6-ftCalculatedData Retorna, para um ou mais Tags, o resultado de
operaes matemticas aplicadas aos dados entre os
instantes definidos pelas variveis StartTime e
EndTime, a intervalos fixos definidos pela varivel
TimeInterval.

NOTA: As variveis tambm podem ser definidas em execuo a partir da chamada
do mtodo SetVariableValue() da Consulta.
FunctionSubType: Especifica o subtipo da funo indicada por FunctionType.
Apenas as opes 1 - ftArchivedvalue, 2 - ftTagAttribute e 6 - ftCalculatedData
possuem subtipos. Para as outras funes, FunctionSubType assume o valor
-1 - fsNoSubType. A tabela a seguir mostra os possveis valores da propriedade, de
acordo com a funo escolhida na propriedade FunctionType:
E3 - Scripts - Manual de Referncia
332 Propriedades
Subtipos para funo ArchivedValue (FunctionType = 1)
SUBTIPO DESCRIO
0-fsPreviousArchivedvalue Valor armazenado imediatamente anterior ao
TimeStamp fornecido.
1-fs!nterpolatedArchivedvalue Valor calculado a partir do valor anterior e
posterior.
2-fsNextArchivedvalue Valor armazenado imediatamente posterior ao
TimeStamp.
3-fsExactArchivedvalue Se for encontrado um valor armazenado no
exato instante que foi fornecido pelo
TimeStamp.
Subtipos para funo TagAttribute (FunctionType = 2)
SUBTIPO DESCRIO
0-fsTagAttributeDescription Significado/descrio do tag.
1-fsTagAttributeSource Caminho do Tag que est sendo armazenado
2-fsTagAttributeType Tipo de dado: double, boolean, string.
3-fsTagAttributeEU Unidades de engenharia
+-fsTagAttributeLowEng Limite inferior.
5-fsTagAttributeHighEng Limite superior.
6-fsTagAttributeDeadBand Banda Morta para gravao.
7-fsTagAttributeDeadBandUnit Unidade da Banda Morta (valor absoluto ou
porcentagem).
8-fsTagAttributeNinRecTime Tempo mnimo para gravao (variaes
menores que esse intervalo so desprezadas).
9-fsTagAttributeNaxRecTime Tempo mximo para gravao (a ausncia de
variao nesses intervalos fora uma gravao).
Subtipos para funo CalculatedData (FunctionType = 6)
SUBTIPO DESCRIO
0-fsTotalCalculatedData Total dos valores.
1-fsNinimumCalculatedData Valor mnimo.
2-fsNaximumCalculatedData Valor mximo.
3-fsStandardCalculatedData Desvio padro.
+-fsRangeCalculatedData Amplitude dos valores.
5-fsNeanCalculatedData Mdia dos valores.
6-fsNedianCalculatedData Mediana dos valores.
GroupBy: Texto correspondente ao argumento da clusula GROUPBY do cdigo
SQL da consulta. Esta propriedade somente de leitura, mas pode ser modificada
em tempo de execuo.
HasFocus: Esta propriedade determina que o objeto selecionado est com o foco.
Esta propriedade acessvel apenas em tempo de execuo.
E3 - Scripts - Manual de Referncia
Propriedades 333
Having: Texto correspondente ao argumento da clusula HAVING do cdigo SQL
da consulta. Esta propriedade normalmente utilizada com a propriedade Groupby.
Esta propriedade somente de leitura, mas pode ser modificada em tempo de
execuo.
MouseOver: A propriedade MouseOver informa se o ponteiro do mouse
encontra-se em cima da Tela. Caso afirmativo, a propriedade MouseOver
habilitada; do contrrio, ser False. Esta propriedade somente de leitura, e
acessvel apenas em tempo de execuo. O valor padro desta propriedade False.
MouseOverChild: A propriedade MouseOverChild informa se o ponteiro do
mouse encontra-se em cima de um dos objetos inseridos na Tela. Caso afirmativo, a
propriedade MouseOverChild habilitada. Caso contrrio, para False. Esta
propriedade para somente leitura, e acessvel apenas em tempo de execuo. O
valor padro desta propriedade False.
OrderBy: Texto correspondente ao argumento da clusula ORDERBY do cdigo
SQL da consulta. Esta propriedade somente de leitura, mas pode ser modificada
em tempo de execuo.
Screen: Retorna a Tela-pai do objeto. Esta propriedade acessvel apenas em
tempo de execuo.
SQL: Encerra o cdigo SQL especificado para a consulta. Esta propriedade
somente para leitura, mas pode ser modificada em tempo de execuo.
Table: A propriedade Table contm as tabelas que sero consultadas (por
exemplo, Alarms a tabela de alarmes/eventos). Corresponde ao argumento da
clusula FROM do cdigo SQL da consulta. Esta propriedade somente de leitura,
mas pode ser modificada em tempo de execuo.
Where: Determina a condio da consulta que filtra os registros da tabela a serem
visualizados, ou seja, s sero visualizados os registros que satisfizerem a condio.
Corresponde ao argumento WHERE do cdigo SQL da consulta. Esta propriedade
somente de leitura, mas pode ser modificada em tempo de execuo.
E3 - Scripts - Manual de Referncia
334 Propriedades
6.20. Propriedades do E3Browser
AllowColumnResize: Habilita/desabilita a configurao do tamanho das colunas
da grade do objeto, em tempo de execuo. Se esta propriedade estiver configurada
para False, o tamanho das colunas fixo e no poder ser modificado.
AllowRowResize: Habilita/desabilita a configurao do tamanho das linhas da
grade do objeto, em tempo de execuo. Se esta propriedade estiver configurada
para False, o tamanho das linhas fixo e no poder ser modificado.
ColumnWidth: Determina a largura das colunas do E3Browser, em pixels.
CurSel: Indica a posio atual do cursor do E3Browser, ou seja, o ndice da linha
em que ele est posicionado.
E3Query: Retorna o objeto Consulta do E3Browser, para que se possa acessar
suas propriedades.
Enabled: Habilita/desabilita o E3Browser. Se configurado como True, pode-se
usar o scroll e selecionar linhas do E3Browser. Do contrrio, nenhum click no
E3Browser ter efeito.
Fields: Retorna o objeto coleo que contm a lista com todos os campos da
tabela, tornando possvel a sua referncia atravs dos itens dessa coleo. O valor
padro desta propriedade vazio. Exemplo:
Sub E3Browser1_Click()
' Troca a cor do campo Campo1
Set fields = Screen.Item("E3Browser").Fields
Set campo1 = fields.Item("Campo1")
campo1.BkColor = RGB(255, 0, 0) ' Vermelho
' Mostra quantos campos tem o E3Browser
MsgBox fields.Count
' Mostra o nome dos campos do E3Browser
For Each Fields In fields
MsgBox fields.Name
Next
End Sub
E3 - Scripts - Manual de Referncia
Propriedades 335
Opes disponveis para Fields
OPO DESCRIO
Name Retorna o nome do campo.
Criteria Retorna o critrio que muda a consulta atual
do campo.
Sort Retorna a classificao do campo: ASC
(ascendente) ou DESC (descendente).
visible Retorna o estado de visibilidade do campo.
Format Retorna o formato do valor do campo.
Width Retorna a largura do campo.
Color Retorna a cor do texto do campo.
BkColor Retorna a cor de fundo do campo.

FixedBkColor: Especifica a cor do fundo da primeira coluna do E3Browser. O
valor padro desta propriedade a cor bege (RGB (236, 233, 216)).
FixedColumnWidth: Determina a largura da primeira coluna do E3Browser,
em pixels. O valor padro desta opo 30 pixels.
FixedRowFont: Determina a fonte (texto) utilizada na linha de cabealho do
E3Browser. Esta propriedade no pode ser utilizada em scripts e/ou associaes,
sendo configurada somente via Studio. O valor padro desta propriedade a fonte
Arial.
FixedRowHeight: Determina a altura (em pixels) da linha de cabealho do
E3Browser. O valor padro desta propriedade 20.
FixedTextColor: Muda a cor do cabealho do E3Browser.
Frame: Retorna o quadro-pai do objeto. Esta propriedade acessvel apenas em
tempo de execuo.
GridBkColor: Determina a cor de fundo da rea de dados do E3Browser. O
valor padro desta propriedade a cor branca (RGB (255, 255, 255)).
GridFont: Determina a fonte utilizada nos textos da rea de dados do
E3Browser. O valor padro desta propriedade a fonte Arial. Esta propriedade no
pode ser utilizada em scripts e/ou associaes, sendo configurada somente via
Studio.
GridLineColor: Determina a cor das linhas da grade de dados do E3Browser. O
valor padro desta propriedade cinza (RGB (192, 192, 192)).
E3 - Scripts - Manual de Referncia
336 Propriedades
GridLinesType: Determina o tipo de linhas a serem desenhadas na grade de
dados do E3Browser.
Opes disponveis para GridLinesType
OPO DESCRIO
0 - GLNone Sem linhas separadoras.
1 - GLHorz Somente as linhas horizontais (padro).
2 - GLvert Somente as linhas verticais.
3 - GLBoth Linhas verticais e horizontais

HasFocus: Em True, indica que o E3 Browser est com o foco do teclado.
Height: Essa propriedade determina a altura do objeto, em unidade Himetric.
Layer: Indica o nmero da camada onde o E3Browser est posicionado.
MouseOver: A propriedade MouseOver informa se o ponteiro do mouse
encontra-se em cima da Tela. Caso afirmativo, a propriedade MouseOver
habilitada; do contrrio, ser False. Esta propriedade somente de leitura, e
acessvel apenas em tempo de execuo. O valor padro desta propriedade False.
MouseOverChild: A propriedade MouseOverChild informa se o ponteiro do
mouse encontra-se em cima de um dos objetos inseridos na Tela. Caso afirmativo, a
propriedade MouseOverChild habilitada. Caso contrrio, para False. Esta
propriedade para somente leitura, e acessvel apenas em tempo de execuo. O
valor padro desta propriedade False.
RefreshTime: Especifica o tempo de atualizao da consulta em relao ao
banco de dados. Atravs desta propriedade, possvel verificar as atualizaes dos
dados no histrico relacionado referente a um determinado tempo estipulado (em
milissegundos). Quando a propriedade RefreshTime for igual a 0, no h atualizao
dos dados, e eles permanecem inalterados.
RowHeight: Define a altura das linhas da E3Browser, em pixels. O valor padro
desta propriedade 20.
Screen: Contm uma referncia para o objeto Tela onde o E3 Browser est
includo.
SelectRow: Estabelece a possibilidade de seleo das linhas do E3 Browser. Se
estiver configurada para True, ser possvel selecionar as linhas; do contrrio, as
linhas no podem ser selecionadas.
E3 - Scripts - Manual de Referncia
Propriedades 337
SourceQuery: Contm a referncia para o objeto E3Query ao qual o E3Browser
est associado.
NOTA: Para trocar a consulta do E3Browser por script (caso a nova consulta
modifique os campos da consulta original), alm de alterar a propriedade
SourceQuery, preciso utilizar os mtodos RetrieveE3QueryFields() e Requery().
TabStop: Indica se o objeto E3Browser receber o foco do teclado quando o
usurio utiliza a tecla [TAB] para trocar entre os diversos campos em uma Tela.
TextBkColor: Especifica a cor de fundo das clulas de dados do E3Browser. O
valor padro desta propriedade a cor branca (RGB (255, 255, 255)).
TextColor: Especifica a cor do texto do E3Browser. O valor padro desta
propriedade a cor preta (RGB (0,0,0)).
Tip: Contm um texto de ajuda apresentado como dica quando o usurio
coloca o ponteiro do mouse sobre o objeto.
TitleTipBkColor: Especifica a cor do fundo do texto da dica do E3Browser. O
valor padro desta propriedade a cor preto (RGB (0, 0, 0)).
TitleTipTextColor: Especifica a cor do texto da dica do E3Browser. O valor
padro desta propriedade a cor cinza (RGB (204, 204, 204)).
ToolbarBkColor: Especifica a cor de fundo da barra de funes do E3 Browser.
O valor padro desta propriedade bege (RGB (236, 233, 216)).
ToolbarFont: Determina a fonte utilizada nos textos da barra de funes do E3
Browser. Esta propriedade no pode ser utilizada em scripts e/ou associaes, sendo
configurada somente via Studio.
ToolbarForeColor: Especifica a cor de frente da barra de funes do E3
Browser. O valor padro desta propriedade preto (RGB (0, 0, 0)).
Visible: Habilita/desabilita a visibilidade do campo selecionado no E3Browser.
Se a propriedade estiver configurada para True, o campo ser visvel no E3Browser.
Caso contrrio, o campo no mostrado no E3Browser, em tempo de execuo. O
valor padro True.
Width: Determina a largura do objeto, em unidade Himetric.
E3 - Scripts - Manual de Referncia
338 Propriedades
X: A propriedade X define a coordenada horizontal esquerda, em unidade
Himetric, do objeto.
Y: Esta propriedade define a coordenada vertical acima, em unidade Himetric,
do objeto.
6.21. Propriedades do E3Chart
Axes: Retorna a coleo de eixos do E3Chart. A partir da, as propriedades da
coleo de eixos podem ser modificadas.
BackColor: Determina a cor de fundo do E3 Chart. Para que esta cor aparea, a
propriedade ShowBackground deve estar configurada como True. O valor padro
desta propriedade bege (RGB (236, 233, 216)).
CursorBegin: Define a posio do cursor inicial, entre 0 e 1. necessrio
executar o mtodo ShowCursor() ou habilitar a opo Pesquisa de Intervalos para
que os cursores apaream.
CursorColor: Estabelece a cor do cursor de pesquisa de intervalo. O valor
padro vermelho (RGB(255,0,0)).
CursorEnd: Define a posio do cursor final, entre 0 e 1. necessrio executar o
mtodo ShowCursor() ou habilitar a opo Pesquisa de Intervalos para que os
cursores apaream.
CursorLineStyle: Estilo de linha do cursor de pesquisa de intervalo. As opes
disponveis so:
Opes disponveis para CursorLineStyle
OPO DESCRIO
0- LS_Solid Aplica uma linha slida no cursor de intervalo do E3Chart.
1- LS_Dash Aplica uma linha tracejada no cursor de intervalo do E3Chart.
2- LS_Dot Aplica uma linha pontilhada no cursor de intervalo do E3Chart .
3- LS_Dashdot Aplica uma linha trao e ponto no cursor de intervalo do E3Chart.
4- LS_Dashdotdot Aplica uma linha trao ponto ponto no cursor de intervalo do
E3Chart.
5- LS_Null Aplica uma linha invisvel no cursor de intervalo do E3Chart.

CursorLineWidth: Estabelece a largura do cursor de intervalo.
E3 - Scripts - Manual de Referncia
Propriedades 339
Enabled: Habilita o objeto ActiveX no projeto. O valor padro desta propriedade
True.
ForeColor: Determina a cor de frente do E3 Chart. O valor padro desta
propriedade preto (RGB (0, 0, 0)).
Frame: Retorna o quadro-pai do objeto. Esta propriedade acessvel apenas em
tempo de execuo.
GridBkColor: Determina a cor de fundo da grade do E3Chart. O valor padro
desta propriedade branco (RGB (255, 255, 255)).
Exemplo:
Sub CommandButton1_Click()
Set E3Chart1 = Screen.Item("E3Chart1")
Old = E3Chart1.GridBkColor
MsgBox "prxima "
E3Chart1.GridBkColor = RGB(0,255,0)
MsgBox "voltar"
E3Chart1.GridBkColor = old
End Sub
HasFocus: Esta propriedade determina que o objeto selecionado est com o foco.
Esta propriedade acessvel apenas em tempo de execuo.
Height: A propriedade Height define a altura do E3 Chart, em unidade Himetric.
E3 - Scripts - Manual de Referncia
340 Propriedades
HorAxisTitle: Determina o ttulo do eixo horizontal principal. Exemplo:
Sub CommandButton1_Click()
Set E3Chart1= Screen.Item("E3Chart1")
Old = E3Chart1.HorAxisTitle
MsgBox "prxima"
E3Chart1.HorAxisTitle = "!teste"
MsgBox "voltar"
E3Chart1.HorAxisTitle = old
End Sub
HorGrid: Determina o tipo de linha que ser aplicada na grade horizontal do
E3Chart.
Opes disponveis para HorGrid
OPO DESCRIO
0- Solid Aplica uma linha slida na grade horizontal do E3Chart.
1- Dash Aplica uma linha tracejada na grade horizontal do E3Chart.
2- Dot Aplica uma linha pontilhada na grade horizontal do E3Chart
(padro).
3- Dashdot Aplica uma linha trao e ponto na grade horizontal do E3Chart.
4- Dashdotdot Aplica uma linha trao ponto ponto na grade horizontal do E3Chart.
5- Invisible Aplica uma linha invisvel na grade horizontal do E3Chart.

Exemplo:
Sub CommandButton1_Click()
Set E3Chart1 = Screen.Item("E3Chart1")
Old = E3Chart1.HorGrid
For i= 0 to 5
E3Chart1.HorGrid = i
MsgBox "E3Chart1.HorGrid =" & cstr(i)
Next
MsgBox "voltar"
E3Chart1.HorGrid = old
End Sub
E3 - Scripts - Manual de Referncia
Propriedades 341
HorGridColor: Determina a cor da grade horizontal do objeto E3Chart. O valor
padro desta propriedade cinza (RGB (192, 192, 192).
Exemplo:
Sub CommandButton1_Click()
Set E3Chart1 = Screen.Item("E3Chart1")
Old = E3Chart1.HorGridColor = RGB(255,0,0)
MsgBox "prxima"
E3Chart1.HorGridColor = RGB(255,0,0)
MsgBox "prxima"
E3Chart1.HorGridColor = RGB(0,0,255)
MsgBox "voltar"
E3Chart1.HorGridColor = old
End Sub
HorMinorTicks: Determina o nmero de subdivises das escalas horizontais da
grade. O valor padro desta propriedade 1. Exemplo:
Sub CommandButton1_Click()
Set E3Chart1 = Screen.Item("E3Chart1")
Old = E3Chart1.HorMinorTicks
For i = 0 to 5
E3Chart1.HorMinorTicks = i
MsgBox "Prximo valor"
Next
E3Chart1.HorMinorTicks = old
End Sub
HorScaleBegin: Determina o valor inicial aplicado na escala horizontal principal
da grade. Este valor pode ser numrico para E3Charts xy, ou Data para E3Charts
com escala de tempo fixa. Para E3Charts de tempo real, esta propriedade no
aplicada e ento utilizada a propriedade TimeSpan.
E3 - Scripts - Manual de Referncia
342 Propriedades
HorScaleEnd: Determina o valor final aplicado na escala horizontal principal da
grade. Este valor pode ser numrico para E3Charts XY, ou Data para E3Charts com
escala de tempo fixa. Para E3Charts de tempo real, esta propriedade no aplicada e
ento utilizada a propriedade TimeSpan. Exemplo:
Sub ComboBox1_Change()
'Define qual consulta deseja mostrar
current_query_index = ListIndex
Set E3Chart1 = Screen.Item("E3Chart1")
i = 0
for each query in E3Chart1.Queries
if i = current_query_index Then
query.FieldFilter(0) = "" 'traz tudo
Set current_query = query
Else
query.FieldFilter(0) = "<0" 'no trazer nada para
'no ficar lento
End If
i = i + 1
next
'S mostra as penas que usam a consulta atual
for each pen in E3Chart1.Pens
pen.Visible = (pen.QueryName = current_query.Name)
next
'Atualiza as consultas
E3Chart1.Queries.UpdateData()
Screen.Item("E3Chart1").HorScaleBegin = Now - 0.001
Screen.Item("E3Chart1").HorScaleEnd = Now
End Sub
HorScaleFormat: Contm um texto que representa uma mscara dentro da qual
os valores da escala horizontal sero mostrados. Esta mscara pode representar
vrios tipos de valores:
Geral: No possui formatao especfica, adaptando-se automaticamente ao valor
especificado.
Nmero: Apresenta nmeros com parte inteira e fracionria. O usurio pode optar
por at 15 casas decimais, por usar ou no um separador de milhares, e por
apresentar nmeros negativos sinalizados (-) ou entre parnteses. Para nmeros
muito grandes ou muito pequenos, recomenda-se utilizar o formato Cientfico.
E3 - Scripts - Manual de Referncia
Propriedades 343
Data: Apresenta valores numricos de data e hora (quando vlido). Para
representar apenas hora, use o formato equivalente.
Hora: Apresenta valores numricos de hora e data (quando vlido). Para
representar apenas hora, use o formato equivalente.
Porcentagem: Multiplica o nmero por 100 e adiciona o smbolo percentual (%).
Admite at 15 casas decimais.
Cientfico: Apresenta o nmero em notao de mantissa e expoente. Ideal para
nmeros de magnitude variada. Admite at 15 casas decimais.
Especial: Permite formatar nmeros inteiros em bases no-decimais (hexadecimal,
octal ou binria, por exemplo).
Outro: Permite editar diretamente o cdigo de formatao desejado, ou selecionar
um formato criado anteriormente.
A mscara destes formatos, como exemplificadas no campo Tipo, ser exibida na
Janela de Propriedades (Ex: d/M/yy H:mm, 0E-00, etc.).
HorTickUnit: Determina o nmero de subdivises entre as marcas da grade.
Quando esta propriedade estiver com valor 0, o espaamento ser automtico.
Exemplo:
Sub SubCommandButton1_Click()
Set E3Chart1 = Screen.Item("E3Chart1")
old = E3Chart1.HorTickUnit
for i = 0 to 30 step 10
E3Chart1.HorTickUnit = i
MsgBox "E3Chart1.HorTickUnit = " & cstr(i)
next
MsgBox "voltar."
E3Chart1.HorTickUnit = old
End Sub
Layer: Indica o nmero da camada onde o E3Browser est posicionado.
Legend: Retorna o objeto legenda do E3Chart. A partir da, as propriedades da
legenda podem ser modificadas.
MouseOver: A propriedade MouseOver informa se o ponteiro do mouse
encontra-se em cima da Tela. Caso afirmativo, a propriedade MouseOver
E3 - Scripts - Manual de Referncia
344 Propriedades
habilitada; do contrrio, ser False. Esta propriedade somente de leitura, e
acessvel apenas em tempo de execuo. O valor padro desta propriedade False.
MouseOverChild: A propriedade MouseOverChild informa se o ponteiro do
mouse encontra-se em cima de um dos objetos inseridos na Tela. Caso afirmativo, a
propriedade MouseOverChild habilitada. Caso contrrio, para False. Esta
propriedade para somente leitura, e acessvel apenas em tempo de execuo. O
valor padro desta propriedade False.
Pens: Retorna o objeto Coleo de Penas do E3Chart. O objeto Coleo de
Penas utilizado para inserir ou remover e acessar as penas disponveis no E3Chart.
Esta propriedade somente de leitura. Exemplo:
Sub CommandButton1_Click()
For each pen in Screen.Item("E3Chart1").Pens
pen.Visible = True
Next
End Sub
Queries: Retorna o objeto Coleo de Consultas dentro do E3Chart. O objeto
Coleo de Consultas utilizado para inserir/remover/acessar as consultas
disponveis no E3 Chart. Esta propriedade somente de leitura.
RefreshTime: Esta propriedade determina o tempo de atualizao do E3Chart.
Exemplo:
Sub E3Chart1_OnStartRunning()
MsgBox RefreshTime
End Sub
ScaleFont: Determina a fonte do texto utilizada na grade. Exemplo:
Sub CommandButton1_Click()
Screen.Item("E3Chart1").ScaleFont = "Times New Roman"
Screen.Item("E3Chart1").ScaleFont.Size = 12
Screen.Item("E3Chart1").ScaleFont.Italic = true
End Sub
Screen: Contm uma referncia para o objeto Tela onde o E3 Chart est
includo.
ShowBackground: Habilita/desabilita a visualizao do fundo do grfico. Se a
propriedade for igual a True, o fundo do grfico mostrado. Caso contrrio, o
E3 - Scripts - Manual de Referncia
Propriedades 345
grfico fica com o fundo transparente. A cor escolhida na propriedade BackColor
no aparece se esta propriedade estiver em False (opo padro).
Exemplo:
Sub CommandButton1_Click()
Set E3Chart1 = Screen.Item("E3Chart1")
E3Chart1.ShowBackground = not E3Chart1.ShowBackground
End Sub
ShowBottomScale: Se a propriedade estiver configurada para True, o eixo
horizontal principal mostrado na base da grade. Caso contrrio, no mostrado. O
valor padro True. Exemplo:
Sub CommandButton1_Click()
Set E3Chart1 = Screen.Item("E3Chart1")
oldBottomScale = E3Chart1.ShowBottomScale
MsgBox "Mostrar eixo"
E3Chart1.ShowBottomScale = True
MsgBox "Esconder eixo"
E3Chart1.ShowBottomScale = False
MsgBox "Voltar..."
E3Chart1.ShowBottomScale = oldBottomScale
End Sub
ShowGridBackground: Habilita/desabilita a visualizao do fundo da grade. Se
a propriedade for igual a True (padro), o fundo da grade mostrado. Caso
contrrio, a grade fica com o fundo transparente. A cor escolhida na propriedade
GridBkColor no aparece se esta propriedade estiver em False.
Exemplo:
Sub CommandButton1_Click()
Set Chart1 = Screen.Item("E3Chart1")
Chart1.ShowGridBackground = not Chart1.ShowGridBackground
End Sub
ShowLeftScale:. Se a propriedade estiver configurada para True, o eixo vertical
principal ser mostrado esquerda da grade. Caso contrrio, fica invisvel. Exemplo
Sub CommandButton1_Click()
Set Chart = Screen.Item("E3Chart1")
Chart.ShowLeftScale = not Chart.ShowLeftScale
End Sub
E3 - Scripts - Manual de Referncia
346 Propriedades
ShowRightScale: Se a propriedade estiver configurada para True, o eixo vertical
principal da escala ser mostrado direita da grade. Caso contrrio, fica invisvel.
Exemplo:
Sub CommandButton1_Click()
Set Chart = Screen.Item("E3Chart1")
Chart.ShowRightScale= not Chart.ShowRightScale
End Sub
ShowTitle: Se a propriedade estiver configurada para True, o ttulo principal do
E3Chart visvel. Caso contrrio, fica invisvel. A propriedade Title contm o ttulo
que ser mostrado no E3Chart. Exemplo:
Sub CommandButton1_Click()
Set E3Chart1 = Screen.Item("E3Chart1")
oldTitle = E3Chart1.Title
oldShowTitle = E3Chart1.ShowTitle
E3Chart1.Title = "teste!"
MsgBox "Mostrar"
E3Chart1.ShowTitle = True
MsgBox "Esconder"
E3Chart1.ShowTitle = False
MsgBox "Voltar"
E3Chart1.Title = oldTitle
E3Chart1.ShowTitle = oldShowTitle
End Sub
ShowTopScale: Se a propriedade estiver configurada para True, o eixo
horizontal principal mostrado no topo da grade. Caso contrrio, no mostrado. O
valor padro False. Exemplo:
Sub CommandButton1_Click()
Set Chart = Screen.Item("E3Chart1")
Chart.ShowToptScale= not Chart.ShowTopScale
End Sub
TabStop: Esta propriedade determina a utilizao da tecla [TAB| no sistema. Se
o campo estiver True, possvel utilizar a tecla; caso contrrio, a tecla no pode ser
utilizada.
E3 - Scripts - Manual de Referncia
Propriedades 347
TimeSpan: Indica a escala de tempo que aparece no eixo horizontal principal do
E3Chart quando esta for configurada para mostrar a escala de tempo real. O valor
desta propriedade sempre em segundos. O valor padro desta propriedade 60.
Exemplo:
Sub RetanguloArr1_Click()
MsgBox Screen.Item("E3Chart1").TimeSpan
End Sub
Tip: Contm um texto de ajuda apresentado como dica quando o usurio
coloca o ponteiro do mouse sobre o objeto.
Title: Determina o ttulo principal do E3 Chart. Para que o ttulo aparea no E3
Chart, a propriedade ShowTitle deve ser configurada para True.
TitleFont: Determina a fonte do ttulo principal do E3Chart. Exemplo:
Sub CommandButton1_Click()
Set E3Chart1 = Screen.Item("E3Chart1")
E3Chart1.Title = "Teste"
E3Chart1.ShowTitle = True
MsgBox "Troca fonte"
E3Chart1.TitleFont = "Times New Roman"
MsgBox "Troca tamanho"
E3Chart1.TitleFont.Size = 20
End Sub
VerAxisTitle: Determina o ttulo do eixo vertical principal. Exemplo:
Sub ComboBox1_Change()
Screen.Item("E3Chart1").VerAxisTitle = "Titulo1"
End Sub
VerGrid: Determina o tipo de linha que ser aplicada na grade vertical do
E3Chart.
E3 - Scripts - Manual de Referncia
348 Propriedades
Opes disponveis para VerGrid
OPO DESCRIO
0- Solid Aplica uma linha slida na grade vertical do E3Chart.
1- Dash Aplica uma linha tracejada na grade vertical do E3Chart.
2- Dot Aplica uma linha pontilhada na grade vertical do E3Chart
(padro).
3- Dashdot Aplica uma linha trao e ponto na grade vertical do E3Chart.
4- Dashdotdot Aplica uma linha trao ponto ponto na grade vertical do
E3Chart.
5- Invisible Aplica uma linha invisvel na grade vertical do E3Chart.

Exemplo:
Sub E3Chart1_OnStartRunning()
VerGrid = 2
End Sub
VerGridColor: Determina a cor da linha do eixo vertical principal da grade. O
valor padro desta propriedade cinza (RGB (192, 192, 192)).
Exemplo:
Sub RetanguloArr1_Click()
Screen.Item("E3Chart1").VerGridColor = 3
End Sub
VerMinorTicks: Determina o nmero de subdivises entre as marcas do eixo
vertical principal da grade. O valor padro desta propriedade 1.
Exemplo:
Sub RetanguloArr1_Click()
Screen.Item("E3Chart1").VerMinorTicks = 3
End Sub
VerScaleBegin: Determina o valor no topo no eixo vertical principal da grade do
E3Chart. O valor padro desta propriedade 100.
Exemplo:
Sub RetanguloArr1_Click()
MsgBox Screen.Item("E3Chart1").VerScaleBegin
End Sub
E3 - Scripts - Manual de Referncia
Propriedades 349
VerScaleEnd: Determina o valor na base do eixo vertical principal da grade. O
valor padro desta propriedade -100.
Exemplo:
Sub RetanguloArr1_Click()
MsgBox Screen.Item("E3Chart1").VerScaleEnd
End Sub
VerScaleFormat: Contm um texto que representa uma mscara dentro da qual
os valores da escala vertical sero mostrados. Esta mscara pode representar vrios
tipos de valores:
Geral: No possui formatao especifica, adaptando-se automaticamente ao valor
especificado.
Nmero: Apresenta nmeros com parte inteira e fracionria. O usurio pode optar
por at 15 casas decimais, por usar ou no um separador de milhares, e por
apresentar nmeros negativos sinalizados (-) ou entre parnteses. Para nmeros
muito grandes ou muito pequenos, recomenda-se utilizar o formato Cientfico.
Data: Apresenta valores numricos de data e hora (quando vlido). Para
representar apenas hora, use o formato equivalente.
Hora: Apresenta valores numricos de hora e data (quando vlido). Para
representar apenas hora, use o formato equivalente.
Porcentagem: Multiplica o nmero por 100 e adiciona o smbolo percentual (%).
Admite at 15 casas decimais.
Cientfico: Apresenta o nmero em notao de mantissa e expoente. Ideal para
nmeros de magnitude variada. Admite at 15 casas decimais.
Especial: Permite formatar nmeros inteiros em bases no-decimais (hexadecimal,
octal e binria, por exemplo).
Outro: Permite editar diretamente o cdigo de formatao desejado, ou selecionar
um formato criado anteriormente.
A mscara destes formatos, como exemplificadas no campo Tipo, ser exibida na
Janela de Propriedades (Ex: d/M/yy H:mm, 0E-00, etc.).
E3 - Scripts - Manual de Referncia
350 Propriedades
VerTickUnit: Determina o nmero de subdivises entre as marcas da grade.
Quando esta propriedade estiver com valor 0, o espaamento ser automtico.
Exemplo:
Sub CommandButton1_Click()
Set E3Chart1 = Screen.Item("E3Chart1")
Old = E3Chart1.VerTickUnit
For i=0 to 30 step 10
E3Chart1.VerTickUnit = i
MsgBox "E3Chart1.VerTickUnit =" &cstr(i)
Next
MsgBox "voltar"
E3Chart1.VerTickUnit = old
End Sub
Visible: Habilita/desabilita a visibilidade do E3 Chart. Se a propriedade estiver
configurada para True, o E3 Chart ser visvel. Caso contrrio, o E3 Chart no
mostrado. O valor padro True.
Width: Determina a largura do objeto, em unidade Himetric.
X: A propriedade X define a coordenada horizontal esquerda, em unidade
Himetric, do objeto.
Y: Esta propriedade define a coordenada vertical acima, em unidade Himetric,
do objeto.
6.21.1. Propriedades da Pena
AutoQuery: Determina consulta automtica da pena. Se True, a pena deseja usar
a consulta automtica. Do contrrio, a consulta automtica no ser utilizada. A
consulta automtica no poder ser utilizada nos seguintes casos: quando o SQL
customizado pelo usurio; quando se est utilizando Storage; ou quando se est
utilizando vrias tabelas.
AverageY: Informa a mdia da pena no intervalo, caso a propriedade EnableCalc
esteja habilitada. Caso o E3Chart estiver no modo de Pesquisa de Intervalos, mostra
a mdia neste intervalo; do contrrio, mostra a mdia no intervalo entre o incio e o
fim no eixo horizontal. Valores com qualidade ruim no so considerados caso a
propriedade ShowBadPoints estiver desabilitada. Esta propriedade somente de
leitura.
E3 - Scripts - Manual de Referncia
Propriedades 351
BkColor: Determina a cor de fundo usada em uma pena do tipo rea. O valor
padro desta propriedade vazio. Exemplo:
Sub CommandButton1_Click()
Set Pen1 = Screen.Item("E3Chart1").Pens.Item("Pen1")
Pen1.BkColor = RGB (255,0,0)
End Sub
BufferSize: Determina o nmero de pontos mantidos na pena de tempo real.
Aps este valor, os dados mais antigos so descartados. Nas penas histricas, esta
propriedade no tem efeito. Esta propriedade ser considerada somente aps a
conexo da pena. Para maiores informaes, veja o mtodo Connect(). O valor
padro desta propriedade 10.000, e deve ser sempre maior que 0.
Exemplo:
Sub CommandButton1_Click()
Set Pen1 = Screen.Item("E3Chart1").Pens.Item("Pen1")
Pen1.Disconnect()
Pen1.BufferSize = 5000
Pen1.Connect()
End Sub
Color: Determina a cor da linha da pena no E3Chart. O valor padro desta
propriedade vazio.
Exemplo:
Sub CommandButton1_Click()
Set Pen1 = Screen.Item("E3Chart1").Pens.Item("Pen1")
Pen1.Color= RGB (212,208,20)
End Sub
DataSourceType: Determina a origem dos dados da pena. As opes disponveis
para esta propriedade so as seguintes:
Opes disponveis para DataSourceType
OPO DESCRIO
0- Tempo Real Indica conexo da pena a um tag atualizado em tempo
real.
1- Histrico Indica conexo da pena aos dados vindos de uma
consulta.
2- Pena Nista Indica conexo da pena a tags de tempo real e dados
histricos simultaneamente.

E3 - Scripts - Manual de Referncia
352 Propriedades
Quando a propriedade DataSourceType for igual a 0 (Tempo Real), as propriedades
XLink e YLink informam os links utilizados; ou ento a propriedade UseTimeStamp
informa que a propriedade XLink no ser usada, estando em seu lugar o timestamp
da propriedade YLink. Quando a propriedade DataSourceType for igual a 1
(Histrico), as propriedades XField e YField informam os campos da tabela a serem
usados. A propriedade QueryName indica o nome da tabela usada. Quando
DataSourceType for igual a 2 (Pena Mista), as opes 0 e 1 funcionaro
simultaneamente para a pena.
NOTA: Em tempo de execuo, quando a propriedade for alterada e a pena deixar
de mostrar os dados de tempo real, ser preciso chamar o mtodo Connect() para que
estes dados sejam mostrados novamente.
Exemplo:
Sub CommandButton1_Click()
Set E3Chart1 = Screen.Item("E3Chart1")
MsgBox "Clique OK para criar a pena"
Set Pen = E3Chart1.Pens.AddPen("Pen1")
Pen.DataSourceType = 0 'tempo real
Pen.YLink = "Dados.TagDemo1"
Pen.UseTimeStamp = True 'no X usa o timestamp
Pen.Color = RGB(255,0,0)
Pen.Docstring = "teste"
MsgBox "Clique OK para conectar"
Pen.Connect() 'comea a receber os dados
MsgBox "Clique OK para enquadrar"
E3Chart1.FitPen(0)
MsgBox "Clique OK para remover a pena"
E3Chart1.Pens.Remove(Pen.Name)
End Sub
DigitalData: Determina o estilo de plotagem digital. Se a propriedade estiver
configurada para True, o estilo de plotagem digital assume que a variao do dado
seja de forma digital, ou seja, que seu valor em relao ao ltimo variou
instantaneamente. Caso contrrio, a variao considerada linear e os pontos so
unidos por um segmento de reta. O valor padro desta propriedade True. Exemplo:
Sub CommandButton1_Click()
Set Pen1 = Screen.Item("E3Chart1").Pens.Item("Pen1")
Pen1.DigitalData = True
End Sub
E3 - Scripts - Manual de Referncia
Propriedades 353
EnableCalc: Habilita/desabilita o clculo da mdia, mnimos e mximos dentro
do intervalo.
EnableHighLimit: Habilita/desabilita a verificao do limite alto.
EnableLowLimit: Habilita/desabilita a verificao do limite baixo.
EU: Esta propriedade utilizada para identificar a unidade de engenharia que o
valor representa, como por exemplo: graus, metros, KW/h, etc.
HighLimit: Determina o limite de alarme alto.
InterpolatedBeginY: Informa o valor do ponto interpolado onde o cursor inicial
cruza com a pena. Esta propriedade somente de leitura.
InterpolatedEndY: Informa o valor do ponto interpolado onde o cursor final
cruza com a pena. Esta propriedade somente de leitura.
LimitPenBkColor: Determina a cor de fundo da pena quando em alarme.
LimitPenColor: Determina a cor da pena quando em alarme.
LowLimit: Determina o limite de alarme baixo.
MaxY: Informa o valor mximo da pena no intervalo, caso a propriedade
EnableCalc esteja habilitada. Caso o E3Chart estiver no modo de Pesquisa de
Intervalos, mostra a mdia nesse intervalo; do contrrio, mostra a mdia no intervalo
entre o incio e o fim no eixo horizontal. Valores com qualidade ruins no so
considerados caso a propriedade ShowBadPoints estiver desabilitada. Esta
propriedade somente de leitura.
MinY: Informa o valor mnimo da pena no intervalo, caso a propriedade
EnableCalc esteja habilitada. Caso o E3Chart estiver no modo de Pesquisa de
Intervalos, mostra a mdia nesse intervalo; do contrrio, mostra a mdia no intervalo
entre o incio e o fim no eixo horizontal. Valores com qualidade ruins no so
considerados caso a propriedade ShowBadPoints estiver desabilitada. Esta
propriedade somente de leitura.
Name: Determina o nome da pena. Exemplo:
Sub CommandButton1_Click
E3 - Scripts - Manual de Referncia
354 Propriedades
Screen.Item("E3Chart1").Pens.Name= "Pena1"
End Sub
PenLineStyle: Determina o tipo de linha da pena. As opes disponveis so as
seguintes:
Opes disponveis para PenLineStyle
OPO DESCRIO
0-LsSolid Linha slida.
1-LsDash Linha tracejada.
2-LsDot Linha pontilhada.
3-LsDashDot Linha trao-ponto.
+-LsDashDotDot Linha trao-ponto-ponto.
5-LsNull Sem linha.
Exemplo:
Sub CommandButton1_Click()
Set Pen1 = Screen.Item("E3Chart1").Pens.Item("Pen1")
Pen1.PenLineStyle = 4
End Sub
PenType: Determina o tipo de desenho da pena no E3Chart (0= linha; 1= ponto;
2 = ponto-linha; 3 = rea). Exemplo:
Sub CommandButton1_Click()
Set Pen1 = Screen.Item("E3Chart1").Pens.Item("Pen1")
Pen1.PenType = 1
End Sub
QueryName: Determina o nome da consulta que a pena est utilizando. Esta
propriedade utilizada se a propriedade DataSourceType estiver configurada para 1
(Histrico).
Exemplo:
Sub CommandButton1_Click()
Set Pen1 = Screen.Item("E3Chart1").Pens.Item("Pen1")
Pen1.QueryName = Consulta12
End Sub
ScaleX, ScaleY: As propriedades ScaleX e ScaleY indicam a quais escalas X e Y
do E3 Chart a pena est associada, respectivamente. A escala configurada para
ScaleX tem orientao horizontal, ou seja, pode estar posicionada no topo ou na base
E3 - Scripts - Manual de Referncia
Propriedades 355
do E3 Chart. A escala configurada para ScaleY tem orientao vertical, estando
posicionada esquerda ou direita do objeto.
Exemplo:
Sub CommandButton1_Click()
Set Chart = Screen.Item("E3Chart1")
Set Pen = Chart.Pens.AddPen("PenaDoTagDemo2")
Pen.YLink = "Dados.TagDemo2"
Pen.UseTimeStamp = True
' A escala deve existir previamente.
Pen.ScaleY = "EscalaParaTagDemo2"
Pen.Connect
End Sub
ScanValue: Define o tempo de leitura esperado do tag da pena de tempo real.
Este valor levado em conta no modo de desenho analgico. Quando o valor
ultrapassa o valor determinado por ScanValue, considera-se que o valor do tag no
foi alterado no intervalo. De outra forma, quando o ScanValue igual a zero, os
dados da pena so sempre conectados com uma reta ligando os dois pontos como se
o valor estivesse variando de forma linear. A unidade desta propriedade
milissegundos. Exemplo:
Sub CommandButton1_Click()
Set Pen1 = Screen.Item("E3Chart1").Pens.Item("Pen1")
Pen1.ScanValue = 1000
End Sub
ShowAverage: Habilita a exibio da mdia da pena no E3Chart. Esta
propriedade s tem efeito caso a propriedade EnableCalc esteja habilitada.
ShowBadPoints: Quando desabilitada, os pontos com qualidade ruim no sero
plotados. Se a pena estiver traando linhas, as linhas que passam pelos pontos de
qualidade ruim no sero conectadas. Para que a qualidade dos pontos seja levada
em considerao, o campo "nomecampo_quality" deve estar selecionado na
Consulta do E3Chart. Quando habilitada, todos os pontos so plotados normalmente
ShowMinMax: Habilita a exibio dos pontos mnimo e mximo da pena no
E3Chart. Esta propriedade s tem efeito caso a propriedade EnableCalc esteja
habilitada.
UseTimeStamp: Determina que ser utilizado, para o eixo horizontal, o valor do
timestamp associado ao eixo vertical. Veja exemplo na descrio da propriedade
DataSourceType.
E3 - Scripts - Manual de Referncia
356 Propriedades
Visible: Determina se pena est visvel no E3Chart. Se a opo estiver
configurada para True, a pena visvel em runtime. Caso contrrio, a pena fica
invisvel. Exemplo:
Sub CommandButton1_Click()
Set Pen1 = Screen.Item("E3Chart1").Pens.Item("Pen1")
Pen1.Visible = Not Pen1.Visible
End Sub
Width: Determina a largura da linha da pena no E3Chart.
Exemplo:
Sub CommandButton1_Click()
Set Pen1 = Screen.Item("E3Chart1").Pens.Item("Pen1")
Pen1.Width = 10
End Sub
XField: Nome do campo da consulta usado para plotar o dado em uma escala
horizontal. usada para penas histricas.
XLink: Nome do link usado para plotar o dado em uma escala horizontal.
Quando o valor desta propriedade alterado, a pena automaticamente
desconectada. Aps a configurao, preciso chamar o mtodo Connect() para que a
pena comece a receber os dados relativos a este link. usada para penas de tempo
real.
XMaxY: Informa o valor X relativo ao ponto MaxY. Esta propriedade somente
de leitura.
XMinY: Informa o valor X relativo ao ponto MinY. Esta propriedade somente
de leitura.
YField: Nome do campo da consulta usado para plotar o dado em uma escala
vertical. usada para penas histricas.
YLink: Nome do link usado para plotar o dado em uma escala vertical. Quando o
valor desta propriedade alterado, a pena automaticamente desconectada. Aps a
configurao, preciso chamar o mtodo Connect() para que a pena comece a
receber os dados relativos a este link. usada para penas de tempo real.
E3 - Scripts - Manual de Referncia
Propriedades 357
6.21.2. Propriedade da Coleo de Penas
Count: Contm o nmero total de penas inseridas no E3Chart. Esta propriedade
somente de leitura.
6.21.3. Propriedade da Coleo de Consultas
Count: Contm o nmero total de consultas do E3Chart. Esta propriedade
somente de leitura.
6.21.4. Propriedades da Coluna
Caption: Permite definir um ttulo para a coluna.
Column: Retorna o identificador da coluna. Veja a tabela de identificao das
colunas. Exemplo:
Sub CommandButton15_Click()
Set col= Screen.Item("E3Chart1").Legend.Item(1)
MsgBox col.Column
End Sub
Format: Configura o formatador usado na coluna.
Exemplo:
Sub CommandButton15_Click()
Set col= Screen.Item("E3Chart1").Legend.Item(1)
MsgBox col.Format="0.0"
End Sub
Index: Retorna a posio da coluna na Legenda. Exemplo:
Sub CommandButton15_Click()
Set col= Screen.Item("E3Chart1").Legend.Item(1)
MsgBox col.Index
End Sub
Name: Determina o nome da coluna. O nome das colunas podem ser vistos na
tabela de identificao das colunas.
E3 - Scripts - Manual de Referncia
358 Propriedades
Exemplo:
Sub CommandButton1_Click()
set Chart = screen.item("E3Chart1")
set query = Chart.Queries.Item(0)
MsgBox query.Name
MsgBox query.TableName
End Sub
TextAlign: Retorna o alinhamento do texto da coluna. As opes disponveis
para esta propriedade so as seguintes:
Opes disponveis para TextAlign
OPO DESCRIO
0- taLeft Alinhamento esquerdo
1- taRight Alinhamento direito
2- taCenter Alinhamento centralizado

Exemplo:
Sub CommandButton1_Click()
Set col= Screen.Item("E3Chart1").Legend.Item(1)
col.TextAlign = 2
End Sub
Width: Retorna a largura da coluna. Exemplo:
Sub CommandButton1_Click()
Set col= Screen.Item("E3Chart1").Legend.Item(1)
col.width = 50
End Sub
6.21.5. Propriedades da Legenda
Count: Retorna o nmero total de colunas da Legenda. Exemplo:
Sub CommandButton10_Click()
MsgBox Screen.Item("E3Chart1").Legend.Count
End Sub
E3 - Scripts - Manual de Referncia
Propriedades 359
LegendPos: Indica a posio da legenda no E3Chart.
Opes disponveis para LegendPos
OPO DESCRIO
0- lgTop Mostra a legenda n o topo.
1- lgLeft Mostra a legenda na esquerda.
2- lgBottom Mostra a legenda na base.
3- lgRight Mostra a legenda na direita.
Exemplo:
Sub CommandButton10_Click()
Screen.Item("E3Chart1").Legend.LegendPos = 3
End Sub
ShowAllPens: Quando a propriedade for True, todas as penas do E3Chart so
mostradas na legenda. A propriedade Visible da pena ignorada. Quando em False,
somente as penas com a propriedade Visible = True sero mostradas.
Exemplo:
Sub CommandButton1_Click()
Set E3Chart1 = Screen.Item("E3Chart1")
E3Chart1.Legend.ShowAllPens = not E3Chart1.Legend.ShowAllPens
End Sub
ShowHeader: Determina a visibilidade do ttulo da legenda (cabealho). Se a
opo for configurada para True, o ttulo da legenda mostrado. Caso contrrio, o
ttulo fica invisvel. Exemplo:
Sub CommandButton2_Click()
Screen.Item("E3Chart1").Legend.ShowHeader = False
End Sub
Size: Determina o tamanho da legenda. Este tamanho pode significar a altura ou
largura, dependendo da posio da legenda. Exemplo:
Sub CommandButton13_Click()
MsgBox Screen.Item("E3Chart1").Legend.Size
End Sub
Visible: Determina a visibilidade da legenda. Se a opo estiver configurada
como True, a Legenda visvel no E3Chart. Caso contrrio, fica invisvel. Exemplo:
Sub CommandButton13_Click()
Screen.Item("E3Chart1").Legend.Visible = False
End Sub
E3 - Scripts - Manual de Referncia
360 Propriedades
6.21.6. Propriedades do Eixo
Nota: HorAxis e VerAxis so propriedades da coleo de eixos que acessam os eixos
padro horizontal e vertical, respectivamente. Por exemplo, ao invs de utilizar
Chart.Axes.Item("EixoHorizontal"), pode-se utilizar
Chart.Axes.HorAxis. Demais eixos criados pelo usurio tero nomes prprios,
escolhidos caso a caso.
Color: Determina a cor principal do Eixo.
Exemplo:
Sub CommandButton1_Click()
Set Chart = Screen.Item("E3Chart1")
Chart.Axes.HorAxis.Color = RGB(0,255,0)
End Sub
Format: Determina a formatao dos valores do eixo.
Exemplo:
Sub CommandButton1_Click()
' Muda a formatao
Set Chart = Screen.Item("E3Chart1")
strOldFormat = Chart.Axes.Item("NomeDoEixo").Format
MsgBox "clique para setar a formatao automtica"
Chart.Axes.Item("NomeDoEixo").Format = "" 'automatico
MsgBox "clique para usar outra formatao"
Chart.Axes.Item("NomeDoEixo").Format = "0.0"
MsgBox "clique para usar outra formatao"
Chart.Axes.Item("NomeDoEixo").Format = "dd/MM/yy hh:mm:ss"
MsgBox "clique novamente p/ voltar a formatao original"
Chart.Axes.Item("NomeDoEixo").Format = strOldFormat
End Sub
GridColor: Determina a cor das linhas da grade.Exemplo:
Sub CommandButton1_Click()
Set Chart = Screen.Item("E3Chart1")
Chart.Axes.Item("NomeDoEixo").ShowGrid = False
MsgBox "clique para trocar a cor das linhas na grade"
Chart.Axes.Item("NomeDoEixo").GridColor = RGB(0,0,255)
Chart.Axes.Item("NomeDoEixo").ShowGrid = True
End Sub
E3 - Scripts - Manual de Referncia
Propriedades 361
GridStyle: Determina o estilo da linha da grade. As opes disponveis so as
seguintes:
Opes disponveis para GridStyle
OPO DESCRIO
0- solid O estilo da linha da grade slida.
1- dash O estilo da linha da grade pontilhada.
2- dot O estilo da linha da grade tracejada.
3- dashdot O estilo da linha da grade pontilhada e tracejada.
+- dashdotdot O estilo da linha da grade ponto-trao-ponto.
5- invisible No h linhas visveis na grade (invisvel).

Exemplo:
Sub CommandButton1_Click()
Set Chart = Screen.Item("E3Chart1")
' Solid 0, dash 1, dot 2, dashdot 3, dashdotdot, invisible5
For i= 0 to 5
MsgBox "Clique para mudar o estilo da linha no grid"
Chart.Axes.Item("NomeDoEixo").GridStyle = i
Next
End Sub
Inverse: Inverte a ordem dos valores mnimo e mximo na escala numrica.
Normalmente, em escalas verticais, o valor mnimo parece abaixo, e o valor mximo
acima. Nas escalas horizontais, o valor mnimo aparece na esquerda, e o valor
mximo na direita. Quando a propriedade Inverse estiver configurada para True, no
entanto, esta ordem ser invertida: valores mximos abaixo ou esquerda, valores
mnimos acima ou direita. Exemplo:
Sub CommandButton1_Click()
set Chart = Screen.Item("E3Chart1")
Chart.Axes.Item("NomeDoEixo").Inverse=not_
Chart.Axes.Item("NomeDoEixo").Inverse
End Sub
MinorTicks: Determina o nmero total de subdivises entre as escalas.
Exemplo:
Sub CommandButton1_Click()
Set Chart = Screen.Item("E3Chart1")
Chart.Axes.Item("NomeDoEixo").MinorTicks =_
Chart.Axes.Item("NomeDoEixo").MinorTicks +1
End Sub
E3 - Scripts - Manual de Referncia
362 Propriedades
Mirror: Indica o espelhamento do eixo. Se a propriedade estiver configurada
para True, o eixo ser espelhado no lado oposto do eixo original. Caso contrrio, o
eixo permanece na mesma posio.
Exemplo:
Sub CommandButton1_DBClick()
Set Chart = Screen.Item("E3Chart1")
Chart.Axes.Item("NomeDoEixo").Mirror=not_
Chart.Axes.Item("NomeDoEixo").Mirror
End Sub
Name: Determina o nome do eixo.
Exemplo:
Sub CommandButton1_DBClick()
Set Chart = Screen.Item("E3Chart1")
Chart.Axes.Item("NomeDoEixo").Title =
Chart.Axes.Item("NomeDoEixo").Name
End Sub
Position: Determina a posio do eixo em relao a grade do E3Chart. As
opes disponveis so as seguintes:
Opes disponveis para Position
OPO DESCRIO
0- axpLeft O eixo posicionado a esquerda da escala.
1-axpRight O eixo posicionado a direita da escala.
2-axpTop O eixo posicionado no topo da escala.
3-axpBotton O eixo posicionado na base da escala.
Exemplo:
Set CommandButton1_Click()
Set Chart = Screen.Item("E3Chart1")
Set newAxis = Chart.Axes.AddAxis("")
For i= 0 to 3
MsgBox "clique ok para mudar a posio do eixo"
newAxis.Position = i
Next
MsgBox "Remover o eixo"
Chart.Axes.Remove(newAxis.Name)
End Sub
ScaleType: Determina o tipo de escala mostrada pelo eixo. As opes
disponveis deste item so as seguintes:
E3 - Scripts - Manual de Referncia
Propriedades 363
Opes disponveis para ScaleType
OPO DESCRIO
0- atNumberScale Escala numrica.
1-atLastPeriod Mostra ltimo perodo (Tempo Real)
2-atPeriod Intervalo de tempo (Histrica)
Exemplo:
Sub CommandButton1_Click()
Set Chart = Screen.Item("E3Chart1")
Set newAxis = Chart.Axes.AddAxis("")
For i = 0 to 2
MsgBox "clique ok para mudar o tipo de escala"
newAxis.ScaleType = i
Next
MsgBox "Remover o eixo"
Chart.Axes.Remove(newAxis.Name)
End Sub
ShowGrid: Determina a visualizao das linhas da grade. Se a propriedade
estiver configurada para True, as linhas da grade so mostradas. Caso contrrio, as
linhas so escondidas. Exemplo:
Sub CommandButton_Click()
Set Chart = Screen.Item("E3Chart1")
Chart.Axes.Item("NomeDoEixo").ShowGrid = not_
Chart.Axes.Item("NomeDoEixo").ShowGrid
End Sub
Title: Determina o ttulo do eixo. Exemplo:
Sub CommandButton1_Click()
Set Chart = Screen.Item("E3Chart1")
Chart.Axes.Item("NomeDoEixo").Title_ =
Chart.Axes.Item("NomeDoEixo").Name
MsgBox "Clique para remover o ttulo"
' retira o ttulo
Chart.Axes.Item("NomeDoEixo").Title = ""
End Sub
Visible: Determina a visibilidade do eixo na grade. Se a propriedade estiver
configurada para True, o eixo visvel na grade. Caso contrrio, o eixo fica
invisvel. Exemplo:
Sub CommandButton1_Click()
Set Chart = Screen.Item(E3Chart1)
E3 - Scripts - Manual de Referncia
364 Propriedades
Chart.Axes.Item("NomeDoEixo").Visible=not_
Chart.Axes.Item("NomeDoEixo").Visible
End Sub
6.21.7. Propriedades da Coleo de Eixos
Count: Retorna o nmero total de eixos do E3Chart, incluindo os dois eixos
principais (horizontal e vertical). Exemplo:
CommandButton1_Click()
Set Chart = Screen.Item("E3Chart1")
MsgBox Chart.axes.Count
End Sub
HorAxis: Retorna o eixo horizontal principal. Este eixo tambm participa da
lista de eixos. Exemplo:
Sub CommandButton1_Click()
Set Chart = Screen.Item("E3Chart1")
MsgBox Chart.axes.Item(0).Name &","& Chart.axes.Item(1).Name
MsgBox Chart.axes.HorAxis.Name &"," &_
Chart.axes.Item("NomeDoEixo").Name
End Sub
Item: Retorna o eixo atravs de seu nome ou ndice. O ndice 0 sempre o eixo
horizontal principal e o ndice 1 sempre o eixo vertical principal.
Exemplo:
Sub CommandButton1_Click()
Set Chart = Screen.Item("E3Chart")
MsgBox Chart.axes.Item(0).Name & "," & Chart.axes.Item(1).Name
MsgBox Chart.axes.HorAxis.Name & "," &
Chart.axes.Item("NomeDoEixo").Name
End Sub
E3 - Scripts - Manual de Referncia
Propriedades 365
VerAxis: Retorna o eixo vertical principal. Este eixo tambm participa da lista
de eixos. Exemplos:
Sub CommandButton1_Click()
Set Chart = Screen.Item("E3Chart1")
MsgBox Chart.axes.Item(0).Name & "," & Chart.axes.Item(1).Name
MsgBox Chart.axes.Item("NomeDoEixo").Name &","&_
Chart.axes.VerAxis.Name
End Sub
6.22. Propriedades da Frmula
DBServer: Indica o nome do banco de dados onde sero gravadas as informaes
da frmula: as unidades e os conjuntos de valores. O valor padro desta propriedade
vazio.
ImmediateExecute: Quando habilitada, faz com que a Frmula escreva seus
registros diretamente no Banco de Dados, sem precisar passar por suas filas de
operaes (arquivos e3i/e3o). Isso faz com que as operaes feitas no Banco sejam
vistas de forma mais rpida.
TableName: Indica o nome das tabelas onde ficaro as informaes das
frmulas. O valor padro desta propriedade vazio.
6.23. Propriedades dos XControls e XOb]ects
Public: Quando uma propriedade de um ElipseX pblica (True), ela ser visvel
fora da biblioteca. Caso contrrio, a propriedade ser interna e somente visvel para
o objeto. O valor padro desta propriedade True. A propriedade pblica
representada pelo cone .
Type: Determina o tipo de valores que a propriedade ir aceitar (por exemplo:
Boolean, Double, Integer, Variant, etc.). Quando for especificado um tipo de objeto
(por exemplo: DemoTag, IOTag, XObject, etc.), esta propriedade ter os seguintes
comportamentos:
a) Caso o ElipseX esteja desativado: A propriedade funciona como um string, que
especifica o caminho da instncia de um objeto do tipo configurado.
b) Caso o ElipseX esteja ativo: Na escrita, a propriedade funciona da mesma
maneira que quando o objeto est desativado. Porm na leitura, a propriedade
retorna o objeto especificado, caso ele exista. Se o caminho no aponta para um
objeto existente no momento, a propriedade retorna Nothing.
E3 - Scripts - Manual de Referncia
366 Propriedades

6.24. Propriedades do Relatrio
Para criarmos um script no relatrio, utilizamos o Editor de Scripts do Relatrio,
acessado atravs do boto Editor de Scripts e para visualizar o relatrio,
utilizamos o boto Gerar Relatrio, ambos localizados na Barra de
Ferramentas do Relatrio.
Os scripts do relatrio utilizam alguns procedimentos, dependendo do objeto e/ou da
seo que deseja incluir o cdigo.
Por exemplo:
Report.Sections("PageHeader").Controls("E3Chart1")._
GridBkColor= RGB (255, 0, 255).
onde:
PageHeader o nome da seo que o objeto est incluso no relatrio;
E3Chart1 o nome do objeto que est dentro da seo especificada, no caso o
PageHeader;
GridBkColor o nome da propriedade do objeto, neste caso o E3Chart.
RGB (255,0,255) o parmetro/ao da propriedade, neste caso, mudar a cor de
fundo do grfico para rosa.
Sendo assim, para fazermos um script no relatrio, usamos o seguinte conceito:
Report.Sections("NomeDaSeo").Controls("NomeDoObjeto")._
NomeDaPropriedade=parmetros_da_propriedade
NOTA: O objeto Relatrio encapsula um objeto ActiveReports (ou AR), que o
relatrio propriamente dito.
Caption: Contm o ttulo do relatrio que aparece na barra de ttulo da janela de
visualizao (preview). O valor padro desta propriedade vazio.
6.24.1. Propriedades de Layout do Relatrio
NOTA: As propriedades aqui descritas so parte do objeto ActiveReport (ou AR)
que encapsulado no objeto Relatrio. Estas propriedades so vlidas apenas dentro
do escopo do AR e no podem ser acessadas fora desse objeto.
E3 - Scripts - Manual de Referncia
Propriedades 367
_PageBottomMargin: Determina a margem inferior do relatrio, em twips
(1 twip = 1/1440 polegada). O valor padro desta propriedade 1440 (1 pol, ou
2,54 cm).
_PageLeftMargin: Determina a margem esquerda do relatrio, em twips
(1 twip = 1/1440 polegada). O valor padro desta propriedade 1440 (1 pol, ou
2,54 cm).
_PageRightMargin: Determina a margem direita do relatrio, em twips
(1 twip = 1/1440 polegada). O valor padro desta propriedade 1440 (1 pol, ou
2,54 cm).
_PageTopMargin: Determina a margem superior do relatrio, em twips
(1 twip = 1/1440 polegada). O valor padro desta propriedade 1440 (1 pol, ou
2,54 cm).
AllowSplitters: Permite que a tela de visualizao do relatrio seja dividida em
duas. Essa propriedade s est disponvel em tempo de execuo. Se a propriedade
estiver configurada para False (valor padro), a barra para diviso no aparece na
tela.
documentName: Determina o nome do documento para o relatrio. Este nome
aparece no gerenciador de impresso e pode ser usado para identificar mais
facilmente o relatrio. O valor padro desta propriedade ActiveReports
Document.
MaxPages: Estabelece o nmero mximo de pginas para o relatrio. Quando
este nmero alcanado, o E3 pra de processar o documento. O valor padro desta
propriedade 10.
ParentReport: Esta propriedade uma varivel de uso interno do sistema e
contm uma referncia para objeto relatrio. A propriedade somente de leitura, e
vlida apenas para os eventos DataInitialize e ReportEnd.
PrintWidth: Determina a largura da rea de impresso do relatrio, em twips. Se
o tamanho do relatrio for mudado em tempo de execuo, a largura de impresso
tambm dever ser ajustada, para garantir que o relatrio ir ocupar toda a rea de
impresso. O tamanho da rea de impresso deve tambm incluir a largura das
margens, para que o relatrio no fique maior que o tamanho do papel. Se isto
acontecer, o erro ser assinalado por uma linha pontilhada vermelha impressa em
cada pgina do relatrio.
E3 - Scripts - Manual de Referncia
368 Propriedades
RulerVisible: Quando configurado como True, indica que sero mostradas uma
rgua vertical e outra horizontal na janela de visualizao do relatrio. Do contrrio,
as rguas ficaro invisveis.
ScriptDebuggerEnabled: Habilita/desabilita o depurador do ActiveReports
(JIT), para depurar os scripts associados aos relatrios. Este depurador no est
disponvel em todo o E3, apenas nos relatrios.
ScriptLanguage: Indica a linguagem usada para interpretar os scripts associados
a um relatrio. A linguagem padro VBScript, mas JScript tambm pode ser
utilizada.
ShowParameterUI: Habilita/desabilita os parmetros da caixa de dilogo da
Consulta, que aparece quando o relatrio est sendo executado. Se a propriedade
estiver configurada para True, os parmetros da caixa de dilogo da consulta sero
mostrados. Caso contrrio, estes parmetros no so mostrados.
Status: Retorna o status do relatrio. As opes disponveis para esta
propriedades so as seguintes:
Opes disponveis para Status
OPO DESCRIO
0- DDStatIdle Indica que o relatrio est fechado.
1- DDStartRunning Indica que o relatrio est sendo executado.
2- DDStartCompleted Indica que o relatrio est completo.
3- DDStartCanceled Indica que o relatrio foi cancelado.
TOCEnabled: Habilita/desabilita o ndice do relatrio. Se a propriedade estiver
configurada para True, o ndice do relatrio habilitado; do contrrio, o relatrio
no ter ndice. O valor padro desta propriedade True.
TOCVisible: Determina a visibilidade do ndice do relatrio. Se a propriedade
estiver configurada para True, o ndice do relatrio mostrado; do contrrio, o
ndice fica invisvel. O valor padro desta propriedade True.
ToolbarVisible: Habilita/desabilita a Barra de Ferramentas da janela de prvia
de impresso do relatrio. Se a propriedade estiver configurada para True, a barra
habilitada; do contrrio, no haver barra de ferramentas nesta janela.
UserData: Configura ou retorna as informaes especficas do usurio. Esta
propriedade similar a propriedade Tag do Visual Basic, mas ser exportada e salva
em um arquivo .rpx. Pode ser usada para salvar e carregar qualquer informao
personalizada necessria ao desenho do relatrio.
E3 - Scripts - Manual de Referncia
Propriedades 369
Version: Retorna o nmero da verso do produto.
WaterMark: Adiciona uma imagem de fundo ao relatrio (marca dgua). As
marcas dagua so textos ou figuras que aparecem sob o texto do documento.
Normalmente, elas tornam o documento visualmente mais interessante.

Figura 28: Exemplo de Marca dagua
O valor padro desta propriedade vazio (sem imagem).
WaterMarkAlignment: Determina o alinhamento marca dgua no relatrio. As
opes disponveis para esta propriedade so as seguintes:
Opes disponveis para WaterMarkAlignment
OPO DESCRIO
0- ddPATopLeft Alinha a imagem ao topo e esquerda.
1- ddPATopRight Alinha a imagem ao topo e direita.
2- ddPACenter Alinha a imagem ao centro. (Default)
3- ddPABottomLeft Alinha a imagem base e esquerda.
4- ddPABottonRight Alinha a imagem base e direita.
WaterMarkPrintOnPages: Indica o nmero das pginas do relatrio que
recebero a marca dgua. A sintaxe utilizada pode incluir uma nica pgina, uma
extenso de pginas, ou mesmo uma combinao de ambos. Exemplo: 1, 5-8, 9, 10-
15.
WaterMarkSizeMode: Configura o efeito do tamanho da marca dgua na
pgina do relatrio. As opes disponveis so as seguintes:
Opes disponveis para WaterMarkSizeMode
OPO DESCRIO
0- ddSNClicp A marca dgua mostrada no relatrio no seu tamanho original.
1- ddSNStretch A marca dgua ir preencher toda a pgina do relatrio.
2- ddSNZoom A marca dgua ser aumentada at ficar do tamanho da pgina
do relatrio.
E3 - Scripts - Manual de Referncia
370 Propriedades
6.24.2. Propriedades Comuns das 8ees do Relatrio
BackColor: Especifica a cor de fundo da seo do relatrio. O efeito desta
propriedade s ser visvel se a propriedade BackStyle estiver habilitada para a
opo 1- ddBKNormal. O valor padro branco (RGB (255, 255, 255)).
BackStyle: Especifica o estilo de fundo da seo do relatrio. As opes
disponveis para esta propriedade so as seguintes: 0- ddBKTransparent: fundo
transparente e 1- ddBKNormal: fundo normal.
CanGrow: Determina a aplicao de stretch ao texto da pgina do relatrio.
Caso a largura ou altura da pgina sejam aumentados, o texto acompanha esta
variao. Se a propriedade estiver configurada para True, o texto acompanha as
variaes de altura e largura do objeto. Caso contrrio, este permanece com as
configuraes iniciais. O valor padro desta propriedade True.
CanShrink: Determina a aplicao do efeito de encolhimento ao texto da
pgina do relatrio. Caso a largura ou altura da pgina sejam diminudos, o texto
acompanha esta variao. Se a propriedade estiver configurada para True, o texto
acompanha as variaes de altura e largura do objeto. Caso contrrio, este
permanece com as configuraes iniciais. O valor padro desta propriedade True.
height: Determina a altura da seo da pgina do relatrio. O valor padro desta
propriedade 360.
IsRepeating: Determina a repetio da seo na ltima pgina do relatrio. Se a
propriedade estiver configurada para True, a seo ser repetida na ltima pgina.
Caso contrrio, no haver esta repetio.
Name: Indica o nome da seo do relatrio.
E3 - Scripts - Manual de Referncia
Propriedades 371
Type: Retorna o tipo da seo. As opes disponveis so:
Opes disponveis para Type
OPO DESCRIO
0- ReportHeader Seo tipo ReportHeader (cabealho de relatrio).
1- ReportFooter Seo tipo ReportFooter (rodap de relatrio).
2- PageHeader Seo tipo PageHeader (cabealho de pgina).
3- PageFooter Seo tipo PageFooter (rodap de pgina).
4- GroupHeader Seo tipo GroupHeader (cabealho de grupo).
5- GroupFooter Seo tipo GroupFooter (rodap de grupo).
6- Detail Seo tipo Detail (rea para contedo do relatrio).
Visible: Habilita/desabilita a visibilidade da seo no relatrio. Se a propriedade
estiver configurada para True, a seo visvel no relatrio. Caso contrrio, no
visvel. O valor padro desta propriedade True.
6.24.3. Propriedades do GroupHeader
ColumnLayout: Determina se o GroupHeader ir utilizar o mesmo layout das
colunas configuradas na seo Detail. Se a propriedade estiver configurada para
True, o nmero de colunas na seo Detail ser o mesmo do GroupHeader ou
GroupFooter associados. Caso contrrio, ele permanece com as configuraes
padro.
DataField: Retorna os dados dos campos do relatrio. Define um campo
obrigatrio para um grupo dentro do contedo da seo Detail. Este valor
ajustado ao nome de todos os campos na fonte de dados do relatrio ou ao nome de
um campo customizado que est inserido na coleo de campos. Quando esta
propriedade ajustada, o relatrio cria um grupo novo cada vez que o valor do
campo muda nos registros de dados do detalhe.
E3 - Scripts - Manual de Referncia
372 Propriedades
GrpKeepTogether: Determina se a seo GroupHeader ser impressa como
um bloco nico na mesma pgina do relatrio. As opes disponveis so as
seguintes:
Opes disponveis para GrpKeepTogether
OPO DESCRIO
0- GrpNone A pgina pode ser quebrada imediatamente depois de um
GroupHeader.
1- GrpFirstDetails O GroupHeader ser impresso com a primeira seo Detail
da mesma pgina ou coluna do relatrio.
2- GrpAll O GroupHeader, Detail e Footer de grupo sero impressos
juntos na mesma pgina do relatrio.

O valor padro desta propriedade 0- GrpNone.
KeepTogether: Determina se as sees do relatrio sero impressas como um
nico bloco, na mesma pgina. As opes disponveis para esta propriedade so as
seguintes:
Opes disponveis para KeepTogether
OPO DESCRIO
0 - ddGrpNone H uma quebra de pgina depois do relatrio.
1- ddGrpFirstDetail O relatrio imprimir a seo Detail na mesma pgina
ou coluna.

NewColumn: Insere uma nova quebra de coluna antes ou depois da impresso
da seo no relatrio. As opes disponveis para esta propriedade so as seguintes:
Opes disponveis para NewColumn
OPO DESCRIO
0- ddNPNone No h quebra de pgina na seo.
1- ddNBefore Inicia a impresso da seo em uma nova pgina.
2- ddNPAfter Inicia uma nova pgina depois de imprimir a seo.
3- ddNPBeforeAfter Inicia a impresso em uma nova pgina e uma nova pgina
depois de imprimir a seo.
E3 - Scripts - Manual de Referncia
Propriedades 373
NewPage: Insere uma quebra de pgina no relatrio. As opes disponveis para
esta propriedade so as seguintes:
Opes disponveis para NewPage
OPO DESCRIO
0- ddNPNone No h quebra de pgina na seo (padro)
1- ddNBefore Inicia a impresso numa nova pgina.
2- ddNPAfter Inicia uma nova pgina depois da impresso da seo.
3- ddNPBeforeAfter Inicia a impresso numa nova pgina e inicia uma nova pgina
depois de imprimir a seo.
Repeat: Determina se o GroupHeader ser impresso novamente depois de ser
associado seo Detail quando h mltiplas pginas, colunas ou quebras de
pginas no relatrio. As opes disponveis so as seguintes:
Opes disponveis para Repeat
OPO DESCRIO
0- ddRepeatNone No h reimpresso do grupo de cabealho (padro)
1- ddRepeatOnPage Imprime o grupo de cabealhos no topo da pgina
conforme as especificaes da seo Detail.
2- ddRepeatOnColumn Imprime o grupo de cabealhos no topo da coluna da
pgina do relatrio conforme as especificaes da
seo Detail.
3- ddRepeatAll Imprime o grupo de cabealhos e os demais objetos
no topo da pgina do relatrio conforme as
especificaes da seo Detail.I
UnderlayNext: Determina se a seo deve imprimir uma seo depois da outra,
consecutivamente. Se a propriedade estiver configurada para True, a seo seguinte
comear a impresso a partir da coordenada superior da seo na pgina do
relatrio. Caso contrrio, este recurso no utilizado. O valor padro desta
propriedade False.
6.24.4. Propriedades do Detail
ColumnCount: Determina o nmero de colunas na seo Detail do relatrio.
A largura de cada coluna deve ser igual a rea imprimvel do relatrio, dividida pelo
nmero de colunas. O valor padro desta propriedade 1.
ColumnDirection: A propriedade CollumnDirection determina a direo da
impresso das colunas da seo Detail. As opes disponveis so as seguintes:
E3 - Scripts - Manual de Referncia
374 Propriedades
Opes disponveis para ColumnDirection
OPO DESCRIO
0- ddCDDownAcross Imprime cada coluna da seo Detail de cima para
baixo e depois passa para a prxima coluna a direita.
1- ddCDAcrossDown Imprime cada coluna da seo Detail da direita
para a esquerda e assim por diante.

Layout determinado conforme a opo configurada:

ColumnSpacing: Determina o espaamento da coluna na seo Detail. O
valor padro desta propriedade 0.
KeepTogether: Determina se as sees do relatrio sero impressas como um
nico bloco, na mesma pgina. As opes disponveis para esta propriedade so as
seguintes:
Opes disponveis para KeepTogether
OPO DESCRIO
0 - ddGrpNone H uma quebra de pgina depois do relatrio.
1- ddGrpFirstDetail O relatrio imprimir a seo Detail na mesma pgina
ou coluna.

NewColumn: Insere uma nova quebra de coluna antes ou depois da impresso
da seo no relatrio. As opes disponveis para esta propriedade so as seguintes:
E3 - Scripts - Manual de Referncia
Propriedades 375
Opes disponveis para NewColumn
OPO DESCRIO
0- ddNPNone No h quebra de pgina na seo.
1- ddNBefore Inicia a impresso da seo em uma nova pgina.
2- ddNPAfter Inicia uma nova pgina depois de imprimir a seo.
3- ddNPBeforeAfter Inicia a impresso em uma nova pgina e uma nova pgina
depois de imprimir a seo.
NewPage: Insere uma quebra de pgina no relatrio. As opes disponveis para
esta propriedade so as seguintes:
Opes disponveis para NewPage
OPO DESCRIO
0- ddNPNone No h quebra de pgina na seo.
1- ddNBefore Inicia a impresso numa nova pgina.
2- ddNPAfter Inicia uma nova pgina depois da impresso da seo.
3- ddNPBeforeAfter Inicia a impresso numa nova pgina e inicia uma nova pgina
depois de imprimir a seo.

6.24.5. Propriedades do GroupFooter
ColunmLayout: Determina se o GroupFooter ir utilizar o mesmo layout das
colunas configuradas na seo Detail. Se a propriedade estiver configurada para
True, o nmero de colunas na seo Detail ir refletir no GroupHeader ou Footer
associados. Caso contrrio, permanece com as configuraes padro. O valor padro
desta propriedade True.
KeepTogether: Determina se as sees do relatrio sero impressas como um
nico bloco, na mesma pgina. As opes disponveis para esta propriedade so as
seguintes:
Opes disponveis para KeepTogether
OPO DESCRIO
0 - ddGrpNone H uma quebra de pgina depois do relatrio.
1- ddGrpFirstDetail O relatrio imprimir a seo Detail na mesma pgina
ou coluna.

E3 - Scripts - Manual de Referncia
376 Propriedades
NewColumn: Insere uma nova quebra de coluna antes ou depois da impresso
da seo no relatrio. As opes disponveis para esta propriedade so as seguintes:
Opes disponveis para NewColumn
OPO DESCRIO
0- ddNPNone No h quebra de pgina na seo.
1- ddNBefore Inicia a impresso da seo em uma nova pgina.
2- ddNPAfter Inicia uma nova pgina depois de imprimir a seo.
3- ddNPBeforeAfter Inicia a impresso em uma nova pgina e uma nova pgina
depois de imprimir a seo.
NewPage: Insere uma quebra de pgina no relatrio. As opes disponveis para
esta propriedade so as seguintes:
Opes disponveis para NewPage
OPO DESCRIO
0- ddNPNone No h quebra de pgina na seo (padro).
1- ddNBefore Inicia a impresso numa nova pgina.
2- ddNPAfter Inicia uma nova pgina depois da impresso da seo.
3- ddNPBeforeAfter Inicia a impresso numa nova pgina e inicia uma nova pgina
depois de imprimir a seo.

PrintAtBottom: Determina se o GroupFooter ou o ReportFooter sero impressos
no fundo da pgina. Se a propriedade estiver configurada para True e o relatrio
conter um PageFooter, o GroupFooter e o ReportFooter do relatrio sero impressos
acima da seo PageFooter. Configurando mais de uma seo para imprimir o
fundo do relatrio, far com que as sees seguintes do rodap sejam impressas em
pginas separadas.
6.24.6. Propriedades Comuns dos Ob]etos do Relatrio
BackColor: Especifica a cor de fundo do objeto no relatrio. O efeito desta
propriedade s ser visvel se a propriedade BackStyle estiver habilitada para a
opo 1- ddBKNormal. O valor padro desta propriedade branco (RGB 255, 255,
255).
NOTA: esta propriedade no vlida para os objetos Linha e Quebra de Pgina.
BackStyle: Especifica o estilo do fundo dos objetos do relatrio. As opes
disponveis para esta propriedade so as seguintes: 0- ddBKTransparent:
E3 - Scripts - Manual de Referncia
Propriedades 377
transparente (mostra a cor definida pela propriedade BackColor da seo); e 1-
ddBKNormal: normal (mostra a cor definida pela propriedade BackColor do objeto).
O valor padro 0- ddBKTransparent.
NOTA: esta propriedade no vlida para os objetos Linha, Cdigo de Barras,
Quebra de Pgina e Tabela.
height: Esta propriedade determina a altura do objeto no relatrio.
NOTA: esta propriedade no vlida para os objetos Linha e Quebra de Pgina.
left: Retorna o valor do posicionamento esquerdo do objeto no relatrio.
NOTA: esta propriedade no vlida para os objetos Linha e Quebra de Pgina.
Name: Determina o nome do objeto. O valor padro desta propriedade vazio.
Tag: Retorna o tipo do tag associado ao objeto, isto , booleano, string, integer,
etc.
Top: Retorna o valor do topo do objeto.
NOTA: esta propriedade no vlida para o objeto Linha.
Visible: Determina a visibilidade do objeto no relatrio. Se a opo estiver
configurada para True, o objeto visvel no relatrio. Caso contrrio, o objeto est
oculto. O valor padro desta propriedade True.
NOTA: esta propriedade no vlida para o objeto Quebra de Pgina.
Width: Esta propriedade determina a largura do objeto no relatrio.
NOTA: esta propriedade no vlida para os objetos Linha e Quebra de Pgina.
E3 - Scripts - Manual de Referncia
378 Propriedades
6.24.7. Propriedades do Cdigo de Barras {BarCode}
Alignment: Determina o alinhamento do texto do objeto no relatrio. As opes
disponveis so as seguintes: 0- ddtxLeft: alinha o texto esquerda do objeto; 1-
ddtxRight: alinha o texto direita do objeto; e 2- ddtxCenter: alinha o texto ao
centro do objeto.
BarWidth: Determina a largura das barras do Cdigo de Barras. Configurando a
lagura para 1, a barra do objeto expandida em at 15 pontos, e assim por diante.
Quanto maior o nmero configurado na propriedade, maior a largura da barra do
cdigo de barras. O valor padro desta propriedade 1.
Caption: Contm o texto do objeto propriamente dito. O valor padro desta
propriedade vazio.
CaptionPosition: Especifica a posio do texto da propriedade Caption no
objeto. As opes disponveis para esta propriedade so as seguintes: 0-
ddbcCaptionNone: o texto da propriedade Caption no aparece no cdigo de
barras; 1- ddbcCaptionAbove: o texto da propriedade Caption aparece acima do
cdigo de barras; e 2- ddbcCaptionBelow: o texto da propriedade Caption aparece
abaixo do cdigo de barras. O valor padro desta propriedade 0-
ddbcCaptionNone.
DataField: Configura ou retorna o dado associado ao objeto. Este dado associado
pode ser: um campo da tabela(s) no Banco de Dados fornecido pelo objeto Consulta;
uma expresso matemtica com campos da Consulta e funes do VBScript (neste
caso, o campo deve ser precedido do smbolo de igual =); ou um tag/propriedade
do E3. No caso o valor atual da varivel ser mostrado ao realizar a impresso. O
valor padro desta propriedade vazio.
NOTA: O servidor deve estar sendo executado para que o valor da varivel possa
ser capturado.
E3 - Scripts - Manual de Referncia
Propriedades 379
Direction: Determina a orientao espacial dos cdigos de barra. As opes
disponveis nesta propriedade so as seguintes:
Opes disponveis para Direction
OPO DESCRIO
0- ddbcLeftToRight O cdigo de barras direcionado da esquerda para a
direita.
1- ddbcRightToLeft O cdigo de barras direcionado da direita para a
esquerda.
2- ddbcTopToBottom O cdigo de barras direcionado de baixo para cima.
3-ddbcBottomToTop O cdigo de barras direcionado de cima para baixo.

O valor padro desta propriedade 0- ddbcLefttoRight.
EnableCheckSum: Habilita/desabilita a leitura do valor de CheckSum
(Caractere de objeto do cdigo de barras). Se a propriedade estiver habilitada para
False, somente cdigos com CheckSum sero afetados.
Font: Determina a fonte do objeto no texto estabelecido pela propriedade
Caption. O valor padro desta propriedade Arial.
NOTA: Esta propriedade no usada em script e/ou associaes, sendo editada
somente via E3 Studio.
Forecolor: Especifica a cor de preenchimento de frente do objeto. Nos scripts,
utilize a funo do VBScript RGB para montar a cor a ser associada a esta
propriedade. O valor padro desta propriedade preto (RGB(0, 0, 0)).
E3 - Scripts - Manual de Referncia
380 Propriedades
Style: Determina o estilo do cdigo de barras. As opes disponveis so as
seguintes:
Opes disponveis para Style
OPO DESCRIO
0- ddbcNone Estilo de cdigo de barras padro.
1- ddbcAnsi39 Estilo de cdigo de barras ANSI 3 de 9 (Cdigo 39).
Utilize letras, nmeros, -,*, $, /, +, %, etc.
2- ddbcAnsi39x Estilo de cdigo de barras ANSI estendido 3 de 9
(Cdigo estendido 39). Utilize caracteres completos
ASCII.
3- ddbcCode_2_of_5 Estilo de cdigo de barras 2 de 5. Utilize somente
nmeros.
4- ddbcCode25intlv Estilo de cdigo de barras intercalado 2 de 5. Utilize
somente nmeros.
5- ddbcCode25mat Estilo de cdigo de barras Matriz 25.
6- ddbcCode39 Estilo de cdigo de barras Cdigo 39, utilize letras,
nmeros, -,*, $, /, +, %, etc.
7- ddbcCode39x Estilo de cdigo de barras Cdigo 39 estendido.
Utilize caracteres completos ASCII.
8- ddbcCode_128_a Estilo de cdigo de barras 128 A. Utilize nmeros,
pontuaes, ou letras.
9- ddbcCode_128_b Estilo de cdigo de barras 128 B. Utilize strings,
nmeros, pontuaes, ou letras.
10- ddbcCode_128_c Estilo de cdigo de barras 128 C. Utilize somente
nmeros.
11- ddbcCode_128auto Estilo de cdigo de barras 128 Automtico. Utilize
caracteres completos ASCII. Seleciona
automaticamente cdigos entre 128 A, B e C para
setar ao cdigo de barras, o valor menor.
12- ddbcCode_93 Estilo de cdigo de barras Cdigo 93. Utilize letras,
nmeros, -,*,$, /,+,%, etc.
13- ddbcCode_93x Estilo de cdigo de barras Cdigo 93 estendido.
Utilize caracteres completos ASCII.
14- ddbcMSI Estilo de cdigo de barras Cdigo MSI. Utilize
somente nmeros.
15- ddbcPostNet Estilo de cdigo de barras PostNet. Utilize somente
nmeros com uma verificao digital.
16- ddbcCodabar Estilo de cdigo de barras. Utilize A, B, C, D, +, -, :, /,
ou nmeros.
17- ddbcEAN_8 Estilo de cdigo de barras EAN-8. Utilize somente
nmeros (7 nmeros e verificao digital).
18- ddbcEAN_13 Estilo de cdigo de barras EAN-13. Utilize somente
nmeros (12 nmeros e verificao digital).
19- ddbcUPC_A Estilo de cdigo de barras UPC-A. Utilize somente
nmeros (11 nmeros e verificao digital).
E3 - Scripts - Manual de Referncia
Propriedades 381
20- ddbcUPC_EO Estilo de cdigo de barras UPC-E1. Utilize somente
nmeros.
Usado para smbolos de compresso-zero UPC. Na
propriedade Caption, voc pode entrar com 6 dgitos
do cdigo UPC-E ou com 11 dgitos. Se um cdigo
com 11 dgitos inserido, o cdigo de barras converte
para 6 dgitos UPC-E, se possvel. Seno, converte-se
de 11 para 6 dgitos UPC-E e nada mostrado.
21- ddbcUPC_E1 Estilo de cdigo de barras UPC-E1. Utilize somente
nmeros. A largura da entrada de dados do U.P.C E1
6 caracteres numricos.
22- ddbcRM4SCC Estilo de cdigo de barras Royal Mail RM4SCC.
Utilize somente letras e nmeros (com verificao
digital). Este cdigo de barras utilizado no Reino
Unido.
23- ddbcUCCEAN128 Estilo de cdigo de barras UCC/EAN_128. Utilize
caracteres completos ASCII. A verso especial do
cdigo 128 usado na aplicao HIBC.

6.24.8. Propriedades da Elipse, Retngulo e Retngulo
Arredondado
LineColor: Especifica a cor da linha do objeto. O valor padro desta
propriedade preto (RGB 0,0,0).
LineStyle: Determina o estilo da linha do objeto. As opes disponveis desta
propriedade so as seguintes:
Opes disponveis para LineStyle
OPO DESCRIO
0- ddLSTransparent A linha do objeto fica transparente.
1- ddLSSolid A linha do objeto aparece slida.
2- ddLSDash A linha do objeto fica tracejada.
3- ddLSDot A linha do objeto fica pontilhada.
4- ddLSDashDot A linha do objeto fica tracejada.
5- ddLSDashDotDot A linha do objeto fica pontilhada, tracejada e
pontilhada.

O valor padro desta propriedade 1- ddLSSolid.
LineWeight: Especifica a largura da linha do objeto. Configurando a lagura para
1, a linha do objeto expandida em at 15 ponto, se for 2, a linha expandida em
E3 - Scripts - Manual de Referncia
382 Propriedades
at 30 pontos e assim por diante. Quanto maior o nmero configurado na
propriedade, maior a largura do objeto. O valor padro desta propriedade 1.
Shape: Permite alterar a forma do objeto. As opes disponveis so as
seguintes:
Opes disponveis para Shape
OPO DESCRIO
0- ddSHRectangle Formato Retangular.
1- ddSHEllipse Formato Eliptico ou Circular.
2- ddSHRoundRect Formato de Retngulo Arredondado.
6.24.9. Propriedade da Figura
DataField: Configura ou retorna o dado associado ao objeto. Este dado associado
pode ser: um campo da tabela(s) no Banco de Dados fornecido pelo objeto Consulta;
uma expresso matemtica com campos da Consulta e funes do VBScript (neste
caso, o campo deve ser precedido do smbolo de igual =); ou um tag/propriedade
do E3. No caso o valor atual da varivel ser mostrado ao realizar a impresso. O
valor padro desta propriedade vazio.
NOTA: O servidor deve estar sendo executado para que o valor da varivel possa
ser capturado.
ForeColor: Especifica a cor do preenchimento do fundo do objeto. Nos scripts,
utilize a funo do VBScript RGB para formar a cor a ser associada a esta
propriedade. O valor padro desta propriedade preto (RGB(0, 0, 0)).
hyperLink: Especifica o link atribudo ao texto. Para utilizar este recurso, use o
evento hyperLink. O valor padro desta propriedade vazio.
LineColor: Especifica a cor da linha do objeto. O valor padro desta
propriedade preto (RGB 0,0,0).
E3 - Scripts - Manual de Referncia
Propriedades 383
LineStyle: Determina o estilo da linha do objeto. As opes disponveis desta
propriedade so as seguintes:
Opes disponveis para LineStyle
OPO DESCRIO
0- ddLSTransparent A linha fica transparente no objeto.
1- ddLSSolid A linha aparece slida no objeto.
2- ddLSDash A linha fica tracejada no objeto.
3- ddLSDot A linha fica pontilhada no objeto.
4- ddLSDashDot A linha fica tracejada e pontilhada no objeto.
5- ddLSDashDotDot A linha fica pontilhada, tracejada e pontilhada no
objeto.

O valor padro desta propriedade 1- ddLSSolid.
LineWeight: Especifica a largura da linha do objeto. Configurando a lagura para
1, a linha do objeto expandida em at 15 ponto, e assim por diante. Quanto maior o
nmero configurado na propriedade, maior a largura do objeto. O valor padro desta
propriedade 1.
Picture: Especifica o arquivo de figura para o objeto. As extenses permitidas
so: bmp, gif, jpg cur, ico, emf e wmf. O valor padro desta propriedade vazio.
PictureAlignment: Determina o alinhamento da figura no objeto. As opes
disponveis so as seguintes:
Opes disponveis para PictureAlignment
OPO DESCRIO
0- ddPATopLeft Alinha a figura no topo esquerdo do objeto.
1- ddPATopRight Alinha a figura no topo direito do objeto
2- ddPACenter Alinha a figura no centro do objeto.
3- ddPABottomLeft Alinha a figura esquerda do objeto
4- ddPABottomRight Alinha a figura direita do objeto.

O valor padro desta propriedade 2- ddPACenter.
SizeMode: Especifica o tamanho do objeto. As opes disponveis so as
seguintes:
E3 - Scripts - Manual de Referncia
384 Propriedades
Opes disponveis para SizeMode
OPO DESCRIO
0- ddsMClip Mostra o objeto no seu tamanho atual.
1- ddsMStretch Ajusta o objeto de acordo com a sua rea.
2- ddsMZoom Ajusta a altura ou a largura da imagem do objeto dentro
da rea especificada, sem distorc-la.
6.24.10. Propriedades do 8etPoint
Alignment: Determina o alinhamento do texto no objeto. As opes disponveis
para esta propriedade so: 0-Left = alinhamento esquerda (padro);
1-Right = alinhamento direita e 2-Center = alinhamento centralizado.
CanGrow: Determina a aplicao de stretch ao texto do objeto. Caso a largura
ou altura do objeto sejam aumentados, o texto acompanha esta variao. Se a
propriedade estiver configurada para True, o texto acompanha as variaes de altura
e largura do objeto. Caso contrrio, este permanece com as configuraes iniciais. O
valor padro desta propriedade True.
CanShrink: Determina a aplicao do efeito de encolhimento ao texto do
objeto. Caso a largura ou altura do objeto sejam diminudos, o texto acompanha esta
variao. Se a propriedade estiver configurada para True, o texto acompanha as
variaes de altura e largura do objeto. Caso contrrio, este permanece com as
configuraes iniciais. O valor padro desta propriedade True.
ClassName: Retorna a classe do objeto. Esta propriedade somente de leitura.
DataField: Configura ou retorna o dado associado ao objeto. Este dado associado
pode ser: um campo da tabela(s) no Banco de Dados fornecido pelo objeto Consulta;
uma expresso matemtica com campos da Consulta e funes do VBScript (neste
caso, o campo deve ser precedido do smbolo de igual =); ou um tag/propriedade
do E3. No caso o valor atual da varivel ser mostrado ao realizar a impresso. O
valor padro desta propriedade vazio.
NOTA: O servidor deve estar sendo executado para que o valor da varivel possa
ser capturado.
Font: Esta propriedade determina a fonte do texto no objeto. O valor padro
desta propriedade vazio. Esta propriedade no pode ser utilizada em scripts e/ou
associaes e configurada somente via Studio.
E3 - Scripts - Manual de Referncia
Propriedades 385
ForeColor: A propriedade ForeColor especifica a cor de fundo do objeto. Nos
scripts, utilize a funo do VBScript RGB para montar a cor a ser associada a esta
propriedade. O valor padro desta propriedade preto (RGB(0, 0, 0)).
hyperLink: A propriedade hyperLink determina o link que ser atribudo ao
texto. Para utilizar este recurso, use o evento hyperLink.
Multiline: A propriedade Multiline indica se o texto ter mltiplas linhas (True)
ou ser uma caixa de texto simples (False). Isto pode ser visualizado quando o
objeto Viewer est em execuo. O valor padro desta propriedade False.
OutputFormat: Configura ou retorna a formatao do texto da propriedade Text,
utilizado nas configuraes da funo Format do Visual Basic.
Style: Retorna o estilo do texto configurado no objeto. Esta propriedade
somente de leitura.
SummaryDistinctField: Determina o nome do campo que ser usado pela
funo selecionada na propriedade SummaryFunc. Esta propriedade s vlida se a
funo definida em SummaryFunc for do grupo de funes Distinct Summary, o
qual abrange as funes de nmero 9 at 15, e quando a propriedade SummaryType
tem valor diferente de 0.
SummaryFunc: Determina o tipo de funo que ser usada para processar os
valores do campo especificado na propriedade DataField, como listado na tabela a
seguir. Esta propriedade s vlida quando a propriedade SummaryType tem valor
diferente de 0.
E3 - Scripts - Manual de Referncia
386 Propriedades
Opes disponveis para SummaryFunc
OPO DESCRIO
0- Sum Calcula a soma de todos os valores dentro do intervalo de totais
especificado (grupo ou pgina ou relatrio).
1- Avg Calcula a mdia de todos os valores dentro do intervalo de totais
especificado (grupo ou pgina ou relatrio).
2- Count Conta o nmero de valores dentro do intervalo de totais especificado
(grupo ou pgina ou relatrio).
3- Nin Mostra o menor valor (valor mnimo) dentro do intervalo de totais
especificado (grupo ou pgina ou relatrio).
+- Nax Mostra o maior valor (valor mximo) dentro do intervalo de totais
especificado (grupo ou pgina ou relatrio).
5- var Calcula a varincia dos valores dentro do intervalo de totais
especificado (grupo ou pgina ou relatrio).
6- varP Calcula a varincia populacional dos valores dentro do intervalo de
totais especificado (grupo ou pgina ou relatrio).
7- Dev Calcula o desvio padro dos valores dentro do intervalo de totais
especificado (grupo ou pgina ou relatrio).
8- DevP Calcula o desvio padro populacional dos valores dentro do intervalo
de totais especificado (grupo ou pgina ou relatrio).
9- DSum Calcula a soma de todos os valores distintos dentro do intervalo de
totais especificado (grupo ou pgina ou relatrio).
10- DAvg Calcula a mdia baseada nos valores distintos dentro do intervalo de
totais especificado (grupo ou pgina ou relatrio).
11- DCount Conta o nmero dos valores distintos dentro do intervalo de totais
especificado (grupo ou pgina ou relatrio).
12- Dvar Calcula a varincia dos valores distintos dentro do intervalo de totais
especificado (grupo ou pgina ou relatrio).
13- DvarP Calcula a varincia populacional dos valores distintos dentro do
intervalo de totais especificado (grupo ou pgina ou relatrio).
1+- DDev Calcula o desvio padro dos valores dentro do intervalo de totais
especificado (grupo ou pgina ou relatrio).
15- DDevP Calcula o desvio padro populacional dos valores distintos dentro do
intervalo de totais especificado (grupo ou pgina ou relatrio).

SummaryGroup: Esta propriedade s vlida quando a propriedade
SummaryType for igual a 3-SubTotal. SummaryGroup indica qual o nome da
seo GroupHeader que ser usada para controlar os subtotais, ou seja, a cada
mudana de valor no GroupHeader, o somatrio reiniciado.
NOTA: Quando esta propriedade utilizada, as propriedades CanShrink e CanGrow
ficam desabilitadas.
SummaryRunning: Determina se ser feito o total de somatrios acumulados,
de acordo com as opes: 0-None = no faz o total; 1-Group = calcula os totais
acumulados para cada intervalo de totais especificado; 2-All = calcula o total
E3 - Scripts - Manual de Referncia
Propriedades 387
acumulado para todos os valores do relatrio, independente do agrupamento. Esta
propriedade s vlida quando a propriedade SummaryType tem valor diferente de
0.
SummaryType: Determina o tipo ou nvel de totalizao a ser gerada. As opes
disponveis so as seguintes:
Opes disponveis para SummaryType
OPO DESCRIO
0- None Sem gerao de somatrio.
1- GrandTotal Especifica que ser totalizado todo o contedo do relatrio.
2- PageTotal Especifica que ser gerado um subtotal por pgina.
3- SubTotal Especifica que ser gerado um subtotal por cada grupo,
definido na propriedade SummaryGroup.
+- PageCount Especifica o contador de pgina.

Text: Determina o texto que ser atribudo ao objeto.
VerticalAlignment: Determina o alinhamento vertical do objeto, a saber:
0-Top = alinhamento pelo topo; 1-Niddle = alinhamento ao centro;
2-Bottom = alinhamento pela base.
WordWrap: Habilita/desabilita uma quebra de linha no texto, caso a rea
disponvel para o texto ultrapasse os limites determinados no objeto. Para que esta
propriedade funcione, a propriedade Multiline deve ser obrigatoriamente igual a
True. Se for False, a configurao white-space:nowrap ir aparecer na propriedade
Style.
6.24.11. Propriedades do Texto
Alignment: A propriedade Alignment determina o alinhamento do texto, a saber:
0-ddtxLeft = alinhamento esquerda; 1-ddtxRight = alinhamento direita e
2-ddtxCenter = alinhamento centralizado (valor padro).
Angle: A propriedade Angle indica o ngulo do texto. O valor da propriedade
deve ser especificado em dcimos de graus, ou seja, para que o texto seja mostrado
em um ngulo de 45 graus, o valor deve ser igual 450. O valor padro desta
propriedade 0 (posicionamento horizontal).
Caption: A propriedade Caption contm o texto do objeto propriamente dito. O
valor padro desta propriedade vazio.
E3 - Scripts - Manual de Referncia
388 Propriedades
ClassName: A propriedade ClassName permite especificar uma classe CSS
global (indicada em uma folha de estilos CSS externa) a ser aplicada ao texto. Uma
classe CSS um padro de formatao que determina tipo e tamanho de letra ou
alinhamento e espaamento do pargrafo, entre outras caractersticas. Atravs de
CSS, podemos aplicar um padro de formatao pr-definido a um texto, agilizando
e unificando a apresentao dos textos. Para aplicar um estilo especfico pode-se
utilizar a propriedade Style. O valor padro dessa propriedade o estilo Normal.
Font: Esta propriedade indica o nome da fonte (tipo das letras) do texto. O valor
padro desta propriedade vazio (o E3 vai usar o padro do sistema).
NOTA: Esta propriedade no pode ser utilizada em scripts e/ou associaes e
configurada somente via Studio.; s pode ser modificada em tempo de configurao.
Forecolor: A propriedade Forecolor especifica a cor de preenchimento do fundo
do objeto. Nos scripts, utilize a funo RGB() do VBScript para montar a cor a ser
associada a esta propriedade. O valor padro desta propriedade preto
(RGB (0,0,0)).
hyperLink: A propriedade hyperLink determina um link que ser atribudo ao
objeto. Para utilizar este recurso, use o evento hyperLink. O valor padro desta
propriedade vazio.
Multiline: A propriedade Multiline indica se o texto ter mltiplas linhas (True)
ou ser uma caixa de texto simples (False). Isto pode ser visualizado quando o
objeto Viewer est em execuo. O valor padro desta propriedade False.
Style: A propriedade Style permite especificar um estilo CSS para o texto, em
substituio ao estilo global. O valor da propriedade deve ser um string CSS vlido,
caso contrrio a propriedade ser ignorada. O valor default desta propriedade vazio
(o E3 vai usar o padro do sistema).
Exemplo:
Sub Report1_OnBeforePrint
Label1.Style = "font-family: Times; font-weight: bold;_
text-align: center; color: rgb(255,255,0)"
End Sub
VerticalAlignment: A propriedade VerticalAlignment determina o alinhamento
vertical do texto, a saber: 0-ddTxTop = alinhamento pelo topo (default);
1-ddTxNiddle = alinhamento centralizado; 2-ddTxBottom = alinhamento pela
base.
E3 - Scripts - Manual de Referncia
Propriedades 389
WordWrap: Habilita/desabilita uma quebra de linha no texto, caso a rea
disponvel para o texto ultrapasse os limites determinados no objeto. Para que esta
propriedade funcione, a propriedade Multiline deve ser obrigatoriamente igual a
True.
6.24.12. Propriedades da Linha
LineColor: A propriedade LineColor especifica a cor da linha do objeto O valor
padro desta propriedade preto (RGB 0,0,0).
LineStyle: Esta propriedade determina o estilo da linha do objeto. O valor padro
desta propriedade 1- ddLSSolid. As outras opes disponveis desta propriedade
so as seguintes:
Opes disponveis para LineStyle
OPO DESCRIO
0- ddLSTransparent A linha fica transparente no objeto.
1- ddLSSolid A linha aparece slida no objeto.
2- ddLSDash A linha fica tracejada no objeto.
3- ddLSDot A linha fica pontilhada no objeto.
4- ddLSDashDot A linha fica tracejada e pontilhada no objeto.
5- ddLSDashDotDot A linha fica pontilhada, tracejada e pontilhada no
objeto.

LineWeight: A propriedade LineWeight especifica a largura da linha do objeto.
Configurando a lagura para 1, a linha do objeto expandida em at 15 ponto, se a
largura for 2, a linha do objeto expandida em at 30 pontos e assim por diante.
Quanto maior o nmero configurado na propriedade, maior a largura do objeto. O
valor padro desta propriedade 1.
X1: A propriedade X1 habilita/desabilita a posio do ponto inicial da linha no
eixo X.
X2: A propriedade X2 determina a posio do ponto final da linha no eixo X. O
valor padro desta propriedade vazio.
Y1: A propriedade Y1 determina a posio do ponto inicial da linha no eixo Y. O
valor padro desta propriedade vazio.
E3 - Scripts - Manual de Referncia
390 Propriedades
Y2: A propriedade Y2 determina a posio do ponto final da linha no eixo Y. O
valor padro desta propriedade vazio.
6.24.13. Propriedade da Ouebra de Pagina
Enabled: A propriedade Enabled habilita/desabilita o objeto no relatrio. Se a
opo estiver configurada para True, o objeto habilitado no relatrio. Caso
contrrio, o objeto fica desabilitado. O valor padro desta propriedade True.
6.24.14. Propriedades da Tabela
CanGrow: Determina a aplicao de stretch ao texto do objeto. Caso a largura
ou altura do objeto sejam aumentados, o texto acompanha esta variao. Se a
propriedade estiver configurada para True, o texto acompanha as variaes de altura
e largura do objeto. Caso contrrio, este permanece com as configuraes iniciais. O
valor padro desta propriedade True.
CanShrink: Determina a aplicao do efeito de encolhimento ao texto do
objeto. Caso a largura ou altura do objeto sejam diminudos, o texto acompanha esta
variao. Se a propriedade estiver configurada para True, o texto acompanha as
variaes de altura e largura do objeto. Caso contrrio, este permanece com as
configuraes iniciais. O valor padro desta propriedade True.
CloseBorder: Esta propriedade habilita/desabilita a visualizao da linha da
borda da base da tabela, caso a mesma ultrapasse mais de uma pgina no relatrio.
left: A propriedade Left retorna o valor do posicionamento esquerdo do objeto no
relatrio. O valor padro desta propriedade vazio.
E3 - Scripts - Manual de Referncia
Propriedades 391
6.24.15. Propriedades do E3Chart
Exemplo de utilizao das propriedades do E3Chart em um
relatrio
Os scripts abaixo devem ser criados na seo PageHeader do relatrio, utilizando
o evento OnBeforePrint.
Exemplos:
Sub OnBeforePrint
'Usando um E3Chart em um relatrio
Set chart =_
Report.Sections("PageHeader").Controls("E3Chart1")
chart.LoadData()
chart.FitAll
End Sub

Sub OnBeforePrint
'Este script faz a cpia das configuraes do objeto
'E3Chart "chartfrom" para o E3Chart "chart"
'que ser utilizado no relatrio
Set chartfrom =_
Application.GetFrame().Screen.Item("E3Chart1")
Set chart =_
Report.Sections("PageHeader").Controls("E3Chart2")
chart.CopyConfig(chartfrom)
chart.LoadData()
chart.FitAll
End Sub
NOTA: A descrio das propriedades do E3Chart no relatrio so as mesmas
explicadas no tpico Propriedades do E3Chart.


Dvidas mais freqentes 393

Como fazer para que uma Tela janelada mostre a barra de ttulo com
botes de minimizar, maximizar e fechar?
Para isto, deve-se utilizar o mtodo SetFrameOptions() do Divisor. O parmetro !flags
especifica caractersticas da janela. O valor 127 define uma janela com os botes
[Ninimizar], [Naximizar] e [Fechar] visveis.

Como abrir uma Tela modal?
Para abrir uma Tela modal, utilize o mtodo DoModal() do Viewer. Por exemplo:
Application.DoModal "Tela1","Ttulo1",0,0,400,200,0 abre uma Tela de
nome Tela1, com o ttulo Ttulo1, na posio 0,0, com 400 pixels de largura e 200
pixels de altura, e passa o valor 0 como parmetro para a Tela.

Como fao para copiar valores de uma linha do E3Browser para um tag?
Primeiro, selecione a linha (ou registro) desejada no E3Browser. Depois, utilize o mtodo
GetColumnValue() do E3Browser. O parmetro !ndexCampo o ndice da coluna a ser
copiada (iniciando em 0).

Como impedir que o usurio digite um string num SetPoint?
Verifique se o valor digitado numrico no evento Validate. Por exemplo:
Sub Text1_Validate(Cancel, NewValue)
if not IsNumeric(newValue) then
MsgBox "The value must be numeric."
Cancel = true
end if
End Sub
Como abrir um calendrio para selecionar uma data e hora ao clicar num
SetPoint?
Usando o mtodo ShowDatePicker() no evento Click do SetPoint.
Capitulo
7
7. Dvidas mais freqentes
E3 - Scripts - Manual de Referncia
394 Dvidas mais freqentes
Por exemplo:
Sub Text1_Click()
dim datevalue
if Application.ShowDatePicker(datevalue) then
Value = datevalue
end if
End Sub
Como reconhecer todos os alarmes de uma rea?
Para reconhecer todos os alarmes de uma rea por script, possvel utilizar o mtodo
Application.GetObject(ServidorAlarmes1).AckArea(area, user), onde:
Area o nome da rea de alarmes da qual se quer reconhecer o alarme;
User o nome do operador logado, que pode ser o item Application.User.
Para reconhecer todos os alarmes ativos, possvel utilizar o mtodo
Application.GetObject(ServidorAlarmes1).AckAllAlarms(user).

Como executar uma ao ao clicar numa tecla especfica do mouse ou do
teclado?
Usando os eventos KeyDown() ou KeyUp() da tela. Estes eventos so disparados quando
uma tecla pressionada ou solta e retornam dois parmetros. Um o cdigo em ASCII da
tecla que foi pressionada, o outro indica a condio das teclas [Shift| e [Control| no
momento em que a tecla foi pressionada. A idia comparar o parmetro de retorno do
evento com o cdigo em ASCII do caractere esperado.

Como criar um script WhileRunning?
Criando um evento associado a alguma propriedade que tenha sempre o mesmo valor. Por
exemplo, a propriedade Visible de um objeto de tela. Enquanto o objeto estiver visvel
(Visible = True), o script ser executado. Porm recomendado evitar o uso de scripts
WhileRunning, pois estes podem prejudicar a performance da aplicao. Na maioria dos
casos, eles podem ser substitudos por associaes.

Como criar um script OnValueChanged?
Criando um evento associado propriedade Value do tag, que seja executado
quando a propriedade alterar o seu valor.
E3 - Scripts - Manual de Referncia
Apndice 395
NOTA: Ateno para no usar mtodos do Viewer no Server, por exemplo um
MsgBox. Se for o caso, o evento pode ser criado na tela ou at no prprio objeto
Viewer ao invs de ser criado no tag.

Como criar tags e objetos de tela durante execuo?
Usando o mtodo AddObject(). Por exemplo, o script abaixo cria tags de comunicao no
driver "Driver1".
set obj = Application.GetObject("Driver1")
for i = 1 to 100
set tag = obj.AddObject("IOTag", false)
tag.Name = "IOTag"&CStr(i)
tag.Activate
next

Como mostrar uma mensagem na tela ao alterar o valor de um tag?
Criando um evento na tela associado propriedade Value do tag, que seja executado
quando a propriedade alterar o seu valor. Neste evento, utilize o mtodo MsgBox() para
mostrar a mensagem.
Como fazer uma consulta com filtro por data antes de montar um relatrio?
Para fazer isto, necessrio configurar o objeto Consulta (ver captulo Consulta),
que acompanha o relatrio, e criar as variveis necessrias na coluna Filtro. No
evento de chamada de relatrio, use um script semelhante ao seguinte:
Set relatorio = Application.LoadReport("[Relatrio1]")
Set consulta = Relatorio.Query()
Consulta.SetVariableValue "Variavel1", Valor1
Consulta.SetVariableValue "Variavel2", Valor2
Relatorio.PrintPreview()
Onde:
[Relatrio1| o nome do relatrio a ser chamado;
variavel1, variavel2 so as variveis criadas no filtro do campo E3TimeStamp;
valor1, valor2 so as datas a serem consultadas.
Para verificar outros tipos de filtros, consulte o captulo Consultas ou a
documentao disponvel no tpico de artigos do site da Elipse Software.

E3 - Scripts - Manual de Referncia
396 Dvidas mais freqentes
Como depurar erros de scripts no servidor e no Viewer?
Caso o evento seja executado no Viewer, utilize o mtodo MsgBox(). J se o evento for
executado no servidor, utilize o mtodo Trace().

Você também pode gostar