Reputation: 11
I have a problem with using two or more filters at the same time.
For example if I enable two filters "Today" and "Tomorrow" then the SQL query recognizes it as "Today OR Tomorrow" sentence.
Is there a way to make it as Today AND Tomorrow
sentence so the SQL query would consider both? I do not want to make a third filter Today and Tomorrow
My XML code is here:
<record id="view_klient_tellimus" model="ir.ui.view">
<field name="name">picking.klient.tellimus.filter</field>
<field name="model">stock.picking</field>
<field name="arch" type="xml">
<search string="Search Picking">
<filter name="today" string="Today" domain="[('route_time','<=', datetime.datetime.combine(context_today(), datetime.time(23,59,59))), ('route_time','>=', datetime.datetime.combine(context_today(), datetime.time(0,0,0)))]"/>
<filter name="tomorrow" string="Tomorrow" domain="[('route_time','<=', datetime.datetime.combine(context_today()+datetime.timedelta(days=1), datetime.time(23,59,59))), ('route_time','>=', datetime.datetime.combine(context_today()+datetime.timedelta(days=1), datetime.time(0,0,0)))]"/>
</search>
</field>
</record>
Upvotes: 1
Views: 1945
Reputation: 14768
Hi you need to use separator
s for AND
filters.
So try this:
<record id="view_klient_tellimus" model="ir.ui.view">
<field name="name">picking.klient.tellimus.filter</field>
<field name="model">stock.picking</field>
<field name="arch" type="xml">
<search string="Search Picking">
<filter name="today" string="Today" domain="[('route_time','<=', datetime.datetime.combine(context_today(), datetime.time(23,59,59))), ('route_time','>=', datetime.datetime.combine(context_today(), datetime.time(0,0,0)))]"/>
<separator />
<filter name="tomorrow" string="Tomorrow" domain="[('route_time','<=', datetime.datetime.combine(context_today()+datetime.timedelta(days=1), datetime.time(23,59,59))), ('route_time','>=', datetime.datetime.combine(context_today()+datetime.timedelta(days=1), datetime.time(0,0,0)))]"/>
</search>
</field>
</record>
Upvotes: 2