Consulta directa: mes loco de 2 dígitos

Un usuario Pregunto ✅

FlyBoyNoche

Hola a todos,

Realmente nuevo en Power BI y Dax, ¡así que gracias de antemano!

Estoy tratando de obtener un mes de 2 dígitos usando Dax y Consulta directa. En última instancia, estoy tratando de ordenar los elementos visuales de datos correctamente, usando AAAAMM como mi fecha. Tengo la parte del año calculada y en una columna que ya usa la función AÑO, que podría concatenar con mi nueva columna Mes, pero como mucha gente sabe, la función MES de Dax solo devuelve el Mes de un solo dígito, por ejemplo, 4 frente a 04. En orden para ordenar correctamente mis datos de tiempo, necesitaría AAAAMM.

He buscado mucho y casi todas las soluciones implican funciones de Dax que no son compatibles con Consulta directa modo. Probé declaraciones FORMAT, IF, muchas otras.

Mi columna de origen tiene datos de ‘fecha’ con valores de Fecha, Mes, Año y Hora. La columna ya tiene el formato de Power BI.

¡Gracias!

Stachu

En respuesta a FlyBoyNoche

YEAR y MONTH toman Date como argumento, con su sintaxis es solo el número de días a partir de 1899-12-31, donde 2019 da el año 1905 y 4 da 1 (enero de 1900)

Puedes usar cualquiera

DateofServiceYearMonth = RequestSummary[DateofServiceYear]*100 + RequestSummary[DateofServiceMonth]

o

DateofServiceYearMonth = YEAR(RequestSummary[DateofService])*100 + MONTH(RequestSummary[DateofService])

Personalmente usaría el primero

Stachu

Qué tal algo como esto:

YearMonth = YEAR(Calendar[Date])*100 + MONTH(Calendar[Date])

le dará AAAAMM como valor numérico, pero no creo que deba ser un problema

FlyBoyNoche

En respuesta a Stachu

Aquí hay un enlace a una captura de pantalla.

https://www.dropbox.com/s/6o9gjfgmn18i2sh/2020-04-24_16-21-22.png?dl=0

Mi columna original es DateofService que dividí en DateofServce Year y por separado Month. Finalmente, su columna es DateofServiceYearMonth.

DateofServiceYearMonth = YEAR (RequestSummary[DateofServiceYear]) * 100 + MES (RequestSummary[DateofServiceMonth])

¿Recibo números aleatorios, parece?

Stachu

En respuesta a FlyBoyNoche

YEAR y MONTH toman Date como argumento, con su sintaxis es solo el número de días a partir de 1899-12-31, donde 2019 da el año 1905 y 4 da 1 (enero de 1900)

Puedes usar cualquiera

DateofServiceYearMonth = RequestSummary[DateofServiceYear]*100 + RequestSummary[DateofServiceMonth]

o

DateofServiceYearMonth = YEAR(RequestSummary[DateofService])*100 + MONTH(RequestSummary[DateofService])

Personalmente usaría el primero

FlyBoyNoche

En respuesta a Stachu

Stachu,

Muchísimas gracias. No puedo decirte cuántas horas pasé probando diferentes iteraciones de otras opciones. Esto es elegante y perfecto para lo que necesito.

¡Salud!

Stachu

En respuesta a FlyBoyNoche

encantado de ayudar 🙂

Deja un comentario

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