diff --git a/addons/project_retro_planning/project_retro_planning.py b/addons/project_retro_planning/project_retro_planning.py index 6360b3cae13..fd50fe64e50 100644 --- a/addons/project_retro_planning/project_retro_planning.py +++ b/addons/project_retro_planning/project_retro_planning.py @@ -27,8 +27,10 @@ from osv import fields, osv class project_project(osv.osv): _inherit = 'project.project' - def write(self, cr, uid, ids,vals, *args, **kwargs): - if 'date' in vals and vals['date']: + def write(self, cr, uid, ids, vals, *args, **kwargs): + if isinstance(ids, (int, long)): + ids = [ids] + if vals.get('date', False): data_project = self.browse(cr, uid, ids) for prj in data_project: new_end_date = date(*time.strptime(vals['date'],'%Y-%m-%d')[:3]) @@ -39,9 +41,9 @@ class project_project(osv.osv): start_dt = (date(*time.strptime(str(task.date_start),'%Y-%m-%d %H:%M:%S')[:3])+(new_end_date-old_end_date)).strftime('%Y-%m-%d %H:%M:%S') if task.date_deadline: deadline_dt = (datetime(*time.strptime(str(task.date_deadline),'%Y-%m-%d')[:3])+(new_end_date-old_end_date)).strftime('%Y-%m-%d') - self.pool.get('project.task').write(cr, uid, task.id, {'date_start':start_dt, 'date_deadline':deadline_dt}) + self.pool.get('project.task').write(cr, uid, [task.id], {'date_start':start_dt, 'date_deadline':deadline_dt}) else: - self.pool.get('project.task').write(cr, uid, task.id, {'date_start':start_dt}) + self.pool.get('project.task').write(cr, uid, [task.id], {'date_start':start_dt}) return super(project_project,self).write(cr, uid, ids, vals, *args, **kwargs) project_project()