We are currently using the FindCurrentTuple as a means to get the where clause of an MDX query that we send to SSRS as an SSAS Action of Type URL. This is done so that we can create detailed SSRS "Drill through" reports which are returned to the user with
the context based on where the user clicked in Excel while browsing a cube.
The problem is that Excel has a limitation on Action URL length, this is a known issue,
http://social.technet.microsoft.com/Forums/et-EE/excel/thread/dfdcb8c8-9e2d-4b31-b4bb-f15908dbcf86
As a work around we have modified the method to exclude user defined hierarchies and measures from the tuple since they are redundant in terms of what is returned based on the where clause. This makes a significant difference in URL length.
Would it be possible to include something like this in ASSP? Perhaps the current FindCurrentTuple method could have a parameter to include/ exclude user defined hierarchies and/or measures. Also see the post below which is similar to our requirement.
Thank you for all your work done in this project.
Currently we are using:
public static string FindCurrentTupleFilter() { string output = "("; Boolean addcomma = false;
foreach (Dimension d in Context.CurrentCube.Dimensions) { // skip measures
if (d.DimensionType == DimensionTypeEnum.Measure) continue;
foreach (Hierarchy h in d.AttributeHierarchies) { //skip user defined hierarchies
if (h.HierarchyOrigin == HierarchyOrigin.UserHierarchy) continue;
if ((d.DimensionType == DimensionTypeEnum.Measure || h.CurrentMember.UniqueName != h.DefaultMember) //&& h.HierarchyOrigin == HierarchyOrigin.AttributeHierarchy //&& h.CurrentMember.UniqueName.Contains("[All]")
!= true ) { if (addcomma
== false) addcomma = true; else
output += ",";
output += h.CurrentMember.UniqueName; } }
} output += ")";
return output; }