Compartir a través de


IDIOMA y FORMAT_STRING en FORMATED_VALUE

La propiedad FORMATTED_VALUE se basa en las interacciones de las propiedades VALUE, FORMAT_STRING y LANGUAGE de la celda. En este tema se explica cómo interactúan estas propiedades para compilar la propiedad FORMATTED_VALUE.

PROPIEDADES VALUE, FORMAT_STRING, LANGUAGE

En la tabla siguiente se explica cuáles son estas propiedades, para ayudarnos a prepararnos para usarlas en combinación.

VALOR
Valor sin formato de la celda.

FORMAT_STRING
La plantilla de formato que se aplicará al valor de la celda para generar la propiedad FORMATTED_VALUE

IDIOMA
Especificación de configuración regional que se va a aplicar junto con FORMAT_STRING para generar una versión localizada de FORMATTED_VALUE

FORMATTED_VALUE construido

La propiedad FORMATTED_VALUE se construye utilizando el valor de la propiedad VALUE y aplicando la plantilla de formato especificada en la propiedad FORMAT_STRING a ese valor. Además, cada vez que el valor de formato es named formatting literal, la especificación de la propiedad LANGUAGE modifica la salida de FORMAT_STRING para seguir el uso del idioma en el formato nombrado. Todos los literales de formato nombrados se definen de manera que son localizables. Por ejemplo, "General Date" es una especificación que se puede localizar, en lugar de la siguiente plantilla "YYYY-MM-DD hh:nn:ss", , que indica que la fecha se va a presentar tal como se define en la plantilla, independientemente de la especificación del lenguaje.

Si hay un conflicto entre la plantilla de FORMAT_STRING y la especificación LANGUAGE, la plantilla de FORMAT_STRING invalida la especificación LANGUAGE. Por ejemplo, si FORMAT_STRING="$ #0" y LANGUAGE=1034 (España) y VALUE=123.456, entonces FORMATTED_VALUE="$ 123" en lugar de FORMATTED_VALUE="€ 123", el formato esperado está en euros, porque el valor de la plantilla de formato anula el idioma especificado.

Ejemplos

En los ejemplos siguientes se muestra la salida obtenida cuando se usa LANGUAGE junto con FORMAT_STRING.

En el primer ejemplo se explica el formato de valores numéricos; en el segundo ejemplo se explican los valores de formato de fecha y hora.

Para cada ejemplo, se da el código de expresiones multidimensionales (MDX).

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

Los resultados, transpuestos, cuando se ejecutó la consulta MDX anterior mediante SQL Server Management Studio a través de un servidor y un cliente con configuración regional 1033 son los siguientes:

Miembro FORMATTED_VALUE Explicación
Un $5.040.00 FORMAT_STRING se establece en Currency y LANGUAGE es 1033, heredado del valor de configuración regional del sistema.
B 5,040,00 € FORMAT_STRING se establece en Currency (heredado de A) y LANGUAGE se establece explícitamente en 1034 (España), de ahí el uso del signo de euro, el diferente separador decimal y el diferente separador de miles.
C 5,040,00 USD FORMAT_STRING se establece en $#,##0.00 una invalidación en Moneda, desde A y LANGUAGE se establece explícitamente en 1034 (España). Dado que la propiedad FORMAT_STRING establece explícitamente el símbolo de moneda en $, el FORMATTED_VALUE se presenta con el signo $ . Sin embargo, dado que . (punto) y , (coma) son marcadores de posición para separadores decimales y separadores de miles, respectivamente, la especificación del lenguaje afecta a la generación de una salida localizada para separadores decimales y de miles.
D 5,04E+03 FORMAT_STRING se establece en Scientific y LANGUAGE se establece en 1033, heredado del valor de la configuración regional del sistema, por lo que . (punto) es el separador decimal.
E 5,04E+03 FORMAT_STRING se establece en Scientific y LANGUAGE se establece explícitamente en 1034,, por lo tanto, , coma es el separador decimal.
F 50,40% FORMAT_STRING se establece en Percent y LANGUAGE se establece en 1033, heredado del valor de la configuración regional del sistema, por lo que . (punto) es el separador decimal.

Tenga en cuenta que VALUE se cambió de 5040 a 0,5040
G 50,40% FORMAT_STRING se establece en Percent, heredado de F, y LANGUAGE se establece explícitamente en 1034, por lo que , (coma) es el separador decimal.

Tenga en cuenta que el valor se heredó del valor F.
H No FORMAT_STRING se establece en YES/NO, VALUE se establece en 0 y LANGUAGE se establece explícitamente en 1034. Dado que no hay ninguna diferencia entre 'no' en inglés y 'no' en español, el usuario no ve ninguna diferencia en el FORMATTED_VALUE.
Yo FORMAT_STRING se establece en YES/NO, VALUE se establece en 59, y LANGUAGE se establece explícitamente en 1034; como se define para el formato YES/NO, cualquier valor distinto de cero (0) es YES y, porque el idioma se establece en español, el FORMATTED_VALUE es SI.
J Desactivado FORMAT_STRING se establece en ON/OFF, VALUE se establece en 0 y LANGUAGE se establece explícitamente en 1034; tal como se define para el formato ON/OFF, cualquier valor igual a cero (0) está en OFF y debido a que el idioma está establecido en español, el FORMATTED_VALUE es Desactivado.
K Activado FORMAT_STRING se establece en ON/OFF, VALUE se establece en -312 y LANGUAGE se establece explícitamente en 1034; como se define para el formato ON/OFF, cualquier valor diferente de cero (0) es un Activado y dado que el idioma está configurado en español, el FORMATTED_VALUE es Activado.

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

Los resultados, transpuestos, cuando se ejecutó la consulta MDX anterior mediante SQL Server Management Studio a través de un servidor y un cliente con configuración regional 1033 son los siguientes:

Miembro FORMATTED_VALUE Explicación
Un 12/3/1959 6:30:00 AM FORMAT_STRING se establece implícitamente por la expresión CDate() en General Date y LANGUAGE es 1033 (inglés), heredado del valor de configuración regional del sistema.
B Jueves, 12 de marzo de 1959 FORMAT_STRING se establece explícitamente en Long Date y LANGUAGE es 1033 (inglés), heredado del valor del sistema de configuración regional.
C 12/03/1959 6:30:00 FORMAT_STRING se establece explícitamente en General Date y LANGUAGE es 1034 explícitamente (español).

Tenga en cuenta que el mes y el día se cambian en comparación con el estilo de formato de EE. UU.
D jueves, 12 de marzo de 1959 FORMAT_STRING se establece explícitamente en Long Date y LANGUAGE es explícitamente 1034 (el español).

Tenga en cuenta que el mes y el día de la semana se denominan en español
E 1959/03/12 6:30:00 FORMAT_STRING se establece explícitamente en General Date y LANGUAGE se establece explícitamente en 1041 (japonés).

Tenga en cuenta que la fecha tiene ahora el formato Year/Month/Day Hour:Minutes:Seconds
F 1959年3月12日 FORMAT_STRING se establece explícitamente en Long Date y LANGUAGE está explícitamente en 1041 (japonés).
G 6:30:00 a.m. FORMAT_STRING se establece explícitamente en Long Time y LANGUAGE es 1033 (inglés), heredado del valor de configuración regional del sistema.
H 06:30 FORMAT_STRING se establece explícitamente en Short Time, y LANGUAGE se establece en 1033 (inglés), heredado del valor de la configuración regional del sistema.
Yo 6:30:00 FORMAT_STRING se establece explícitamente en Long Time y LANGUAGE se establece explícitamente en 1034 (en español).
J 06:30 FORMAT_STRING se establece explícitamente en Short Time y LANGUAGE se establece explícitamente en 1034 (español).
K 6:30:00 FORMAT_STRING se establece explícitamente en Long Time y LANGUAGE se establece explícitamente en 1041 (japonés).
L 06:30 FORMAT_STRING se establece explícitamente en Short Time y LANGUAGE se establece explícitamente en 1041 (japonés).

Véase también

contenido de FORMAT_STRING (MDX)
Uso de propiedades de celda (MDX)
Creación y uso de valores de propiedad (MDX)
Aspectos básicos de la consulta MDX (Analysis Services)