Is there a way to expand a whole hierarchy, down to the last member?
For example, in https://jsfiddle.net/flexmonster/zkm26d6h/ with Country -> Color -> Category that would selecting “France” and then having it expanded down to Green -> Cars and Yellow -> Bikes automatically, not having to click France, then Green and then Yellow.
We have hierarchies with dozens of members so clicking them one by one is not an option.
And using the ExpandAllData method isn’t an option either, we dont want to expand everything on the grid (it’s slow with our reports and it doesn’t help us in the visualization of the data).
I’m getting the data from SSAS Olap cubes.
Also, and this is maybe more important to us, is it possible to expand several members from a dimension? For example, in https://jsfiddle.net/flexmonster/51tgfg1w/ that would be selecting Canada and USA from the Country dimension and opening both of them instead of having to click on Canada and then on USA.
My intention is to use the context menu with a custom function that expands the selected cells. I already have used the right-click event to get the array of cell objects and now (correct me if I’m wrong on this approach) I could use the getReport() + expands function adding those members from the selected cells + setReport() but is there some other way?
Thank you for posting to our support forum!
We would like to inform you that expanding a whole hierarchy is not supported for SSAS data sources. As a workaround, you can expand the necessary nodes directly on the grid and save current state in the report.
As about the possibility of expanding several members from a dimension, I can offer you the following approach: add to the toolbar new tab Expand (see Customizing toolbar tutorial explaining how to modify the toolbar). When clicking on this Expand tab, you can show the list of the hierarchies available for expanding. After selecting some hierarchy for expanding, e.g. Country, create the pop-up showing all countries with checkboxes. To get all countries please use getMembers API call. End-user selects the countries he wants to expand and clicks Apply. After that, use the combination of
getReport() , adding expands for the selected countries to the report object and
setReport() for the new report object.
Please let me know if the suggested approach works for you.
Yes, I tested something similar yesterday with the getReport() + adding expands + setReport() and I think it will work for us. Making it as user-friendly as possible will require some heavy coding but it’s good to know it can be done.
Thank you for your answer!
Should you have any other questions – please let me know.