summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorFabien Pinckaers <fp@tinyerp.com>2011-12-19 23:19:35 +0100
committerFabien Pinckaers <fp@tinyerp.com>2011-12-19 23:19:35 +0100
commita012ffb00a7eb4a2ef92fe8dcd9566d36140df86 (patch)
tree0559e381d8d78ee203f3059617bc96f2413ed032
parent14846e77fa6231d4cb19c1ebf1a8ff0f6142bd28 (diff)
parent4f6324beb304343b7b063b0c8144570f11fde14a (diff)
[FIX] base_report_creator
lp bug: https://launchpad.net/bugs/900742 fixed bzr revid: fp@tinyerp.com-20111219221935-gsn99ahbyira7w7b
-rw-r--r--addons/base_report_creator/base_report_creator.py13
-rw-r--r--addons/base_report_creator/wizard/wiz_set_filter_fields.py2
2 files changed, 6 insertions, 9 deletions
diff --git a/addons/base_report_creator/base_report_creator.py b/addons/base_report_creator/base_report_creator.py
index 75bd149186a..ff26ad81572 100644
--- a/addons/base_report_creator/base_report_creator.py
+++ b/addons/base_report_creator/base_report_creator.py
@@ -201,18 +201,15 @@ class report_result(osv.osv):
else:
fields['column_count'] = (False, 'Count')
newargs = []
- newargs2 = []
for a in args:
if fields[a[0]][0]:
- res = self.pool.get(fields[a[0]][0])._where_calc(cr, user, [[fields[a[0]][1], a[1], a[2]]], active_test = False, context = context)
- newargs += res[0]
- newargs2 += res[1]
- else:
- newargs += [("count(*) " + a[1] +" " + str(a[2]))]
+ model = self.pool.get(fields[a[0]][0])
+ newargs.append(str(model._table+"."+fields[a[0]][1] + " " +a[1] + " '" + a[2])+"'")
ctx = context or {}
ctx['getid'] = True
- sql_query = report.sql_query
- cr.execute(sql_query) # TODO: FILTER
+ report_pool = self.pool.get('base_report_creator.report')
+ reports = report_pool._sql_query_get(cr, user, [context_id], 'sql_query', None, ctx, where_plus=newargs, limit=limit, offset=offset)
+ cr.execute(reports[context_id])
result = cr.fetchall()
return map(lambda x: x[0], result)
diff --git a/addons/base_report_creator/wizard/wiz_set_filter_fields.py b/addons/base_report_creator/wizard/wiz_set_filter_fields.py
index 0903f968eea..4129845d400 100644
--- a/addons/base_report_creator/wizard/wiz_set_filter_fields.py
+++ b/addons/base_report_creator/wizard/wiz_set_filter_fields.py
@@ -150,7 +150,7 @@ def _set_filter_value(self, cr, uid, data, context):
def _set_form_value(self, cr, uid, data, context):
field_id = data['form']['field_id']
field_data = pooler.get_pool(cr.dbname).get('ir.model.fields').read(cr,uid,[field_id])[0]
- fields_dict = pooler.get_pool(cr.dbname).get(field_data.get('model')).fields_get(cr,uid,fields=[field_data.get('name')])
+ fields_dict = pooler.get_pool(cr.dbname).get(field_data.get('model')).fields_get(cr,uid,allfields=[field_data.get('name')])
value_field = set_value_fields.get('value')
for k,v in value_field.items():
if k in ('size','relation','type'):