Usa funciones en las expresiones de fórmulas - AWS IoT SiteWise

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

Usa funciones en las expresiones de fórmulas

Puede utilizar las siguientes funciones para operar con datos de las expresiones de fórmula.

Las transformaciones y las métricas son compatibles con funciones diferentes. La siguiente tabla indica qué tipos de funciones son compatibles con cada tipo de propiedad de una fórmula.

nota

Se puede incluir un máximo de 10 funciones en una expresión formulaica.

Sintaxis de las funciones

Puede usar la siguiente sintaxis para crear funciones:

Sintaxis normal

Con la sintaxis normal, el nombre de la función va seguido de paréntesis con cero o más argumentos.

function_name(argument1, argument2, argument3, ...). Por ejemplo, las funciones con sintaxis normal podrían ser similares a log(x) y contains(s, substring).

Sintaxis de llamada a funciones uniforme (UFCS)

UFCSpermite llamar a funciones mediante la sintaxis de las llamadas a métodos en la programación orientada a objetos. ConUFCS, el primer argumento va seguido de punto (.), después el nombre de la función y el resto de los argumentos (si los hay) entre paréntesis.

argument1.function_name(argument2, argument3, ...). Por ejemplo, las funciones con UFCS podrían tener el aspecto de x.log() ys.contains(substring).

También se puede utilizar UFCS para encadenar funciones posteriores. AWS IoT SiteWise utiliza el resultado de la evaluación de la función actual como primer argumento de la siguiente función.

Por ejemplo, en lugar de utilizar message.jp('$.status').lower().contains('fail'), puede utilizar contains(lower(jp(message, '$.status')),'fail').

Para obtener más información, consulte el sitio webLenguaje de programación D.

nota

Se puede utilizar UFCS para todas AWS IoT SiteWise las funciones.

AWS IoT SiteWise las funciones no distinguen entre mayúsculas y minúsculas. Por ejemplo, puede usar lower(s) y Lower(s) indistintamente.