- Home
- DevShare
- Forums
- Wiki
- Products & Services
- Downloads
- Documentation
- Webinars
- Store
- Blog
BIRT Exchange hosts a developer focused webinar series with a new webinar every other Friday. The list of upcoming and previously recorded webinars can be found on the news and events page. Below are the archived questions and answers from the BIRT Exchange Webinar Series.
Below are questions and answers from the webinar titled, "Incorporating Flash-based Geospatial Visualizations into BIRT Reports" presented by Mark Gamble on 10/17/2008. This webinar was recorded and the archive is available here.
Mark: Data can come from any valid dataSource that you can normally pull into a BIRT report. The XML comes in after the data is aquired by the BIRT report itself. As the data is coming in from the relational datasource, java object, xml stream. It's after this data is required that we wrap it with the needed xml that flash maps expects.
Mark: Yes.
Mark: Yes, Actuate's flash library includes obviously the maps we saw today, but there are over 400 visualizations. The other parts of that collection are what we call flash gadgets and flash charts. These other visualizations will probably be covered in a future webinar. So, maps are just one of hundreds of flash possibilities.
Below are questions and answers from the webinar titled, "Introducing BIRT Interactive Viewer Component" presented by Utpal Bhatt on 10/3/2008. This webinar was recorded and the archive is available here.
Utpal: Interactive viewer supports all versions of BIRT. So, if you have a version of BIRT already in production and have made several reports with that version, you can run them on the interactive viewer.
Utpal: Depending on the entitlement you give the user, there are a couple different ways. As a user you can interact and make changes with the document and save the document and access it later with the changes intact. The other way is that the user can be given access to make these changes to the document and allow them to save their changes as a report design, so that when they come back and run the report, it's run how they want it.
Utpal: You can undo over 20 commands.
Utpal: It is packaged as its own standalone component. This would be an interactive viewer component war file that you would be deploying to your container.
Utpal: Yes, absolutely. You can go here to get it.
Below are questions and answers from the webinar titled, "Using the Free e.Spreadsheet Designer" presented by Virgil Dodson on 8/8/2008. This webinar was recorded and the archive is available here.
Virgil: You can embed images. There is an ability to have images in say, the header, for instance, or freeze panes up top. To get those in, you just simply choose insert picture. It's just like in Excel, when you drag the picture in, it becomes a floating element.
Below are questions and answers from the webinar titled, "Using the Web-Based BIRT Designer for End Users" presented by Rob Murphy on 7/11/2008. This webinar was recorded and the archive is available here.
Rob: The templates are created by the Eclipse BIRT or Actuate BIRT designer, so inside the Eclipse IDE you do need to do certain things to make the tables available to access data. We do have a devShare submission that walks you through creating a template to use with the Business Report Studio.
Rob: The saving of reports depend on how you're leveraging the desinger. There are a few different deployments for this. Today, I looked at it, since I'm using information objects, using the iServer express. That gets saved inside the iServer express itself in that deployment. It can also get deployed in more of a standalone/work group type deployment that saves out to a file system based repository.
Rob: This is all web based using an Ajax interface. It does not require anything to be installed by the end user. It is a very low footprint, web based designer.
Rob: On the Birt-exchange site on the download section, there is a link to be able to download business report studio or the web based designer for BIRT reports. They can download that, install it, and immediately look at some of the simple templates they can use. Also, they can look at the devShare entry for building their own template.
Rob: You do not have to use iServer. It can be used as its own work group/standalone type deployment. It's part of the web tier where the generation will happen in the web tier rather than an iServer type of environment.
Below are questions and answers from the webinar titled, "What's New with BIRT 2.3?" presented by Virgil Dodson on 6/27/2008. This webinar was recorded and the archive is available here.
Jason: POJO's are typically accessed by using a scripted dataSource or just calling the java API's directly from an expression or javascript event handler. In addition to that, we did add a new extension point called the preview extension point. What that allows you to do is if you have the application context object that is used throughout the generation cycle, you can add things to that application context object when you're deployed in a web environment. You can add it before the engine actually runs. If you're using the API, you can access that and add it programatically. It's a nice feature because it's difficult to debug in the designer if you're passing information in through a web layer. So, we added the preview extension point that allows you to stub out or preload an application object before the designer uses it. In the new and notable on the website, there is an entry for that.
Jason: Not a whole lot of changes there. There is an example in the examples that show you how to use the BIRT data engine to access the data in your report and pull it into the chart engine API and use that. This new example is a better example of how to do that.
Below are questions and answers from the webinar titled, "Using the BIRT Design Engine APIs" presented by Jason Weathersby on 6/13/2008. This webinar was recorded and the archive is available here.
Virgil: You do indeed use the platform startup code in your own class.
Jason: The only difference would be that if you're using RCP, you don't want to start the platform up. The only thing you'll use the platform for is to create your factory object to create the design engine or report engine, depending on which API you're using.
Jason: Yes, almost all of them have some form of that. Some of the examples have examples of modifying existing reports, but the StructFactoryTest example creates a report from scratch.
Jason: There's a couple ways you can do that. If you're wanting to generate a total new one, the IServer has a webservice API for uploading reports after you've created them. If you have a report you're just wanting to make modifications to, you can use scripting language to make these modifications.
Virgil: I've seen an example where the entire report was created in one of the script sections, the before generate method.
Jason: One of the examples I have in the example section, the ScriptedDS dynamic example, shows how to do that.
You can find these examples in the DevShare.
Below are questions and answers from the webinar titled, "Using the BIRT Report Engine APIs" presented by Virgil Dodson on 5/30/2008. This webinar was recorded and the archive is available here.
These will be placed on BIRT Exchange soon.
Below are questions and answers from the webinar titled, "Designing High Performance BIRT Reports" presented by Mica Block on 5/16/2008. This webinar was recorded and the archive is available here.
Mica: The scripted data source will really be impacted on how you design the POJO, right, so were getting the data in the report so the better optimization that you have on the POJO, the better the report will run. That part wont effect the generation so we're asking the POJO to get the data and all will depend on how you write those classes.
Mica: if your doing grouping, you can't tell BIRT not to do the sorting. As soon as you put in a group section in a report, BIRT will try to sort the data based on that group section. However, if you sort your data ahead of time, that group sorting will perform alot faster because sorting on a sorted data set will be fast... if it's unsorted, it will take longer.
Mica: Page breaking effects very little in terms of performance. By default for HTML, the page break is on every 200 rows and changing that has very little effect on report generation. The page breaks, say for PDF, will be defined based on the master page and that will have effect on rendering so again you want your master page to create a page size that you will actually use and that will effect the rendering of the PDF but report generation will not be effect by that at all.
Mica: Today, if a report item is bound to a dataset, it will cause a requery of the database. That's the way it works. One of the things we're doing for BIRT 2.3 is we are including dataset caching so we'll actually cache the dataset and reuse it multiple times in the report. Today, different bindings will requery the database each time. Virgil: With BIRT 2.3 as well, one item will be able to use the data from another item instead of pointing directly at a dataset causing the query to only run one time.
Mica: That's a good question and this be dependent mostly on my J2EE container and depends on the multi-threaded capabilities of it. If you are concerned about this, you can use the iServer technology because it is a defined to do specificly report generation and we have found it to be extremely scalable and knows how to distribute the work needed for report generation.
Mica: Yes, there are available on BIRT Exchange.
Below are questions and answers from the webinar titled, "Interactive BIRT Reporting" presented by Ashwini Verma on 5/2/2008. This webinar was recorded and the archive is available here.
Virgil: This was not covered today however Yes you can. If you go to BIRT Exchange, in the DevShare and search for DEAPI you'll find a few examples, some that mix the a report design with the DEAPI using Script and some that create the report entirely from the DEAPI in a Java class.
Ashwini: It is the value of the group, but you have some flexibility to influence that so in your BIRT report design you can choose what to display for a group. You can also type in an expression that influences what gets displayed in the table of contents.
Ashwini: Absolutely Virgil: One of the keys to using client-side javascript is using the bookmark element. Once you use the bookmark property on a control, the javascript that you include on your report using BIRT's Text/HTML control can reference that bookmark element by ID.
Ashwini: Absolutely, examples will be uploaded to BIRT Exchange. They are in the DevShare.
Ashwini: The Interactive Viewer is running the query behind the scenes. It is a J2EE application talking to the browser, it is an AJAX based web application so everytime you interact with the Viewer, the data is being pulled up from the server which is running behind the scenes. Virgil: I'd like to elaborate a little bit, the Interactive Viewer uses AJAX interactions and as you interact with the report but it is not regenerating the report or rerunning the query every time. The report is generated once and a page at a time is rendered to the browser based on user interactiions.
Ashwini: It is not part of open source BIRT but is a commercial offering from Actuate. It is available as part of the BIRT Deployment Kit trial... or as part of the Actuate iServer Express trial.
Ashwini: Yes. Reports can be delivered directly as PDF or DOC format, or the user can export to those formats from the Interactive Viewer.
Ashwini: The reports are saved in a file-system based repository when using the BIRT Deployment Kit... and they are saved in an encyclopedia when using the iServer Express.
Virgil: The Interactive Viewer is an AJAX based web application and uses Javascript to communicate with the server running the report.
Below are questions and answers from the webinar titled, "Creating Custom BIRT Data Sources" presented by Pierre Tessier on 4/18/2008. This webinar was recorded and the archive is available here.
Pierre: Absolutely. Not so long ago, in the BIRT early stages, someone in the BIRT open source community created an ODA for the Hibernate datasource and contributed it back into the community... so there is already one out there... so you may take that one and refine it some more for your specific needs. You can find it here.
Pierre: One thing that the ODAs provide is a UI. Sure you have a relational database, but do you really want your users to write their own queries especially in a world with runaway queries on the production database. So what you can do is create your own UI where you refine what the user can do, like show them a list of available objects. so you esentially encapsulate the difficulties and complexities associated with your data model and bring to the user an easy to use GUI for them to do what they need to do. From there, you can just wrap up the standard JDBC driver with the various ODA runtime classes.
Pierre: That is a great way of re-leveraging open source code actually. In that case there, what I would like to see done is create your own runtime ODA using the wizards, however instead of using all the runtime classes that the wizard generates, you simply have the activator defer to the open source web services runtime. From there I would create my own UI which would be very specific to my web services out there and in the end, my UI builds up the appropriate query syntax and parameter inforamtion which the open source web services ODA runtime uses. You can see what this syntax looks like by staring at the XML Source file of any given report developed using the web services ODA... but that is a great way to leverage something already out there and make it very specific for your application with minimal effort.
Below are questions and answers from the webinar titled, "BIRT Scripting and Events" presented by Virgil Dodson on 4/4/2008. This webinar was recorded and the archive is available here.
Virgil: Yes, we've shown some script examples in this webinar, they are available to download from here
Virgil: This is the perfect scenario where we should use a "Java" event handler instead of "Javascript". The Java event handler is a class you write that is portable and can be used with multiple reports
Virgil: Actually, the log file will be written for each event in which I added a printwriter statement to... so yes, only those events overriden made it to the log file.
Below are questions and answers from the webinar titled, "Using the BIRT Designer" presented by Virgil Dodson on 3/21/2008. This webinar was recorded and the archive is available here.
Virgil: Yes, BIRT has a join engine embedded. You can join a database query like you would expect to do with multiple tables by using a standard SQL query... but if you want to mix a bit of database data, with XML, or text data, or even Java Objects, then you can take these multiple data sources in BIRT and create a Joint dataset. You can choose which fields join for each dataset and combine the data sets into a single data set.
Virgil: I don't have an official answer for that however in using both of those over time they are very similar in the fact that they are both open source reporting tools. Jasper is very similar to Crystal reportS where you have the nice banded report writer while BIRT was designed in 2004 to be very web friendly and you'll see things like grids and nested grids which are designed for easy web layout... and you'll see support in BIRT for things like multiple data sources which are easy to pull off in BIRT as well.
Below are questions and answers from the webinar titled, "Automated Report Delivery" presented by Rob Murphy on 3/7/2008. This webinar was recorded and the archive is available here.
Rob: The environment I am running on is a Linux server running on Redhat...and our supported Linux environments for the iServer Express are RedHat and SUSE Linux [Note: The iServer Express is also supported on Windows]
Rob: Absolutely, the iServer Express is a process that could run on one Windows or Linux box and your web tier could be running on a WebSpehere instance on a completely different machine... so yes, you can decouple the backend generation piece from the front-end user experience and management experience user interfaces
Rob: Yes, the iServer Express does leverage the BIRT Engine as part of it and currently the versions of BIRT we support are up to BIRT version 2.2
Rob: The iServer Express has Java based user interfaces. The iPortal and the Management Console we just walked through are JSP and Java based applications and need to run inside a Servlet container. However, the web services layer does give you access from virtually any environment so if you are running in a .NET environment and want to integrate the iServer Express, the Web Services layer is a great way to do so.
Rob: So the Interactive Viewer is another viewing environment within the iPortal [...or iServer Express] and the end-user experience there allows a user to take an ordinary BIRT report and massage the view of it, or personalize the report to meet their needs... So you can create groups and then aggregate information on those groups, you can filter, you can sort, you can create calculated columns... so it is a very flexible environment to be able to personalize and extend the life of a report