cancel
Showing results for
Did you mean:

Find everything you need to get certified on Fabric—skills challenges, live sessions, exam prep, role guidance, and more. Get started

Anonymous
Not applicable

## DAX formula help

I want to calculate opening balance based on released date and completion date

For any date, i want to calculaten opening balance based on below conditions:

 OPENING BAL =RELEASED DATE <  REPORT DATE AND  RELEASED DATE <> BLANK() AND COMPLETION DATE >= REPORT DATE OR COMPLETION DATE = BLANK()

1 ACCEPTED SOLUTION
Super User

Try this as a measure on a table with CALENDAR[Date]:

``````Opening Balance =
VAR ReportDate = SELECTEDVALUE ( 'CALENDAR'[Date] )
RETURN
SUMX (
FILTER (
CALCULATETABLE ( DATA, REMOVEFILTERS ( 'CALENDAR' ) ),
( DATA[RELEASED DATE] < ReportDate && NOT ( ISBLANK ( DATA[RELEASED DATE] ) ) ) &&
( DATA[COMPLETION DATE] >= ReportDate || ISBLANK ( DATA[COMPLETION DATE] ) )
),
DATA[QUANTITY]
)``````

6 REPLIES 6
Super User

@Anonymous  try this

``````measure =
CALCULATE (
SUM ( tbl[Quantity] ),
FILTER ( tbl, tbl[ReleaseDate] < TODAY () || tbl[ReleaseDate] <> BLANK () )
)
+ CALCULATE (
SUM ( tbl[Quantity] ),
FILTER (
tbl,
tbl[CompletionDate] > TODAY ()
|| tbl[CompletionDate] <> BLANK ()
)
)
``````
Proud to be a Super User!
My custom visualization projects
Plotting Live Sound: Viz1
Beautiful News:Viz1, Viz2, Viz3
Visual Capitalist: Working Hrs
Anonymous
Not applicable

Super User

@smpa01 I think your first || should be &&, your last <> should be =, and I don't think you want to separate this into two sums.

@Anonymous I think this might be a bit closer:

``````Opening Balance =
VAR ReportDate = TODAY () /* Or however this is determined*/
RETURN
SUMX (
FILTER (
Table1,
( Table1[ReleaseDate] < ReportDate && NOT ( ISBLANK ( Table1[ReleaseDate] ) ) ) &&
( Table1[CompletionDate] >= ReportDate || ISBLANK ( Table1[CompletionDate] ) )
),
Table1[Quantity]
)``````
Anonymous
Not applicable

Super User

Try this as a measure on a table with CALENDAR[Date]:

``````Opening Balance =
VAR ReportDate = SELECTEDVALUE ( 'CALENDAR'[Date] )
RETURN
SUMX (
FILTER (
CALCULATETABLE ( DATA, REMOVEFILTERS ( 'CALENDAR' ) ),
( DATA[RELEASED DATE] < ReportDate && NOT ( ISBLANK ( DATA[RELEASED DATE] ) ) ) &&
( DATA[COMPLETION DATE] >= ReportDate || ISBLANK ( DATA[COMPLETION DATE] ) )
),
DATA[QUANTITY]
)``````

Anonymous
Not applicable

Thanks @AlexisOlson for the wonderful solution.

Announcements

#### Europe’s largest Microsoft Fabric Community Conference

Join the community in Stockholm for expert Microsoft Fabric learning including a very exciting keynote from Arun Ulag, Corporate Vice President, Azure Data.

#### Power BI Monthly Update - August 2024

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

#### Microsoft Fabric & AI Learning Hackathon

Learn from experts, get hands-on experience, and win awesome prizes.

#### Fabric Community Update - September 2024

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

Top Solution Authors
Top Kudoed Authors