A customer request came in the other day asking if it’s possible to turn the Auto build button on by default. You can see this button next to the green build button in this screenshot:
Given a default set of toolbars that ship with Dodeca, this button typically starts in the “off” state. In case you’re not familiar, the effect when it’s on is that any time you change an item in a selector, the current view will be rebuilt. This can make it really convenient to browse through different views of data without having to press the build button (you can see this in the video at the end of this article). It’s just one of those usability things that makes interacting with data just that much more fluid.
So the question is, can we turn this button on by default so we can save ourselves (and our users) a click right off the bat, especially if we know we want to use auto build? We absolutely can – but this isn’t actually a “normal” view property, it’s part of the toolbar. So instead of updating a typical property on the view, we’re going to update an aspect of the toolbar that the view users, and but the toolbar itself is a view property. So for my given view, let’s go check out what the toolbar in use is:
The main toolbar here is a toolbar called “Essbase View Standard Limited” – this is the property
ViewToolbarsConfigurationID. This is a pretty typical toolbar. One of the interesting things about Dodeca is that every single part of the GUI and toolbar can be configured, per application. I’ve riffed on this before, but to me this is just an absolutely staggering amount of configurability for a product to provide out of the box. It’s not like we’re modifying some arcane config file and voiding our warranty, either – it’s just how it is.
Put another way – I sometimes use a car analogy to conceptualize how Dodeca relates to Essbase. Insofar that Essbase provides an engine, Dodeca provides the wheels, windows, A/C, and more. You may be used to picking your trim level for a car – heated seats, a sun roof, and then some – but in the car analogy, the amount of configurability that Dodeca gives you is akin to being able to choose the frame you want – down to the alloy it’s made from.
“…in the car analogy, the amount of configurability that Dodeca gives you is akin to being able to choose the frame you want – down to the alloy it’s made from.”
That said, we can quickly jump to the toolbar we want to edit by right clicking on it’s property cell in the view editor, then clicking on the context-specific menu that pops up. In this case we’ll see this:
Simply click on “Auto Off” so that the button appears highlighted (it’s on despite its apparent text), then save the toolbar. Upon refreshing the view we will indeed see that the view starts out with this button turned on (as in the very first screenshot of this article).
If we want, we can actually go a step further and make this button invisible. You’d likely want to leave the button visible so the user could turn it off, but maybe you want to clean things up a little or simplify them for your user. In this case, we can still make sure the button is technically turned on, but it’s just invisible. To do so, just expand the toolbar properties. This is a little bit to navigate: in the category Toolbars Manager Properties, expand ToolbarsManager > Tools > 26 – AutoBuildView > SharedProps > Visble and set it to False. In your toolbar/environment, the AutoBuildView button might have a different ID than 26, so find the proper button and edit its properties accordingly.
Now just save the toolbar and re-run the view:
As you’ll notice, the button is gone, but it’s still in effect. Here’s a really brief video of navigating through a view with auto build turned on. Note that every time I click on a new item in any of the selectors (whether it’s a tree, list, or dropdown), the view is rebuilt. This isn’t cached data, by the way. Dodeca is communicating with it’s highly optimized Essbase service, then in turn communicating with Essbase/OAC, then bringing the data back.
One Last Thing
Keep in mind that there are quite likely many other views that reference this toolbar, so these updates will affect all of them. You might not want that. In that case, you should just copy the toolbar, make your changes, and then update any views you want so that they point to the new toolbar.