Dynamic Crosstab report [message #1008088] |
Fri, 08 February 2013 15:56  |
Eclipse User |
|
|
|
I am a BIRT newbie and I am doing some research on my own requirements. Here is what I want to implement:
1. dynamic query columns such as column A, column B, column C, column D or Column A, Column D only. I like to use Java event handler to set query columns, which event should I use?
2. I like to use java event handler to change sql predicate, which event handler should I use?
3. I like to use java event handler to do dataset binding instead of using expression like "<expression name="expression">dataSetRow["PRODUCTCODE"]</expression>" in rpt design. Which event should I use? What about performance compared to hard coded in rptdesign.
4. <xml-property name="queryText"> seems to call IQuery.prepare(queryText) as I understand. If I want to use different object instead of org.eclipse.datatools.connectivity.oda.IQuery implementation, I can write a new handler for it so I can use this handler in rptdesign or event to accomplish the same task as IQuery.
I appreciate your help.
James
|
|
|
Re: Dynamic Crosstab report [message #1008330 is a reply to message #1008088] |
Mon, 11 February 2013 18:04  |
Eclipse User |
|
|
|
James
1 - Why not just you a visibility expression for this?
You could also use a beforeFactory script and parameters to drop columns or add columns using the DE API:
http://www.birt-exchange.org/org/devshare/designing-birt-reports/1408-drop-columns-dynamically-using-de-api-in-script/
2 - beforeOpen as long as the same columns are being returned
3 - best place to do this is the beforeFactory. You could probably do it on the table as well, but the beforeFactory allows you to change virtually everything before executing it.
4 - Currently the ODA model only supports IQuery. You could use a scripted data source and write whatever you want though. You can also extend the jdbc driver, but it will still need to return an IQuery object.
http://www.eclipse.org/birt/phoenix/project/notable3.7.php#jump_5
Jason
BIRT-Exchange
|
|
|
Powered by
FUDForum. Page generated in 0.02968 seconds