cancel
Showing results for 
Search instead for 
Did you mean: 
Reply
azaterol
Helper IV
Helper IV

AND condition help

Hello, everyone
I need to add up all inventory for an item over the entire period by date. There are cases where the date and time are the same but occur one after the other. Here is my formula:

 

 

 

 

 

accumulated Stock = 
calculate(
sumX('Goods logistics','Goods logistics'[Stock]),
FILTER(All('Goods logistics'),
And('Goods logistics'[ArtID]=EARLIER('Goods logistics'[ArtID]),
'Goods logistics'[Date]<=EARLIER('Goods logistics'[Date])
)))

 

 

 

 

 

 

How can I add, if the date is the same as the date, the smaller ID should also be preferred.

 

ArtID Date_Time ID Stock accumulated Stock
123 01.01.2020 02:20:10 220 3

 

3

123 02.01.2020 04:10:10 221 -1 1 <- Should be 2
123 02.01.2020 04:10:10 222 -1 1 <-is correct
123 06.01.2020 01:13:21 225 2 3

 

Thank you for help.

1 ACCEPTED SOLUTION

@azaterol Then another option is add index from power query and then

 

accumulated Stock = 
calculate(
sum('Goods logistics'[Stock]),
FILTER(ALL('Goods logistics'),
('Goods logistics'[ArtID]=EARLIER('Goods logistics'[ArtID]) &&
'Goods logistics'[INDEX] <= EARLIER('Goods logistics'[INDEX])

)))

 

View solution in original post

4 REPLIES 4
ddpl
Solution Sage
Solution Sage

@azaterol  First make sure that ID column should be in ascending order

 

Then create calculated column as per below

 

accumulated Stock = 
calculate(
sum('Goods logistics'[Stock]),
FILTER(ALL('Goods logistics'),
('Goods logistics'[ArtID]=EARLIER('Goods logistics'[ArtID]) &&
'Goods logistics'[ID] <= EARLIER('Goods logistics'[ID])

)))

 

@ddpl the date is priotity. 

 

I changed the sample. If there are two or more same dates, the ID is in ascending order. I have to use Date_Time in my formula.

 

ArtID Date_Time ID Stock accumulated Stock
123 01.01.2020 02:20:10 229 3

 

3

123 02.01.2020 04:10:10 221 -1 1 <- Should be 2
123 02.01.2020 04:10:10 222 -1 1 <-is correct
123 06.01.2020 01:13:21 220 2 3

 

@azaterol Then another option is add index from power query and then

 

accumulated Stock = 
calculate(
sum('Goods logistics'[Stock]),
FILTER(ALL('Goods logistics'),
('Goods logistics'[ArtID]=EARLIER('Goods logistics'[ArtID]) &&
'Goods logistics'[INDEX] <= EARLIER('Goods logistics'[INDEX])

)))

 

@ddpl works great. Thank you. 

Helpful resources

Announcements
Carousel_PBI_Wave1

2023 Release Wave 1 Plans

Power BI release plans for 2023 release wave 1 describes all new features releasing from April 2023 through September 2023.

Power BI Summit Carousel 2

Global Power BI Training

Make sure you register today for the Power BI Summit 2023. Don't miss all of the great sessions and speakers!

Thank you 2022 Review

2022 Monthly Feature Releases

We had a great 2022 with a ton of feature releases to help you drive a data culture.