Saltar a contenido

Jpath Iterator

Nombre del elemento: Iterador Jpath (Jpath Iterator)

Categoría: Módulo de extensión - programable

Descripción: Funcionalidad de tipo avanzada, permite recorrer arreglos y elementos contenidos dentro de objetos en una estructura Json.

Funcionalidad: Permite iterar sobre un caso, desde un arreglo json. Utiliza las propiedades del objeto como entidades en cada iteración.

Campos de configuración de acción

[Nombre]: Descriptor único de caja de configuración con fines de identificar la misma en el flujo.

[Entidad que contiene el arreglo]: Campo obligatorio de tipo string, donde se debe seleccionar la entidad que contendrá el arreglo que se utilizará para la extracción de información.

Este este compuesto solamente por el elemento arreglo proveniente del Json.

  • Ejemplo:

La entidad definida debe contener una estructura JsonArray: [ { “elemt1”: “value1” , “elemt2”: “value2” , “elemt3”: “value3”
} ]

[Caso a iterar]: Selección de caso que servirá para procesar múltiples elementos del arreglo, se recorrerá tantas veces el caso como elementos comprendan el arreglo.

Ejemplo: Iteration_case

Manejador de errores: Caja de selección donde se identifica la intención que se activara en caso de presentarse un error en la acción Forzar ejecución de casos. Al ejecutarse un desborde de error la entidad JPath_Iterator_Error será cargada con el detalle de error si el mismo se encuentra disponible.**

Ejemplo de implementación Jpath Iterator

-Entrada:

En este caso se identifican 3 elementos en el arreglo.

[Entidad que contiene el arreglo json]:

ArrayEntity <--

[
    {
    "name": "Molecule Man",
    "age": 29,
    "secretIdentity": "Dan Jukes",
    "powers": 
    [
        "Radiation resistance",
        "Turning tiny",
        "Radiation blast"
    ]
    },
    {
    "name": "Madame Uppercut",
    "age": 39,
    "secretIdentity": "Jane Wilson",
    "powers": 
    [
        "Million tonne punch",
        "Damage resistance",
        "Superhuman reflexes"
    ]
    },
    {
    "name": "Eternal Flame",
    "age": 1000000,
    "secretIdentity": "Unknown",
    "powers": 
    [
        "Immortality",
        "Heat Immunity",
        "Inferno",
        "Teleportation",
        "Interdimensional travel"
    ]
    }
]

[Caso a iterar]: SuperHero_case

  • Proceso y salida:

Tomando como referencia el un arreglo de 3 elementos, se ejecutará el caso 3 veces consecutivas, cada vez que se recorra se cargaran las entidades de exploración con los valores correspondientes a cada elemento.

Elemento 1 (iteración 1):

{
  "name": "Molecule Man",
  "age": 29,
  "secretIdentity": "Dan Jukes",
  "powers": [
    "Radiation resistance",
    "Turning tiny",
    "Radiation blast"
  ]
},

Entidades:

name <-- Molecule Man

age <-- 29

secretIdentity <-- Dan Jukes

Powers <--> [ "Radiation resistance", "Turning tiny", "Radiation blast" ]

Elemento 2 (iteración 2):

{
    "name": "Madame Uppercut",
    "age": 39,
    "secretIdentity": "Jane Wilson",
    "powers": 
    [
        "Million tonne punch",
        "Damage resistance",
        "Superhuman reflexes"
    ]
}

Entidades:

name <- Madame Uppercut

age <- 39

secretIdentity <- Jane Wilson

Powers <- [ "Million tonne punch", "Damage resistance", "Superhuman reflexes" ]

Y de manera similar se recorre el elemento 3 del arreglo

Funciones Avanzadas: No declaradas