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

Calling all Data Engineers! Fabric Data Engineer (Exam DP-700) live sessions are back! Starting October 16th. Sign up.

Reply
sivarammoto
Frequent Visitor

DAX calculation help

Hi

 

Need your help and suggestion on achieveing the below

 

I have sample data like below.

ID

Transaction Type

Qty

From Date

Todate

1234

Opening Stock

50

3/11/2019

3/12/2019

1234

Closing Stock

60

3/11/2019

3/12/2019

1234

Received

20

3/11/2019

3/12/2019

456

Opening Stock

20

3/12/2019

3/13/2019

456

Closing Stock

20

3/12/2019

3/13/2019

456

Received

10

3/12/2019

3/13/2019

456

Opening Stock

30

3/13/2019

3/14/2019

456

Closing Stock

30

3/13/2019

3/14/2019

456

Received

40

3/13/2019

3/14/2019

1234

Opening Stock

30

3/14/2019

3/15/2019

1234

Closing Stock

20

3/14/2019

3/15/2019

1234

Received

20

3/14/2019

3/15/2019

 

 

When I select date range from 3/12/2019 to 3/14/2019, I shouldget the ouput like below

 

 

456

Opening Stock

20

456

Closing Stock

30

456

Received

50

 

Opening Stock = 3/12/2019 opening stock i.e 20

Closing stock  = 3/14/2019 - 1 day  i.e 3/13/2019 of clsoing stock i.e 30

received = sum (received stock) between 3/12/2019 to 3/14/2019 i.e  10+40 =50

 

I tried with combination of IF and SUM DAX logics but no luck .. Any help here  is much appreciated

 

1 ACCEPTED SOLUTION

hi, @sivarammoto 

If you could try this measure

Spoiler
Measure = var _frodate=CALCULATE(MIN('Date'[Date]))
var _todate=CALCULATE(MAX('Date'[Date])) return
IF(SELECTEDVALUE('Table'[Transaction Type])="Opening Stock",CALCULATE(SUM('Table'[Qty]),FILTER('Table','Table'[From Date]=_frodate)),
IF(SELECTEDVALUE('Table'[Transaction Type])="Closing Stock",CALCULATE(SUM('Table'[Qty]),FILTER('Table','Table'[Todate]=_todate)),
IF(SELECTEDVALUE('Table'[Transaction Type])="Received",CALCULATE(SUM('Table'[Qty]),FILTER('Table','Table'[From Date]>=_frodate&&'Table'[Todate]<=_todate)))))

result:

3.JPG

and here is pbix file, please try it.

 

Best Regards,

Lin

Community Support Team _ Lin
If this post helps, then please consider Accept it as the solution to help the other members find it more quickly.

View solution in original post

4 REPLIES 4
v-lili6-msft
Community Support
Community Support

hi, @sivarammoto 

I'm a little confused about your description.

Opening Stock = 3/12/2019 opening stock i.e 20

Closing stock  = 3/14/2019 - 1 day  i.e 3/13/2019 of clsoing stock i.e 30

received = sum (received stock) between 3/12/2019 to 3/14/2019 i.e  10+40 =50

If the date just based on From Date?

For Closing stock why this row data is filtered?

456

Closing Stock

20

3/12/2019

3/13/2019

 

Best Regards,

Lin

 

Community Support Team _ Lin
If this post helps, then please consider Accept it as the solution to help the other members find it more quickly.

Hi,

 

User selects  From and Todate. But to make it simple i mentioned previously From date alone

When the user selects From date as 3/12/2019  then on that day opening stock should be picked which is 20

456

Opening Stock

20

3/12/2019

3/13/2019

when the user selects Todate as  3/14 /2019  then on that day of closing stock should be picked which is 30.

456

Opening Stock

30

3/13/2019

3/14/2019

whenn the user selects  From date as 3/12/2019  Todate as  3/14 /2019  then received should be sum of filtered dates

i.e 10+40 = 50

hi, @sivarammoto 

If you could try this measure

Spoiler
Measure = var _frodate=CALCULATE(MIN('Date'[Date]))
var _todate=CALCULATE(MAX('Date'[Date])) return
IF(SELECTEDVALUE('Table'[Transaction Type])="Opening Stock",CALCULATE(SUM('Table'[Qty]),FILTER('Table','Table'[From Date]=_frodate)),
IF(SELECTEDVALUE('Table'[Transaction Type])="Closing Stock",CALCULATE(SUM('Table'[Qty]),FILTER('Table','Table'[Todate]=_todate)),
IF(SELECTEDVALUE('Table'[Transaction Type])="Received",CALCULATE(SUM('Table'[Qty]),FILTER('Table','Table'[From Date]>=_frodate&&'Table'[Todate]<=_todate)))))

result:

3.JPG

and here is pbix file, please try it.

 

Best Regards,

Lin

Community Support Team _ Lin
If this post helps, then please consider Accept it as the solution to help the other members find it more quickly.
sivarammoto
Frequent Visitor

Hello Gurus,

 

Please can some one reply . Thanks in Advance

 

Regards

Siva

Helpful resources

Announcements
FabCon Global Hackathon Carousel

FabCon Global Hackathon

Join the Fabric FabCon Global Hackathon—running virtually through Nov 3. Open to all skill levels. $10,000 in prizes!

October Power BI Update Carousel

Power BI Monthly Update - October 2025

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

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.