How about a calculation like:
COUNTD(STR(DATETRUNC('day', [date])) + '_' + STR([store_id]) + '_' + STR([tr_id]))
That would give you a string for each day, store, transaction. When you count the distinct values, you should get the distinct transactions.
Once you have that you can slice by customer, month, or both! I've attached a workbook so you can see if it's what you are wanting.
Distinct Transactions.twbx.zip 13.2 KB
thanks a lot for the reply, I tried it with the sample data set and it seems to be working. Tomorrow I will try with the real data set and see it performance impact. Actually I was expecting kind of similar behavior from Tableau combined fields but it seems combined fields working differently.