GoAnywhere MFT puede conectarse con servicios web RESTful para transferir o manipular archivos JSON y otros formatos. Conozca más sobre JSON y servicios web RESTful.
En este tutorial aprenderá cómo consultar en dos tablas de una base de datos, unir la información con una expresión condicional, y escribir los datos en un archivo JSON. Ese archivo luego puede importarse hacia otros sistemas, o los datos pueden publicarse en una llamada de Servicio Web a través de REST.
JSON es el diminutivo de JavaScript Object Notation (notación de objeto de JavaScript). Los datos en formato JSON se representan de forma lógica, organizada y de fácil acceso. JSON puede contener múltiples niveles de objetos, arrays, y datos de campo que pueden ser analizados por GoAnywhere MFT.
El primer paso es crear un nuevo proyecto. Si no sabe cómo hacerlo, puede ver este tutorial
Luego, desde Project Designer, expanda la función Database y arrastre la tarea SQL al diseño del proyecto (Project Outline)
En la tarea SQL dirígase a Database Server y seleccione el recurso en el menú desplegable.
Haga click en el botón Add para agregar una query a la tarea SQL. La tabla "Orders" de la base de datos será consultada primero.
En el campo SQL Statement escriba la consulta SQL. De forma alternativa, puede usar la herramienta SQL Wizard para crear las consultas más rápidamente. Con SQL Wizard puede elegir esquemas (librerías), tablas (archivos físicos), columnas (campos), encabezados de columnas, cláusulas “where” y criterios “order by”. Para acceder al SQL Wizard para crear una consulta SELECT, haga click en el ícono de navegación ubicado a la derecha del campo SQL Statement. Consulte el tutorial de SQL Wizard para más información.
La siguiente tabla muestra la información que contiene la variable llamada “orders” en el RowSet. La variable, junto con la anotación indexada, como por ejemplo ${orders[1]}, se usa para completar el campo de datos JSON en los pasos subsiguientes.
Al volver a la tarea SQL agregue una segunda query para la tabla "customers" de la base de datos.
La siguiente tabla muestra los datos que contiene la variable “customers” en el RowSet.
Desde el Project Designer, vaya a la librería de funciones y expanda la función Data Translation (traducción de datos). Acto seguido arrastre la tarea Write JSON al proyecto que está diseñando.
En la tarea Write JSON, especifique los siguientes campos:
En la Ventana de la tarea Write JSON haga click en el botón Add del sub-menú y seleccione Object.
En el elemento Object especifique un valor para los siguientes atributos:
En el elemento Object haga click en el botón del sub-menú Add y seleccione Array. El elemento Array recorre cada fila dentro de una variable del RowSet. En términos de JSON, un Array añadirá a sus datos una estructura de corchetes [ … ].
En el elemento Array, especifique el valor de Input RowSet Variable
Este array va a contener múltiples objetos. En el elemento Write Array, haga click en el botón Add del sub-menú, y a continuación seleccione Object.
En el elemento Object, especifique un nombre (Name). En este ejemplo, una llave abierta “{” se especifica en el elemento para que sea más fácil identificar el comienzo de este Object en el Diseño del Proyecto (Project Outline).
En el elemento Object, haga click en el botón Add del sub-menú, y a continuación seleccione Field.
En el elemento Field, especifique los siguientes campos:
Si necesita, añada campos adicionales, desde el link Add del sub-menú con la opción Add Same.Siga el mismo proceso de aquí arriba, y especifique el nombre de campo que aparecerá en el archivo de salida junto con el índice de columna apropiado de la variable del RowSet.
Haga click en el botón Save cuando termine. La siguiente imagen ilustra cómo va el diseño del proyecto hasta aquí:
El proceso de crear el segundo array con datos de la variable del RowSet ${customers} es el mismo. Seleccione el elemento Object de la acción Array: orders. Haga click en el botón Add y seleccione Array. Nombre a este array “customers” y especifique la variable del RowSet ${customers} en el campo Input RowSet Variable.
Añada el objeto que va a contener los campos del cliente. Seleccione el array de clientes, haga click en el botón Add y seleccione Object. Si quiere unir datos de ambas tablas usando un “custid” como un calificador, añada una expresión condicional al nuevo elemento Object.
Siga el mismo proceso diseñado previamente al añadir campos al array de clientes con datos de la variable del RowSet ${customers}.
La siguiente imagen muestra el archivo JSON creado desde la tarea Write JSON:
¿Necesita convertir datos de bases de datos, archivos planos, Excel, CSV o XML a formato JSON? Descargue una prueba gratuita de GoAnywhere MFT y compruebe usted mismo cómo nuestra herramienta de automatización puede ahorrarle tiempo y dinero.