I have styled a report using BIRT 2.5.0 and it had a data set containing a union of two selects.
This worked fine on BIRT 2.5.0.
We have now upgraded to BIRT 3.7.2 and the report shows a blank. On logging the sql query and running it on the database, it is returning data. But the data is not shown on the report presumably because the query is not compatible with BIRT.
I tried moving the query to the database by creating a view, however the change to the data set associated with the BIRT table is forcing me to recreate every element on the report file, which I want to avoid.
Does anybody have any tips on how we could make the 3.7.2 BIRT engine accept the union query like the older BIRT?
Thanks!
Related
I have running SpagoBI Server with birt reports and Talend jobs.
Is it possible to edit data in data source (database) from SpagoBI Server?
No, unfortunately SpagoBI 5.x does not support editing data from a data source or dataset. Depending on the use case , there are other options for presenting an interface for create, update, and delete options on data.
Unfortunately, the last code that I wrote was Fortran4 # ‘86th. Anyway, the life is unpredictable, and now I have to edit several jasper reports so digging for more than a week. I could manage well with t-sql but the HQL is my first try.
I have several reports running on tomtsat6 and connected to MSSQL server via jdbc4.
There is one main report definition jrxml file and several xml's with contains the inputs parameters, columns to display and the Hive query.
I add all of the custom classpath's in option->classpath (one of them contains the hibernate.cfg.xml and I set it on the top) so:
If I connect straight to the MSSQL DB the Hive dialect is in correct.
If try Hiberbate connection I’m getting the “/hibernate.cfg.xml not found”
So, my question is how the set the iReport environment so the execute the Hive query where connected to MSSQL via jdbc ? All I need is to be able to execute а Hive QL query.
Any help will be highly appreciated!
Thank you very much
I am doing a analysis on rdlc reports using Visual Studio. Is there a way I can provide a dynamically generated data set instead of database and tables. This way I can use the index built on entities rather than directly querying from the database.
Yes, you can pass a Dataset to ReportDataSource either generated/populated dynamically or filled with data taken from your database.
I have a custom BIRT data source that uses the BIRT Open Data Access (ODA) API similar to the example described in chapter 20 of the book "Integrating and Extending BIRT". However, I've been unable to find any way to pass data set filters to my custom data source.
When I go to run a query in BIRT, it seems to be using the following sequence of events:
BIRT requests all data from my plugin.
BIRT then applies the filters to the resultset.
So if a user wants to generate a report on April 2013 sales, the BIRT data source plugin is pulling all sales data from the server to the client and then applying the filter to limit to April 2013.
I searched on this issue and came across a similar thread in the BIRT forums from 2009, in that thread, Lina Chan stated that:
I'm afraid the "Filters" defined in BIRT Data Set Editor is something
defined purely in the BIRT host, and are not visible to an ODA data
provider. In other words, the BIRT filters' processing is handled by the
BIRT data engine, and are not pushed down to an ODA runtime driver.
Based on that answer, I'm assuming that it is not possible to do this as of the BIRT version in 2009. Is that answer still correct with today's BIRT version?
Or is there another workaround? It seems odd that BIRT would build such a pluggable interface for data sources, but provide no mechanism to filter the data coming back from the data source.
I am new to the reporting world. Wanted to know which is the right solution to about for generating a single report by querying for data from multiple databases. We are planning to use some reporting solution like Jasper Reports or BIRT. Generally the databases are going to be postgresql.
Please do feel free to let me know about any other better solutions as well.
Thanks.
With BIRT you can use as many data sources as you like; independently or together as joint data sets. A Joint Data Set is basically a join you create at the report level. The cool think here is that you can in effect create the join accross data bases, even instances.
All the expected sources are supported, even some not so expceted ones. Any JDBC DB, Web Servce, Flat File, POJOs (via a Scripted Data Source), XML, Native DB Driver (i.e. Oracle, SQL Server, etc...). You can even use on BIRT Report as a data source for a secondary BIRT report. That gets a bit beyond the scope of the question, but opens up a huge amount of options in terms of deployment and felxibility.
In JasperReports if you are generating the report on the server, and streaming it back to the client as PDF or HTML, then you can use any datasources you want, being it:
Multiple databases
Objects, i.e. Java Beans
Text files/XML
Web services
... etc