Viewer.Timer

Post Reply
fdavid
Posts: 31
Joined: Tue Jul 19, 2016 1:40 pm

Viewer.Timer

Post by fdavid »

Como devo usar, gostaria que a cada 50000 ms uma atualização na tela fosse realizada, mas não esta dando certo não sei que é algum erro no script ou se o Timer não esta sendo disparado.

Ele tem alguma limitação, pode alterar componentes de qualquer Screen?
User avatar
daniel_bable
Moderadores
Posts: 47
Joined: Wed Jun 19, 2013 1:06 am

Re: Viewer.Timer

Post by daniel_bable »

Caro David, boa tarde!

Você poderia me informar como esta a configuração do seu timer e como esta seu script?

Nesta página, Você pode verificar algumas informações sobre o Timer.

Em caso de novas dúvidas, basta utilizar nosso fórum!

Fico no aguardo.
Obrigado.
Daniel Bable Franco
Analista em Automação

HI Tecnologia - Indústria e Comércio Ltda
Campinas - SP
Fone: +55 (19) 2139-1700
Email: daniel.franco@hitecnologia.com.br
Web-site: http://www.hitecnologia.com.br
fdavid
Posts: 31
Joined: Tue Jul 19, 2016 1:40 pm

Re: Viewer.Timer

Post by fdavid »

Timer criado:
Viewer.Timers.updStock

Iniciar habilitado Sim
Ciclico Sim
Tempo 5000
On Script=Viewer.Scripts.Script_Group.Script_001

Para testar eu só estou tentando mudar o Caption de um Static_Text
Mas ai volta a outra dúvida que coloquei no forum, como informar o caminho completo.
http://forum.hitecnologia.com.br/viewto ... creen#p255
fdavid
Posts: 31
Joined: Tue Jul 19, 2016 1:40 pm

Re: Viewer.Timer

Post by fdavid »

Conseguir fazer o Timer funcionar abrindo uma tela em 5 segundos, então no meu caso não esta executando por conta de um Tags.Get no script.
Tem alguma restrição o Timer do Viewers só acessa Tags do Viewers ?

local stock = Tags.Get(Kernel.Tags.....)

Mas se for isso, fiz um Timer em Kernel e também não executou essa linha no debug.
User avatar
daniel_bable
Moderadores
Posts: 47
Joined: Wed Jun 19, 2013 1:06 am

Re: Viewer.Timer

Post by daniel_bable »

Caro David, bom dia!

Legal que você conseguiu.

Respondendo sua pergunta o Timer do Viewer consegue acessar Tags do Viewer e do Kernel e o Timer do Kernel consegue acessar apenas Tags do Kernel.

Lembrando que você não pode esquecer de colocar o caminho do Tag entre aspas.
local stock = Tags.Get("Kernel.Tags.....")

Em caso de novas dúvidas, basta utilizar nosso fórum!
Daniel Bable Franco
Analista em Automação

HI Tecnologia - Indústria e Comércio Ltda
Campinas - SP
Fone: +55 (19) 2139-1700
Email: daniel.franco@hitecnologia.com.br
Web-site: http://www.hitecnologia.com.br
fdavid
Posts: 31
Joined: Tue Jul 19, 2016 1:40 pm

Re: Viewer.Timer

Post by fdavid »

Então não sei o que esta acontecendo de errado, o script abaixo funciona em outras situações e só no Timer que não.

Code: Select all

-- Setting variables
-------------------------
local con = Database.Get('Globals.DataBases.PostgreSQL')

-- Index of array: 1 Water, 2 Ciment, 3 Additive 
local Stock = Tags.Get("Viewers.Tags.Local.ViewerTagGroup_Display.ViewerTag_Stock")

-- Index 1 of array: Capacity
local WaterSet    = Tags.Get("Kernel.Tags.Local.TagLocalGroup_Config.TagLocal_WaterSet")
local CimentSet   = Tags.Get("Kernel.Tags.Local.TagLocalGroup_Config.TagLocal_CimentSet")
local AdditiveSet = Tags.Get("Kernel.Tags.Local.TagLocalGroup_Config.TagLocal_AdditiveSet")


Depurando, Saída LUA

Script_UpdStock:[string "-- Setting variables
..."]:7: attempt to index global 'Tags' (a nil value)
Executando __interactive__


Depurando em nível ele sai do debug na linha 2.
daniel kantor
Posts: 28
Joined: Fri Feb 19, 2016 6:12 pm

Re: Viewer.Timer

Post by daniel kantor »

David,

O seu Timer está no Kernel ou no Viewer?
Pois se o Timer está no Kernel, ele rodará o Script pelo Kernel e, com isso, você não conseguirá ler uma Tag do Viewer.
fdavid
Posts: 31
Joined: Tue Jul 19, 2016 1:40 pm

Re: Viewer.Timer

Post by fdavid »

Ele esta no Viewer mas não estou conseguindo acessar os objetos das telas, estou fazendo dessa forma:

Timer_001
OnScript = Viewer.Script.Script_001

Script_001

Code: Select all

Viewers.Screens.ScreenGroup.Screen_001.StaticText_001.Caption = "teste"
Quando o Script é disparado na mesma tela do objeto nao tenho problemas, como acessar esses objetos pelo script do Timer?
Post Reply