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

Data Days is here! Join us now for 60+ days of learning, challenges, and connection. Learn more

Reply
Syndicate_Admin
Administrator
Administrator

Mostrar datos entre 2 fechas dinámicas

Hola a todos, tengo un problema en el que quiero que los usuarios seleccionen un período de informe (fecha) y luego seleccionen una segmentación que pueda filtrar los datos hasta los últimos 1/3/6/12 meses.

Por ejemplo, seleccionan la fecha 31 de diciembre de 2023 y quieren ver los últimos 1 año de datos, por lo que el intervalo de fechas que se muestra en todas las visualizaciones de la página es del 1 de enero de 2023 al 31 de diciembre de 2023.

Mis datos tienen la siguiente estructura/tablas.

Tabla 1 Inicio y fin del período de presentación de informes: una lista de las fechas de inicio y finalización de cada período de presentación de informes y período de datos

alee5210_1-1721978143180.png

Tabla 2 Segmentación de datos del período de notificación: una tabla del período de notificación que los usuarios seleccionan (tiene relación con la Tabla 1):

alee5210_2-1721978166628.png

Tabla 3 Segmentación de período de datos: una tabla de período de datos que los usuarios seleccionan (tiene relación con la Tabla 1):

alee5210_4-1721978584100.png

Tabla 4 Tabla de fechas: Una tabla de fechas con solo una lista de fechas:

alee5210_0-1721978108451.png

Tabla 5 Tabla de suma: Una lista de fechas con números en las que quiero realizar cálculos (las fechas se pueden repetir) (tiene relación con la Tabla 4)

alee5210_3-1721978559421.png

Inicialmente creé una medida como la siguiente:

Start Rep Period = selectedvalue('Reporting Period Start End'[Start Date])​

y

End Rep Period = selectedvalue('Reporting Period Start End'[End date])

A continuación, creó otra medida

Within Range = 
if(AND(selectedvalue('Sum Table'[Date]) >= 'Reporting Period Start End'[Start Rep Period Date], selectedvalue('Sum Table'[Date])<= 'Reporting Period Start End'[End Rep Period]), 1, 0)

luego usé esta medida "Dentro del rango" en mis visualizaciones y configuré el filtro en 1 para que solo incluyera datos dentro de ese rango de tiempo.

Lo que pasa es que tengo muchas visualizaciones. No quiero tener que pasar y agregar esto a cada visualización. Esperaba poder usar la visualización del cortador y configurarla entre 2 fechas como esta

alee5210_5-1721978992198.png

Luego pon la fecha de inicio como medida de 'Período de repetición de inicio' y la fecha de finalización como medida de 'Período de repetición de finalización', pero tampoco sé cómo hacer eso. ¿Alguien tiene una solución más fácil a esta pregunta?

4 REPLIES 4
Syndicate_Admin
Administrator
Administrator

@alee5210,

Pruebe esta solución. Cree las tablas y relaciones que se indican a continuación. La tabla 2 de su ejemplo no es necesaria. La tabla de fechas es una tabla de fechas estándar (una fila por día).

DataInsights_0-1722004242505.png

Cree una segmentación de datos "Período de informe" utilizando 'Período de informe' [Período de informe]. Se trata de una segmentación de datos "Antes".

Cree la segmentación de datos "Período de datos" utilizando 'Data Period Slicer' [Período de datos].

Cree una matriz usando 'Date' [Date] como filas.

Crear medida:

Dynamic Sum = 
VAR vStartDate =
    SELECTEDVALUE ( 'Reporting Period'[Start Date] )
VAR vEndDate =
    SELECTEDVALUE ( 'Reporting Period'[End Date] )
VAR vResult =
    CALCULATE (
        SUM ( 'Fact Table'[Amount] ),
        KEEPFILTERS ( 'Date'[Date] >= vStartDate ),
        KEEPFILTERS ( 'Date'[Date] <= vEndDate )
    )
RETURN
    vResult

DataInsights_1-1722004549505.png

-----

DataInsights_2-1722004569794.png

Esta es una solución increíble, cubre alrededor de la mitad de mis visualizaciones con una sola medida.

Pero con esto tendría que escribir bastantes medidas diferentes, a las que no me opongo ya que creo que es mejor que la solución que tenía.

En aras de ahorrar tiempo, ¿cree que es posible hacerlo utilizando un filtro que se encuentra en la sección "Filtros de esta página" del panel Filtro? ¿O hay un segmentador en la página que está oculto que puede afectar a todas las visualizaciones?

Siento que debería ser posible, pero al mismo tiempo tengo muchos problemas para encontrar la solución correcta. No quería agregar un filtro a cada visualización individual usando mi método original y, aunque la tuya es mucho mejor, seguiría siendo un montón de medidas adicionales.

@alee5210,

Una opción es crear un grupo de cálculo con esta lógica y, a continuación, aplicar la lógica del grupo de cálculo a través de un filtro en el nivel de objeto visual, de página o de todas las páginas. Utilizaría la función SELECTEDMEASURE en lugar de SUM('Fact Table'[Amount]). Esto le permite aplicar la lógica a cualquier medida del objeto visual. Aquí hay un artículo sobre el tema:

https://powerbi.microsoft.com/en-us/blog/deep-dive-into-the-model-explorer-with-calculation-group-au...

Eso es exactamente lo que busco, eres un salvavidas. No tenía idea de que existía esta función, ¡pero es de gran ayuda!

Helpful resources

Announcements
Fabric Data Days is here Carousel

Fabric Data Days 2026

Don't miss out on Data Days, June 15 through August 7. Learn Fabric, Power BI, SQL, AI and more.

May Power BI Update Carousel

Power BI Monthly Update - May 2026

Check out the May 2026 Power BI update to learn about new features.

Power BI DataViz World Championships carousel

Power BI DataViz World Championships - June 2026

A new Power BI DataViz World Championship is coming this June! Don't miss out on submitting your entry.

Top Kudoed Authors