You are absolutely right if i will add a Key, all the problem will get resolved, but in the real case scenario what i am facing there is no scope of changing the Data Model, as becoz this expression has to be implemented on 8 dimensions which also includes Calculated dimensions. and the data model can't be changed.
I agree it is good practice to have Unique field in a table. In this case the dimensions are from different table and expressions are from different table (Not a single expression too many expression has to be implemented like this). Sorry to say but again i am repeating there is no scope of changing the data model and reload again.