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

Score big with last-minute savings on the final tickets to FabCon Vienna. Secure your discount

Reply
TRK
Helper II
Helper II

Create Fiscal Year Offset calculation in Power Query Custom Date Table

Hi,

 

I have a custom calendar created in Power Query - M.  

I want to be able to flag the current FISCAL year  (my fiscal runs April 1 - March 31st) - so I need to be able to calculate the Fiscal Year Offset to do that.

See Query table extract below: (note:  I simplified this table to export here - the date column actually has every day in the month (not just the first day)) 

I was able to create a columns to calculate "Current Year offset" and then from that I can flag the current year as the value is 0.

 

I also have Fiscal month # column, Fiscal quarter, etc.  But I want to be able to flag the current FISCAL year  (my fiscal runs April 1 - March 31st)
The code in custom columns I have already that are working as expected:

 

FiscalYearEndMonth = 3   

 

 "FiscalMonthNum"

 if [MonthNum] > FiscalYearEndMonth  then [MonthNum] - FiscalYearEndMonth  else [MonthNum] + (12 - FiscalYearEndMonth)

 

 "CurYearOffset"

 Date.Year([Date]) - Date.Year(CurrentDate)

 "Flag Current Calendar Year" (cond. Column)

 if [CurYearOffset] = 0 then "Current Year" else null

DateFiscalMonthNumFiscal YearCurMonthOffsetCurYearOffsetFlag Current Calendar YearWhat I want: Offset FYWhat I want:    FY Flag
2021-04-0112021-2022-11-1null0Current FY
2021-05-0122021-2022-10-1null0Current FY
2021-06-0132021-2022-9-1null0Current FY
2021-07-0142021-2022-8-1null0Current FY
2021-08-0152021-2022-7-1null0Current FY
2021-09-0162021-2022-6-1null0Current FY
2021-10-0172021-2022-5-1null0Current FY
2021-11-0182021-2022-4-1null0Current FY
2021-12-0192021-2022-3-1null0Current FY
2022-01-01102021-2022-20Current Year0Current FY
2022-02-01112021-2022-10Current Year0Current FY
2022-03-01122021-202200Current Year0Current FY
2022-04-0112022-202310Current Year1 
2022-05-0122022-202320Current Year1 
2022-06-0132022-202330Current Year1 
2022-07-0142022-202340Current Year1 
2022-08-0152022-202350Current Year1 
2022-09-0162022-202360Current Year1 
2022-10-0172022-202370Current Year1 
2022-11-0182022-202380Current Year1 
2022-12-0192022-202390Current Year1 
2023-01-01102022-2023101null1 
2023-02-01112022-2023111null1 
2023-03-01122022-2023121null1 



Any help would be appreciated.

1 ACCEPTED SOLUTION
TRK
Helper II
Helper II

I found a solution.  

I created the following 3 columns:
FY End Year:  (provides the end year of the fiscal year)

= Table.AddColumn(#"Added FY End", "FY Year", each if [MonthNum] > FiscalYearEndMonth
then [Year] + 1 else [Year])

Year.Now
step 1:  (fills column with current date & time now - all same value)

= Table.AddColumn(#"FY End Year", "Year.Now", each DateTime.LocalNow())
step 2:  (extract year from this column using transform tab in ribbon: button 'Date' and selecting 'year' - to just have dynamic current year) 

= Table.TransformColumns(#"Date.Now (Year.Now)",{{"Year.Now", Date.Year, Int64.Type}})

 

Current FY Offset (The current fiscal year will have 0's)
= Table.AddColumn(#"Extracted Year", "Current FY Offset", each [FY End Year-[Year.Now])

View solution in original post

3 REPLIES 3
TRK
Helper II
Helper II

I found a solution.  

I created the following 3 columns:
FY End Year:  (provides the end year of the fiscal year)

= Table.AddColumn(#"Added FY End", "FY Year", each if [MonthNum] > FiscalYearEndMonth
then [Year] + 1 else [Year])

Year.Now
step 1:  (fills column with current date & time now - all same value)

= Table.AddColumn(#"FY End Year", "Year.Now", each DateTime.LocalNow())
step 2:  (extract year from this column using transform tab in ribbon: button 'Date' and selecting 'year' - to just have dynamic current year) 

= Table.TransformColumns(#"Date.Now (Year.Now)",{{"Year.Now", Date.Year, Int64.Type}})

 

Current FY Offset (The current fiscal year will have 0's)
= Table.AddColumn(#"Extracted Year", "Current FY Offset", each [FY End Year-[Year.Now])

amitchandak
Super User
Super User

@TRK , Try a new column like

 


if [Date] >= #date(if Date.Month(Date.From(DateTime.FixedLocalNow())) >3 Then Date.Year(Date.From(DateTime.FixedLocalNow()))-1 else Date.Year(Date.From(DateTime.FixedLocalNow())),4,1) && [Date] >= #date(if Date.Month(Date.From(DateTime.FixedLocalNow())) >3 Then Date.Year(Date.From(DateTime.FixedLocalNow())) else Date.Year(Date.From(DateTime.FixedLocalNow()))+1 ,3,31) then 1 else 0

Share with Power BI Enthusiasts: Full Power BI Video (20 Hours) YouTube
Microsoft Fabric Series 60+ Videos YouTube
Microsoft Fabric Hindi End to End YouTube

That doesn't seem to work.  I fixed the 2 Then to then and it didn't accept && so I change that to and  but everything in the column returned 0

Helpful resources

Announcements
August Power BI Update Carousel

Power BI Monthly Update - August 2025

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

August 2025 community update carousel

Fabric Community Update - August 2025

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

Top Solution Authors