From 63151cd5c81a1d41ace396bc4c936d0aab4af6f0 Mon Sep 17 00:00:00 2001 From: "nch@tinyerp.com" <> Date: Thu, 25 Mar 2010 10:38:29 +0530 Subject: [PATCH] [IMP]:GroupBY:Added Multilevel Groupby bzr revid: nch@tinyerp.com-20100325050829-gwimhmlym2wf8mpu --- bin/osv/orm.py | 3 +++ 1 file changed, 3 insertions(+) diff --git a/bin/osv/orm.py b/bin/osv/orm.py index dd4267e5237..b74c2432d7f 100644 --- a/bin/osv/orm.py +++ b/bin/osv/orm.py @@ -1869,6 +1869,8 @@ class orm(orm_template): _protected = ['read','write','create','default_get','perm_read','unlink','fields_get','fields_view_get','search','name_get','distinct_field_get','name_search','copy','import_data','search_count', 'exists'] def read_group(self, cr, uid, domain, fields, groupby, offset=0, limit=None, context=None): + groupby_list = groupby + groupby = groupby[0] context = context or {} self.pool.get('ir.model.access').check(cr, uid, self._name, 'read', context=context) if not fields: @@ -1922,6 +1924,7 @@ class orm(orm_template): for d in data: d['__domain'] = [(groupby,'=',alldata[d['id']][groupby] or False)] + domain + d['__context'] = {'group_by':groupby_list[1:]} if fget.has_key(groupby): if d[groupby] and fget[groupby]['type'] in ('date','datetime'): dt = datetime.datetime.strptime(alldata[d['id']][groupby][:7],'%Y-%m')