Anónimo
Tengo algunos datos que se parecen a los siguientes:
Lo que quiero hacer es crear un gráfico que me muestre cuántas ideas había en cada etapa en esa fecha en particular.
por ejemplo, el 31/7/2018, teníamos 2 ideas en la etapa 2 (A, B) y nada más.
Mientras que el 16/9/2018, teníamos 1 en la Etapa 3 (A), 1 en la Etapa 2 (B) y 2 en la Etapa 1 (C, D)
¿Hay alguna manera de lograr esto dinámicamente? (es decir, no especificar una fecha y luego usar ‘countif’ para tratar de averiguarlo, ya que está destinado a usarse como un tablero dinámico)
El resultado final será un gráfico de columnas apiladas con fechas a lo largo del eje x y recuentos de las etapas en el eje y.
Owen Auger
hola @anonimo
Aquí hay un enfoque: pbix cargado aquí.
- Transforme su tabla de Ideas en este formulario:
-
Crear una tabla de ‘Fecha’ desconectada
-
Crea esta medida:
Idea Count as at Latest Stage = VAR MaxDate = MAX ( 'Date'[Date] ) RETURN CALCULATE ( DISTINCTCOUNT ( Ideas[Idea] ), GENERATE ( VALUES ( Ideas[Idea] ), CALCULATETABLE ( LASTDATE ( Ideas[Date] ), ALLEXCEPT ( Ideas, Ideas[Idea] ), Ideas[Date] <= MaxDate ) ) )
Esta medida crea un filtro que combina cada Idea con su Fecha más reciente. Cuando aplica un filtro de Etapa y una ‘Fecha'[Date] filtro, puede contar las ideas para las que la(s) etapa(s) filtrada(s) son la última etapa en la última fecha filtrada.
- La columna visual apilada se ve así: creo que querías algo similar:
¿Ese es el tipo de cosa que estabas buscando?
Saludos,
Owen
Owen Auger
hola @anonimo
Aquí hay un enfoque: pbix cargado aquí.
- Transforme su tabla de Ideas en este formulario:
-
Crear una tabla de ‘Fecha’ desconectada
-
Crea esta medida:
Idea Count as at Latest Stage = VAR MaxDate = MAX ( 'Date'[Date] ) RETURN CALCULATE ( DISTINCTCOUNT ( Ideas[Idea] ), GENERATE ( VALUES ( Ideas[Idea] ), CALCULATETABLE ( LASTDATE ( Ideas[Date] ), ALLEXCEPT ( Ideas, Ideas[Idea] ), Ideas[Date] <= MaxDate ) ) )
Esta medida crea un filtro que combina cada Idea con su Fecha más reciente. Cuando aplica un filtro de Etapa y una ‘Fecha'[Date] filtro, puede contar las ideas para las que la(s) etapa(s) filtrada(s) son la última etapa en la última fecha filtrada.
- La columna visual apilada se ve así: creo que querías algo similar:
¿Ese es el tipo de cosa que estabas buscando?
Saludos,
Owen
Anónimo
En respuesta a Owen Auger
Hola Owen,
Esto es casi correcto, desafortunadamente, si el proyecto pasa por dos etapas en la misma fecha, no parece elegir la etapa posterior. En cambio, cuenta 1 para ambas etapas. ¿Hay alguna manera de hacer que solo elija la etapa posterior?
Owen Auger
En respuesta a Anónimo
@Anónimo
Veo el problema.
He actualizado mi archivo con un par de opciones para medidas que corrigen esto:
enlace PBIX
La lógica es la misma en cada uno, solo que está escrita de manera ligeramente diferente. ¡Puede haber una manera más elegante de manejar esto! 🙂
Idea Count as at Latest Stage V2 = VAR MaxDate = MAX ( 'Date'[Date] ) RETURN CALCULATE ( DISTINCTCOUNT ( Ideas[Idea] ), KEEPFILTERS ( GENERATE ( GENERATE ( VALUES ( Ideas[Idea] ), CALCULATETABLE ( LASTDATE ( Ideas[Date] ), ALLEXCEPT ( Ideas, Ideas[Idea] ), Ideas[Date] <= MaxDate ) ), CALCULATETABLE ( LASTNONBLANK ( Ideas[Stage], 0 ), ALLEXCEPT ( Ideas, Ideas[Idea], Ideas[Date] ) ) ) ) )
Idea Count as at Latest Stage V3 = VAR MaxDate = MAX ( 'Date'[Date] ) RETURN CALCULATE ( DISTINCTCOUNT ( Ideas[Idea] ), KEEPFILTERS ( GENERATE ( VALUES ( Ideas[Idea] ), CALCULATETABLE ( GENERATE ( LASTDATE ( Ideas[Date] ), CALCULATETABLE ( LASTNONBLANK ( Ideas[Stage], 0 ), ALLEXCEPT ( Ideas, Ideas[Idea], Ideas[Date] ) ) ), ALLEXCEPT ( Ideas, Ideas[Idea] ), Ideas[Date] <= MaxDate ) ) ) )
Saludos,
Owen