Cómo cargar y leer Web Services Data Store en Data Integrator

On this article I will teach you in 12 steps how to load and read the information retrieved by a WebService based on a Java Application as a source of information. This is has a very important feature if for example you are building Java Social Media applications that read information from the Internet or if you have constructed a Java application that retrieves information in Json Structure XML. I will show you how Data Services makes requests and interprets replies from a web service Data Source.

Si necesitas información de fondo sobre los primeros pasos de mi proceso, he hecho un primer post sobre cómo usar Data Services SDK libraries para construir un AWTableMetadata En una aplicación Java, seguida de la publicación donde expliqué cómo acceder a una aplicación JAVA como fuente de información Utilizando el WebService DataStore en SAP Data Services.

Si ya lees mis blogs anteriores, vamos a saltar en cómo cargar y leer Web Services Data Store en Data Integrator.

Paso 1:

Abra el Diseñador de servicios de datos. Vaya a la perspectiva de Data Store y haga clic derecho con el ratón y seleccione New .

Paso 2:

Establecer el nombre del extractor y la URL donde se encuentra su servicio web WSDL ( ver mi blog anterior para referencia ) .

Paso 3:

Haga clic derecho en el botón "f (x)" Y seleccione Importar. Elija las funciones del servicio web que va a utilizar. En este ejemplo seleccionamos "getTableTweeetsEN" y "getTableTweeetsES".

Nota especial:

Para acceder a estas funciones dentro de una transformación tenemos que usar el esquema de llamada de función proporcionado por Data Services. En este caso, la función getTableTweets_EN recibe una entrada y devuelve una tabla (tabla AWTableMetadata). Este tipo de retorno viene en un formulario anidado de nuestro Servicio Web. Tendremos que resolver este esquema anidado haciendo un par de transformaciones a continuación.

Paso 4:

Seleccione el parámetro de entrada para las funciones; En este caso es un campo de una tabla llamada "WS_Parameter". Seleccionamos esa tabla como una tabla de origen y nuestro primer elemento en nuestro flujo de datos.

Paso 5:

Inserte una transformación en el flujo de datos como su segundo elemento. En esta primera consulta (Query1_EN). Creamos un SCHEMA llamado Schema 1, y asignamos el campo proveniente de la base de datos "Parameter" como un atributo de este Schema.

Paso 6:

Cree una segunda transformación (Query2_EN). Esta consulta se encargará de llamar al servicio web con el parámetro de entrada mediante el procedimiento de llamada de función. Haga clic con el botón derecho del ratón en la tabla de esquemas llamada Consulta2 y seleccione Nueva llamada de función.

Paso 7:

Seleccione el WS_ClaribaSMT dataSotre en el panel izquierdo, el panel derecho muestra las funciones que importamos al Data Store. Seleccionamos el primer getJsonTweet (para el idioma inglés) y clicamos en Siguiente.

Paso 8:

Tenemos que mapear la nueva función llamada Schema con el nuevo Schema1. Esta es la estructura utilizada para llamar a un Servicio Web en Servicios de Datos. En este caso estamos llamando a la función getJsonTweets_EN con un parámetro nombre. Estructura que coincide con nuestro SHEMA1. A continuación, haga clic en Finalizar .

El resultado final contendrá la llamada a la función. También puede agregar un atributo debajo de la llamada de función. En este caso agregamos "load_date" que contiene el sysdate que representa la fecha de los datos de carga.

Paso 9:

La tercera consulta se encargará del reconocimiento de los datos devueltos por el servicio Web. En este caso, el Esquema se encuentra en el panel izquierdo. Para capturar esto en el integrador de datos necesitamos desacoplar este esquema hasta llegar al "objeto de retorno" que contiene los datos.

Hacemos clic en el panel izquierdo encima de getJsonTweetResponse y lo arrastramos hacia el panel derecho. Luego hacemos clic derecho sobre el getJsonTweetResponse desde el panel derecho y seleccionamos la opción "Unnest". Esto causará la división entre los esquemas. Procedemos a capturarlo en la próxima consulta anidada.

Paso 10:

Hacemos el mismo procedimiento en la consulta 4, arrastramos el getJsonTweetResponse a la derecha y lo desentrañamos.

Paso 11:

Consulta 5 _EN contiene El resultado final que son dos variables que contiene el encabezado de la tabla más la fecha de carga.

Paso 12:

El último paso depende de la implementación y las reglas de negocio. La tabla devuelta tendrá este formato.

Columna 1

Valor 1

Columna 2

Valor 2

Columna N ...

Valor N ...

Conclusión

Este método se aplica especialmente si está utilizando esquema de llamada de función y una matriz como tipo de devolución para su servicio web. Si su fuente es otra cosa diferente a una aplicación, la resolución del servicio web puede variar. El método para asignar la tabla final depende de usted y de sus necesidades empresariales. Una solución fácil podría ser agregar un ID a cada fila.

Si desea tener más información, lea mis blogs anteriores o deje un comentario a continuación.

EspañolEnglish