Jazz Forum Welcome to the Jazz Community Forum Connect and collaborate with IBM Engineering experts and users

cannot create dashboard templates with parametrized queries

There are some related topics here in jazz.net but I haven't found a specific one with the following issue we are experiencing:

We use the Work Items Statistics viewlet pointing to queries with parameters. We can manually create those widgets by selecting the query and the proper parameters. The problem is, we cannot populate them automatically when the project is created by using dashboard templates. There seems to be nothing to set up parameters in Project Configuration -> Configuration Data -> Dashboards -> Dashboards templates.

The reason it is so important to find a way to automate it is because we have many Team Areas (50+) and many iterations (10+). We configure a dashboard for every Team Area. Every dashboard contains a tab for every Iteration with 10 Work Item Statistics widgets pointing to queries with parameters. This makes 50 * 10 * 10 = 5000 widgets to be configured manually every time a Project Area is created. It takes weeks.

So,

Any idea how to populate them programmatically? Maybe using the client Java API? exporting the widgets to HTML, editing the contents with the proper parameters and find a way to create or modify the widgets with that new HTML?

Any help will be highly appreciated.

0 votes



3 answers

Permanent link
the api for dashoards is not documented..   I spent a bunch of time looking at this early in the year, but came away unsuccessful.  Mostly I was missing functions to READ the values without actually presenting them.  the only way to figure this out is to read the product source code provided in the SDK, but the object model is so deep its a challenge to see it all. (for me at least)

0 votes


Permanent link
Thank you, Sam.
I have open a work item https://jazz.net/jazz/resource/itemName/com.ibm.team.workitem.WorkItem/339228, as RTC is displaying a non-comprehensive error message when using queries with parameters, and it is unclear in the documentation if they can be used (maybe using mementos?) or not.

0 votes


Permanent link
Found some interesting links which clarify what's behind widgets.
https://jazzpractices.wordpress.com/2012/10/23/reports-in-automatically-generated-dashboards/
https://jazz.net/forum/questions/106876/default-dashboard-mementos (see Mike Pawlowski' comment).

Following above instructions, we have discovered:
- When having widgets (i.e. Work Items Statistics) pointing to queries with parameters, exporting the widget to HTML will reveal the queryParams parameter as a Preference. This will enable us to enter this info in the dashboard template. Great!

Not so fast. In most of the cases, the values of those parameters will be UUIDs of the correspondent elements, so we need to get the actual values once the Project Area has been created.
We can create the project area and build the Dashboard XML template replacing texts with the actual values by using the RTC client Java API, and then restore the Project Area dashboard with the Dashboard template.

Providing the parameters for other types of widgets, such as custom reports (BIRT) will be similar, but these particular ones (custom reports) store the parameters as mementos, and they are not visible when the widget is exported to HTML. It requires to inspect the POST call by using FireBug, as explained in above URLs.

It is a bit tedious, but it seems to work beautifully, and it can save weeks of manual repetitive work to customers like us having thousands of widgets.

The only drawback (and it is a big drawback) I have found is the Scope of the dashboards. In particular, I'm struggling with the Team Area dashboards.
As expected, the content of the Team Area dashboards have the selected Team Area as a parameter in most widgets, so we will need a variable to store the UUID of the selected Team Area.
The funny thing is ${scope} will give us the Name of the Team Area, so we are very very close, but I have no clue if there is another variable to retrieve the UUID.

Sorry for such a detailed and technical post.
I guess my questions are more for jazz developers than for regular users :-(

0 votes

Your answer

Register or log in to post your answer.

Dashboards and work items are no longer publicly available, so some links may be invalid. We now provide similar information through other means. Learn more here.

Search context
Follow this question

By Email: 

Once you sign in you will be able to subscribe for any updates here.

By RSS:

Answers
Answers and Comments
Question details
× 10,938

Question asked: Nov 25 '14, 9:37 a.m.

Question was seen: 3,742 times

Last updated: Dec 04 '14, 4:46 a.m.

Confirmation Cancel Confirm