Skip to Content
Menu
You need to be registered to interact with the community.
This question has been flagged
2 Odgovori
6833 Prikazi

My location is at UTC + 8,  when I sell products in POS before 8am KUL time the sale detail report will show them as yesterday records, how to fix this?

Avatar
Opusti

The time zone depend on location of server and time set on server, check that may help you.

Avtor Best Answer

This is a serious issue, unfortunately odoo and it's support don't bother much, raised a ticket to them, took me for a ride by incompetent support,  then ask to close the ticket.

Some smart guy from the community suggested the following link and it took me another ride.  But it may help you:-

https://github.com/odoo/odoo/pull/2914  

https://github.com/odoo/odoo/pull/2776

https://github.com/odoo/odoo/pull/2915 


If you really want an easy answer, this was what I changed to make it work, it make look stupid.

Edit  addons/point_of_sale/report/pos_details.py

add 

import datetime

look for the following line

pos_ids = pos_obj.search(self.cr, self.uid, [('date_order','>=',form['date_start'] + ' 00:00:00'),('date_order','<=',form['date_end'] + ' 23:59:59'),('user_id','in',user_ids),('state','in',['done','paid','invoiced']),('company_id','=',company_id)])
 

Change it to 

pos_ids = pos_obj.search(self.cr, self.uid, [('date_order','>=', (datetime.datetime.strptime( (form['date_start'] + ' 00:00:00'), "%Y-%m-%d %H:%M:%S") - datetime.timedelta(hours=8)).strftime("%Y-%m-%d %H:%M:%S") ),('date_order','<=',form['date_end'] + ' 15:59:59'),('user_id','in',user_ids),('state','in',['done','paid','invoiced']),('company_id','=',company_id)])


Take note for the following, since my location is UTC+8 , you need to change it according to you own number.

datetime.timedelta(hours=8)

form['date_end'] + ' 15:59:59' 

God knows how many more I need to change. I just hope it can be fixed it at the core.


Avatar
Opusti
Related Posts Odgovori Prikazi Aktivnost
1
nov. 21
7312
0
maj 18
3998
0
jul. 17
3063
1
okt. 16
4812
1
apr. 16
3364