Hi,
For a customer I was developing a new report this week. He asked me to implement a section in the report header where you can see what parameters are selected in the report. Because there are a lot of parameters in my customer’s report he wanted some fancy function so you can easily show or hide this parameter section.
The solution works with two html items, which just contain a <div …> and a </div> tag and a Java Script function which shows or hides the div block. The example report doesn’t contain a list or something. It’s just having the parameter section on the report page and a link to show/hide it. But you can easily implement it in your reports as well. It’s also not very beautiful. For example you could use a nice picture instead of a link.
As I’ve written before you need two html blocks. These blocks contain the following code:
HTML Block 0(JavaScript) | <script type=“text/javascript“ > function ShowHideDIV(){ if (document.getElementById(‚testdiv‘).style.display != ’none‘) { document.getElementById(‚testdiv‘).style.display = ’none‘; } else { document.getElementById(‚testdiv‘).style.display = ‚block‘; }; }; </script> |
HTML Block 1 | <a href=“javascript: ShowHideDIV();“> Show/Hide parameters </a> <div id=’testdiv‘> |
HTML Block 2 | </div> |
This solution uses the CSS (Cascading Style Sheets) which describe formatting properties of an HTML document. As the Cognos report results are normally HTML documents as well you can use this knowledge to dynamically set or unset the property for hiding a div block. If you want to enhance this solution you can pass the name of the block via a variable to the function.
Anyway these HTML blocks must then be inserted to the report like this:
The very first block in the page content area must be the HTML item with the Javascript. Then around the table or text-items with the parameter description you have to place HTML Block 1 and HTML Block 2. I’ve chose a table to represent the prompt parametes. After the HTML Block 2 you can insert the report data itself.
The examples used in this article can be found at the very end of this article as zip-file. I will continue this series soon and we will then deal with some useful functions you can use if you are working with the rollup or cube statement.
If you are interested in this or other advanced Cognos/SQL topics you can also attend training on my corporate homepage. At the moment my open courses are only available in German. Inhouse training and online courses are also available in English language. So check out my open trainings (German) or my online courses (English)!