In CALCULATE we can use FILTER(tblname,..)
Or
FILTER(ALL(tblname),..)
I want to ask whether FILTER in CALCULATE adds or modifies (clears and adds new) the existing filter context?
The answer is yes. It adds a new filter when no filter exists on tblname or it replaces (removes the existing filter and adds the new filter) when a filter already exists on tablename or some of its expanded table columns when CALCULATE is called. Existing filters on non-related columns are unaffected.
apart from the first parameter in CALCULATE
, that is the expression to be computed in the modified filter context, all the other parameters are called filter arguments, since their purpose is to change the filter context.
CALCULATE( expression, table[column] = value )
is internally translated by DAX to
CALCULATE( expression, FILTER( ALL( table[column] ), table[column] = value ) )