Cálculo de totales acumulados mensuales

Un usuario Pregunto ✅

Waseem

Hola, gurús de Power BI

Estoy atascado en una situación para la que he visto muchas soluciones. Sin embargo, nada funcionó para mí ya que tengo más columnas en mi tabla. Necesito calcular los números acumulados mensuales que suman valores para cada mes en los códigos respectivos. Tengo la siguiente estructura de tabla:

Capture.JPG

Necesito un nuevo campo calculado que cree un archivo «Actual_KD» mensual acumulado para cada código de cuenta y centro de costos.

He intentado seguir las fórmulas, pero me da valores cero en todo momento (TB es el nombre de mi tabla):

Cumulative_Actual =
CALCULATE (
    SUM ( TB'[Actual_KD] ),
    ALL ( 'TB' ),
    'TB'[Month] <= EARLIER ( 'TB'[Month] )
)

Agradecemos el apoyo de los expertos.

Saludos

tringuyenminh92

En respuesta a Waseem

@Waseem, lo siento por no haber escrito rápidamente. hay un filtro faltante en la expresión:

Cumulative_Actual =
CALCULATE (
    SUM ( 'TB'[Actual_KD] ),
   filter( ALL ( 'Dates' ),
    'Dates'[Date] <= MAX( 'Dates'[Date] ))
)

por favor, inténtelo de nuevo con la medida calculada

AndreSatziack

Hola chicos,

Gracias por todo, resolví este problema con Dax a continuación. Atentamente.

New Date Table:

Calendar = CALENDAR(MIN(Relatorio_Anual_2017[Criado]),MAX(Relatorio_Anual_2017[Criado]))
New Measure:

Acumulado = CALCULATE(
	SUM(Relatorio_Anual_2017[Horas]),
	FILTER(
		ALLSELECTED('Calendar'[Date]),
		'Calendar'[Date] <= MAX ('Calendar'[Date])
	)
)

AndreSatziack

Hola chicos,

¿Cómo estás? Necesito tu ayuda para el mismo problema.

Usé la misma muestra de DAX, pero esto no funcionó para mí, ¿pueden ayudarme?

Tengo la siguiente estructura de tabla.

Muchísimas gracias.

tringuyenminh92

Hola @Waseem,
En lugar de utilizar la columna calculada, puede utilizar la medida calculada:

  • Nueva tabla de Fechas creada: Fechas = Calendarauto ()
  • Hacer la relación entre la tabla de hechos y fechas
  • Crear medida calculada:
Cumulative_Actual =
CALCULATE (
    SUM ( 'TB'[Actual_KD] ),
    ALL ( 'Dates'),
    'Dates'[Date] <= MAX ( 'Dates'[Date] )
)

Consulte mi ejemplo como parte del tema: https://community.powerbi.com/t5/Desktop/DAX-Count-of-Stores-that-are-under-the-Average/td-p/100685

En caso de que aún desee continuar con la columna calculada, puede intentar reemplazar el método ALL con ALLEXCEPT (TB, columnnyouwantfilter1, columnnyouwantfilter2)

No dude en mostrar sus expectativas en la imagen o avíseme si necesita una muestra para aclarar cualquier inquietud. Si esto funciona para usted, acéptelo como solución y también le gustaría dar KUDOS.

harithapliyal

En respuesta a tringuyenminh92

Muchas gracias por esta entrada que crea una medida, no una columna para obtener el resultado deseado. 🙂 Finalmente, esto hizo mi trabajo.

Waseem

En respuesta a tringuyenminh92

Hola @ tringuyenminh92

Lo siento si no es legible. El error dice lo siguiente:

«Se ha utilizado una función MAX en la expresión Verdadero / Falso que se utiliza como una expresión de filtro de tabla. Esto no está permitido».

Saludos

tringuyenminh92

En respuesta a Waseem

@Waseem, lamento no haberme perdido al escribir rápidamente. hay un filtro faltante en la expresión:

Cumulative_Actual =
CALCULATE (
    SUM ( 'TB'[Actual_KD] ),
   filter( ALL ( 'Dates' ),
    'Dates'[Date] <= MAX( 'Dates'[Date] ))
)

por favor, inténtelo de nuevo con la medida calculada

Waseem

En respuesta a tringuyenminh92

@ tringuyenminh92 Muchas gracias.

Me has alegrado el día. Salud

AndreSatziack

En respuesta a Waseem

Hola @Waseem

Tengo el mismo problema, ¿me pueden ayudar también? Usé el mismo código, pero esto no funcionó para mí. Smiley frustrado

Muchísimas gracias 😉

Tengo la siguiente estructura de tabla.

Power Bi Cumulative.png

Waseem

En respuesta a AndreSatziack

Hola @AndreSatziack

Primero debe crear una tabla de fechas y darle el nombre «Fecha». Puede crear esta tabla de la siguiente manera:

Fecha = CALENDARAUTO ()

Luego, escriba la siguiente fórmula para crear una «Nueva medida»:

Acumulado = SI (COUNTROWS (Relatorio_Completo_2017) <0, CALCULATE (SUM (Relatorio_Completo_2017[Hours]), FILTRO (TODOS (‘Fecha’), ‘Fecha'[Date}<=MAX{‘Date'[Date]))),BLANCO())..

Espero eso ayude

Salud

tringuyenminh92

En respuesta a AndreSatziack

Hola @AndreSatziack,

Debe crear la tabla de fechas utilizando el método Calendar () o CalendarAuto () y establecer una relación entre su tabla de transacciones con esta tabla de fechas. Luego aplique la fórmula anterior. tenga en cuenta que colocamos el filtro en la tabla Fechas, no en la tabla de transacciones.

En caso de que esto aún no funcione, por favor comparta su archivo de trabajo actual y podría verificarlo rápidamente por usted.

AndreSatziack

En respuesta a tringuyenminh92

Hola @ tringuyenminh92 y @Waseem,

Gracias por tu ayuda 🙂

Intenté crear pero no funcionó, sigue los mismos archivos que estoy usando para crear el gráfico BurnDown.

Gracias de nuevo por la ayuda 🙂

Waseem

En respuesta a tringuyenminh92

Hola @ tringuyenminh92

Muchas gracias por tu pronta respuesta. Intenté hacer lo que sugirió, pero apareció un mensaje de error. Creé tanto una medida como una columna, pero terminé con el mismo mensaje de error. A continuación se muestra la instantánea de mi panel. Aprecio tu ayuda.

Capture.JPG

Deja un comentario

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