Forum Discussion
Calculo MTD a final de mes
Tengo una formula DAX para calcular el presupuesto acumulado del mes a una fecha que pone el usuario
Pres_MTD_€:= TOTALMTD(pressupost[Pres_€],CALENDARIO[Fecha])
Esto funciona correctamente, pero necesitaria otra medida para calcular el importe del presupuesto a final de mes de la fecha que pone el usuario. Es decir si el usuario pone en la fecha 10/06/2022, necesitaria el importe acumulado a 30/06/2022.
Gracias por adelantado
La solucion que funciona correctamente es :
datafin = CALCULATE(MAX(CALENDARIO[Fecha]))Pres_MES =VAR mesFinal = MONTH(CALENDARIO[datafin])VAR yearFinal = YEAR(CALENDARIO[datafin])RETURNCALCULATE([Importe_pres], FILTER(ALL(CALENDARIO), CALENDARIO[Año] = yearFinal && CALENDARIO[Mes] = mesFinal))
4 Replies
- Syndicate_Admin
Administrator
Podrías probar como :-
measure = VAR selected_Value = SELECTEDVALUE ( budget[fecha] ) RETURN CALCULATE ( budget[pres], FILTER ( ALL ( Calender ), Calender[fecha] <= EOMONTH ( selected_Value, 0 ) ) )- teixidorFrequent Visitor
Hola, gracias por la respuesta.
No me funciona , he puesto la formula que indicas y sale el valor vacio.
Ejemplo con fecha a 10/02/2021. Estos son los datos que tengo :
VENTAS
empresa fecha importe
EMP1 01/01/2021 100,00 €
EMP1 01/01/2021 68,00 €
EMP1 01/01/2021 56,78 €
EMP1 04/01/2021 500,00 €
EMP1 04/01/2021 45,00 €
EMP1 06/01/2021 700,84 €
EMP1 07/01/2021 100,00 €
EMP1 08/01/2021 201,00 €
EMP1 10/01/2021 20,00 €
EMP1 10/01/2021 24,00 €
EMP1 07/02/2021 100,00 €
EMP1 08/02/2021 201,00 €
EMP1 09/02/2021 20,00 €
EMP1 10/02/2021 24,00 €
EMP1 11/02/2021 24,00 €
EMP1 12/02/2021 24,00 €
EMP1 13/02/2021 100,12 €ventas febrero a 10/02/2021 : 345
presupuesto
empresa fecha press
EMP1 01/01/2021 50
EMP1 02/01/2021 50
EMP1 03/01/2021 50
EMP1 04/01/2021 50
EMP1 05/01/2021 50
EMP1 06/01/2021 50
EMP1 07/01/2021 50
EMP1 08/01/2021 50
EMP1 09/01/2021 50
EMP1 10/01/2021 50
EMP1 11/01/2021 50
EMP1 12/01/2021 60
EMP1 13/01/2021 60
EMP1 14/01/2021 60
EMP1 15/01/2021 60
EMP1 16/01/2021 60
EMP1 17/01/2021 60
EMP1 18/01/2021 60
EMP1 19/01/2021 60
EMP1 20/01/2021 60
EMP1 21/01/2021 60
EMP1 22/01/2021 60
EMP1 23/01/2021 70
EMP1 24/01/2021 70
EMP1 25/01/2021 70
EMP1 26/01/2021 70
EMP1 27/01/2021 70
EMP1 28/01/2021 70
EMP1 29/01/2021 70
EMP1 30/01/2021 70
EMP1 31/01/2021 80
EMP1 01/02/2021 60
EMP1 02/02/2021 60
EMP1 03/02/2021 60
EMP1 04/02/2021 60
EMP1 05/02/2021 60
EMP1 06/02/2021 60
EMP1 07/02/2021 60
EMP1 08/02/2021 60
EMP1 09/02/2021 60
EMP1 10/02/2021 60
EMP1 11/02/2021 60
EMP1 12/02/2021 60
EMP1 13/02/2021 60
EMP1 14/02/2021 60
EMP1 15/02/2021 76
EMP1 16/02/2021 76
EMP1 17/02/2021 76
EMP1 18/02/2021 76
EMP1 19/02/2021 76
EMP1 20/02/2021 76
EMP1 21/02/2021 85
EMP1 22/02/2021 85
EMP1 23/02/2021 85
EMP1 24/02/2021 85total presupuesto febrero : 18.970
presupuesto febrero a 10/02/21 : 600resultado
ventas_mtd = totalmtd(VENTAS[importe_],CALENDARIO[Fecha]) ok 345
pres_mtd = totalmtd(PRESUPUESTO[press],CALENDARIO[Fecha]) ok 600pres_EOMONTH = VAR selected_Value = SELECTEDVALUE ( PRESUPUESTO[fecha] ) RETURN CALCULATE ( PRESUPUESTO[press], FILTER ( ALL ( CALENDARIO ), CALENDARIO[Fecha] <= EOMONTH ( selected_Value, 0 ) ) )
no ok , sale vacio. Deberia salir el importe del presupuesto de todo el mes de febrero 18.970
Gracias
- Syndicate_Admin
Administrator
¿Cuál es su resultado deseado?
Cómo se pueden conseguir las rebajas de febrero al 10/02/2021 : 345. Después de calcular, obtengo el resultado 172.12. Del 2/2/2021 al febrero: 24+24+24+100.12=172.12.
Measure = VAR _SELECTVALUE = SELECTEDVALUE ( SALES[DATE] ) VAR _ENDMONTH = EOMONTH ( _SELECTVALUE, 0 ) RETURN CALCULATE ( SUM ( SALES[AMOUNT] ), FILTER ( ALL ( SALES ), SALES[company] = SELECTEDVALUE ( SALES[company] ) && SALES[DATE] <= _ENDMONTH && SALES[DATE] >= _SELECTVALUE ) )presupuesto total febrero: 1636
¿Cómo calcular para obtener 600?
¿Podría proporcionar el resultado deseado con más detalles?
Saludos
Equipo de apoyo a la comunidad _ Polly
Si esta publicación ayuda, considere Aceptarla como la solución para ayudar a los otros miembros a encontrarla más rápidamente. - teixidorFrequent Visitor
La solucion que funciona correctamente es :
datafin = CALCULATE(MAX(CALENDARIO[Fecha]))Pres_MES =VAR mesFinal = MONTH(CALENDARIO[datafin])VAR yearFinal = YEAR(CALENDARIO[datafin])RETURNCALCULATE([Importe_pres], FILTER(ALL(CALENDARIO), CALENDARIO[Año] = yearFinal && CALENDARIO[Mes] = mesFinal))