ABL ODA Data Source
OpenEdge ABL Data Source is a custom ODA data source built specifically for enabling multiple result-sets (data graph – ProDataSet) support in Birt. Although the JDBC data source supports result set selection if multiple results are returned, it is impossible to use the other result sets from the same data graph returned – making multiple calls to the same business logic procedure to retrieve each result set needed by the report can dramatically affect the report performance.
The data source is set-up to work only with the ABL JDBC driver by using a more tailored data source connection wizard for easier data source definition.
ABL Data Source supports two kind of data sets:
- Root Data Set
- Child Data Set
The Root Data Set offers the same functionality as a standard data set defined for a JDBC data source. It accept a query text that can be either a select statement (for each) or a business logic procedure call (run). This data set accepts parameters – using the question mark (?) as parameter placeholder in query text – and it also support property binding to map the query text to a report parameter.
Because is very common by a business logic service to return complex data in a “data graph” format – multiple (un) related result sets – the ABL data source supports a second type of data set that can be used to retrieve other result set from the data graph obtained by the parent Root Data Set.
The Child Data Set will not make any call to the data source itself but use the data graph results cached in its parent Root Data Set, this way multiple result sets can be used by the report through a single call to the data source.