1 # -*- encoding: utf-8 -*-
2 #Copyright (c) Vincent Cardon <vincent.cardon@tranquil-it-systems.fr>
3 # Denis Cardon <denis.cardon@tranquilitsystems.com> and Emmanuel RICHARD.
13 from mx.DateTime import *
15 from report.render import render
16 from report.interface import report_int
19 _tax_form = """<?xml version="1.0"?>
20 <form string="VAT Legal Declaration">
21 <field name="tax_code_id"/>
22 <field name="period_id"/>
29 'relation': 'account.tax.code',
31 'domain': [('parent_id','=',False)]},
35 'relation': 'account.period',
40 class external_pdf(render):
41 def __init__(self, pdf):
44 self.output_type='pdf'
49 class report_custom(report_int):
50 def create(self, cr, uid, ids, datas, context={}):
53 taxobj = self.pool.get('account.tax.code')
54 code_ids = taxobj.search(cr, uid, [('parent_id','child_of',[datas['form']['tax_code_id']])])
56 for t in taxobj.browse(cr, uid, code_ids, {'period_id': datas['form']['period_id']}):
58 result[t.code] = t.sum_period
59 os.system('pdftk... output /tmp/tax.pdf')
60 self.obj = external_pdf(file('/tmp/tax.pdf').read())
64 return (self.obj.pdf, 'pdf')
66 report_custom('report.l10n_lu.tax.report.print')
69 class wizard_report(wizard.interface):
73 'result': {'type':'form', 'arch':_tax_form, 'fields':_tax_fields, 'state':[('end','Cancel'),('pdf','Print Balance Sheet')]},
77 'result': {'type':'print', 'report': 'l10n_lu.tax.report.print', 'state':'end'},
80 wizard_report('l10n_lu.tax.report.wizard')