Partilhar via


Propriedades da célula MDX – propriedade FORMATTED_VALUE

Aplica-se a: SQL Server Analysis Services Azure Analysis Services Fabric/Power BI Premium

A propriedade FORMATTED_VALUE é criada com base nas interações das propriedades VALUE, FORMAT_STRING e LANGUAGE da célula. Este tópico explica como essas propriedades interagem para criar a propriedade FORMATTED_VALUE.

Propriedades VALUE, FORMAT_STRING, LANGUAGE

A tabela a seguir explica o que são essas propriedades, para ajudá-lo na preparação para o uso combinado delas.

VALUE
O valor não formatado da célula.

FORMAT_STRING
O modelo de formatação a ser aplicado ao valor da célula para gerar a propriedade FORMATTED_VALUE

LANGUAGE
A especificação de localidade a ser aplicada junto com FORMAT_STRING para gerar uma versão localizada de FORMATTED_VALUE

FORMATTED_VALUE construída

A propriedade FORMATTED_VALUE é construída com o uso do valor da propriedade VALUE e a aplicação do modelo de formato especificado na propriedade FORMAT_STRING para esse valor. Além disso, sempre que o valor de formatação for um literal de formatação nomeado , a especificação da propriedade LANGUAGE modifica a saída de FORMAT_STRING para seguir o uso do idioma da formatação nomeada. Os literais de formatação nomeada são definidos de modo que possam ser localizados. Por exemplo, "General Date" é uma especificação que pode ser localizada, em oposição ao seguinte modelo "YYYY-MM-DD hh:nn:ss", , que declara que a data deve ser apresentada conforme o definido pelo modelo, independentemente da especificação de idioma.

Se houver um conflito entre o modelo FORMAT_STRING e a especificação LANGUAGE, FORMAT_STRING substituirá LANGUAGE. Por exemplo, se FORMAT_STRING="$ #0" e LANGUAGE=1034 (Spain), e VALUE=123.456, D_VALUE="$ 123" em vez de FORMATTED_VALUE="€ 123", o formato esperado estará em Euros, porque o valor do modelo do formato substitui o idioma especificado.

Exemplos

Os exemplos a seguir mostram a saída obtida quando LANGUAGE é usado junto com FORMAT_STRING.

O primeiro exemplo explica os valores numéricos da formatação; o segundo exemplo explica os valores de data e hora da formatação.

Para cada exemplo, o código MDX é atribuído.

with

member measures.A as 5040, FORMAT_STRING="Currency"

member measures.B as measures.A, LANGUAGE=1034

member measures.C as measures.A, LANGUAGE=1034 , FORMAT_STRING="$#,##0.00"

member measures.D as measures.A, FORMAT_STRING="Scientific"

member measures.E as measures.A, LANGUAGE=1034 , FORMAT_STRING="Scientific"

member measures.F as 0.5040, FORMAT_STRING="Percent"

member measures.G as measures.F, LANGUAGE=1034

member measures.H as 0, LANGUAGE=1034 , FORMAT_STRING="Yes/No"

member measures.I as 59, LANGUAGE=1034 , FORMAT_STRING="Yes/No"

member measures.J as 0, LANGUAGE=1034 , FORMAT_STRING="ON/OFF"

member measures.K as -312, LANGUAGE=1034 , FORMAT_STRING="ON/OFF"

Select {measures.A, measures.B, measures.C, measures.D, measures.E, measures.F, measures.G, measures.H, measures.I, measures.J, measures.K} on 0

from [Adventure Works]

cell properties VALUE, FORMAT_STRING, LANGUAGE, FORMATTED_VALUE

Os resultados, transpostos, quando a consulta MDX acima foi executada usando SQL Server Management Studio em um servidor e cliente com localidade 1033 são os seguintes:

Membro FORMATTED_VALUE Explicação
A $5.040,00 FORMAT_STRING é definido como Currency e LANGUAGE é 1033, informações herdadas do valor de localidade do sistema
B € 5.040,00 FORMAT_STRING é definido como Currency (herdado de A) e LANGUAGE é definido explicitamente como 1034 (Spain), daí o sinal de Euro, o separador decimal e de milhar diferente.
C $ 5.040,00 FORMAT_STRING é definido como $#,##0.00 , uma substituição para Moeda, de A, e LANGUAGE é definido explicitamente para 1034 (Spain). Como a propriedade FORMAT_STRING define explicitamente o símbolo de moeda como $, FORMATTED_VALUE é apresentado com o sinal $. No entanto, como . (ponto) e , (vírgula) são espaços reservados para separadores de decimal e de milhar, a especificação de idioma os afeta gerando uma saída localizada para separadores decimal e de milhar.
D 5.04E+03 FORMAT_STRING é definido como Scientific e LANGUAGE é definido como 1033, herdados do valor de localidade do sistema, por isso o . (ponto) é o separador decimal.
E 5,04E+03 FORMAT_STRING é definido como Scientific e LANGUAGE é definido explicitamente como 1034, , por isso a , (vírgula) é o separador decimal.
F 50,40% FORMAT_STRING é definido como Percent e LANGUAGE é definido como 1033, herdados do valor de localidade do sistema, por isso o . (ponto) é o separador decimal.

Observe que VALUE foi alterado de 5040 para 0.5040
G 50,40% FORMAT_STRING é definido como Percent, herdado de F, e LANGUAGE é definido explicitamente como 1034 , por isso a , (vírgula) é o separador decimal.

Observe que VALUE foi herdado do valor F.
H No FORMAT_STRING é definido como YES/NO, VALUE é definido como 0 e LANGUAGE é definido explicitamente como 1034; como não há nenhuma diferença entre English NO e Spanish NO, o usuário não vê diferença em FORMATTED_VALUE.
I SI FORMAT_STRING é definido como YES/NO, VALUE é definido como 59 e LANGUAGE é definido explicitamente como 1034; conforme definido para a formatação YES/NO, qualquer valor diferente de zero (0) é um YES e como o idioma é definido como Spanish, FORMATTED_VALUE é SI.
J Desativado FORMAT_STRING é definido como ON/OFF, VALUE é definido como 0 e LANGUAGE é definido explicitamente como 1034; conforme definido para a formatação ON/OFF, qualquer valor equivalente a zero (0) é um OFF e, como o idioma está definido para Spanish, FORMATTED_VALUE é Desativado.
K Ativado FORMAT_STRING é definido como ON/OFF, VALUE é definido como -312 e LANGUAGE é definido explicitamente como 1034; conforme definido para a formatação ON/OFF, qualquer valor diferente de zero (0) é um ON e como o idioma é definido como Spanish, FORMATTED_VALUE é Ativado.

with

member measures.A as 'CDate("1959-03-12 06:30")'

member measures.B as measures.A, FORMAT_STRING="Long Date"

member measures.C as measures.A, LANGUAGE=1034 , FORMAT_STRING="General Date"

member measures.D as measures.A, LANGUAGE=1034, FORMAT_STRING="Long Date"

member measures.E as measures.A, LANGUAGE=1041 , FORMAT_STRING="General Date"

member measures.F as measures.A, LANGUAGE=1041 , FORMAT_STRING="Long Date"

member measures.G as measures.A, FORMAT_STRING="Long Time"

member measures.H as measures.A, FORMAT_STRING="Short Time"

member measures.I as measures.A, LANGUAGE=1034 , FORMAT_STRING="Long Time"

member measures.J as measures.A, LANGUAGE=1034 , FORMAT_STRING="Short Time"

member measures.K as measures.A, LANGUAGE=1041 , FORMAT_STRING="Long Time"

member measures.L as measures.A, LANGUAGE=1041 , FORMAT_STRING="Short Time"

Select {measures.A, measures.B, measures.C, measures.D, measures.E, measures.F

, measures.G, measures.H, measures.I, measures.J, measures.K, measures.L} on 0

from [Adventure Works]

cell properties VALUE, FORMAT_STRING, LANGUAGE, FORMATTED_VALUE

Os resultados, transpostos, quando a consulta MDX acima foi executada usando SQL Server Management Studio em um servidor e cliente com localidade 1033 são os seguintes:

Membro FORMATTED_VALUE Explicação
A 3/12/1959 6:30:00 AM FORMAT_STRING é definido implicitamente como General Date pela expressão CDate() e LANGUAGE é definido como 1033 (English), herdado do valor de localidade do sistema
B Quinta-feira, 12 de março de 1959 FORMAT_STRING é definido explicitamente como Long Date e LANGUAGE é 1033 (English), herdado do valor de localidade do sistema.
C 12/03/1959 6:30:00 FORMAT_STRING é definido explicitamente para General Date e LANGUAGE é explicitamente 1034 (Spanish).

Observe que o mês e o dia são alternados quando comparados com o estilo de formatação dos EUA
D jueves, 12 de marzo de 1959 FORMAT_STRING é definido explicitamente para Long Date e LANGUAGE é explicitamente 1034 (Spanish).

Observe que o mês e o dia da semana estão em espanhol
E 1959/03/12 6:30:00 FORMAT_STRING é definido explicitamente para General Date e LANGUAGE é explicitamente 1041 (japonês).

Observe que a data agora está formatada como Ano/Mês/Dia Hora:Minutos:Segundos
F 1959年3月12日 FORMAT_STRING é definido explicitamente para Long Date e LANGUAGE é explicitamente 1041 (japonês).
G 6:30:00 AM FORMAT_STRING é definido explicitamente como Long Time e LANGUAGE é 1033 (English), herdado do valor de localidade do sistema.
H 06:30 FORMAT_STRING é definido explicitamente como Short Time e LANGUAGE é 1033 (English), herdado do valor de localidade do sistema.
I 6:30:00 FORMAT_STRING é definido explicitamente para Long Time e LANGUAGE é definido explicitamente como 1034 (Spanish).
J 06:30 FORMAT_STRING é definido explicitamente para Short Time e LANGUAGE é definido explicitamente como 1034 (Spanish).
K 6:30:00 FORMAT_STRING é definido explicitamente para Long Time e LANGUAGE é explicitamente 1041 (Japanese).
L 06:30 FORMAT_STRING é definido explicitamente para Short Time e LANGUAGE é explicitamente 1041 (Japanese).

Consulte Também

Conteúdo de FORMAT_STRING (MDX)
Usando propriedades da célula (MDX)
Criando e usando valores de propriedade (MDX)
Conceitos básicos de consulta MDX (Analysis Services)