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 Comunidad,
Necesito tu ayuda.
Sceanrio: Tengo 2 cortadores en una página. Año (AAAA) y Mes (AAAAMM).
1) Cuando abro el panel, la segmentación de datos tiene que establecerse para el último año y el último mes. es decir, los datos de todos los gráficos deben ser filtred para esto.
2) Si selecciono cualquier año, entonces debe filtrarse para el último / máximo mes en ese año, y todos los gráficos deben filtrarse para esto.
3) Si selecciono cualquier mes, entonces debe mostrar los datos del mes relacionado sólo en todos los gráficos.
Datos de muestra: a continuación se muestran las 2 segmentaciones de datos.
Año: 2021, 2020, 2019
Meses: 202103, 202102, 202101, 202012, 202011,...,202001,201912,201911,...,201901
expectativa:
1) de forma predeterminada, los gráficos deben mostrar datos de 202103 (debe ser dinámico)
2) si selecciono 2020, debería mostrar datos para el mes de 202012.
3) si selecciono 201910, debería mostrar datos para el mes de 201910
No conseguimos encontrar tu ubicación exacta. Agradezco su ayuda. Gracias de antemano.
saludos
Pradeep
Solved! Go to Solution.
@v-yangliu-msft gracias por su ayuda.
No @pradeept,
Estos son los pasos que puede seguir:
1. Cree una tabla de dos segmentaciones de datos
Slicer1 = SUMMARIZE('Table',[Year])
Slicer2 = SUMMARIZE('Table',[Month])
2. Crear medida.
Flag =
var _selectyear=HASONEVALUE('Slicer1'[Year])
var _selectmonth=HASONEVALUE('Slicer2'[Month])
return
SWITCH(
TRUE(),
_selectyear=FALSE()&&_selectmonth=FALSE(),IF(MONTH(MAX('Table'[date]))=4&&YEAR(MAX('Table'[date]))=2021,1,0),
_selectyear=FALSE(),IF(MAX('Table'[Month])=SELECTEDVALUE(Slicer2[Month]),1,0),
_selectmonth=FALSE(),IF(SELECTEDVALUE(Slicer1[Year])=2020,IF(MAX('Table'[Month])=202012,1,0),IF(MAX('Table'[Month])=20214,1,0)),
IF(MAX('Table'[Month])=SELECTEDVALUE(Slicer2[Month]),1,0)
)
3. Coloque la medida en el Filtro, seleccione is =1, Aplicar filtro.
4. Resultado.
Cuando se selecciona o no 2021, se muestra lo siguiente:
Cuando se selecciona 2020, el resultado muestra:
Saludos
Liu Yang
Si este post ayuda, entonces considere Aceptarlo como la solución para ayudar a los otros miembros a encontrarlo más rápidamente.
@v-yangliu-msft gracias por su ayuda.
Gracias por sus respuestas.
sólo una actualización de mi requisito, no hay necesidad de hacer la selección predeterminada en la segmentación de datos.
Si los gráficos/tablas reflejan el 'Período máximo de informes, eso es suficiente.
Utilicé el siguiente DAX para el cálculo de medidas.
SalesAmount =
VAR _MaxReportPeriod = MAX(Sales[ReportingPeriod])
devolución
calcular
(
SUM(Ventas[Importe]),Ventas[ReportingPeriod] = _MaxReportPeriod
)
Estoy recibiendo el "período máximo de notificación" y "medida" como se esperaba y probado en las tarjetas de tabla / KPI; resultados son los esperados.
problema:
Cuando usé la medida junto con cualquier otra dimensión (en mi cliente de ejemplo), obteniendo los resultados equivocados. Mostrando a todos los clientes, incluso ellos no compraron nada en ese período.
Esperado:
1) Cuando selecciono 2021 o no seleccioné nada...
El período máximo de notificación es 202104. Durante 202104, los clientes C1,C2,C3 sólo hicieron la compra. Así que el gráfico/tabla debe mostrar C1,C2,C3 solamente; no debe mostrar C4,C5,C6.
2) Cuando seleccione 2020
El período máximo de notificación es 202012. Durante 202012, los clientes C1,C2,C4,C6 sólo hicieron la compra. Así que el gráfico/tabla debe mostrar C1,C2,C4,C6 solamente; no debe mostrar C3,C5.
Al igual que 'Cliente', hay un par de otras dimensiones.. (País, Producto, Grupo de Edad..). Así que buscando solución genérica.
Gracias de antemano.
No @pradeept,
Según su descripción, creo algunos datos:
Estos son los pasos que puede seguir:
1. Cree la tabla calculada.
Slicer = SUMMARIZE('Table',[Year])
2. Crear medida.
Flag =
var _selectyear=HASONEVALUE('Slicer'[Year])
var _selectmonth=HASONEVALUE('Table'[Month])
return
SWITCH(
TRUE(), _selectyear=FALSE()&&_selectmonth=FALSE(),CALCULATE(SUM('Table'[amount]),FILTER(ALL('Table'),MONTH('Table'[date])=3&&YEAR('Table'[date])=2021)),
_selectyear=FALSE(),SUM('Table'[amount]),
_selectmonth=FALSE(),CALCULATE(SUM('Table'[amount]),FILTER(ALL('Table'),MONTH('Table'[date])=12&&YEAR('Table'[date])=SELECTEDVALUE(Slicer[Year]))),
BLANK())
3. Coloque la medida en el Filtro, seleccione is =1, Aplicar filtro.
4. Resultado.
De forma predeterminada, se muestran los datos del mes de 2021.3:
Seleccione 2020, debe mostrar los datos para 202012:
Seleccione 201910, mostrará los datos de octubre de 2019:
Saludos
Liu Yang
Si este post ayuda, entonces considere Aceptarlo como la solución para ayudar a los otros miembros a encontrarlo más rápidamente.
@pradeept , Debe crear columnas como estas en la tabla de fecha
Tipo de mes = Interruptor ( True(),
eomonth([Fecha],0)= eomonth(Today(),0),"Mes actual" ,
eomonth([Fecha],0) = eomonth(Today(),-1),"Last Month" ,
Formato([Fecha],"MMM-AAAA")
)
Tipo de año = Interruptor ( True(),
año([Fecha])= año(Hoy()),"Este año" ,
Formato([Fecha],YYYY")
)
Seleccione Este año y el mes actual
referir mi video
@amitchandak gracias por su sugerencia. pero esto no es lo que estoy buscando exactamente.
Paso 1:
Cuando abrimos la página/panel, de forma predeterminada Año/Mes debe filtrarse automáticamente para "Este año" y "Este mes". No debe haber ningún proceso manual para las selecciones. (las etiquetas deben ser «2021», «202103»)
Paso 2:
Después de analizar los gráficos/informes para el último período, si se requiere algún análisis adicional, seleccionaremos los períodos de tiempo necesarios.
Gracias, pradeep
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 |
---|---|
1 | |
1 | |
1 | |
1 | |
1 |
User | Count |
---|---|
2 | |
2 | |
1 | |
1 | |
1 |