Part of the Performance and Scaling series.
Communication between administrators and end-users is an essential part of maintaining a productive reporting environment. To this end, administrators may add to Exago BI's out-of-box messaging in a way that better serves their unique implementations.
Your environment may have certain data objects which contain large amounts of data - perhaps an order of magnitude more than most others. You may not want your users to add these objects "naked" to a report, i.e. without adding any filters. As a second line of defense, custom messaging can be built into the application in order to remind users of this at the most pertinent times during report design.
The following two methods could be employed, separately or together, to add custom messaging, one being somewhat more assertive than the other. You can add rich-text tooltips to data objects which appear when a user hovers the cursor over the object name. And you can add an Action Event to launch a caution dialog when the user adds the object to the report design.
Data objects have a "description" attribute that allows you to assign them tooltips which appear on hover in the objects menu. Exago BI supports rich-text tooltips, which can contain any variety of HTML, such as pictures, links, and even embedded videos! Description text can be supplied in the Admin Console, but it is usually better to add it to a language file and then reference the element id in the description field. This allows for easier reuse of common descriptions.
<element id="entity_ShowFilterWarning" tooltip="Object is large and should be filtered.">
Add description html to a language file
Then reference the element id in the object description field
To support rich tooltips first make sure that the following configuration flag is set to True:
( Feature/UI Settings ) Show Enhanced Tooltips
Then in the language file, we can add HTML, inline CSS, and even inline JavaScript to the tooltip attribute. Any built-in JavaScript functions from the Getting Started content can also be used in tooltips.
Note: Remember to encode any quotes ("
) and tag symbols (< >
).
We can add a clickable image to the tooltip, which will open an informational page in an Exago tab.
<element id="entity_ShowFilterWarning" tooltip="<div><img src='Config/Images/CautionIcon.jpg' style='cursor:pointer;' onclick='wrAddTabbedContent("CautionWindow","Filter Large Entities");' /> Entity is large and must be filtered.</div>"></element>
The wrAddTabbedContent function is a part of the built in user scripts
Those more aesthetically gifted than I will create more eye-catching examples
This can go a long way towards setting user expectations for report performance.
The previous example is passive in nature, and requires users to initiate their own observation in order to learn. We can, alternatively, take an assertive approach and force users to read and acknowledge a caution dialog when they add certain data objects to a report. We can use a global action event to insert custom JavaScript that runs whenever a user adds a data object (OnAfterAddDataObject).
Action events are context aware via the clientInfo object
Exago BI provides a wealth of options for adding and extending application messaging. These examples only represent a small subset of what is possible. What ideas you can come up with?