Salve a tutti,
sto scrivendo una funzione che conti il numero di festività (dal modulo
hr.holiday.public) incluse in una richiesta di permesso.
In pratica, se un dipendente chiede un permesso dal giorno xx-xx-xxxx al giorno yy-yy-yyyy e in questo intervallo è inclusa la festività in data zz-zz-zzzz, il numero di giorni di permesso deve essere decrementato di uno.
def _holidays_check(self, cr, uid, ids, date_from, date_to):
DATETIME = '%Y-%m-%d %H:%M:%S'
dt_to = datetime.datetime.strptime(date_from, DATETIME).strftime("%Y-%m-%d")
dt_from = datetime.datetime.strptime(date_from, DATETIME).strftime("%Y-%m-%d")
free_leaves = 0
for holiday in self.pool.get('hr.public.holidays.line').browse(cr, uid, 'date' context=None):
if ((holiday >= dt_from) and (holiday <= dt_to)):
free_leaves += 1
return free_leaves
Con questa funzione ho un errore di incompatibilità di dati nel confronto. Non posso confrontare un oggetto
hr.public.line con una stringa.
La classe che contiene il campo
date è la seguente:
class hr_holidays_line(osv.osv):
_name = 'hr.public.holidays.line'
_description = 'Public Holidays Lines'
_columns = {
'name': fields.char('Name', size=128, required=True),
'date': fields.date('Date', required=True),
'holidays_id': fields.many2one('hr.public.holidays', 'Holiday Calendar Year'),
'variable': fields.boolean('Date may change'),
}
Qualcuno sa come posso riuscire a fare questo controllo?
Grazie