Many times a GeneXus application needs to be integrated with external data sources.
When this source comes from a DBMS and direct access is allowed, the DBRet can be used to integrate it into the GeneXus model.
Currently, when the interface with the external source is not SQL, integration with GeneXus must be performed through procedures and/or external objects. The drawback of this solution is that it does not integrate the data source into the GeneXus model, and therefore natural language constructions (Transactions, Business Components, For Each commands, Data Selectors) cannot be used, and the use of others (Data Providers, grids, etc.) is limited or cumbersome. In this scenario, the specifier cannot generate navigations for this Datasource.
To solve this, a mechanism has been added to GeneXus in order to integrate non-SQL external sources into the GeneXus model. This mechanism is extensible and allows adding new data sources.
This mechanism incorporates a new type of extensible Data Store (Service). In this way, a GeneXus navigation can be calculated over this Data Store and later translated into a query to the external source.
The solution consists of 3 phases (design, generation, execution time):
- Design: Inspection of the external data source and integration into the GX model.
- Generation: From the navigations determined by the specifier, generation of the queries for the external source.
- Execution time: Execution of a query for the external source and reinterpretation of results in the GX model.