Creating a BIRT Report as a Calendar View

I encountered a forum qustion recently asking about creating a calendar view in a BIRT report to show a job number within a calendar view…

OpenText  profile picture
OpenText

April 07, 20103 min read

QR code and smartphone, new technologies. Electronic digital technologies scanning, barcode
QR code and smartphone, new technologies. Electronic digital technologies scanning, barcode

I encountered a forum qustion recently asking about creating a calendar view in a BIRT report to show a job number within a calendar view on the date that the job was due to be completed. I’m not sure why, but I hadn’t really thought of this approach to displaying data before. However, I was easily able to create the report using a table, an embedded 7 column grid, a 1 detail row table in each grid cell for the days of the week, a sub table or list within each day to display the jobs, and some filtering. I recreated this setup with the sample database to display a calendar view of orders placed. The final setup of the report can be seen below.

Posted Image

The outer table with the year, month, and date fields is tied to a scripted dataSet that uses two user entered parameters, startDate and endDate, to create every date within the given range. The table is then grouped by year, month, and then week with those groups sorted to display in the correct order. A 7 column grid is placed in the “week” group header. A 1 column / 1 detail row table is placed in each cell of the grid to display the date. Each table is filtered to only show the date for that day of week. The filter for Sunday can be seen below.

Posted Image

A second dataSet is used to bring in the orders. A table or list is put into the detail row of each “date table” and tied to the orders dataSet. In the devShare entry, each of these tables is then filtered to only show the orders from each date. However, when the date range is large, this becomes very slow. So, since posting the example in the devShare, I have changed the design to use a dataSet parameter on the orders dataSet to only return orders from a certain date. Then, on the order tables, I set the dataSet parameter binding to set the value of this parameter to the current date in the calendar as seen below. (The devShare entry will be updated in the near future.)

Posted Image

Finally, to show a more “real-world” use for this type of display, I created a hyperlink on the order data element to link to a detail report for that given order. The final view of the report and detail report can be seen below.

Posted Image

The following link is the devShare entry for this example. The reports were designed in BIRT 2.5.2.
https://developer.act…dar-view-report 

Share this post

Share this post to x. Share to linkedin. Mail to
OpenText avatar image

OpenText

OpenText, The Information Company, enables organizations to gain insight through market-leading information management solutions, powered by OpenText Cloud Editions.

See all posts

More from the author

From the Great North to global innovation: How OpenText powers the future of tech

From the Great North to global innovation: How OpenText powers the future of tech

The beginning of the year is the perfect time to reflect on one’s successful journey and set our sights on the future. At OpenText, our…

February 28, 2025

3 min read

Why SAST + SCA is the key to protecting your organization in 2025

Why SAST + SCA is the key to protecting your organization in 2025

Software supply chain risk continues to rise—just last year we witnessed a staggering 156% year-over-year increase in malicious software supply chain attacks.

January 17, 2025

4 min read

All we want for Christmas:  An open letter to Santa from a modern legal team  

All we want for Christmas:  An open letter to Santa from a modern legal team  

As legal professionals embracing digital transformation, our wish list is a bit different this year.

December 11, 2024

4 min read

Stay in the loop!

Get our most popular content delivered monthly to your inbox.