Skip to Content
Menu
This question has been flagged
2 Replies
4668 Views

I'm trying to retrieve some calendar entries. With the following code I get always all entries with category id 12. The date is not used.

What would be the right syntax ?

dt = datetime.now()
args = [('categ_id','=',12),('date','=',str(dt))]
ids = sock.execute(dbname, uid, pwd, 'crm.meeting', 'search', args)

Update

Thanks so far but it won't:

Database:
test=# select * from crm_meeting where date='2013-03-25 00:00:00';
-[ RECORD 1 ]----------+---------------------------
id                     | 663
create_uid             | 1
create_date            | 2013-03-25 11:32:19.318743
end_type               | forever
date                   | 2013-03-25 00:00:00
freq                   | None
categ_id               | 17
class                  | public

Python:
dt = datetime.now().strftime("%Y-%m-%d 00:00:00")
print dt
args = [('categ_id','=',17),('date','=',dt)]
ids = sock.execute(dbname, uid, pwd, 'crm.meeting', 'search', args)

print ids

Output:

2013-03-25 00:00:00
[864, 863, 862, 861, 860, 859, 858, 857, 856, 855, ...

still getting all entries with categorie id 17 ...

Avatar
Discard
Best Answer

The field date of model crm.meeting is a timestamp. You can use the following script:

import datetime
date_from = datetime.datetime.now().strftime("%Y-%m-%d 00:00:00")
date_to = datetime.datetime.now().strftime("%Y-%m-%d 23:59:59")
args = [('categ_id','=',12),('date','>=',date_from), ('date','<=',date_to)]
ids = sock.execute(dbname, uid, pwd, 'crm.meeting', 'search', args)
Avatar
Discard
Author

see my update

Best Answer

This work:

import datetime
dt = datetime.datetime.today()
args = [('categ_id','=',12),('date','=',str(dt)]
ids = sock.execute(dbname, uid, pwd, 'crm.meeting', 'search', args)

?

Avatar
Discard
Related Posts Replies Views Activity
4
Jan 24
37514
1
Mar 15
5507
1
Mar 15
4113
0
Mar 15
3925
0
Mar 15
3305