To implement this recipe, do the following:
Create the following column in the R05_Table table:
Counter =
VAR __Table =
ADDCOLUMNS(
FILTER(
'R05_Table',
'R05_Table'[Animal] = EARLIER('R05_Table'[Animal]) &&
'R05_Table'[Index] < EARLIER('R05_Table'[Index])
),
"__diff",
[Index] -
MAXX(
FILTER(
ALL('R05_Table'),
'R05_Table'[Index]<EARLIER('R05_Table'[Index]) &&
'R05_Table'[Animal]=EARLIER('R05_Table'[Animal])
),
[Index]
)
)
VAR __Max = MAXX(__Table,[Index])
VAR __MaxStart =
MAXX(
FILTER(__Table,[__diff]>1),
[Index]
)
VAR __Table2 = FILTER(__Table,[Index]>=__MaxStart)
RETURN
IF(
ISBLANK(__Max),
1,
IF(
__Max=[Index]-1,
COUNTROWS(__Table2)+1,
1
)
)