تخطي للذهاب إلى المحتوى
القائمة
لقد تم الإبلاغ عن هذا السؤال
2 الردود
1383 أدوات العرض

I have a code that search for attendance record

att_var1 = att_obj.search([
('employee_id', '=', get_user_id.id),
('check_in', '>=',check_in_date.strftime('%Y-%m-%d 00:00:00')),
('check_in', '])

Here check_in_date is a date field im adding min and max time using strftime now the results will be get for a day start to end.

But when this code executes the min time is modified based on UTC. i,e) min time is +5:30, our timezone is Asia/Kolkata and max time is also +5:30 so instead of getting a day record it fetches today 5:30 AM to tomorrow 5:30 AM


Does anyone have any knowledge about how to rectify this


i want to get data based on 00:00 to 23:59


Thanks in Advance



الصورة الرمزية
إهمال
الكاتب

Does anyone knows how odoo converts user timezone into UTC in user defined filters

أفضل إجابة

Hi,

Use the fields.Datetime.context_timestamp(record, timestamp) method. This method returns the provided timestamp converted to the client's timezone.


Hope it helps

الصورة الرمزية
إهمال
أفضل إجابة

See https://www.odoo.com/documentation/17.0/developer/reference/backend/orm.html?highlight=utc#odoo.fields.Datetime.context_timestamp

static context_timestamp(record, timestamp)
Return the given timestamp converted to the client’s timezone.
الصورة الرمزية
إهمال

And how to use this in search view filter ?

المنشورات ذات الصلة الردود أدوات العرض النشاط
3
يناير 25
2489
1
يناير 24
1168
0
أبريل 15
4282
1
ديسمبر 23
1175
1
فبراير 22
4168