Using Java SDK to create custom portlets in IBM Cognos Connection

Sometimes when you are preparing a report or presentation, you need your reporting portal to be more interactive. For example:

  • You might want to change the parameters of your result set by accessing some database tables directly from your report.
  • Or you would like to create a set of your own prompts in the UI based on a set of client frameworks like JQuery, Telerik, Kendo, Infragistics, etc.
  • Or your main corporate web application has a lot of .Net or Java based functionality, UI, etc., and you want to reuse that code or integrate it into your reports.

Introducing application portlets

I would like to demonstrate an example of these capabilities implemented on IBM Cognos using “application portlets.” These can be created using an application SDK that IBM provides. Below is a page we have implemented for one of our customers using the SDK. It provides an end user with fairly rich report customization capabilities.

screenshot_2

 

A user starts by selecting accounts to be included in a report. The accounts to be included can be looked up by specifying search criteria:

screenshot_3

 

And then added to the list for including in a report:

screenshot_5

 

The system will then limit the output of the report to data associated with selected accounts. In our particular use case this was implemented to support the different needs of sales managers in
the company – some of whom were interested in global product accounts, while others focused more on local markets. We can also do a quick search operation on such a page. Thus, there is no need to deliver a summary for all accounts since only a specific number of reports were generated all the time.

Another scenario when portlets can be useful is to implement truly interactive reports
that allow updating data in the database from the reports themselves. These can be implemented with custom prompts that match the rest of the application, or you can program the reporting engine to remember your selections for filtering from the last time you ran the report.

You might say that this is not a typical reporting approach, which requires additional knowledge and developer skills. And you would be correct. But this provides a relatively easy way to customize the very robust and stable reporting functionality of IBM Cognos to work in concert with the precise needs of the user base.

Of course the capabilities of extending the reporting functionality do not stop with creating customized front ends. You also can add the ability to share the
content on a social network by integrating that network’s sign-in API or leveraging a third party integration solution. For instance, we have used a Janrain Engage solution for online
registration, login and social publishing for one client. But that is a topic for a future blog post . . .