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

Earn a 50% discount on the DP-600 certification exam by completing the Fabric 30 Days to Learn It challenge.

Reply
Syndicate_Admin
Administrator
Administrator

¿Cómo crear un filtro dinámico personalizado?

Hola

Quiero agregar un filtro de fecha para "último mes, este mes y el próximo mes". Debería ser dinámico para no tener que cambiarlo. ¿Puede alguien por favor decirme cómo lograrlo? Actualmente, lo tengo como codificado.

jac88_0-1649793889879.png

Muchas gracias

1 ACCEPTED SOLUTION
Syndicate_Admin
Administrator
Administrator

HI @jac88,

Puede agregar una columna calculada para usar la fecha actual del sistema y compararla con los registros de la tabla para devolver el indicador, luego use este nuevo campo para filtrar los registros en función del indicador.

flag =
VAR currDate =
    MAX ( table[Date] )
VAR _today =
    TODAY ()
VAR prevDate =
    DATE ( YEAR ( _today ), MONTH ( _today ) - 1, DAY ( _today ) )
VAR nextDate =
    DATE ( YEAR ( _today ), MONTH ( _today ) + 1, DAY ( _today ) )
RETURN
    IF (
        YEAR ( currDate ) = YEAR ( prevDate )
            && MONTH ( currDate ) = MONTH ( prevDate ),
        "Last Month",
        IF (
            YEAR ( currDate ) = YEAR ( _today )
                && MONTH ( currDate ) = MONTH ( _today ),
            "Current Month",
            IF (
                YEAR ( currDate ) = YEAR ( nextDate )
                    && MONTH ( currDate ) = MONTH ( nextDate ),
                "Next Month"
            )
        )
    )

Saludos

Xiaoxin Sheng

View solution in original post

4 REPLIES 4
Syndicate_Admin
Administrator
Administrator

HI @jac88,

Puede agregar una columna calculada para usar la fecha actual del sistema y compararla con los registros de la tabla para devolver el indicador, luego use este nuevo campo para filtrar los registros en función del indicador.

flag =
VAR currDate =
    MAX ( table[Date] )
VAR _today =
    TODAY ()
VAR prevDate =
    DATE ( YEAR ( _today ), MONTH ( _today ) - 1, DAY ( _today ) )
VAR nextDate =
    DATE ( YEAR ( _today ), MONTH ( _today ) + 1, DAY ( _today ) )
RETURN
    IF (
        YEAR ( currDate ) = YEAR ( prevDate )
            && MONTH ( currDate ) = MONTH ( prevDate ),
        "Last Month",
        IF (
            YEAR ( currDate ) = YEAR ( _today )
                && MONTH ( currDate ) = MONTH ( _today ),
            "Current Month",
            IF (
                YEAR ( currDate ) = YEAR ( nextDate )
                    && MONTH ( currDate ) = MONTH ( nextDate ),
                "Next Month"
            )
        )
    )

Saludos

Xiaoxin Sheng

@v-shex-msft Muchas gracias. Lo intentaré.

Syndicate_Admin
Administrator
Administrator

@jac88 , Cree una segmentación de datos con estos valores. y luego en función de la medida de retorno de valor

Switch(selectedvalues(Slicer[Valor]) ,

"Este mes", CALCULATE(SUM(Sales[Sales Amount]),DATESMTD('Date'[Date])) ,

"Último mes", CALCULATE(SUM(Sales[Sales Amount]),DATESMTD(dateadd('Date'[Date],-1,MONTH))) ,

"Next Month", CALCULATE(SUM(Sales[Sales Amount]),DATESMTD(dateadd('Date'[Date],-1,MONTH)))

)

Necesita tener una cortadora de fecha separada

Otro

último mes Ventas = CALCULATE(SUM(Sales[Sales Amount]),previousmonth('Date'[Date]))
next month Sales = CALCULATE(SUM(Sales[Sales Amount]),nextmonth('Date'[Date]))

compruebe también

medir la segmentación de datos
https://www.youtube.com/watch?v=b9352Vxuj-M
https://community.powerbi.com/t5/Desktop/Slicer-MTD-QTD-YTD-to-filter-dates-using-the-slicer/td-p/50...
https://radacad.com/change-the-column-or-measure-value-in-a-power-bi-visual-by-selection-of-the-slic...
https://www.youtube.com/watch?v=vlnx7QUVYME

grupos de cálculo
https://www.sqlbi.com/blog/marco/2020/07/15/creating-calculation-groups-in-power-bi-desktop/

Grupos de cálculo: segmentación de datos de medida, agrupación de encabezados de medida, conversión de medida a dimensión. Visualización de tabla compleja : https://youtu.be/qMNv67P8Go0

@amitchandak

Muchas gracias por la respuesta. Solo necesito agregar el filtro, no necesito calcular nada. Tengo algunas tablas con Cuentas y fechas de creación de cuentas. Solo quería filtrarlos por "El mes pasado, este mes y el próximo mes" dinámicamente.

¿Alguna idea de cómo agregar el filtro?

Gracias

Helpful resources

Announcements
LearnSurvey

Fabric certifications survey

Certification feedback opportunity for the community.

PBI_APRIL_CAROUSEL1

Power BI Monthly Update - April 2024

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

April Fabric Community Update

Fabric Community Update - April 2024

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