Forum Discussion
Cumulative Column in a Query Model with Virtual Tables
- 2 years ago
- 2 years ago
Hi Amitchandak,
Thank you! It's working perfectly. I have another question: is there a possibility to use a variable instead of using Earlier? I've come across several posts recommending against this function and was wondering if there's an alternative method involving variables or something else.. thanks!
Thanks
Cupid
- Anonymous2 years ago
Hi CupidC ,
You can try thisDemoTable = VAR vTable = DATATABLE ( "Index",INTEGER, "Name", STRING, "Value", INTEGER, { { 1,"A", 1 }, { 2,"A", 2 }, { 3,"A", 3 } } ) VAR vAddRT = ADDCOLUMNS ( vTable, "RT", VAR thisrowindex = [Index] RETURN SUMX ( FILTER ( vTable, [Index] <= thisrowindex ), [Value] ) ) RETURN vAddRTFinal output
Best regards,
Albert He
If this post helps, then please consider Accept it as the solution to help the other members find it more quickly
Hi CupidC ,
Here is a dax expression that does not use the earlier function:
Accumulation =
CALCULATE(
SUM('Table'[VALUE]),
FILTER(
ALLEXCEPT('Table','Table'[ID]),
'Table'[VALUE] <= MAX('Table'[VALUE])
)
)
Final output
For more information about the operation of accumulation you can refer to this blog
How to Calculate Cumulative Values with DAX - Microsoft Fabric Community
Best regards,
Albert He
If this post helps, then please consider Accept it as the solution to help the other members find it more quickly
- CupidC2 years agoHelper II
Hi Albet
Thanks,, but the table is created virtually, so i can't reference "Table" in query mode, do you have other ways to achieve the result..?
- Anonymous2 years agoNot applicable
Hi CupidC ,
You can try thisDemoTable = VAR vTable = DATATABLE ( "Index",INTEGER, "Name", STRING, "Value", INTEGER, { { 1,"A", 1 }, { 2,"A", 2 }, { 3,"A", 3 } } ) VAR vAddRT = ADDCOLUMNS ( vTable, "RT", VAR thisrowindex = [Index] RETURN SUMX ( FILTER ( vTable, [Index] <= thisrowindex ), [Value] ) ) RETURN vAddRTFinal output
Best regards,
Albert He
If this post helps, then please consider Accept it as the solution to help the other members find it more quickly