From 8d46fd06f1a6935e6cf4c218654571e1088d96bd Mon Sep 17 00:00:00 2001 From: "Jay (OpenERP)" Date: Fri, 17 Sep 2010 21:17:16 +0530 Subject: [PATCH 1/2] [FIX] Hr_payroll : YML test corrections bzr revid: jvo@tinyerp.com-20100917154716-szuse3ldd64almaj --- addons/hr_payroll/hr_payroll_demo.xml | 1 + addons/hr_payroll/test/hr_payroll_report.yml | 27 +++++++++++--------- addons/hr_payroll/test/payment_advice.yml | 9 +++++++ addons/hr_payroll/test/payroll_register.yml | 10 +++++++- 4 files changed, 34 insertions(+), 13 deletions(-) diff --git a/addons/hr_payroll/hr_payroll_demo.xml b/addons/hr_payroll/hr_payroll_demo.xml index 9c2ce90cd7a..0d5b593279e 100644 --- a/addons/hr_payroll/hr_payroll_demo.xml +++ b/addons/hr_payroll/hr_payroll_demo.xml @@ -72,6 +72,7 @@ First Contract + This is a First Contract diff --git a/addons/hr_payroll/test/hr_payroll_report.yml b/addons/hr_payroll/test/hr_payroll_report.yml index e2268db7697..35020d30ceb 100644 --- a/addons/hr_payroll/test/hr_payroll_report.yml +++ b/addons/hr_payroll/test/hr_payroll_report.yml @@ -1,14 +1,14 @@ - - In order to test the PDF reports defined on HR Employee Salary, we will print HR Employee Salary + In order to test the PDF reports defined on HR Payroll, we will print Employees' Salary Structure - !python {model: hr.employee}: | import netsvc, tools, os (data, format) = netsvc.LocalService('report.salary.structure').create(cr, uid, [ref('hr_payroll.hr_employee_bonamy0')], {}, {}) if tools.config['test_report_directory']: - file(os.path.join(tools.config['test_report_directory'], 'hr_payroll-salary_report.'+format), 'wb+').write(data) - + file(os.path.join(tools.config['test_report_directory'], 'hr_payroll-salary_structure.'+format), 'wb+').write(data) + - - In order to test the PDF reports defined on HR Payslip, we will print a HR Payslip + Print HR Payslip - !python {model: hr.payslip}: | import netsvc, tools, os @@ -17,20 +17,23 @@ file(os.path.join(tools.config['test_report_directory'], 'hr_payroll-payslip_report.'+format), 'wb+').write(data) - - In order to test the PDF reports defined on HR Employee Salary Details, we will print HR Employee Salary Details + Print HR Employee Salary Details - !python {model: hr.payslip}: | import netsvc, tools, os, time - data_dict = {'model': 'ir.ui.menu', 'form': {'fiscalyear_id': ref('account.data_fiscalyear'), 'employee_ids': [ref('hr.employee2')]}} - (data, format) = netsvc.LocalService('report.employees.salary').create(cr, uid, [], data_dict, {'periods': []}) + emp_ids = [ref('hr.employee1'),ref('hr.employee2'),ref('hr.employee3'),ref('hr_payroll.hr_employee_bonamy0')] + data_dict = {'model': 'ir.ui.menu', 'form': {'fiscalyear_id': ref('account.data_fiscalyear'), 'employee_ids': emp_ids, 'ids':emp_ids }} + (data, format) = netsvc.LocalService('report.employees.salary').create(cr, uid, [], data_dict, {'active_ids': emp_ids}) if tools.config['test_report_directory']: - file(os.path.join(tools.config['test_report_directory'], 'hr_payroll-employee_salary_detai_report.'+format), 'wb+').write(data) + file(os.path.join(tools.config['test_report_directory'], 'hr_payroll-employee_salary_detail_report.'+format), 'wb+').write(data) - - In order to test the PDF reports defined on HR Employee Salary Details, we will print HR Employee Salary Details + Print HR Employee Salary Details Annual basis - !python {model: hr.payslip}: | import netsvc, tools, os, time - data_dict = {'model': 'ir.ui.menu', 'form': {'fiscalyear_id': ref('account.data_fiscalyear'), 'salary_on': 'current_month', 'employee_ids': [ref('hr.employee2')]}} - (data, format) = netsvc.LocalService('report.year.salary').create(cr, uid, [], data_dict, {'periods': []}) + emp_ids = [ref('hr.employee1'),ref('hr.employee2'),ref('hr.employee3'),ref('hr_payroll.hr_employee_bonamy0')] + data_dict = {'model': 'hr.payslip', 'form': {'fiscalyear_id': ref('account.data_fiscalyear'), 'salary_on': 'current_month', 'employee_ids': emp_ids, 'ids':emp_ids}} + (data, format) = netsvc.LocalService('report.year.salary').create(cr, uid, [], data_dict,{'active_ids': emp_ids} ) if tools.config['test_report_directory']: - file(os.path.join(tools.config['test_report_directory'], 'hr_payroll-employee_yearly_salary_detai_report.'+format), 'wb+').write(data) \ No newline at end of file + file(os.path.join(tools.config['test_report_directory'], 'hr_payroll-employee_yearly_salary_detail_report.'+format), 'wb+').write(data) + diff --git a/addons/hr_payroll/test/payment_advice.yml b/addons/hr_payroll/test/payment_advice.yml index a2a9c3d5dbe..934485109b6 100644 --- a/addons/hr_payroll/test/payment_advice.yml +++ b/addons/hr_payroll/test/payment_advice.yml @@ -52,3 +52,12 @@ from tools.translate import _ advice_id=self.browse(cr, uid, ref("hr_payroll_advice_advice0")) assert(advice_id.state == 'confirm'), _('State not changed!') + +- + Print Payroll Advice +- + !python {model: hr.payroll.advice}: | + import netsvc, tools, os + (data, format) = netsvc.LocalService('report.payroll.advice').create(cr, uid, [ref('hr_payroll_advice_advice0')], {}, {}) + if tools.config['test_report_directory']: + file(os.path.join(tools.config['test_report_directory'], 'hr_payroll-payroll-advice.'+format), 'wb+').write(data) diff --git a/addons/hr_payroll/test/payroll_register.yml b/addons/hr_payroll/test/payroll_register.yml index f5772602db4..6ce953c1d94 100644 --- a/addons/hr_payroll/test/payroll_register.yml +++ b/addons/hr_payroll/test/payroll_register.yml @@ -1,6 +1,5 @@ - I test the 'Payroll Register' in order to check the hr_payroll in OpenERP -- I create a new employee “Keith” - !record {model: hr.employee, id: hr_employee_keith0}: @@ -61,3 +60,12 @@ from tools.translate import _ reg_brw=self.browse(cr, uid, ref("hr_payroll_register_payroll0")) assert(reg_brw.state == 'hr_check'), _('State not changed!') + +- + Print HR Payroll Register +- + !python {model: hr.payroll.register}: | + import netsvc, tools, os + (data, format) = netsvc.LocalService('report.hr.payroll.register.sheet').create(cr, uid, [ref('hr_payroll_register_payroll0')], {}, {}) + if tools.config['test_report_directory']: + file(os.path.join(tools.config['test_report_directory'], 'hr_payroll-register_report.'+format), 'wb+').write(data) From 32e09241ba869a6baa7d609eb2ad9d42667fede5 Mon Sep 17 00:00:00 2001 From: Panos Christeas Date: Sat, 18 Sep 2010 12:54:46 +0530 Subject: [PATCH 2/2] [MERGE] sfd-adoons: base_synchro, openoffice-plugin bzr revid: hmo@tinyerp.com-20100918072446-gc1slo8lz82b2qli --- addons/base_report_designer/__init__.py | 5 +- addons/base_report_designer/__openerp__.py | 5 +- .../base_report_designer.py | 17 +- .../base_report_designer_installer.xml | 93 ++ .../base_report_designer_wizard.xml | 22 - addons/base_report_designer/installer.py | 63 ++ .../__init__.py | 2 +- .../normalized_odt2rml.xsl | 0 .../normalized_oo2rml.xsl | 0 .../office.dtd | 0 .../openerp_sxw2rml.py} | 16 +- .../plugin/openerp_report_designer.zip | Bin 0 -> 153561 bytes .../plugin/openerp_report_designer/README | 40 + .../openerp_report_designer/bin/Makefile | 42 + .../openerp_report_designer/bin/OOo_run.sh | 2 + .../bin/package/Addons.xcu | 636 ++++++++++++++ .../bin/script/About.py | 111 +++ .../bin/script/AddAttachment.py | 277 ++++++ .../bin/script/Change.py | 109 +++ .../bin/script/ConvertBracesToField.py | 285 ++++++ .../bin/script/ConvertFieldsToBraces.py | 85 ++ .../bin/script/ExportToRML.py | 132 +++ .../bin/script/Expression.py | 115 +++ .../bin/script/Fields.py | 291 +++++++ .../bin/script/LoginTest.py | 55 ++ .../bin/script/ModifyExistingReport.py | 213 +++++ .../bin/script/NewReport.py | 119 +++ .../bin/script/Repeatln.py | 300 +++++++ .../bin/script/SendToServer.py | 241 +++++ .../bin/script/ServerParameter.py | 208 +++++ .../bin/script/Translation.py | 274 ++++++ .../bin/script/__init__.py | 61 ++ .../bin/script/compile_all.py | 49 ++ .../openerp_report_designer/bin/script/import | 2 + .../bin/script/lib/__init__.py | 28 + .../bin/script/lib/actions.py | 111 +++ .../bin/script/lib/error.py | 60 ++ .../bin/script/lib/functions.py | 264 ++++++ .../bin/script/lib/gui.py | 822 ++++++++++++++++++ .../bin/script/lib/logreport.py | 48 + .../bin/script/lib/rpc.py | 204 +++++ .../bin/script/lib/tiny_socket.py | 93 ++ .../bin/script/lib/tools.py | 40 + .../bin/script/modify.py | 138 +++ .../openerp_report_designer/test/test.txt | 57 ++ .../test/test_fields.py | 32 + .../base_report_security.xml} | 0 .../base_report_designer/wizard/__init__.py | 4 +- .../wizard/base_report_design_view.xml | 68 ++ .../wizard/base_report_designer_modify.py | 343 +++----- addons/base_synchro/__init__.py | 23 + addons/base_synchro/__openerp__.py | 33 + addons/base_synchro/base_synchro_obj.py | 107 +++ addons/base_synchro/base_synchro_view.xml | 146 ++++ addons/base_synchro/base_synchro_wizard.xml | 8 + addons/base_synchro/wizard/__init__.py | 22 + addons/base_synchro/wizard/base_synchro.py | 279 ++++++ 57 files changed, 6517 insertions(+), 283 deletions(-) create mode 100644 addons/base_report_designer/base_report_designer_installer.xml delete mode 100644 addons/base_report_designer/base_report_designer_wizard.xml create mode 100644 addons/base_report_designer/installer.py rename addons/base_report_designer/{wizard/tiny_sxw2rml => openerp_sxw2rml}/__init__.py (96%) rename addons/base_report_designer/{wizard/tiny_sxw2rml => openerp_sxw2rml}/normalized_odt2rml.xsl (100%) rename addons/base_report_designer/{wizard/tiny_sxw2rml => openerp_sxw2rml}/normalized_oo2rml.xsl (100%) rename addons/base_report_designer/{wizard/tiny_sxw2rml => openerp_sxw2rml}/office.dtd (100%) rename addons/base_report_designer/{wizard/tiny_sxw2rml/tiny_sxw2rml.py => openerp_sxw2rml/openerp_sxw2rml.py} (96%) create mode 100644 addons/base_report_designer/plugin/openerp_report_designer.zip create mode 100644 addons/base_report_designer/plugin/openerp_report_designer/README create mode 100755 addons/base_report_designer/plugin/openerp_report_designer/bin/Makefile create mode 100755 addons/base_report_designer/plugin/openerp_report_designer/bin/OOo_run.sh create mode 100644 addons/base_report_designer/plugin/openerp_report_designer/bin/package/Addons.xcu create mode 100644 addons/base_report_designer/plugin/openerp_report_designer/bin/script/About.py create mode 100644 addons/base_report_designer/plugin/openerp_report_designer/bin/script/AddAttachment.py create mode 100644 addons/base_report_designer/plugin/openerp_report_designer/bin/script/Change.py create mode 100644 addons/base_report_designer/plugin/openerp_report_designer/bin/script/ConvertBracesToField.py create mode 100644 addons/base_report_designer/plugin/openerp_report_designer/bin/script/ConvertFieldsToBraces.py create mode 100644 addons/base_report_designer/plugin/openerp_report_designer/bin/script/ExportToRML.py create mode 100644 addons/base_report_designer/plugin/openerp_report_designer/bin/script/Expression.py create mode 100644 addons/base_report_designer/plugin/openerp_report_designer/bin/script/Fields.py create mode 100644 addons/base_report_designer/plugin/openerp_report_designer/bin/script/LoginTest.py create mode 100644 addons/base_report_designer/plugin/openerp_report_designer/bin/script/ModifyExistingReport.py create mode 100644 addons/base_report_designer/plugin/openerp_report_designer/bin/script/NewReport.py create mode 100644 addons/base_report_designer/plugin/openerp_report_designer/bin/script/Repeatln.py create mode 100644 addons/base_report_designer/plugin/openerp_report_designer/bin/script/SendToServer.py create mode 100644 addons/base_report_designer/plugin/openerp_report_designer/bin/script/ServerParameter.py create mode 100644 addons/base_report_designer/plugin/openerp_report_designer/bin/script/Translation.py create mode 100644 addons/base_report_designer/plugin/openerp_report_designer/bin/script/__init__.py create mode 100644 addons/base_report_designer/plugin/openerp_report_designer/bin/script/compile_all.py create mode 100644 addons/base_report_designer/plugin/openerp_report_designer/bin/script/import create mode 100644 addons/base_report_designer/plugin/openerp_report_designer/bin/script/lib/__init__.py create mode 100644 addons/base_report_designer/plugin/openerp_report_designer/bin/script/lib/actions.py create mode 100644 addons/base_report_designer/plugin/openerp_report_designer/bin/script/lib/error.py create mode 100644 addons/base_report_designer/plugin/openerp_report_designer/bin/script/lib/functions.py create mode 100644 addons/base_report_designer/plugin/openerp_report_designer/bin/script/lib/gui.py create mode 100644 addons/base_report_designer/plugin/openerp_report_designer/bin/script/lib/logreport.py create mode 100644 addons/base_report_designer/plugin/openerp_report_designer/bin/script/lib/rpc.py create mode 100644 addons/base_report_designer/plugin/openerp_report_designer/bin/script/lib/tiny_socket.py create mode 100644 addons/base_report_designer/plugin/openerp_report_designer/bin/script/lib/tools.py create mode 100644 addons/base_report_designer/plugin/openerp_report_designer/bin/script/modify.py create mode 100644 addons/base_report_designer/plugin/openerp_report_designer/test/test.txt create mode 100644 addons/base_report_designer/plugin/openerp_report_designer/test/test_fields.py rename addons/base_report_designer/{base_report_data.xml => security/base_report_security.xml} (100%) create mode 100644 addons/base_report_designer/wizard/base_report_design_view.xml create mode 100644 addons/base_synchro/__init__.py create mode 100644 addons/base_synchro/__openerp__.py create mode 100755 addons/base_synchro/base_synchro_obj.py create mode 100755 addons/base_synchro/base_synchro_view.xml create mode 100644 addons/base_synchro/base_synchro_wizard.xml create mode 100644 addons/base_synchro/wizard/__init__.py create mode 100644 addons/base_synchro/wizard/base_synchro.py diff --git a/addons/base_report_designer/__init__.py b/addons/base_report_designer/__init__.py index 46a0a1e2476..2a14d2821ae 100644 --- a/addons/base_report_designer/__init__.py +++ b/addons/base_report_designer/__init__.py @@ -18,8 +18,9 @@ # along with this program. If not, see . # ############################################################################## - -import base_report_designer import wizard +import base_report_designer +import installer +import openerp_sxw2rml # vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/base_report_designer/__openerp__.py b/addons/base_report_designer/__openerp__.py index 50fe73f753f..9d39bba8a61 100644 --- a/addons/base_report_designer/__openerp__.py +++ b/addons/base_report_designer/__openerp__.py @@ -36,8 +36,9 @@ upload the report using the same wizard. 'author': 'OpenERP SA', 'website': 'http://www.openerp.com', 'depends': ['base'], - 'init_xml': ['base_report_data.xml'], - 'update_xml': ['base_report_designer_wizard.xml'], + 'init_xml': ['security/base_report_security.xml', + 'wizard/base_report_design_view.xml'], + 'update_xml': ['base_report_designer_installer.xml'], 'demo_xml': [], 'installable': True, 'active': False, diff --git a/addons/base_report_designer/base_report_designer.py b/addons/base_report_designer/base_report_designer.py index a4a135c4299..283c8ec7e23 100644 --- a/addons/base_report_designer/base_report_designer.py +++ b/addons/base_report_designer/base_report_designer.py @@ -20,13 +20,13 @@ ############################################################################## from osv import osv -from wizard.tiny_sxw2rml import sxw2rml +from openerp_sxw2rml import sxw2rml from StringIO import StringIO from report import interface import base64 import pooler import tools - +import addons class report_xml(osv.osv): _inherit = 'ir.actions.report.xml' @@ -37,12 +37,9 @@ class report_xml(osv.osv): ''' sxwval = StringIO(base64.decodestring(file_sxw)) if file_type=='sxw': - fp = tools.file_open('normalized_oo2rml.xsl', - subdir='addons/base_report_designer/wizard/tiny_sxw2rml') + fp = open(addons.get_module_resource('base_report_designer','openerp_sxw2rml', 'normalized_oo2rml.xsl'),'rb') if file_type=='odt': - fp = tools.file_open('normalized_odt2rml.xsl', - subdir='addons/base_report_designer/wizard/tiny_sxw2rml') - + fp = open(addons.get_module_resource('base_report_designer','openerp_sxw2rml', 'normalized_odt2rml.xsl'),'rb') return {'report_rml_content': str(sxw2rml(sxwval, xsl=fp.read()))} def upload_report(self, cr, uid, report_id, file_sxw, file_type, context): @@ -52,11 +49,9 @@ class report_xml(osv.osv): pool = pooler.get_pool(cr.dbname) sxwval = StringIO(base64.decodestring(file_sxw)) if file_type=='sxw': - fp = tools.file_open('normalized_oo2rml.xsl', - subdir='addons/base_report_designer/wizard/tiny_sxw2rml') + fp = open(addons.get_module_resource('base_report_designer','openerp_sxw2rml', 'normalized_oo2rml.xsl'),'rb') if file_type=='odt': - fp = tools.file_open('normalized_odt2rml.xsl', - subdir='addons/base_report_designer/wizard/tiny_sxw2rml') + fp = open(addons.get_module_resource('base_report_designer','openerp_sxw2rml', 'normalized_odt2rml.xsl'),'rb') report = pool.get('ir.actions.report.xml').write(cr, uid, [report_id], { 'report_sxw_content': base64.decodestring(file_sxw), 'report_rml_content': str(sxw2rml(sxwval, xsl=fp.read())), diff --git a/addons/base_report_designer/base_report_designer_installer.xml b/addons/base_report_designer/base_report_designer_installer.xml new file mode 100644 index 00000000000..21537d3d63c --- /dev/null +++ b/addons/base_report_designer/base_report_designer_installer.xml @@ -0,0 +1,93 @@ + + + + + + + Form View: OpenERP Report Designer Installation + base_report_designer.installer + form + + + +
+ OpenERP Report Designer Configuration +
+ + OpenERP Report Designer + + + This plug-in allows you to create/modify OpenERP Reports into OpenOffice Writer. + + +