我正在与考勤一起工作,我想获得一个考勤列表,其中check_in.date()!= check_out.date()可以通过search(domain)做到这一点吗?
答案 0 :(得分:0)
这是我想出的答案。
attendances = self.env['hr.attendance'].search([('tz_check_out', '!=', False)]).filtered(lambda r: datetime.strptime(r.tz_check_in, DEFAULT_SERVER_DATETIME_FORMAT).date() != datetime.strptime(r.tz_check_out, DEFAULT_SERVER_DATETIME_FORMAT).date())
attendances |= self.env['hr.attendance'].search([('tz_check_out', '=', False), ('tz_check_in', '!=', False)]).filtered(lambda r: datetime.strptime(r.tz_check_in, DEFAULT_SERVER_DATETIME_FORMAT).date() != date.today())
使用filtered()方法而不是将日期比较放入search()方法中,使我可以比较记录中的字段,而不是将字段与外部值进行比较。