Comprobador de sintaxis para la columna calculada

Un usuario Pregunto ✅

philippmeyer

Estimada comunidad de PowerBI

Encuentro un problema extraño desde la actualización de septiembre de PowerBI Desktop.

Tengo la siguiente columna calculada:

Estado del proyecto CRM =
CAMBIAR (
[StatusCode],
1, «Neu»,
300800002, «Temporär freigegeben»,
300800003, «Freigegeben»,
717700000, «Verrechnung final»,
100001, «Abgeschlossen»,
717700001, «Storniert»,
717700002, «Gesperrt»,
4, «Bloqueador»,
300800000, «En Bearbeitung (Obsoleto)»,
«Estado de Unbekannter»
)

Estaba en su lugar y funcionando antes. Acabo de editarlo para agregar una opción adicional (717700002, «Gesperrt»).

Ahora me muestra un error de sintaxis:

La sintaxis de ‘»Neu»‘ es incorrecta. (DAX(INTERRUPTOR ( [StatusCode]1. «Neu», 300800002. «Temporär freigegeben», 300800003. «Freigegeben», 717700000. «Finale Verrechnung», 100001. «Abgeschlossen», 717700001. «Storniert», 717700002. «Gesperrt», 4. «Blockiert» , 300800000. «In Bearbeitung (Obsoleto)», «Unbekannter Status»))).

El tipo de datos y el formato están configurados en «texto» y ya intenté eliminar y volver a crear la columna.

¿Alguna ayuda en esto? ¿Alguien experimenta los mismos problemas extraños?

Gracias de antemano y lo mejor,
phil

mfelix

En respuesta a Alba

Hola @PhilippMeyer,

¿Su configuración regional tiene una coma como separador decimal? Cuando trabajo con números y tengo los decimales marcados como comas, me he dado cuenta de que si eso coincide con la coma de los parámetros de las funciones, necesito agregar el ,0 como parte de mi sintaxis para los números.

Cree que esto es lo que está pasando aquí. Utilizando 300800003o 300800003,0 es lo mismo para la sintaxis, no estoy seguro de por qué sucede actualmente con la versión de septiembre, pero podría ser esto.

Saludos,

mfelix

Hola @PhilippMeyer,



La sintaxis de ‘»Neu»‘ es incorrecta. (DAX(INTERRUPTOR ( [StatusCode]1. «Neu», 300800002. «Temporär freigegeben», 300800003. «Freigegeben», 717700000. «Finale Verrechnung», 100001. «Abgeschlossen», 717700001. «Storniert», 717700002. «Gesperrt», 4. «Blockiert» , 300800000. «In Bearbeitung (Obsoleto)», «Unbekannter Status»))).

Para su código, cambie «.» a «,» en algunos lugares.

(SWITCH ( [StatusCode], 1, "Neu", 300800002, "Temporär freigegeben", 300800003,"Freigegeben", 717700000, "Finale Verrechnung", 100001, "Abgeschlossen", 717700001, "Storniert", 717700002, "Gesperrt", 4. "Blockiert", 300800000, "In Bearbeitung (Obsolet)", "Unbekannter Status")))

Por cierto, puede verificar su código DAX en el sitio.

http://www.daxformatter.com/

philippmeyer

Dios mío

Está funcionando cuando cambio el código de la siguiente manera:

Estado del proyecto CRM =
CAMBIAR (
[StatusCode],
1, «Neu»,
300800002,, «Temporär freigegeben»,
300800003,, «Freigegeben»,
717700000, «Verrechnung final»,
100001, «Abgeschlossen»,
717700001,, «Storniert»,
717700002,, «Gesperrt»,
4, «Blockiert»,
300800000,, «En Bearbeitung (Obsoleto)»,
«Estado de Unbekannter»
)

¿Cómo esto tiene sentido?

Alba

En respuesta a philippmeyer

@PhilippMeyer

Eso es raro…

Tal vez algunas de las personas de apoyo puedan ayudar a @v-lid-msft, @v-lili6-msft, @v-xuding-msft

o algunos de los súper usuarios @Greg_Deckler, @Zubair_Muhammad, @MFelix

mfelix

En respuesta a Alba

Hola @PhilippMeyer,

¿Su configuración regional tiene una coma como separador decimal? Cuando trabajo con números y tengo los decimales marcados como comas, me he dado cuenta de que si eso coincide con la coma de los parámetros de las funciones, necesito agregar el ,0 como parte de mi sintaxis para los números.

Cree que esto es lo que está pasando aquí. Utilizando 300800003o 300800003,0 es lo mismo para la sintaxis, no estoy seguro de por qué sucede actualmente con la versión de septiembre, pero podría ser esto.

Saludos,

mfelix

philippmeyer

En respuesta a mfelix

Gracias MFelix

Esa es la explicación (aunque el parámetro [StatusCode] está formateado como un número entero, pero supongo que eso no importa para la sintaxis…). Cambié el idioma del modelo de alemán (Alemania) a inglés (Estados Unidos) y mis fórmulas vuelven a funcionar sin caracteres decimales.
Tengo un nuevo cliente y por lo tanto una nueva instalación de escritorio de PowerBI. Probablemente estuvo más relacionado con eso que con el lanzamiento de septiembre.

Mejor,
phil

Alba

Hola @PhilippMeyer

El código que muestra el mensaje de error tiene puntos en lugar de las comas necesarias después de los números. ¿Podría ser el problema? Y se queja de «Neu», que es lo que viene después del primer punto.

La sintaxis de ‘»Neu»‘ es incorrecta. (DAX(INTERRUPTOR ( [StatusCode]1. «Neu», 300800002. «Temporär freigegeben», 300800003. «Freigegeben», 717700000. «Finale Verrechnung», 100001. «Abgeschlossen», 717700001. «Storniert», 717700002. «Gesperrt», 4. «Blockiert» , 300800000. «In Bearbeitung (Obsoleto)», «Unbekannter Status»))).

philippmeyer

En respuesta a Alba

¡Gracias AIB por tu rápida respuesta!

¡Buena pista y observación! Pero como ves en mi código uso comas…
Intenté escribirlos de nuevo pero sigue igual.
¿Podría esto estar relacionado con una configuración regional que se establece en las opciones?

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *