Thanks Niyas, this is the solution:
Use case : In the CRM app, I want to be able to filter on the task changed this week/last24H/no change in the past 30 days.
How to :
1. Create a new filter with the date you want to filter in Odoo with studio (search view). Any filter would work, we just need Studio to create a view.
2. Open the studio view that was created (Odoo Studio: MODEL.search.inherit.VIEW customization)
3. Change the domain :
CHANGED THIS WEEK :
domain="[('date','<',time.strftime('%%Y-%%m-%%d 23:59:59')),('date','>=',(datetime.date.today()-datetime.timedelta(days=7)).strftime('%%Y-%%m-%%d 00:00:00'))]"
CHANGED THIS DAY :
domain="[('date','<',time.strftime('%%Y-%%m-%%d 23:59:59')),('date','>=',(datetime.date.today()-datetime.timedelta(hours=24)).strftime('%%Y-%%m-%%d 00:00:00'))]"
NO CHANGE LAST 30 DAYS
domain="[('date','<',(datetime.date.today()-datetime.timedelta(days=30)).strftime('%%Y-%%m-%%d 00:00:00'))]"
'date' = update this field and use the name of field you need to filter.
********
Example :
domain="[('date_last_stage_update','<',time.strftime('%%Y-%%m-%%d 23:59:59')),('date_last_stage_update','>=',(datetime.date.today()-datetime.timedelta(days=7)).strftime('%%Y-%%m-%%d 00:00:00'))]"/>
domain="[('date_last_stage_update','<',time.strftime('%%Y-%%m-%%d 23:59:59')),('date_last_stage_update','>=',(datetime.date.today()-datetime.timedelta(hours=24)).strftime('%%Y-%%m-%%d 00:00:00'))]"/>
domain="[('date_last_stage_update','<',(datetime.date.today()-datetime.timedelta(days=30)).strftime('%%Y-%%m-%%d 00:00:00'))]"/>
<filter string="Today" name="today" domain="[('create_date', '>', (context_today() - datetime.timedelta(days=1)).strftime('%%Y-%%m-%%d'))]"/>