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

The Power BI Data Visualization World Championships is back! Get ahead of the game and start preparing now! Learn more

Reply
js-2017
Regular Visitor

Creating a Dynamic Dates Table for a Cash Flow Model In Power BI

I am trying to recreate my excel based Monthly Cash Flow model in Power BI. I am having trouble creating the correct number of records when creating my dynamic dates table. When I hard code in a value (64), it shows the correct number of values for dates; however, when I use a measure (measure should also return 64), I only return 1 value. The measure is calculated within a separate 'Measures Table'.

Here is excel table I am attempting to recreate:

js2017_0-1722701725874.png


This is my formula when I hard code in 64:

DateRange =
VAR MinDate = MIN(PurchaseDates[Date])
// VAR InvestmentPeriod = [Investment Period] -- Convert measure into a column for EDATE() calculation
VAR MaxDate = EDATE(MinDate, 64)
RETURN

ADDCOLUMNS (
    CALENDAR (MinDate, MaxDate),
    "M-YYYY", MONTH([Date]) & "-" & YEAR([Date]),
    "Month", MONTH([Date]),
    "Year", YEAR([Date]),
    "MonthEnding", EOMONTH([Date], 0),
    "CustomMonthYear",
        VAR MonthsElapsed = DATEDIFF(MinDate, [Date], MONTH)
        VAR CustomMonth = MonthsElapsed
        VAR CustomYear = IF(MOD(MonthsElapsed, 12) = 0, INT(MonthsElapsed / 12), INT(MonthsElapsed / 12) + 1)
        RETURN

        "Year: " & CustomYear & UNICHAR(10) & "Month: " & CustomMonth
)
 
js2017_1-1722701804032.png

 

This is the formula when using the measures:

DateRange =
VAR MinDate = MIN(PurchaseDates[Date])
VAR InvestmentPeriod = [Investment Period] -- Convert measure into a column for EDATE() calculation
VAR MaxDate = EDATE(MinDate, InvestmentPeriod)
RETURN

ADDCOLUMNS (
    CALENDAR (MinDate, MaxDate),
    "M-YYYY", MONTH([Date]) & "-" & YEAR([Date]),
    "Month", MONTH([Date]),
    "Year", YEAR([Date]),
    "MonthEnding", EOMONTH([Date], 0),
    "CustomMonthYear",
        VAR MonthsElapsed = DATEDIFF(MinDate, [Date], MONTH)
        VAR CustomMonth = MonthsElapsed
        VAR CustomYear = IF(MOD(MonthsElapsed, 12) = 0, INT(MonthsElapsed / 12), INT(MonthsElapsed / 12) + 1)
        RETURN

        "Year: " & CustomYear & UNICHAR(10) & "Month: " & CustomMonth
)
 
js2017_2-1722701921621.png

 

2 REPLIES 2
Anonymous
Not applicable

Hi @js-2017 ,
According to your description, when we use column, we are doing a calculation for the whole table. If you use measure, it will be affected by the context, in your expression, mindate will always select only the initial data, it can not select the smallest data in the whole table, you can try to add all function in front of the table to clear the current filtering.

Best regards,
Albert He


If this post helps, then please consider Accept it as the solution to help the other members find it more quickly

Greg_Deckler
Community Champion
Community Champion

@js-2017 Sorry, having trouble following, can you post sample data as text and expected output?
Not really enough information to go on, please first check if your issue is a common issue listed here: https://community.powerbi.com/t5/Community-Blog/Before-You-Post-Read-This/ba-p/1116882

Also, please see this post regarding How to Get Your Question Answered Quickly: https://community.powerbi.com/t5/Community-Blog/How-to-Get-Your-Question-Answered-Quickly/ba-p/38490

The most important parts are:
1. Sample data as text, use the table tool in the editing bar
2. Expected output from sample data
3. Explanation in words of how to get from 1. to 2.



Follow on LinkedIn
@ me in replies or I'll lose your thread!!!
Instead of a Kudo, please vote for this idea
Become an expert!: Enterprise DNA
External Tools: MSHGQM
YouTube Channel!: Microsoft Hates Greg
Latest book!:
DAX For Humans

DAX is easy, CALCULATE makes DAX hard...

Helpful resources

Announcements
Power BI DataViz World Championships

Power BI Dataviz World Championships

The Power BI Data Visualization World Championships is back! Get ahead of the game and start preparing now!

December 2025 Power BI Update Carousel

Power BI Monthly Update - December 2025

Check out the December 2025 Power BI Holiday Recap!

FabCon Atlanta 2026 carousel

FabCon Atlanta 2026

Join us at FabCon Atlanta, March 16-20, for the ultimate Fabric, Power BI, AI and SQL community-led event. Save $200 with code FABCOMM.