Forum Discussion
Anonymous
4 years agoNot applicable
Last value for each customer
Hi, I have a problem with a measure that should return the last value for a given customer. Sample excel table: Date Customer Measure Brand 16.09.2021 A 100 x 16.09.2021 B 110 ...
- Anonymous4 years ago
Hi Anonymous ,
Here's my solution.
1.Create a calendar table and there's no relationship between two tables.
Calendar = ADDCOLUMNS(CALENDARAUTO(),"Weeknum",WEEKNUM([Date],2))2.Create a Weeknum column in Arkusz1 table.
Weeknum = WEEKNUM([Date],2)3.Measure 3 is the measure you created.
Measure 2 = SUMX ( VALUES('Arkusz1'[Customer]), CALCULATE ( SUM('Arkusz1'[Measure]), LASTDATE ( 'Arkusz1'[Date] ) ) )4.Create the following measure
LastDateByWeeknumWithoutBlank = var _value=CALCULATE([Measure 2],FILTER('Arkusz1',[Weeknum]=MAX('Calendar'[Weeknum]))) var _valuelastweek=CALCULATE([Measure 2],FILTER('Arkusz1',[Weeknum]=MAX('Calendar'[Weeknum])-1)) return IF(_value=BLANK(),_valuelastweek,_value)5.If you only want to limit the number of weeks to only the number of weeks in your main table.
Create a flag measure and put it into Filters.
flag = var _max=MAXX(ALL(Arkusz1),[Weeknum]) var _min=MINX(ALL(Arkusz1),[Weeknum]) return IF(_min<=MAX('Calendar'[Weeknum])&&_max>=MAX('Calendar'[Weeknum]),1)Best Regards,
Stephen Tao
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
4 years agoAnonymous Maybe:
New Measure =
VAR __Customer = MAX('Table'[Customer])
VAR __Date = MAX('Table'[Date])
VAR __Value1 = SUMX ( VALUES ( Arkusz1[Customer] ), CALCULATE ( SUM(Arkusz1[Measure] ), LASTDATE ( Arkusz1[Date] ) )
VAR __MaxDate = MAXX(FILTER(ALL('Table'),[Customer]=__Customer && [Date]<__Date),[Date])
VAR __Value2 = SUMX ( VALUES ( Arkusz1[Customer] ), CALCULATE ( SUM(Arkusz1[Measure] ), 'Table'[Date] = __MaxDate ) )
)
RETURN
IF(ISBLANK(__Value1),__Value2,__Value1)
Something along those lines.
Anonymous
4 years agoNot applicable
Unfortunately, it doesn't work for me:(
- Anonymous4 years agoNot applicableSpoilerNobody?