Consulta JSONPath
La tarea Consulta JSONPath permite ejecutar consultas sobre datos JSON utilizando expresiones JSONPath. Esto es útil para extraer información específica de estructuras JSON complejas.
Definición de Consulta JSONPath
Una Consulta JSONPath es una expresión que permite identificar y extraer datos de una estructura JSON navegando sus elementos de forma jerárquica. Utiliza una sintaxis similar a las rutas de archivo para referirse a propiedades, objetos anidados y arrays, permitiendo seleccionar valores específicos, colecciones de elementos o porciones estructuradas del documento JSON.
Configuración
JSON: JSON de entrada, proporcionado directamente como texto o a través de un parámetro dinámico (por ejemplo, la salida DataExportJson de la tarea Base de Datos), no como una ruta de un archivo, sino como el contenido JSON directo
Ejemplo de expresión JSONPath :
$.value[?(@.name=='wmr')].type
Estructura de la Consulta
$: Representa la raíz del documento JSON..value: Selecciona el elementovaluedirectamente debajo de la raíz.[?(@.name=='wmr')]: Filtra los elementos del arrayvaluepara incluir solo aquellos en los que el atributonamesea igual a'wmr'..type: Selecciona el atributotypede los elementos filtrados.
Ejemplo de Documento JSON
Asumiendo que tenemos el siguiente documento JSON:
{
"value": [
{
"name": "wmr",
"type": "exampleType1"
},
{
"name": "otherName",
"type": "exampleType2"
}
]
}
Resultado de la Consulta
La consulta $.value[?(@.name=='wmr')].type seleccionará el valor del atributo type para el elemento en el que name sea 'wmr'. En nuestro ejemplo, el resultado será:
[
"exampleType1"
]
Parámetro de Salida
Al completar la ejecución, la tarea hace disponibles los siguientes Parámetros de Salida, utilizables como entrada en las tareas siguientes del Flujo de Trabajo.
- result: Este parámetro puede contener un mensaje de error o el resultado de la consulta.
- resultJson: Representa el resultado de la ejecución de la tarea en formato JSON, incluyendo información general, configuraciones y detalles sobre la ejecución.