Pessoal, estou desenvolvendo uma aplicação e gostaria de colocar botões com funções liga e desliga, onde no primeiro clique o valor da memoria iria para 1 e no segundo clique o valor voltaria para zero, e cada estado seria representado por um botao diferente, eu ja consegui fazer o botao respeitar o valor da memoria pela configuração de gif binario, porem nao consego fazer o botao alterar a memoria só com 1 clique. Grato
Primeiro, vc está desenvolvendo uma aplicação externa que vai se comunicar com o ScadaBR em outra linguagem, ou está desenvolvendo algo dentro do ScadaBR? Se for a segunda opção é fácil, na representação gráfica existe um componente chamado "botão de escrita" com ele é possível alterar com um clique o estada de uma variável binária. É possível fazer isso porém usando um desenho no lugar do botão, como uma lâmpada apagada que com um clique sobre ela a lâmpada acende e vice-versa, para isso use um componente "script para servidor" e nele adicione o código descrito nesse site http://mango.serotoninsoftware.com/forum/posts/list/598.page#2859 do projeto original
eu estou desenvolvendo dentro do ScadaBr mesmo, e ja imaginava que teria que recorrer a um script, mas não domino este tipo de linguagem, voce poderia me indicar algum lugar de pesquisa para aprender estes códigos, eu sei apenas C, assembly e basic para microcontroladores mas me interessa muito isto. Grato
Olá os links que te mandei já tem vários exemplos, em específico o último link que é do mango, nome original do ScadaBR, o ScadaBR é uma continuação do projeto do mango que também é open-source. É só ler em inglês para descobrir o que cada exemplo faz, vendo os exemplos vai entendendo como usa-los, não é muito diferente de C, a linguagem que usamos no ScadaBR para programação é o antigo JavaScript agora chamado do ACME Script.
Para acender uma lâmpada ao clicar, cole este código
- var s = "";
- var mask =1024; //1024 is bit 10, 8=bit 3
- var arvo = "";
- if (value & mask)
- {
- arvo = value - mask;
- arvo = arvo +"";
- s += "<img style='cursor:pointer;' src='graphics/LightBulb/light_on.gif' onclick='mango.view.setPoint("+ point.id +", \""+ pointComponent.id +"\","+ arvo+");return false;'/>";
- }
- else
- {
- arvo = value + mask;
- arvo = arvo +"";
- s += "<img style='cursor:pointer;' src='graphics/LightBulb/light_off.gif' onclick='mango.view.setPoint("+ point.id +", \""+ pointComponent.id +"\","+ arvo+");return true;'/>";
- }
- return s;
Preste atenção apenas ao caminho da imagem que está referenciada dentro da pasta do webapps/ScadaBR, procure que achará esta pasta e o nome dos componentes, também se certifique que a variável que anexará é binária e está com marcada como configurável.
Abraço!