williamweber.net
  • Home
  • About
KEEP IN TOUCH

Posts tagged SSAS

Named Set Sub-totals in Excel using VisualTotals()

Feb22
2012
Leave a Comment Written by Will

This is just a quick tip for fixing the default Analysis Services (SSAS) named set sub-total behavior in Excel 2010. Normally when you select a named set for the rows or columns of a pivot table you don’t get a sub-total. Which, for me, removes a lot of the usefulness of the named set. Thankfully it’s a relatively easy fix. It just takes a little additional MDX in your named set definition.

Enter: VisualTotals() (msdn function reference)

The VisualTotals() function dynamically totals child members in a set. By adding the “All” member for whatever hierarchy you’re building your set from and wrapping the whole set in the VisualTotals() function you can get Excel to treat the named set just like any other group/hierarchy when it comes to sub-totals.

Typically if you created a set like this one (all examples from Adventure Works):

WITH SET [Amasia] AS
{
	[Geography].[Country].&[United States]
	,[Geography].[Country].&[Canada]
	,[Geography].[Country].&[Australia]
}

You’d see something like this:

no sub-totals

If instead you create your set like so:

WITH SET [Amasia] AS
VisualTotals(
	{
		[Geography].[Country].[All Geographies]
		,[Geography].[Country].&[United States]
		,[Geography].[Country].&[Canada]
		,[Geography].[Country].&[Australia]
	}
)

You’ll get a nice little sub-total at the bottom.

Yey! sub-totals

One thing to note is that you need to put the “All” member at the beginning of your VisualTotals set. Otherwise it won’t be correctly filtered by the children that follow and you’ll end up with a sub-total that is actually the full, unfiltered total of the “All” member.

  • Share this:
Posted in BI - Tagged BI, MDX, Scripts

MDX: Scope Statement For All Measures in Multiple Measure Groups

Dec06
2011
Leave a Comment Written by Will

This was irritating me today so I thought I would share. If you need to write a scope statement that will include all the measures in multiple measure groups; perhaps you’re implementing some Time Intelligence calculations and you want to have any new measures dynamically included, then the statement looks a little something like this:

SCOPE({MeasureGroupMeasures("Internet Sales"), MeasureGroupMeasures("Reseller Sales")});

I forgot the {} the first time around and was super confused by an error message when I attempted to deploy the MDX calculation to the cube that said that said “The END SCOPE statement does not match the opening SCOPE statement.” Because my SCOPE and END SCOPE statements looked just fine to me.

  • Share this:
Posted in BI, Scripts - Tagged Analysis Services, MDX, Scripts

Recent Posts

  • Named Set Sub-totals in Excel using VisualTotals()
  • New Camera Please. – Mirrorless ILC Goodness
  • Formatting Map Legends in SQL Server 2008 R2 Reporting Services
  • MDX: Scope Statement For All Measures in Multiple Measure Groups
  • Startup Frenzy Is Out of Control

From Twitter:

  • Not being able to put named sets in the report filter of an Excel pivot table really is becoming the bane of my existence lately. #msbi 7 hrs ago
  • In @Target and there isn't a @windowsphone in sight. Are they even trying. 3 days ago
  • Troubleshooting data driven subscriptions in #SSRS is good fun. 5 days ago
  • More updates...

Posting tweet...

Powered by Twitter Tools

Categories

  • BI
  • Gaming
  • Opinion
  • Photography
  • Reporting
  • Scripts
  • Social Games
  • SQL Server
  • XNA

Archives

  • February 2012
  • January 2012
  • December 2011
  • October 2011
  • September 2011
  • April 2011
  • January 2011
  • December 2009
  • July 2009
  • April 2009

EvoLve theme by Theme4Press  •  Powered by WordPress williamweber.net