[FIX] gamification: do not group on agregated field for sum
authorMartin Trigaux <mat@openerp.com>
Tue, 3 Jun 2014 08:48:26 +0000 (10:48 +0200)
committerMartin Trigaux <mat@openerp.com>
Tue, 3 Jun 2014 08:48:26 +0000 (10:48 +0200)
The read_group behaviour has changed and read_group no longer sum on the field you are grouping.
Instead agregate on the field we want to sum and use no groupby.
For future version, grouping on a user such as what is done in batch mode is a better way to process.

addons/gamification/models/goal.py

index 904e6fa..266e25a 100644 (file)
@@ -333,7 +333,8 @@ class gamification_goal(osv.Model):
 
                         if definition.computation_mode == 'sum':
                             field_name = definition.field_id.name
-                            res = obj.read_group(cr, uid, domain, [field_name], [field_name], context=context)
+                            # TODO for master: group on user field in batch mode
+                            res = obj.read_group(cr, uid, domain, [field_name], [], context=context)
                             new_value = res and res[0][field_name] or 0.0
 
                         else:  # computation mode = count