Skip to main content
cancel
Showing results for 
Search instead for 
Did you mean: 

Get certified in Microsoft Fabric—for free! For a limited time, get a free DP-600 exam voucher to use by the end of 2024. Register now

Reply
AFinster
Helper I
Helper I

Tabla de filtros basada en MAX de la segmentación de fecha

Hola a todos

Necesito ayuda con un problema pegajoso...

Tengo una tabla de fechas que se divide en fechas de "fin de semana" y una tabla de datos que tiene registros agregados según la fecha de finalización de la semana.

Estoy usando una segmentación de fecha configurada como "Antes" para que el usuario solo tenga 1 fecha para manipular. Me gustaría que la tabla que muestra los datos se filtre en la fecha máxima de finalización de la semana seleccionada en la segmentación de datos.

También he creado una medida para mostrar el final de semana adecuado en función de la fecha seleccionada.

Mis datos se ven así:

Date TableTabla de fechas

Data TableTabla de datos

Mi segmentación de fecha con Medida que muestra MAX(Fecha) tiene este aspecto:

Date Slicer on largest date.jpg

Y si se ajusta, se ve así

Date Slicer on earlier date.jpg

Si la segmentación de datos se establece en la fecha más grande, solo quiero que los registros resaltados se muestren:

Result table on largest date.jpg

Mientras que si se selecciona la fecha anterior, sólo estos registros resaltados deben mostrar:

Result table on earlier date.jpg

Razones para usar la segmentación de fecha en este formato:

Actualmente uso una segmentación de fecha como un menú desplegable de selección única, y esto funciona bien, pero los registros de tabla de fechas se expanden semana a semana, al igual que los registros de tabla de datos, y para obtener esto para reflejar la semana actual (máx.), tengo que establecer manualmente la nueva selección de filtro y luego volver a publicar el informe cada semana. Usando la segmentación de fechas configurada en el modo "Antes", puedo agregar registros de fecha a la tabla de fechas y se establecerá de forma predeterminada en el valor de fecha más grande cuando se actualicen los datos, lo que guarda el paso manual y me permite actualizar la base de datos y automatizar la actualización sin abrir el informe en el escritorio.

La ayuda que necesito:

  • Permita que la segmentación de fecha recopile el valor de fin de semana adecuado y úselo para filtrar las recodificaciones en función del valor final de la semana más reciente / más grande / MAX
  • O, demostrar cómo puedo actualizar automáticamente la segmentación de fecha de selección única para que siempre por defecto a la fecha más reciente / más grande / MAX
  • Si se solicita, se pueden agregar datos de ejemplo y archivos pbix.

Gracias de antemano...

Adán

1 ACCEPTED SOLUTION

Hola @AFinster

Cree una medida y arrastre la medida a filtros y muestre valores como 1 para lograr el objetivo.

Usted puede intentar manera de calcular WeekEnding directamente por medida.

WeekEnding = 
VAR _Maxslicer =
    MAX ( Sheet1[InsightDate] )
VAR _MAXWEEKEND =
    MAXX (
        FILTER (
            ALL ( 'Weekly Insights' ),
            'Weekly Insights'[Week Ending] <= _Maxslicer
        ),
        'Weekly Insights'[Week Ending]
    )
RETURN
    IF (
        MAX ( 'Weekly Insights'[Week Ending] ) = _MAXWEEKEND,
        _MAXWEEKEND,
        BLANK ()
    )

Resultado:

1.png

Puede descargar el archivo pbix desde este enlace: Tabla de filtros basada en MAX de la segmentación de fechas

Saludos

Rico Zhou

Si este post ayuda,entonces considere Aceptarlo como la solución para ayudar a los otros miembros a encontrarlo más rápidamente.

View solution in original post

6 REPLIES 6
Syndicate_Admin
Administrator
Administrator

@AFinster ,

Me he enfrentado a un problema similar en el pasado en el que se me pidió que agregara la fecha máxima como característica predeterminada, ya que el cliente quería obtener los datos más recientes. No solo esto, tenían bastantes requisitos en términos de ajustes preestablecidos para la segmentación de fechas, que no viene en la segmentación nativa. Lo que terminamos haciendo es comprar una imagen personalizada llamada Selector de fecha de Powerviz.

Tenía todas las características que requerían, por lo que fue un salvavidas.

Aquí hay una captura de pantalla de la imagen.

Nayan_surya_0-1702650033275.png

Creo que deberías echarles un vistazo.

Aquí hay un enlace si desea consultar esta imagen : https://appsource.microsoft.com/en-us/product/powerbivisuals/truvizinc1674781244292.date-picker-by... (Creo que también ofrecen una versión gratuita)

AFinster
Helper I
Helper I

Hola a todos

Acepté el puesto de Rico, ya que era el más cercano a la solución que descubrí de forma independiente.

Mis medidas se ven así:

MaxInsightDate á MAX(WeekData[InsightDate])
Y
MeasureFilter ?
VAR MaxValue á MAX('Weekly Insights'[Week Ending])
Valor de valor de currentMeasureValue de VAR [MaxInsightDate]
devolución
SI(CurrentMeasureValue - MaxValue, 1, 0)
y luego aplicó el MeasureFilter a la lista de filtros para el objeto visual que tenía que ser filtrado "MeasureFilter ? 1"
A continuación, mediante el uso de la segmentación de fecha basada en anterior señaló a mi tabla de fechas, puedo filtrar los resultados en consecuencia.
¡Gracias por toda la ayuda!
Adán
AFinster
Helper I
Helper I

Actualización rápida,

Ambas medidas de muestra crearon un error con respecto a una referencia circular utilizando:

Medidas ?
VAR _weekEnd á MAXX(all(Sheet1),Sheet1[InsightDate])
devolución
CALCULATE([Medida], 'Perspectivas semanales'[Fin de semana] - _weekEnd)

@AllisonKennedy También probé la segmentación de fecha relativa, pero no pude ver cómo hacer que el usuario seleccione una fecha específica ...

Vínculos a pbix de muestra y datos de Excel de origen si esto ayuda a:

Enlace a pbix

Enlace a datos de Excel

Hola @AFinster

Cree una medida y arrastre la medida a filtros y muestre valores como 1 para lograr el objetivo.

Usted puede intentar manera de calcular WeekEnding directamente por medida.

WeekEnding = 
VAR _Maxslicer =
    MAX ( Sheet1[InsightDate] )
VAR _MAXWEEKEND =
    MAXX (
        FILTER (
            ALL ( 'Weekly Insights' ),
            'Weekly Insights'[Week Ending] <= _Maxslicer
        ),
        'Weekly Insights'[Week Ending]
    )
RETURN
    IF (
        MAX ( 'Weekly Insights'[Week Ending] ) = _MAXWEEKEND,
        _MAXWEEKEND,
        BLANK ()
    )

Resultado:

1.png

Puede descargar el archivo pbix desde este enlace: Tabla de filtros basada en MAX de la segmentación de fechas

Saludos

Rico Zhou

Si este post ayuda,entonces considere Aceptarlo como la solución para ayudar a los otros miembros a encontrarlo más rápidamente.

amitchandak
Super User
Super User

@AFinster, basado en lo que tengo

Para que funcione mejor, crea la semana de inicio y fin en tu calendario. Parece que tienes el calendario del viernes a Jueves

El calendario se auna después de la firma

o consultar por blog para cualquier otro día de la semana https://community.powerbi.com/t5/Community-Blog/Any-Weekday-Week-Decoding-Date-and-Calendar-2-5-Powe...

puedes semana como

medida :
var _max - date(allselected(Date), Date[Week end Date])
devolución
calculate([measure], filter(all(date), Date[Week end Date] á _max))

Join us as experts from around the world come together to shape the future of data and AI!
At the Microsoft Analytics Community Conference, global leaders and influential voices are stepping up to share their knowledge and help you master the latest in Microsoft Fabric, Copilot, and Purview.
️ November 12th-14th, 2024
 Online Event
Register Here
AllisonKennedy
Super User
Super User

Hola Adán

¿Suponiendo que la tabla de fechas tiene varias columnas, no solo Insight Date?

Debería poder utilizar variables para definir la fecha WeekEnd en cada medida, algo así como;
Medidas ?
VAR _weekEnd á MAXX(ALL(DimDate), DimDate[Insight])
devolución
CALCULATE([Measure], Data[Week Ending] á _weekEnd)

También podría intentar usar la segmentación de fecha relativa para mostrar los últimos 7 días como de forma predeterminada si eso ayudaría?

Please @mention me in your reply if you want a response.

Copying DAX from this post? Click here for a hack to quickly replace it with your own table names

Has this post solved your problem? Please Accept as Solution so that others can find it quickly and to let the community know your problem has been solved.
If you found this post helpful, please give Kudos C

I work as a Microsoft trainer and consultant, specialising in Power BI and Power Query.
www.excelwithallison.com

Helpful resources

Announcements
November Carousel

Fabric Community Update - November 2024

Find out what's new and trending in the Fabric Community.

Live Sessions with Fabric DB

Be one of the first to start using Fabric Databases

Starting December 3, join live sessions with database experts and the Fabric product team to learn just how easy it is to get started.

Las Vegas 2025

Join us at the Microsoft Fabric Community Conference

March 31 - April 2, 2025, in Las Vegas, Nevada. Use code MSCUST for a $150 discount! Early Bird pricing ends December 9th.

Nov PBI Update Carousel

Power BI Monthly Update - November 2024

Check out the November 2024 Power BI update to learn about new features.

Top Solution Authors
Top Kudoed Authors