从Analysis Services多维数据集获取货币格式

时间:2015-11-16 15:06:27

标签: ssas mdx dmx-ssas

如何在分析服务中获取货币值的格式字符串?

当我运行MDX查询以检索类型为Currency的度量时,将以预期格式返回值,例如€1.000,00。这是正确的,因为我的Cube的语言环境设置为爱尔兰。

我是否还要检索货币格式字符串?

因此,对于我的Cube,其区域设置为爱尔兰,货币格式字符串将类似于"€#.###,##"

有没有办法可以从Analysis Services检索此信息?

我可以运行以下DMX查询来获取有关度量及其格式的信息,但这仅显示我的货币度量的格式Currency

select 
    MEASURE_UNIQUE_NAME, 
    MEASURE_NAME, 
    DEFAULT_FORMAT_STRING 
from 
    $system.MDSCHEMA_MEASURES

有什么想法吗?

1 个答案:

答案 0 :(得分:2)

小心使用"货币"作为您的格式字符串。您不希望来自墨西哥的某人连接并突然看到不同的货币符号,而无需实际转换为Pesos。 http://blog.crossjoin.co.uk/2008/04/24/currency-formats-should-they-be-tied-to-language/

我会将FORMAT_STRING硬编码为"€#。###,##"除非您实际上是在多维数据集内动态转换货币。

如果要检索单元格的格式字符串,可以:

SELECT [Measures].[Your Measures] on COLUMNS
from [Your Cube]
CELL PROPERTIES FORMATTED_VALUE, VALUE, FORMAT_STRING

该查询检索一个单元格和3个属性。 FORMATTED_VALUE属性采用数值并应用格式字符串并返回€1.000,00。该值只是没有任何格式的数字,如1000. FORMAT_STRING将是"€#。###,##"。