Assuming you have dimACCOUNTS and factPURCHASE tables, I would create a custom column (ageFILTER) in the factPURCHASE table to use as a filter for accounts that have not made a purchase in last 3 months. That ageFILTER column code would look something like:
case
when [order by Date] <= addmonths(now(),-3) then 'Old' ---- Old is a row with a date older than 3 months
else 'New' ---- New is a row with a purchase in the last 3 months
end
NOTE: using now() in the addMonths function assumes your data is updated through today. If you build once a day and your ElastiCube data is updated through yesterday you can adjust for this by using addmonths(adddays(now(),-1),-3). This subtracts a day from now.
On my dashboard I would create a pivot table with a row column listing ACCOUNTS. I would then create a widget filter based on my new ageFILTER column. The ageFILTER column will have values OLD and NEW. Unselect the NEW value. That should leave customers who have only OLD values. They will not have made a purchase in the last 3 months.
Hope this helps, Jim