You are modifying a SQL Server Analysis Services (SSAS) cube.
Users of the cube report that the precision for the SalesAmount measure is four digits. You
need to ensure that the SalesAmount measure stores values to two digits of precision.
What should you do?
A.
Use the FormatString measure property to format SalesAmount as #,##0.00;-#,##0.00
B.
Use the MeasureExpression measure property to change the precision of SalesAmount to
two digits.
C.
Use the FormatString measure property to format SalesAmount as Currency.
D.
Add a named query in the data source view that casts the data source column to two
digits of precision. Bind the SalesAmount measure to the new query.
E.
Add a named calculation in the data source view that casts the data source column to two
digits of precision. Bind the SalesAmount measure to the new column.
I think A the right answer
why changing the FormatString is not enough? why do i need to cast in DSV?
SalesAmount cannot be < 0
“stores” could be the reason…
Could be d or e
D modifies more in the cube and should be used if you want to convert many source tables into one table in ds (like apply joins on db engine level)
E is a quick solution and should be used for calculations over columns of one table. This is our case. In fact this is a sql expression.
https://msdn.microsoft.com/en-us/library/ms174859.aspx
(Do not mix with Mdx cube expression which has performance impact on cube)
my vote is E
A is not an option because FormatString function doesn’t exist, it is FORMAT_STRING
https://docs.microsoft.com/en-us/sql/analysis-services/multidimensional-models/mdx/mdx-cell-properties-format-string-contents
I would go with E.
Sorry it is not a function, it is mentioned as property in the question that I found below:
https://docs.microsoft.com/en-us/sql/analysis-services/multidimensional-models/configure-measure-properties
I change my answer to A.