Boa noite,
Estou necessitando que no script para servidor, em uma view, para ler vários datapoints e tratar esses valores, é possível? não serve via meta data source, gostaria de fazer via script para servidor mesmo.
obrigado pela ajuda.
Boa noite,
Estou necessitando que no script para servidor, em uma view, para ler vários datapoints e tratar esses valores, é possível? não serve via meta data source, gostaria de fazer via script para servidor mesmo.
obrigado pela ajuda.
Olá amigo,
Segue o código para realizar a leitura de quaisquer valor dentro de um script-servidor.
var dpDao = new com.serotonin.mango.db.dao.PointValueDao();
var dpVo = dpDao.getLatestPointValue(‘XID’);
return dpVo.value;
EX:var dpVo = dpDao.getLatestPointValue(‘1’);
Boa noite, eu to tentando implementar esse codigo mas esta dando erro, eu queria saber se o codigo var dpVo = dpDao.getLatestPointValue(‘XID’); o XID seria o id do datapoint, aquele criado aleatoriamente ?
Eu sei que pode ser tarde, pode ser irrelevante, mas demorei horas buscando informações para conseguir a resposta, então vai:
P: o XID seria o id do datapoint, aquele criado aleatoriamente ?
R: NÃO, NÃO NÃO! Ninguém praticamente explica isso, mas é o DPID, um número (aparentemente sequencial) dado ao ponto. Como encontrar?
Vá à watchlist e clique na pecinha de lego e olhe a URL do ponto, algo assim: http://192.168.15.16:8080/Sojasul/data_point_details.shtm?dpid=295
O número 295 é esse DPIP.
obrigado pela resposta , agora ja entendi o recurso:facepunch:
Olá amigo,
Tambem tem essa duvida, eu queria poder fazer logica no script para o servidor e poder lê e escrever dados no data point.
Poderia postar exemplo disto, estou apanhando muito deste ScadaBr kkkkk
Pra eu pegar outros valores que não sejam o ultimo, como ficaria?
Onde encontro a documentação dos comandos que se pode usar no server script?
Seria uma boa eles postar aqui os comandos de leitura e escrita e etc…
Muchas gracias por la informacion
Bom, hoje estava tentando utilizar uma lógica com mais de 1 data point no meu script para servidor, atualmente estou usando a versão 1.2 do Scada. Notei uma diferença entre a 1.1 e a 1.2, e achei que seria importante introduzir ao forúm, se já existe essa anotação aqui, peço perdão pela redundancia, contudo aqui fica o código:
var dpDao = new com.serotonin.mango.db.dao.PointValueDao();
var dpVo = dpDao.getLatestPointValue('19');
var g = ""
if(dpVo.value == "false"){
if(this.value == 1){
g = "<font size='40px'>false</font>";
}
}
if(dpVo.value == "true"){
if(this.value == 0){
g = "<font size='40px'>True</font>";
}
}
return g;
Neste exemplo o data point cujo o XID é 19, é um data point binário, na versão 1.1 do Scada, quando executava este script, o dp.Valeue se compararia aos valore 1 ou 0, na versão 1.2 foi camparado as palavras “true” e “false”.
Hum talvez isso acontece porque você está comparando uma string chamado “false” e outra “true” talvez o certo é usar sem aspas aí realmente você está comparando se o value é false or true.