Unofficial Content

English Version

Comenzado a utilizar BI Services en mi aplicación

Uno de los objetivos que buscan las nuevas versiones GXplorer 6.0 y GXquery 3.0 es facilitar la integración de las soluciones de Business Intelligence (Reporting y Data Warehouse) a las aplicaciones.

Una solución de BI permite obtener información importante sobre el negocio que nos ayudarán en la toma de decisiones. Entonces, ¿porque no incluir este conocimiento generado en las propias aplicaciones que usa el usuario en el día a día incrementando el valor de nuestras soluciones?

Dentro de este marco, una de las nuevas funcionalidades apunta a facilitar el desarrollo de aplicaciones capaces de integrarse en arquitectura de orientación a servicios, permitiendo que desde cualquier plataforma y lenguaje de programación, se interactúe a través de Web Services con los motores de GXplorer y GXquery, explotando la base de datos operacional y Data Warehouse respectivamente.

BIServicesArchitecture

Entre los servicios brindados se destacan los siguientes:
  • Administración de sesión: servicios necesarios de autenticación con los motores.
  • Administración de Metadatas: acceso a las metadatas de un catálogo.
  • Administración de Dimensiones, Indicadores y Atributos: manejo de Business Elements (Dimensiones, Indicadores o Atributos) manipulando propiedades, restricciones.
  • Trabajar con consultas catalogadas: manejo, ejecución y publicación de consultas.

¿Como Usarlo?

Como primer punto es necesario agregar una referencia a los servicios desde mi base de conocimiento GeneXus. Para ello se utiliza la herramienta WSDL Inspector apuntando a la definición de los servicios. En la siguiente figura se detalla en una instalación default de GXplorer 6.0 la ubicación de los servicios:

BIServicesWSDLInspector

Una vez agregada la referencia se agrega el tipo de datos GXBI.Services y los tipos de datos estructurados asociados para poder manipular los servicios. Definiendo una variable basada en el nuevo tipo de dato permitirá en tiempo de ejecución que la aplicación generada invoque los servicios deseados. La programación en GeneXus es muy simple y sencilla haciendo uso de la funcionalidad de los Intellitips disponibles. La siguiente figura ejemplifica que es lo que se necesita para llamar al servicio de inicialización de sesión StartSession:

BIServicesCodingInGeneXus

¿Qué servicios necesito ejecutar para mostrar una consulta?

En términos generales para poder ejecutar una consulta y mostrar el resultado en una aplicación es necesario llamar a los siguientes servicios:
  • StartSession: define el login al motor.
  • OpenMetadata: se conecta a una metadata del catalogo.
  • GetQueryData: ejecuta una consulta.

Una vez ejecutada una consulta es necesario decidir como se desea presentar la información al usuario. Se disponen de las siguientes opciones:
  • DynamicTable: se presenta la información en una tabla dinámica ( al igual que GXplorer\GXquery Web).
  • Gráfica: si la consulta catalogada tiene grafica se puede especificar que grafica se desea mostrar.
  • Sin Formato: No se desea mostrar un formato en particular, se retornan los datos en un XML abstracto pudiendose aplicar una transformación mediante la función ?XSLTApply? de manera de personalizar el formato.

Se detallan a continuación algunos ejemplos de los posibles formatos de consulta:

Formato PivotTable - Office Web Component

Se ejecuta una consulta especificando que se desea utilizar el formato Office Web Component en su versión 2003:

BIServicesExecuteQueryWithPivotTable

Formato Gráfica - Office Web Component

Al igual que el ejemplo anterior, se ejecuta la misma consulta pero en este caso se desea mostrar una gráfica catalogada a la consulta:

BIServicesExecuteQueryWithChart

Formato PivotTable - Cross-browser Component

Se ejecuta una consulta especificando que se desea utilizar el formato de presentación Pivot-table Cross-browser:

BIServicesExecuteQueryWithDevExpressPivotTable

Sin Formato, usando la función XSLTApply


En este caso se ejecuta la misma consulta usando el "formato abstracto"; posteriormente se aplica una transformación usando la función XSLTApply para lograr una presentación personalizada:

BIServicesExecuteQueryWithXSL

Aquí se dispone de un ejemplo completo ejercitando los servicios disponibles.

Conclusiones

La inclusión de servicios a los motores ofrece una mayor interoperabilidad permitiendo una interacción con aplicaciones desde cualquier lenguaje y plataforma.

Mas aun con el actual desarrollo de las arquitecturas orientadas a servicios, se facilita el desarrollo de aplicaciones de negocio que integren la solución de Business Intelligence mediante los servicios BI.

Información asociada

Por información sobre requerimientos, instalación, activación y funcionalidades incluídas en las versiones GXplorer 6.0 y GXquery 3.0 consultar las Release Notes asociadas.

GXplorer
GXquery
Last update: April 2024 | © GeneXus. All rights reserved. GeneXus Powered by Globant