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 🙂