Unofficial Content

Spanish Version

Getting started with BI Services

One of the objectives of the new GXplorer 6.0 and GXquery 3.0 versions are to make easier the integration of Business Intelligence solutions (Reporting and Data Warehouse) to applications.

A BI solution allows obtaining important business information that will be useful for decision making.
Then, shouldn't we include this knowledge generated in the applications used everyday by the user, thus incrementing the value of our solutions?  

Following this idea, one of the new features of GXplorer 6.0 and GXquery 3.0 versions aims at facilitating the development of applications that can be integrated into service oriented architectures,
enabling to interact through Web Services with GXplorer and GXquery engines, from any platform and programming language, using the Data Warehouse and the operational database respectively.

BIServicesArchitecture
 
Among the available services we can mention the following: 
  • Session Management: required authentication services with the engines. 
  • Metadatas Management: access to the metadatas of a catalog, 
  • Dimensions, Measures and Attributes Management: administration of Business Elements (Dimensions, Measures or Attributes) handling properties and constraints.  
  • Working with catalogued queries: queries handling, execution and publication. 

How should you use it?

Firstly, you must add a reference to the services from your GeneXus knowledge base. For this, you use the WSDL Inspector tool pointing at the services definition.
The following figure details the services location in a GXplorer 6.0 default installation:

BIServicesWSDLInspector

Once the reference has been added; a new data type (GXBI.Services) and some structured data types are added to the Knowledge base to interact with the BI Services.
Defining a variable based on this new data type, will allow in runtime, that a generated application could invoque the desired BI service.
Programming in GeneXus is very easy and simple using the associated Intellitips when using the GXBI.Services variable.

The following picture details the parameters needed to call the startup service called StartSession:

BIServicesCodingInGeneXus

What services should you execute to show a query? 

In general, to be able to use a query and show the result in an application , you need to call the following services: 
  • StartSession: defines the login to the engine.
  • OpenMetadata: gets connected with a catalog metadata.
  • GetQueryData: ejecutes a query. 

Once a query has been executed, you must decide how you want to show the information to the user. The following options are available:   
  • PivotTable: the information is shown in a pivot table (the same as in GXplorer\GXquery Web).
  • Chart: if the catalogued query has a chart you can specify its name.
  • Without Format: You do not want to show a specific format. With this option an abstract XML result set file is returned; the application will have to process it to show the information to the user.
    You can apply a transformation by means of the XSLTApply function to customize the format. 
There follow some examples of the possible query formats:

Office Web Component PivotTable Format

The following picture shows a query in an Office Web Component Pivot Table format.

BIServicesExecuteQueryWithPivotTable

Chart Format

If a query has several charts associated, when executing a query through BI Services a specific chart can be specified to be opened; the following picture shows the chart Salesperson Comissions of the query with the same name:

BIServicesExecuteQueryWithChart

Cross-browser PivotTable Format

The following picture shows a query using the Cross-browser Pivot Table Control format.

BIServicesExecuteQueryWithDevExpressPivotTable

Without Format, using the XSLTApply function

If you want to apply a specific format to a query the XmlAbstract option must be selected to return an XML file.
You can use the XSLTApply function (available since GeneXus 9.0) to transform the query result to an HTML (or any format) you like.
The following sample transforms the XML result set using an example XSLT file (GXBI_AbsFormatToHTML.xsl located in the services installation directory) in a HTML table.

BIServicesExecuteQueryWithXSL

Here, there is a complete example using the available services. In order to use it you need GeneXus 8.0 or higher version.
 

Conclusions

The fact of including services in the engines offers a wider interoperability allowing an interaction with applications from any language and platform.
 
Furthermore, the current SOA development facilitates the development of business applications that integrate the Business Intelligence solution through BI Services.

Associated Information 

For information on requirements, installation, activation and other features included in the version please refer to the associated Release Notes.

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