I wrote an extension which contains several new menu entries which lead to custom dashboards with the following aims in mind:
to automatically provide identical dashboards to my colleagues, no need for them to do any manual import of dashboards or creation of shortcuts
no need for my colleagues to do any further modifications like configuring lists of object list dashlets
dashboards shall be exactly tailored to our needs and processes
Therefore, I’d highly appreciate to have the following new features:
The ability to predefine individually per object list dashlet, independent of the class’s default definition:
the selection of columns
the order of columns
the sorting
the sorting by several columns (e.g. 1. organization ascending, 2. status descending and so on)
In my opinion, the usability of custom dashboards highly depends on a preselection of relevant information to be effective in daily use. To give two examples:
A dashlet for listing devices for lending (e.g. some notebooks) needs a very different selection and sorting of columns than users expect when they look for all PCs under configuration management > overview > end user devices > pc.
A dashlet showing a selection of DocumentNote to present a kind of Wiki / knowledge base needs other columns and sorting than a list of special forms / notes for a certain purpose like e.g. weekly meeting reports.
When creating an object list dashlet and a badge with filter dashlet, based on the following OQL, I came across some problems (v3.0.2).
From class CMDBChangeOp I only want to see column “date” but column “Change Operation (Link)” cannot be unselected.
In menu “list configuration” I can’t sort by column “date” of class CMDBChangeOp. It’s not applied when I click ok. When I sort by date in the table header of the dashlet it does sort by date but the setting can’t be saved.
As soon as a modification via “configure this list…” is done, the names of some columns change to the names of their class or their alias in OQL. E.g. “Change-Operation” changes to “CMDBChangeOp” or “co”. The names switch back after reloading the page.
When I click on a “badge with filter” dashlet the search filter is prefilled with “Document type name contains Wiki” but the OQL says not equals (!=) “Wiki”.
Last edit: eric24V 2023-11-24
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Thanks Eric, for those feedback. We know that the dashlets can be improve. I take note of the information that you would like to add to the dashlet list XML definition:
the selection of columns
the order of columns
the sorting
the sorting by several columns (e.g. 1. organization ascending, 2. status descending and so on)
I also take not of some bugs in the "configure this list" feature
* N°5815 - Configure this list : allow to remove friendlyname column = “Change Operation (Link)” in your example
* N°3033 - Add capability to sort on several attributes on a list
I cannot reply about the "badge with filter" dashlet, as this is not a Combodo dashlet
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
The issue with the filter menu showing “Document type name contains” whereas the OQL says not equals (!=) also appears in an OQLMenuNode based on the given query. I assume the basic problem is that OQL allows to create some conditions that can’t be done with the filter buttons of object lists.
I found that splitting the OQL into several queries, one per condition, and uniting them with “UNION” command results in a filter that instead of trying to represent the OQLs conditions is not prefilled and let’s you filter inside of the result set given by the OQL which is my desired behavior in this case:
Another little something I came across concerning object lists is that the plus icon to create objects disappears from the menu when the source oql selects more than one class. A possibility to define the desired class to create could help.
Later I wanted to add not only the creator but the date of last modification to the OQL. As there are multiple modifications per object the OQL gives many undesired lines that I can’t filter out with something like sql rownumber command. The approach of writing an extension and adding “creator” and “modificationdate” field to the class as described here https://www.itophub.io/wiki/page?id=3_1_0:customization:tracking-creator
solved the problem. I attached the code, which is hopefully correct. Maybe it’s helpful for someone.
Hello,
I wrote an extension which contains several new menu entries which lead to custom dashboards with the following aims in mind:
Therefore, I’d highly appreciate to have the following new features:
The ability to predefine individually per object list dashlet, independent of the class’s default definition:
In my opinion, the usability of custom dashboards highly depends on a preselection of relevant information to be effective in daily use. To give two examples:
A dashlet for listing devices for lending (e.g. some notebooks) needs a very different selection and sorting of columns than users expect when they look for all PCs under configuration management > overview > end user devices > pc.
A dashlet showing a selection of DocumentNote to present a kind of Wiki / knowledge base needs other columns and sorting than a list of special forms / notes for a certain purpose like e.g. weekly meeting reports.
When creating an object list dashlet and a badge with filter dashlet, based on the following OQL, I came across some problems (v3.0.2).
Last edit: eric24V 2023-11-24
Thanks Eric, for those feedback. We know that the dashlets can be improve. I take note of the information that you would like to add to the dashlet list XML definition:
I also take not of some bugs in the "configure this list" feature
* N°5815 - Configure this list : allow to remove friendlyname column = “Change Operation (Link)” in your example
* N°3033 - Add capability to sort on several attributes on a list
I cannot reply about the "badge with filter" dashlet, as this is not a Combodo dashlet
You could also look into the Report Generator concept -> https://github.com/jbostoen/itop-jb-report-generator . You'd still need to create the reports once, manually.
Thank you, Vincent, for taking note of my hints.
The issue with the filter menu showing “Document type name contains” whereas the OQL says not equals (!=) also appears in an OQLMenuNode based on the given query. I assume the basic problem is that OQL allows to create some conditions that can’t be done with the filter buttons of object lists.
I found that splitting the OQL into several queries, one per condition, and uniting them with “UNION” command results in a filter that instead of trying to represent the OQLs conditions is not prefilled and let’s you filter inside of the result set given by the OQL which is my desired behavior in this case:
Another little something I came across concerning object lists is that the plus icon to create objects disappears from the menu when the source oql selects more than one class. A possibility to define the desired class to create could help.
Later I wanted to add not only the creator but the date of last modification to the OQL. As there are multiple modifications per object the OQL gives many undesired lines that I can’t filter out with something like sql rownumber command. The approach of writing an extension and adding “creator” and “modificationdate” field to the class as described here
https://www.itophub.io/wiki/page?id=3_1_0:customization:tracking-creator
solved the problem. I attached the code, which is hopefully correct. Maybe it’s helpful for someone.