La solicitud

De Steven Clark, Director Regional de Operaciones
Tu objetivo
Lee la matriz rota de la lección y elige la causa.
Lo que recibe Steven, y por qué
La lección
Todo creador de informes se topa con esto tarde o temprano: una columna de acumulado del año que no acumula nada. El síntoma es preciso, y la causa también.
En qué estás trabajando
Este nivel es una pregunta, no una fórmula. En el motor DAX de práctica de este sitio se puede reproducir el mismo informe roto desactivando la marca de tabla de fechas; en Power BI Desktop el ajuste vive en Table tools → Mark as date table con el calendario seleccionado, y la vista Modelo muestra qué columna usa cada relación.
La matriz rota
Este es el informe de Steven, con los números reales de 2025 de la tienda:
| Year Month | Sales | Sales YTD |
|---|---|---|
| 2025-01 | $150,571 | $150,571 |
| 2025-02 | $99,903 | $99,903 |
| 2025-03 | $166,787 | $166,787 |
| 2025-04 | $189,734 | $189,734 |
| … | … | … |
| Total | $2,300,170 | $2,300,170 |
Un informe que funciona muestra $250,474 para febrero y $417,261 para marzo. La fila Total es correcta en ambos, y esa es la pista.
Cómo construye TOTALYTD su filtro
Para la fila 2025-03:
- Los filtros de la celda son Year = 2025 (segmentación) y Year Month = 2025-03 (fila).
- TOTALYTD encuentra la última fecha visible, 31 de marzo, y construye las fechas del 1 de enero al 31 de marzo.
- CALCULATE pone esas fechas sobre
'Date'[Date].
Ahora la pregunta es qué pasa con los otros filtros del calendario. Un filtro nuevo sobre
'Date'[Date] reemplaza un filtro existente sobre esa misma columna, pero Year Month es una
columna distinta. Si su filtro se queda, el calendario conserva solo las filas que pasan ambos:
fechas del 1 de enero al 31 de marzo y en 2025-03. Eso es marzo. El total acumulado se
colapsa al mes.
Qué cambia al marcar la tabla
Cuando una tabla está marcada como tabla de fechas, Power BI trata un filtro sobre su columna de fecha como un filtro sobre toda la tabla: quita primero los filtros de Year, Month, Year Month y cualquier otra columna del calendario. Las fechas del YTD quedan entonces solas, y febrero muestra $250,474.
Power BI hace lo mismo automáticamente cuando la relación con los hechos usa una columna de tipo Date, por eso muchos informes funcionan sin la marca. El calendario de Steven se une por un DateKey entero (20250331), así que no recibe ayuda, y el Total es la única celda sin un filtro Year Month que estorbe.
Dos soluciones
- Marca la tabla. Selecciona el calendario, Table tools → Mark as date table, elige su columna Date. Power BI comprueba que la columna tenga una fila por día y ningún hueco. Esto arregla todas las medidas de tiempo a la vez.
- Quita los filtros en la medida.
CALCULATE([Sales], DATESYTD('Date'[Date]), REMOVEFILTERS('Date'))limpia primero el calendario y luego aplica las fechas del YTD. Funciona, pero cada medida lo necesita.
Otros síntomas parecidos
- El mismo total general en cada fila: falta la relación o está inactiva.
- Vacío en todas partes para el año pasado: el calendario no cubre el año anterior.
- YTD algo corto: el calendario tiene huecos, o usa las fechas de la tabla de hechos.
¡Linterna encendida!
Practicaste: mark as date tabletotalytddate tablefilter contexttroubleshooting
- Resuelto
- Sin pistas
- Al primer intento
