From 7409a953159c842ad12ad2c2b4a7098b0c0d9283 Mon Sep 17 00:00:00 2001 From: Lionel Sausin Date: Wed, 16 Apr 2014 17:04:07 +0200 Subject: [PATCH 1/2] [FIX] user browse was incorrect and never returned records. Fix based on the patch from Egor Tsinko (etsinko) --- base_report_to_printer/ir_report.py | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/base_report_to_printer/ir_report.py b/base_report_to_printer/ir_report.py index 4c7dddf..e488511 100644 --- a/base_report_to_printer/ir_report.py +++ b/base_report_to_printer/ir_report.py @@ -47,7 +47,6 @@ class report_xml(orm.Model): return options def print_direct(self, cr, uid, report_id, result, format, printer, context=None): - user_obj = self.pool.get('res.users') fd, file_name = mkstemp() try: os.write(fd, base64.decodestring(result)) @@ -94,9 +93,9 @@ class report_xml(orm.Model): if default_printer: default_printer = printer_obj.browse(cr, uid, default_printer, context=context) - # Retrieve user default values - user = self.pool.get('res.users').browse(cr, uid, context) + user = self.pool.get('res.users').browse( + cr, uid, [uid], context=context)[0] if user.printing_action: default_action = user.printing_action if user.printing_printer_id: From efc939ffd415fb20f7399432911b3ead3bb9b852 Mon Sep 17 00:00:00 2001 From: Lionel Sausin Date: Thu, 17 Apr 2014 18:34:39 +0200 Subject: [PATCH 2/2] [IMP] Use short notation for browse and use pool[] instead of pool.get() as suggested by Pedro Manuel Baeza --- base_report_to_printer/ir_report.py | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/base_report_to_printer/ir_report.py b/base_report_to_printer/ir_report.py index e488511..a636463 100644 --- a/base_report_to_printer/ir_report.py +++ b/base_report_to_printer/ir_report.py @@ -84,8 +84,8 @@ class report_xml(orm.Model): def behaviour(self, cr, uid, ids, context=None): result = {} - printer_obj = self.pool.get('printing.printer') - printing_act_obj = self.pool.get('printing.report.xml.action') + printer_obj = self.pool['printing.printer'] + printing_act_obj = self.pool['printing.report.xml.action'] # Set hardcoded default action default_action = 'client' # Retrieve system wide printer @@ -94,8 +94,7 @@ class report_xml(orm.Model): default_printer = printer_obj.browse(cr, uid, default_printer, context=context) # Retrieve user default values - user = self.pool.get('res.users').browse( - cr, uid, [uid], context=context)[0] + user = self.pool['res.users'].browse(cr, uid, uid, context=context) if user.printing_action: default_action = user.printing_action if user.printing_printer_id: