This page explains how to do a little bit of hacking in the default Hyperion Planning 9.3.1 web forms interface. By modifying ValidateData.js (see Hyperion Planning documentation for details on this file) it adds 3 buttons in a web form of your choosing that allows highlighting rows headers, search for row and find next row. I created this file to deal with the very frustrating job of trying to find a certain row in a large web form (thanks to Hyperion developers brilliant idea to use scrolling div elements, searching for row using default browser Find creates a real drama – the rows div and the cells div will become unsynchronized because they will not scroll in synch, leading to rows to point to incorrect data cells).
Also, in case you have in your form multiple levels of row headers (multiple dimensions on rows), it might come in handy to see on each row the name of the parent element, and not see the parent once, as a group name. This functionality is also included in my ValidateData.js.
Important Note: Please keep in mind that this file relies on a certain configuration of the html elements in the web form page. This means that it may work or not for you (it depends on the version of Planning you are using – I tested for 9.3.1 – and also on any possible other customizations or patches you applied to the default Planning web theme). So, absolutely no guarantee. Plus (obviously) functionality in this ValidateData.js is not supported by Hyperion, and is not using APIs that Hyperion supports and guarantees future compatibility with their Planning interface, so even if this file will work for you now, it may stop working the minute you upgrade Hyperion Planning to a new version or simply apply a new patch.
Here it is all you need:
Regarding copyright, this download is released under GNU general public license, which in a nutshell means free for all, no guarantees (this includes that I don't assume any responsability from the use of this code), please give me credit if you use it, but I won't kill you if you don't.
So, here is what you need to do:
function customOnLoad() {
// Insert custom code here
if (equalsIgnoreCase(applicationName,"plantest")) {
if (equalsIgnoreCase(formName,"TestForm")) {
z_custom_repeatMbrLabels();
}
}
}
function drawCustomButtons() {
if (equalsIgnoreCase(applicationName,"plantest")) {
//if (equalsIgnoreCase(formName,"TestForm")) {
....
//}
}
}
Close the browser in which you had Planning opened, empty your browser cache and open Planning in a new browser. If everything worked OK, you should be able to see in your form(s) three buttons like in the following picture:
The "Highlight Rows" button allows you to color in different colors row headers that partially match a certain search string. You can run this multiple times specifying a different color each time (blue, red, yellow etc). This comes handy for example when you want to highlight all 400xxx accounts in one color, and all 500xxx accounts in a different color, all in the same form.
The "Search Row" button does exactly what it says. Depending on form configuration (for example if you have multiple dimensions on rows and you search for an aggregate parent row) you may need to scroll down a little in order to see the found match.
"Find Next" works same way as "Search Row", continuing to search downwards. When no other match is available, it will say that and on next search it will start searching from the beginning of the form.
If you really have to ... 