Warm tip: This article is reproduced from serverfault.com, please click

Is it possible to separate naming and identifiers or to use aliases in SSAS Tabular Models?

发布于 2020-12-18 10:05:22

I work on a large SSAS Tabular Model with (SQL Server 2017). I've been looking for a way to be able to modify measures and other model elements without breaking the reports that rely on them. For instance, if I have a Net Turnover measure used in a PowerBI Report (w/ live connection to the model), and I change its name to Net Turnover (€), the report breaks because the name is used internally as and identifier.

  1. Is it possible to change this behaviour, and to have an internal identifier that is distinct from the measure's name so as not to create breaking changes when modifying names?

  2. Additionally, I was also wondering about the potential impacts of creating measure "aliases", for instance if I create a measure such as New Measure = Other Measure: I know this makes no difference in terms of storage since measures are calculated on the fly, but are there potential performance or other issues that may arise if I use such a technique?

Thanks in advance!

Questioner
Manu Clementz
Viewed
0
Alexis Olson 2020-12-23 23:21:01

If your goal is to be able to change a measure name in the SSAS model and have that name change update all the reports built from that model, then I think you're out of luck since the measure name is its identifier (as you've noted).

On the other hand, if you're working with a specific report connected to an SSAS model and you want to display a different name for the measure, then you have more options.

  • The simplest is just to relabel the measure in the Values area of the visual to change how it appears in that visual. This renaming is localized to only that visual.

  • Create an alias measure as you've suggested in the report you're working on. The alias measure is localized to the report it's defined in. It can be reused across multiple visuals and pages of the report.

  • Create an alias measure in the SSAS model. This alias measure is then available to any report that connects to the SSAS model.

I can't think of any reason why creating alias measures would cause performance issues. It could potentially make things a bit more confusing having multiple measures for the same calculation but you can probably mitigate that by e.g. using display folders.