Register now to learn Fabric in free live sessions led by the best Microsoft experts. From Apr 16 to May 9, in English and Spanish.
Hola
Estoy tratando de obtener consejos sobre cómo conseguir BPI que me permita comparar dos períodos de tiempo similares a este:
https://www.sqlbi.com/articles/filtering-and-comparing-different-time-periods-with-power-bi/
Y
https://www.reddit.com/r/PowerBI/comments/8bqzon/can_i_build_a_power_bi_report_that_compares_two/
Sin embargo, los ejemplos anteriores son para la suma de las ventas sobre las ventas anteriores. Necesito comparar valores por día de un intervalo de tiempo anterior a un intervalo de tiempo más reciente.
En los ejemplos siguientes hechos a partir de enlaces anteriores, los días se compensan y no puedo comparar el primer y último día (o cualquier rango de desplazamiento que elija).
Por ejemplo, obtendré algo como esto:
Representación gráfica:
Lo que quiero hacer es alinear los días en los que el primer día para el 25 de noviembre de 2019 (xx.994.958) se compara con Nov26,2018 (xx,810,236) (y xx,191,297 a xx,081,877).
En este momento la única comparación es en noviembre 26, que no es lo que quiero.
Necesito ser capaz de elegir cualquier lapso de tiempo a cualquier otro lapso de tiempo (podría ser el año pasado vs este año, pero no necesariamente). Necesidad de poder usar dos rebanadoras. Uno para el período anterior y la segunda segmentación para el segundo período. Ser capaz de comparar los valores para cada día desde el primer día del primer período de la segmentación de datos hasta el primer día del segundo período de tiempo de la segunda segmentación y así sucesivamente. Si el intervalo de fechas no es exactamente el mismo, digamos que la primera segmentación es un intervalo de 40 días y la segunda segmentación de datos es de 47 días, simplemente no compare los valores de los últimos 7 días.
Agradecería mucho que alguien me ayudara.
Gracias
Mike
Solved! Go to Solution.
Pruebe este enfoque para obtener la funcionalidad deseada.
Haga una tabla Date duplicada sin relación con las otras tablas (supongo que ya tiene una tabla Date conectada a la tabla de hechos).
Haga una 2a segmentación con las fechas de la nueva tabla Date (Date2 en la expresión siguiente).
Pruebe esta expresión con los nombres de tabla y columna reales.
Slicer 2 Rating =
VAR __thisdate =
SELECTEDVALUE ( Date1[Date] )
VAR __minslicer1 =
CALCULATE ( MIN ( Date1[Date] ), ALLSELECTED ( Date1[Date] ) )
VAR __daysin =
DATEDIFF ( __minslicer1, __thisdate, DAY ) + 1
VAR __minslicer2 =
CALCULATE ( MIN ( Date2[Date] ), ALLSELECTED ( Date2[Date] ) )
VAR __prevdate = __minslicer2 + __daysin
RETURN
CALCULATE ( [Rating], Date1[Date] = __prevdate )
Aquí hay una foto que muestra la funcionalidad deseada con el enfoque anterior.
Si esto funciona para usted, márquelo como la solución. Los elogios también son apreciados. Por favor, avísame si no.
saludos
palmadita
To learn more about Power BI, follow me on Twitter or subscribe on YouTube.
Pruebe este enfoque para obtener la funcionalidad deseada.
Haga una tabla Date duplicada sin relación con las otras tablas (supongo que ya tiene una tabla Date conectada a la tabla de hechos).
Haga una 2a segmentación con las fechas de la nueva tabla Date (Date2 en la expresión siguiente).
Pruebe esta expresión con los nombres de tabla y columna reales.
Slicer 2 Rating =
VAR __thisdate =
SELECTEDVALUE ( Date1[Date] )
VAR __minslicer1 =
CALCULATE ( MIN ( Date1[Date] ), ALLSELECTED ( Date1[Date] ) )
VAR __daysin =
DATEDIFF ( __minslicer1, __thisdate, DAY ) + 1
VAR __minslicer2 =
CALCULATE ( MIN ( Date2[Date] ), ALLSELECTED ( Date2[Date] ) )
VAR __prevdate = __minslicer2 + __daysin
RETURN
CALCULATE ( [Rating], Date1[Date] = __prevdate )
Aquí hay una foto que muestra la funcionalidad deseada con el enfoque anterior.
Si esto funciona para usted, márquelo como la solución. Los elogios también son apreciados. Por favor, avísame si no.
saludos
palmadita
To learn more about Power BI, follow me on Twitter or subscribe on YouTube.
Hola Pat,
¡Gracias esto está mucho más cerca que nunca!
Me di cuenta de que mi segundo rango de fechas era un día de descuento, así que saqué el "+1" en el VAR __daysin. Parece estar funcionando bien ahora.
A continuación obtengo las comparaciones anteriores y actuales que se ven muy bien:
Tengo curiosidad por qué la línea total no es correcta (su muestra parece apagado también)?
nota lateral:
Tuve algunos problemas con mi tabla después de que intenté insertar mi segunda fila de fecha de la tabla date2 (para verlo como el suyo), tengo duplicados como abajo, pero no necesito ver el segundo conjunto de fechas de todos modos:
tal vez fue porque mi tabla de hechos tuve que usar "sum"(No pude conseguir que funcione sin) en la columna [ratings] (CALCULATE(sum(ShipRateTrack[Rating]),'Date'[Date] ? __prevdate)?
Gracias
Mike
Hola Pat,
¡Gracias esto está mucho más cerca que nunca!
Me di cuenta de que mi segundo rango de fechas era un día de descuento, así que saqué el "+1" en el VAR __daysin. Parece estar funcionando bien ahora.
A continuación obtengo las comparaciones anteriores y actuales que se ven muy bien:
Tengo curiosidad por qué la línea total no es correcta (su muestra parece apagado también)?
nota lateral:
Tuve algunos problemas con mi tabla después de que intenté insertar mi segunda fila de fecha de la tabla date2 (para verlo como el suyo), tengo duplicados como abajo, pero no necesito ver el segundo conjunto de fechas de todos modos:
tal vez fue porque mi tabla de hechos tuve que usar "sum" en la columna [ratings] (CALCULATE(sum(ShipRateTrack[Rating]),'Date'[Date] - __prevdate)?
Gracias
Mike
Para cada una de sus segmentaciones de datos que necesita para identificar la fecha visible mínima (es decir, la fecha en el cuadro de la izquierda) - a través de min(allselected).
A continuación, debe restar el min izquierdo de las fechas mínimas correctas y utilizar ese valor delta resultante como el cambiador para todos sus cálculos a través de DateAdd().
@mikelee1701 , deje que la primera segmentación de datos esté en la fecha conectada a la fecha de sua suponer de la tabla. Puede tener una segunda cortadora en la fecha no conectada
La primera medida tiene que responder a la fecha y está conectada hasta la fecha por lo que la medida simple servirá.
probar una segunda medida como. Mueve la fecha detrás.
nueva medida ?
var _min á minx(allselected(Date),Date[Date])
var _min1 á minx(allselected(Date1),Date1[Date])
var _diff á datediff(_min1,_min,Day)
devolución
calculate([measure], dateadd(Date[Date],_diff,day))
Covering the world! 9:00-10:30 AM Sydney, 4:00-5:30 PM CET (Paris/Berlin), 7:00-8:30 PM Mexico City
Check out the April 2024 Power BI update to learn about new features.
User | Count |
---|---|
2 | |
1 | |
1 | |
1 | |
1 |
User | Count |
---|---|
2 | |
2 | |
2 | |
2 | |
1 |