Cálculos
Permite la ejecución de funciones Javascript a partir del valor de puntos o de consultas SQL a la base de datos. Esta funcionalidad debe estar habilitada en su licencia.
Captura de pantalla
Configuración
Esta pantalla permite la definición de cálculos para los puntos cuyo Tipo se haya definido como Calculation
- Seleccione la pantalla a la cual pertenece el punto calculado desde la lista desplegable ubicada en la parte superior izquierda de la ventana
- La lista de puntos se actualizará de acuerdo a la pantalla seleccionada
- Complete los siguientes campos
Campo Descripción Función Función a utilizar en este cálculo Período (segs) Período en segundos entre ejecuciones del cálculo Fuente de datos Datos de origen para realizar el cálculo - Haga clic en “Guardar”.
Formato de fuente de datos
Se ingresa un texto en formato JSON que contiene un array de objetos clave:valor con el siguiente formato:
[ {"clave":"valor_1"}, {"clave":"valor_2"}, {"clave":"valor_3"} ]
Se deben especificar tantos pares {“clave”:“valor”} como parámetros acepte la función seleccionada.
Ejemplos de fuente de datos
Tomar datos de otros puntos según pointId
Se especifican los Id de los puntos cuyos valores se ingresarán a la función seleccionada. Ejemplo:
** [ {"pointId":"2000"}, {"pointId":"2001"}, {"pointId":"2002"} ]
Como se han expresado tres pointId, la función seleccionada deberá aceptar tres argumentos: function(a,b,c) { … }
Tomar datos de otros puntos según pointName
Se especifican los Nombres y Subnombres de los puntos cuyos valores se ingresarán a la función seleccionada. Ejemplo:
[ {"pointName":"TANQUE 1:NIVEL"}, {"pointName":"TANQUE 2:NIVEL"}, {"pointName":"TANQUE 3:NIVEL"}, {"pointName":"TANQUE 4:NIVEL"} ]
Como se han expresado cuatro pointName, la función seleccionada deberá aceptar cuatro argumentos: function(a,b,c,d) { … }
Tomar datos de consultas SQL a la base de datos
Se especifican sentencias SQL cuyos resultados se ingresarán a la función seleccionada. Ejemplo:
[ {"sqlQuery":"SELECT colName FROM table WHERE colId=10"}, {"sqlQuery":"SELECT colName FROM table WHERE colId=11"}, {"sqlQuery":"SELECT colName FROM table WHERE colId=12"} ]
Combinaciones de los ejemplos anteriores
Los tipos pointId, pointName y sqlQuery pueden ser combinados. Ejemplo:
[ {"pointName":"BOMBA 1:ESTADO"}, {"pointId" :"1002"}, {"pointId" :"1013"}, {"pointId" :"1024"}, {"pointName":"TANQUE 3:NIVEL"} ]