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, amigos!
Mi objetivo es implementar una medida que funcione un "Filtro en este Fisual" con una prueba lógica (1 para ResultTrue y 0 para ResultFalse) que devuelve 1 en mi tabla con un resultado, que muestra solo las filas con Ventas en este intervalo de fechas seleccionado.
Primer enfoque:
Mi primer enfoque es que creé un ParameterTable en mi conjunto de datos (Rango 0-365 que significa los días para su comprensión) con una medida relacionada máx. de este rango.
En mi informe quiero recoger este ParameterTable como un "Menos que o igual a"-Date-Slicer-Filter y quiero insertar aquí un valor 0-365 por ejemplo 5.
Como mi MaxDate es 31.10.2019 y mi parámetro en este Date-Slicer-Filter es 5 (Días), sólo quiero ver solo las filas de esta tabla de 31.10.2019 menos 5 días (viene de[ParameterValueFromDataSet]) (26.10.2019) hasta 31.10.2019 más 5 días (5.11.2019)
Esto no funciona:
IF (ABS(DATEDIFF(LASTDATE(Zeit[Date]);FIRSTNONBLANK(all(Zeit[Date]);TRUE());DAY)<='[ParameterValueFromDataSet]);1;0)
Segundo enfoque:
Mi segundo enfoque es implementar una segunda tabla de fechas en mi conjunto de datos que se filtra desde mi primera DateTable (1-*). Luego voy a mi informe y establezco un Date-Slicer con la tabla de la primera fecha con un rango entre 1.1.19 - 31.12.19 y un segundo Date-Slicer con mi segunda tabla de fechas para seleccionar aquí solo 1 fecha (como 01.04.19).
Aquí, mi "Filtro en este Fisual"-Medida que funciona en una mesa. Parece que:
Medida2 ?
VAR selectedDate = CALCULATE(MAX(SecondDateTable[Date]);ALL(FirstDateTable[Date]))
RETURN
if(AND(MAX(FirstDateTable[Date]) >= SecondDateTable[Date] -[ParameterValueFromDataSet]; MAX(FirstDateTable[Date]) <= SecondDateTable[Date] +[ParameterValueFromDataSet]);1;0)
Ejemplo:
MAX(FirstDateTable[Date] á 31.12.2019
SecondDateTable[Fecha] - 01.04.2019
[ParameterValueFromDataSet] á 5
En el sentido figurado:
Medida2 ?
VAR selectedDate á 01.04.2019
devolución
if(AND(Date> á 01.04.2019 menos 5 días que es el resultado 27.03.2019; Fecha <-01.04.2019 más 5 días que es el resultado 06.04.2019 );1;0)
Aquí quiero mostrar solo estas filas con ventas en mi Tabla, que están entre 27.03 - 06.04 aunque mi Date Calender muestra más Días.
Gracias por tu ayuda.
Solved! Go to Solution.
Hola @tim_m15 ,
¿Podría mostrarnos algunos datos de muestra o estructura de tabla? Según su descripción, entiendo que tiene dos segmentaciones de datos para la fecha, otra para ParameterValueFromDataSet. Desea mostrar los valores de un período de tiempo basado en estos dos valores seleccionados Si algo se malinterpreta, por favor dígame.
Le sugiero que utilice la siguiente medida:
Measure =
VAR selecteddate =
SELECTEDVALUE ( SecondDateTable[Date] )
VAR p =
SELECTEDVALUE ( ParameterValueFromDataSet[ParameterValueFromDataSet] )
RETURN
IF (
MAX ( FirstDateTable[Date] ) >= selecteddate - p
&& MAX ( FirstDateTable[Date] ) <= selecteddate + p,
1,
0
)
He creado algunos datos de prueba, se puede hacer referencia al archivo pbix : https://qiuyunus-my.sharepoint.com/:u:/g/personal/pbipro_qiuyunus_onmicrosoft_com/EaTYxoZJG5VGoKewGV...
Saludos
Dedmon Dai
Hola Demonio,
gracias por su respuesta y su consejo se ve útil!
Ahora podría resolver este desafío yo mismo. Implemento una segunda tabla de fechas como una segmentación como he descrito y otra segmentación con el Parametertable y escribo la siguiente medida en una función de un filtro visual en una condición true-/false
Measure:
VAR SelectedDate = CALCULATE( MAX( Date[SecondDateTable] ); ALL( Date[FirstDateTable] ) )
RETURN
IF( AND( MAX(Sales[BookingDate] ) >= SelectedDate - [ParameterTableValue] ; MAX(Sales[BookingDate]) <= SelectedDate + [ParameterTableValue] );
1;
0)
A partir de entonces pongo las Ventas y el BookingDate en mi Tabla y filtro el filtro visual con "1" y funciona.
Saludos
Tim
Hola @tim_m15 ,
¿Podría mostrarnos algunos datos de muestra o estructura de tabla? Según su descripción, entiendo que tiene dos segmentaciones de datos para la fecha, otra para ParameterValueFromDataSet. Desea mostrar los valores de un período de tiempo basado en estos dos valores seleccionados Si algo se malinterpreta, por favor dígame.
Le sugiero que utilice la siguiente medida:
Measure =
VAR selecteddate =
SELECTEDVALUE ( SecondDateTable[Date] )
VAR p =
SELECTEDVALUE ( ParameterValueFromDataSet[ParameterValueFromDataSet] )
RETURN
IF (
MAX ( FirstDateTable[Date] ) >= selecteddate - p
&& MAX ( FirstDateTable[Date] ) <= selecteddate + p,
1,
0
)
He creado algunos datos de prueba, se puede hacer referencia al archivo pbix : https://qiuyunus-my.sharepoint.com/:u:/g/personal/pbipro_qiuyunus_onmicrosoft_com/EaTYxoZJG5VGoKewGV...
Saludos
Dedmon Dai
Hola Demonio,
gracias por su respuesta y su consejo se ve útil!
Ahora podría resolver este desafío yo mismo. Implemento una segunda tabla de fechas como una segmentación como he descrito y otra segmentación con el Parametertable y escribo la siguiente medida en una función de un filtro visual en una condición true-/false
Measure:
VAR SelectedDate = CALCULATE( MAX( Date[SecondDateTable] ); ALL( Date[FirstDateTable] ) )
RETURN
IF( AND( MAX(Sales[BookingDate] ) >= SelectedDate - [ParameterTableValue] ; MAX(Sales[BookingDate]) <= SelectedDate + [ParameterTableValue] );
1;
0)
A partir de entonces pongo las Ventas y el BookingDate en mi Tabla y filtro el filtro visual con "1" y funciona.
Saludos
Tim
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 |