Anónimo
Hola a todos,
Tengo una pregunta que probablemente sea simple, pero durante dos días he intentado muchas cosas diferentes y no puedo encontrar una solución. Entiendo el concepto de totales MTD/YTD/QTD. Sin embargo, en mi trabajo les gusta ver cada uno de esos valores en función del último mes completado o del último trimestre completado para el total de QTD. Es diciembre, así que se vería así.
MTD – Total del mes de noviembre
Hasta la fecha – 1 de enero – 30 de noviembre
QTD – Total del último trimestre completado.
A continuación se muestran las medidas que he basado en verdaderos MTD, YTD, QTD y funcionan perfectamente:
MTD Units Actual = CALCULATE([Total Units Actual],DATESMTD(CalendarTable[Date])) YTD Units Actual = CALCULATE([Total Units Actual],DATESYTD(CalendarTable[Date])) QTD Units Actual = CALCULATE([Total Units Actual],DATESQTD(CalendarTable[Date]))
Tengo una CalendarTable. Entonces, mi pregunta es cómo puedo usar estas u otras expresiones DAX para lograr lo que describí anteriormente. ¡Gracias por adelantado!
v-ljerr-msft
Hola @Anonimo,
Lo siento por mi mala interpretación. ¿Podría probar las fórmulas a continuación para ver si funciona?
Previous Month Units = CALCULATE ( [Total Units Actual], FILTER ( ALL(CalendarTable), YEAR ( CalendarTable[Date] ) = YEAR ( TODAY () ) && MONTH ( CalendarTable[Date] ) = MONTH ( TODAY () ) -1 ) )
YTD Units = CALCULATE ( [Total Units Actual], FILTER ( ALL(CalendarTable), YEAR ( CalendarTable[Date] ) = YEAR ( TODAY () ) && MONTH ( CalendarTable[Date] ) <= MONTH ( TODAY () ) -1 ) )
QTD Units = CALCULATE ( [Total Units Actual], FILTER ( ALL ( CalendarTable ), ENDOFQUARTER ( CalendarTable[Date] ) = STARTOFQUARTER ( TODAY () ) - 1 ) )
Saludos
v-ljerr-msft
Hola @Anonimo,
Lo siento por mi mala interpretación. ¿Podría probar las fórmulas a continuación para ver si funciona?
Previous Month Units = CALCULATE ( [Total Units Actual], FILTER ( ALL(CalendarTable), YEAR ( CalendarTable[Date] ) = YEAR ( TODAY () ) && MONTH ( CalendarTable[Date] ) = MONTH ( TODAY () ) -1 ) )
YTD Units = CALCULATE ( [Total Units Actual], FILTER ( ALL(CalendarTable), YEAR ( CalendarTable[Date] ) = YEAR ( TODAY () ) && MONTH ( CalendarTable[Date] ) <= MONTH ( TODAY () ) -1 ) )
QTD Units = CALCULATE ( [Total Units Actual], FILTER ( ALL ( CalendarTable ), ENDOFQUARTER ( CalendarTable[Date] ) = STARTOFQUARTER ( TODAY () ) - 1 ) )
Saludos
Anónimo
En respuesta a v-ljerr-msft
Gracias de nuevo por sus respuestas. Funcionó perfectamente. ¿Alguna idea de cómo podría refinar esto un poco, de modo que si es enero, muestre el último mes como diciembre del año anterior?
Anónimo
En respuesta a Anónimo
MTD Units - Actual Prior Month = IF ( MONTH ( TODAY () ) = 1, CALCULATE ( [Total Units - Actual], FILTER ( DateTable, YEAR ( DateTable[Date] ) = YEAR ( TODAY () ) - 1 && MONTH ( DateTable[Date] ) = MONTH ( TODAY () ) -1 ) ), CALCULATE ( [Total Units - Actual], FILTER ( DateTable, YEAR ( DateTable[Date] ) = YEAR ( TODAY () ) && MONTH ( DateTable[Date] ) = MONTH ( TODAY () ) - 1 ) ) )
¡No importa, lo descubrí! ¡Acabo de usar la función IF dentro de la medida!
v-ljerr-msft
Hola @Anonimo,
Pruebe las fórmulas a continuación, que deberían dar el resultado esperado.
MTD Units Actual = CALCULATE ( [Total Units Actual], FILTER ( CalendarTable, YEAR ( CalendarTable[Date] ) = YEAR ( TODAY () ) && MONTH ( CalendarTable[Date] ) = MONTH ( TODAY () ) && CalendarTable[Date] <= TODAY () ) )
YTD Units Actual = CALCULATE ( [Total Units Actual], FILTER ( CalendarTable, YEAR ( CalendarTable[Date] ) = YEAR ( TODAY () ) && CalendarTable[Date] <= TODAY () ) )
QTD Units Actual = CALCULATE ( [Total Units Actual], FILTER ( CalendarTable, YEAR ( CalendarTable[Date] ) = YEAR ( TODAY () ) && CalendarTable[Date] >= STARTOFQUARTER ( TODAY () ) && CalendarTable[Date] <= TODAY () ) )
Saludos
Anónimo
En respuesta a v-ljerr-msft
Estas medidas funcionan muy bien, excepto que todavía muestran el verdadero MTD, YTD y QTD. ¿Alguna idea sobre lo que debo hacer para los totales del mes anterior? Intenté lo siguiente y todavía no funcionó
¡Gracias por adelantado!
MTD Units Actual = CALCULATE ( [Total Units Actual], FILTER ( CalendarTable, YEAR ( CalendarTable[Date] ) = YEAR ( TODAY () ) && MONTH ( CalendarTable[Date] ) = MONTH ( TODAY ()-1) && CalendarTable[Date] <= TODAY () ) )
Ashish_Mathur
Hola,
Todo lo que necesita hacer es arrastrar Año al filtro/segmentador y seleccionar 2017. Del mismo modo, arrastre Mes al filtro/segmentador y seleccione Noviembre.
sgsukumaran
Primero debe calcular si el mes está completo y luego hacer MTD
ValueCalc = if(HOY()>=EOMES(VALORES(Tabla1[DateRef]);0);EXPTRUE;EXPRFALSE)