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

Get inspired! Check out the entries from the Power BI DataViz World Championships preliminary rounds and give kudos to your favorites. View the vizzies.

Reply
Johann_32
Advocate II
Advocate II

Dynamic Years

Hello Experts,

I would need your support in a report that has a special requirement on showing years dynamically.

 

Description of Requirement:

In the charts of the reports, there should ALWAYS be shown whether current year + 5 years of data / current year + 7 years of data (depending on the report page, one is for the +5 years and one for the +7 years variant).

The starting year should always be derived from the Previous-version which is connected to the "Version"-Dropdown.
This can be e.g. version: "January 2024" -> previous version: "December 2023" -> 2023

 

Lets take an example - If now February 2024 is chosen in the dropdown, the years shown in the charts should be...

5-years view --> 2024 - 2029,  7-years view --> 2024 - 2031.

 

Now how could we achieve this behavior in the charts? Where would you start and which logic should be used?

Right now, the years are filtered manually in fixed year ranges, e.g. 2024 - 2031, which of course leads to issues as its never possible to go back in time later then 2024 and also, its a manual effort each year to change the time range. 

 

Would really appreciate any feedback about this topic. 

Thank you & have a nice day.

1 ACCEPTED SOLUTION
johnt75
Super User
Super User

You could create a couple of measure like

5 Years Visible =
VAR CurrentYear =
    MAX ( 'Date'[Year] )
VAR ChosenYear = [Previous version]
VAR Result =
    IF ( CurrentYear >= ChosenYear && CurrentYear <= ChosenYear + 5, 1 )
RETURN
    Result

where [Previous Version] is a measure which returns the desired start year according to your logic.

Apply this measure as a filter on the visuals set to show only when the value is 1.

View solution in original post

2 REPLIES 2
johnt75
Super User
Super User

You could create a couple of measure like

5 Years Visible =
VAR CurrentYear =
    MAX ( 'Date'[Year] )
VAR ChosenYear = [Previous version]
VAR Result =
    IF ( CurrentYear >= ChosenYear && CurrentYear <= ChosenYear + 5, 1 )
RETURN
    Result

where [Previous Version] is a measure which returns the desired start year according to your logic.

Apply this measure as a filter on the visuals set to show only when the value is 1.

wini_R
Solution Supplier
Solution Supplier

Hi @Johann_32,

 

You would need a disconnected calendar table or at least a table with years to achieve that. You can check the solution for previous N periods in the video below and modify the logic to future years:
https://youtu.be/d8Rm7dwM6gc?si=cebTXDnQP9pWTIpB

Helpful resources

Announcements
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!

FebPBI_Carousel

Power BI Monthly Update - February 2025

Check out the February 2025 Power BI update to learn about new features.

March2025 Carousel

Fabric Community Update - March 2025

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

Top Kudoed Authors