Esta documentación ha sido traducida automáticamente por IA.
Cálculo JSON
Workflow: Cálculo JSONCommunity Edition+Introducción
Basándose en diferentes motores de cálculo JSON, este nodo le permite calcular o transformar datos JSON complejos generados por nodos anteriores, para que puedan ser utilizados por nodos posteriores. Por ejemplo, los resultados de operaciones SQL y nodos de solicitud HTTP pueden transformarse a través de este nodo en los valores y formatos de variable necesarios para su uso en nodos posteriores.
Crear Nodo
En la interfaz de configuración del flujo de trabajo, haga clic en el botón de más ('+') en el proceso para añadir un nodo de 'Cálculo JSON':

Normalmente, el nodo de Cálculo JSON se crea debajo de otros nodos de datos para poder analizarlos.
Configuración del Nodo
Motor de Análisis
El nodo de Cálculo JSON admite diferentes sintaxis a través de distintos motores de análisis. Usted puede elegir según sus preferencias y las características de cada motor. Actualmente, se admiten tres motores de análisis:

Fuente de Datos
La fuente de datos puede ser el resultado de un nodo anterior o un objeto de datos en el contexto del flujo de trabajo. Generalmente, es un objeto de datos sin una estructura incorporada, como el resultado de un nodo SQL o un nodo de solicitud HTTP.

Normalmente, los objetos de datos de los nodos relacionados con la colección ya están estructurados a través de la información de configuración de la colección y generalmente no necesitan ser analizados por el nodo de Cálculo JSON.
Expresión de Análisis
Expresiones de análisis personalizadas, basadas en los requisitos de análisis y el motor de análisis elegido.

Cada motor ofrece diferentes sintaxis de análisis. Para más detalles, consulte la documentación en los enlaces.
A partir de la versión v1.0.0-alpha.15, las expresiones admiten el uso de variables. Las variables se pre-analizan antes de que el motor específico las ejecute, reemplazando las variables con valores de cadena específicos según las reglas de las plantillas de cadena, y concatenándolas con otras cadenas estáticas en la expresión para formar la expresión final. Esta funcionalidad es muy útil cuando necesita construir expresiones dinámicamente, por ejemplo, cuando algún contenido JSON requiere una clave dinámica para su análisis.
Mapeo de Propiedades
Cuando el resultado del cálculo es un objeto (o un array de objetos), usted puede, a través del mapeo de propiedades, asignar las propiedades necesarias a variables secundarias para su uso en nodos posteriores.

Para un resultado de objeto (o array de objetos), si no se realiza el mapeo de propiedades, el objeto completo (o array de objetos) se guardará como una única variable en el resultado del nodo, y los valores de las propiedades del objeto no podrán utilizarse directamente como variables.
Ejemplo
Supongamos que los datos a analizar provienen de un nodo SQL anterior utilizado para consultar datos, y su resultado es un conjunto de datos de pedidos:
Si necesitamos analizar y calcular el precio total de cada uno de los dos pedidos en los datos, y ensamblarlo con el ID de pedido correspondiente en un objeto para actualizar el precio total del pedido, podemos configurarlo de la siguiente manera:

- Seleccione el motor de análisis JSONata;
- Seleccione el resultado del nodo SQL como fuente de datos;
- Utilice la expresión JSONata
$[0].{"id": id, "total": products.(price * quantity)}para analizar; - Seleccione el mapeo de propiedades para asignar
idytotala variables secundarias;
El resultado final del análisis es el siguiente:
Luego, itere sobre el array de pedidos resultante para actualizar el precio total de los pedidos.


