diff --git a/addons/account_report/__openerp__.py b/addons/account_report/__openerp__.py
index d71d75f0bb3..3f0739bdb91 100644
--- a/addons/account_report/__openerp__.py
+++ b/addons/account_report/__openerp__.py
@@ -38,6 +38,7 @@
'account_report.xml',
'account_wizard.xml',
'wizard/account_report_print_indicators_view.xml',
+ 'wizard/account_report_print_indicators_with_pdf_view.xml',
],
'demo_xml': [],
'installable': True,
diff --git a/addons/account_report/account_wizard.xml b/addons/account_report/account_wizard.xml
index d56b6c9d565..1e07a8fc248 100644
--- a/addons/account_report/account_wizard.xml
+++ b/addons/account_report/account_wizard.xml
@@ -4,7 +4,7 @@
-
+
\ No newline at end of file
diff --git a/addons/account_report/wizard/__init__.py b/addons/account_report/wizard/__init__.py
index 2658c47cf17..cae88f16a32 100644
--- a/addons/account_report/wizard/__init__.py
+++ b/addons/account_report/wizard/__init__.py
@@ -20,6 +20,6 @@
##############################################################################
import account_report_print_indicators
-import wizard_print_indicators_with_pdf
+import account_report_print_indicators_with_pdf
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
diff --git a/addons/account_report/wizard/account_report_print_indicators_with_pdf.py b/addons/account_report/wizard/account_report_print_indicators_with_pdf.py
new file mode 100644
index 00000000000..8d0dbf6232d
--- /dev/null
+++ b/addons/account_report/wizard/account_report_print_indicators_with_pdf.py
@@ -0,0 +1,107 @@
+# -*- coding: utf-8 -*-
+##############################################################################
+#
+# OpenERP, Open Source Management Solution
+# Copyright (C) 2004-2010 Tiny SPRL ().
+#
+# This program is free software: you can redistribute it and/or modify
+# it under the terms of the GNU Affero General Public License as
+# published by the Free Software Foundation, either version 3 of the
+# License, or (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU Affero General Public License for more details.
+#
+# You should have received a copy of the GNU Affero General Public License
+# along with this program. If not, see .
+#
+##############################################################################
+import time
+from mx.DateTime import *
+import os
+import base64
+import StringIO
+
+from osv import fields, osv
+import tools
+import pooler
+from report.render import render
+from report.interface import report_int
+
+class account_report_print_indicators_with_pdf(osv.osv_memory):
+ _name = "account.report.print.indicators.with.pdf"
+ _description = "Print Indicators"
+ _columns = {
+ 'file': fields.binary('Select a PDF File', filters='*.pdf', required=True),
+ }
+
+ def check_report(self, cr, uid, ids, context=None):
+ datas = {}
+ if context is None:
+ context = {}
+ data = self.read(cr, uid, ids)[0]
+ datas = {
+ 'ids': context.get('active_ids',[]),
+ 'model': 'account.report.report',
+ 'form': data
+ }
+
+ return {
+ 'type': 'ir.actions.report.xml',
+ 'report_name': 'print.indicator.pdf',
+ 'datas': datas,
+ }
+
+
+account_report_print_indicators_with_pdf()
+
+class external_pdf(render):
+ def __init__(self, pdf):
+ render.__init__(self)
+ self.pdf = pdf
+ self.output_type='pdf'
+ def _render(self):
+ return self.pdf
+
+class report_custom(report_int):
+ def create(self, cr, uid, ids, data, context={}):
+ pool = pooler.get_pool(cr.dbname)
+ obj_indicator = pool.get('account.report.report')
+ code_ids = obj_indicator.browse(cr,uid,context['active_id'])
+
+ self.list={}
+
+ def find_child(obj):
+ self.list[obj.code]=str(obj.amount)
+ if obj.child_ids:
+ for child in obj.child_ids:
+ find_child(child)
+ return True
+
+ find_child(code_ids)
+
+ file_contents=base64.decodestring(data['form']['file'])
+ fp = StringIO.StringIO(file_contents)
+
+ infile = open(tools.config['addons_path']+"/test.pdf", 'wb')
+ infile.write(fp.read())
+ infile.close()
+
+ obj_user=pool.get('res.users').browse(cr,uid,uid)
+ self.list['printing_user']=str(obj_user.name)
+ self.list['company_name']=(obj_user.company_id.name)
+ self.list['company_country']=obj_user.company_id.partner_id.country
+ self.list['company_vat']=obj_user.company_id.partner_id.vat
+ self.list['printing_time']=time.strftime('%H:%M:%S')
+ self.list['printing_date']=time.strftime('%D')
+
+ tools.pdf_utils.fill_pdf(tools.config['addons_path']+"/test.pdf",'/tmp/output.pdf',self.list)
+ self.obj = external_pdf(file('/tmp/output.pdf').read())
+ self.obj.render()
+ return (self.obj.pdf, 'pdf')
+
+report_custom('report.print.indicator.pdf')
+
+# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
\ No newline at end of file
diff --git a/addons/account_report/wizard/account_report_print_indicators_with_pdf_view.xml b/addons/account_report/wizard/account_report_print_indicators_with_pdf_view.xml
new file mode 100644
index 00000000000..07e1ef0b4d9
--- /dev/null
+++ b/addons/account_report/wizard/account_report_print_indicators_with_pdf_view.xml
@@ -0,0 +1,45 @@
+
+
+
+
+
+ account.report.print.indicators.with.pdf.form
+ account.report.print.indicators.with.pdf
+ form
+
+
+
+
+
+
+ Indicators in PDF
+ ir.actions.act_window
+ account.report.print.indicators.with.pdf
+ form
+ form
+
+ new
+
+
+
+
+
+ Indicators in PDF
+ client_print_multi
+
+ action
+ account.report.report
+
+
+
+
diff --git a/addons/account_report/wizard/wizard_print_indicators_with_pdf.py b/addons/account_report/wizard/wizard_print_indicators_with_pdf.py
deleted file mode 100644
index 762e1258233..00000000000
--- a/addons/account_report/wizard/wizard_print_indicators_with_pdf.py
+++ /dev/null
@@ -1,109 +0,0 @@
-# -*- coding: utf-8 -*-
-##############################################################################
-#
-# OpenERP, Open Source Management Solution
-# Copyright (C) 2004-2010 Tiny SPRL ().
-#
-# This program is free software: you can redistribute it and/or modify
-# it under the terms of the GNU Affero General Public License as
-# published by the Free Software Foundation, either version 3 of the
-# License, or (at your option) any later version.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU Affero General Public License for more details.
-#
-# You should have received a copy of the GNU Affero General Public License
-# along with this program. If not, see .
-#
-##############################################################################
-
-import wizard
-import pooler
-import time
-import datetime
-import sys
-from mx.DateTime import *
-import tools
-from report.render import render
-from report.interface import report_int
-import os
-import base64
-import StringIO
-
-form = '''
-'''
-
-fields = {
- 'file': {'string':'Select a PDF File', 'type':'binary','required':True,'filters':'*.pdf'},
-}
-
-
-class external_pdf(render):
- def __init__(self, pdf):
- render.__init__(self)
- self.pdf = pdf
- self.output_type='pdf'
- def _render(self):
- return self.pdf
-
-
-class report_custom(report_int):
- def create(self, cr, uid, ids, data, context={}):
-
- pool = pooler.get_pool(cr.dbname)
- obj_indicator = pool.get('account.report.report')
- code_ids = obj_indicator.browse(cr,uid,data['id'])
-
- self.list={}
-
- def find_child(obj):
- self.list[obj.code]=str(obj.amount)
- if obj.child_ids:
- for child in obj.child_ids:
- find_child(child)
- return True
-
- find_child(code_ids)
-
- file_contents=base64.decodestring(data['form']['file'])
- fp = StringIO.StringIO(file_contents)
-
- infile = open(tools.config['addons_path']+"/test.pdf", 'wb')
- infile.write(fp.read())
- infile.close()
-
- obj_user=pool.get('res.users').browse(cr,uid,uid)
- self.list['printing_user']=obj_user.name
- self.list['company_name']=obj_user.company_id.name
- self.list['company_country']=obj_user.company_id.partner_id.country
- self.list['company_vat']=obj_user.company_id.partner_id.vat
- self.list['printing_time']=time.strftime('%H:%M:%S')
- self.list['printing_date']=time.strftime('%D')
-
- tools.pdf_utils.fill_pdf(tools.config['addons_path']+"/test.pdf",'/tmp/output.pdf',self.list)
- self.obj = external_pdf(file('/tmp/output.pdf').read())
- self.obj.render()
- return (self.obj.pdf, 'pdf')
-
-report_custom('report.print.indicator.pdf')
-
-class wizard_print_indicators_with_pdf(wizard.interface):
- states = {
- 'init': {
- 'actions': [],
- 'result': {'type': 'form', 'arch':form, 'fields':fields, 'state':[('end','Cancel'),('print','Print')]}
- },
- 'print': {
- 'actions':[],
- 'result' :{'type':'print','report':'print.indicator.pdf', 'state':'end'}
- }
- }
-wizard_print_indicators_with_pdf('print.indicators.pdf')
-
-# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: