[IMP] l10n_ch new version with 2011 taxes and with fixes disscussed with qdp adding files

bzr revid: nicolas.bessi@camptocamp.com-20110114124237-zdxcprpcrolfphs3
This commit is contained in:
nicolas.bessi@camptocamp.com 2011-01-14 13:42:37 +01:00
parent 315242ab0c
commit aa49d94fe8
14 changed files with 13466 additions and 0 deletions

View File

@ -0,0 +1,43 @@
# -*- encoding: utf-8 -*-
##############################################################################
#
# Author: Nicolas Bessi. Copyright Camptocamp SA
# Donors: Hasa Sàrl, Open Net Sàrl and Prisme Solutions Informatique SA
#
# 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 <http://www.gnu.org/licenses/>.
#
##############################################################################
import tools
from osv import osv
import addons
class WizardMultiChartsAccounts(osv.osv_memory):
_inherit ='wizard.multi.charts.accounts'
_defaults = {
'bank_accounts_id': False,
'code_digits': 0,
'sale_tax': False,
'purchase_tax':False
}
def execute(self, cr, uid, ids, context=None):
"""Override of code in order to be able to link journal with account in XML"""
res = super(WizardMultiChartsAccounts, self).execute(cr, uid, ids, context)
path = addons.get_module_resource('l10n_ch/sterchi_chart/account_journal_rel.xml')
tools.convert_xml_import(cr, 'l10n_ch', path, idref=None, mode='init', noupdate=True, report=None)
return res
WizardMultiChartsAccounts()

View File

@ -0,0 +1,84 @@
<openerp>
<data noupdate="1">
<record id="bank" model="res.partner">
<field name="comment">My bank !</field>
<field name="ref">banq</field>
<field name="name">Banque</field>
<field name="category_id" model="res.partner.category" search="[('name','=','Partenaire')]"/>
</record>
<record id="res_partner_address_bank1" model="res.partner.address">
<field name="fax">+41 31 622 13 00</field>
<field name="name">Marc Dufour</field>
<field name="zip">1015</field>
<field name="city">Lausanne</field>
<field name="partner_id" ref="bank"/>
<field name="country_id" model="res.country" search="[('code','=','ch')]"/>
<field name="email">openerp@bank.com</field>
<field name="phone">+41 24 620 10 12</field>
<field name="street">PSE-C</field>
<field name="active">1</field>
<field name="type">default</field>
</record>
<record id="prolibre" model="res.partner">
<field name="comment">Very good company!
They provides a very high quality service.</field>
<field name="ref">ProL</field>
<field name="website">http://camptocamp.com</field>
<field name="name">ProLibre</field>
<field name="category_id" model="res.partner.category" search="[('name','=','Partenaire')]"/>
</record>
<record id="camptocamp" model="res.partner">
<field name="comment">Very good company!
They provides a very high quality service.</field>
<field name="ref">c2c</field>
<field name="website">http://camptocamp.com</field>
<field name="name">camptocamp SA</field>
<field name="category_id" model="res.partner.category" search="[('name','=','Partenaire')]"/>
</record>
<!--
Resource: res.partner.address
-->
<record id="res_partner_address_1" model="res.partner.address">
<field name="fax">+41 21 619 10 00</field>
<field name="name">Luc Maurer</field>
<field name="zip">1015</field>
<field name="city">Lausanne</field>
<field name="partner_id" ref="camptocamp"/>
<field name="country_id" model="res.country" search="[('code','=','ch')]"/>
<field name="email">openerp@camptocamp.com</field>
<field name="phone">+41 21 619 10 12</field>
<field name="street">PSE-A, EPFL</field>
<field name="active">1</field>
<field name="type">default</field>
</record>
<record id="res_partner_address_2" model="res.partner.address">
<field name="name">Ferdinand Gassauer</field>
<field name="zip">1015</field>
<field name="city">Lausanne</field>
<field name="partner_id" ref="prolibre"/>
<field name="country_id" model="res.country" search="[('code','=','ch')]"/>
<field name="email">info@camptocamp.com</field>
<field name="phone">+41 21 619 10 11</field>
<field name="street">18, rue des Moraines </field>
<field name="active">1</field>
<field name="type">default</field>
</record>
<record id="res_partner_address_3" model="res.partner.address">
<field name="fax">+41 21 619 10 00</field>
<field name="name">Claude Philipona</field>
<field name="zip">1015</field>
<field name="city">Lausanne</field>
<field name="partner_id" ref="camptocamp"/>
<field name="country_id" model="res.country" search="[('name','=','Switzerland')]"/>
<field name="email">openerp@camptocamp.com</field>
<field name="phone">+41 21 619 10 12 </field>
<field name="street">PSE-A, EPFL</field>
<field name="active">1</field>
<field name="type">default</field>
</record>
</data>
</openerp>

View File

@ -0,0 +1,71 @@
<openerp>
<data>
<record id="expenses_journal" model="account.journal">
<field name="name">Journal de frais</field>
<field name="code">EXPF</field>
<field name="type">purchase</field>
<field name="view_id" ref="account.account_journal_view"/>
<field name="sequence_id" ref="account.sequence_journal"/>
<field name="user_id" ref="base.user_root"/>
<field name="update_posted" eval="True" />
<field name="entry_posted" eval="True" />
</record>
<record id="bank_journal" model="account.journal">
<field name="name">Banque CHF</field>
<field name="code">BCHF</field>
<field name="type">cash</field>
<field name="view_id" ref="account.account_journal_bank_view"/>
<field name="sequence_id" ref="account.sequence_journal"/>
<field name="user_id" ref="base.user_root"/>
<field name="update_posted" eval="True" />
<field name="entry_posted" eval="True" />
</record>
<record id="bank_euro_journal" model="account.journal">
<field name="name">Banque EUR</field>
<field name="code">BEUR</field>
<field name="type">cash</field>
<field name="view_id" ref="account.account_journal_bank_view"/>
<field name="sequence_id" ref="account.sequence_journal"/>
<field name="user_id" ref="base.user_root"/>
<field name="update_posted" eval="True" />
<field name="entry_posted" eval="True" />
<field name="currency" model="res.currency" search="[('name','=','EUR')]" />
</record>
<record id="petty_cash_journal" model="account.journal">
<field name="name">Caisse</field>
<field name="code">CAI</field>
<field name="type">cash</field>
<field name="view_id" ref="account.account_journal_bank_view"/>
<field name="sequence_id" ref="account.sequence_journal"/>
<field name="user_id" ref="base.user_root"/>
<field name="update_posted" eval="True" />
<field name="entry_posted" eval="True" />
</record>
<record id="misc_transaction_journal" model="account.journal">
<field name="name">Opérations Diverses</field>
<field name="code">OD</field>
<field name="type">general</field>
<field name="view_id" ref="account.account_journal_bank_view"/>
<field name="sequence_id" ref="account.sequence_journal"/>
<field name="user_id" ref="base.user_root"/>
<field name="update_posted" eval="True" />
<field name="entry_posted" eval="True" />
</record>
<record model="account.journal" id="bilan_journal">
<field name="name">Journal d'ouverture</field>
<field name="code">JO</field>
<field name="type">situation</field>
<field name="centralisation">True</field>
<field name="view_id" ref="account.account_journal_view"/>
<field name="sequence_id" ref="account.sequence_journal"/>
<field name="update_posted" eval="True" />
</record>
</data>
</openerp>

Binary file not shown.

After

Width:  |  Height:  |  Size: 82 KiB

View File

@ -0,0 +1,110 @@
<html>
<head>
<style type="text/css">
@font-face {
font-family: "bvrocrb";
font-style: normal;
font-weight: normal;
src: url(${police_absolute_path('ocrbb.ttf')}) format("truetype");
}
</style>
</head>
<body topmargin="0px">
<script type="text/javascript">
function sortfunction(a, b){
return (a.offsetTop - b.offsetTop) ;
}
function place_element2() {
//This script was done to be inserted in any document mono or multi page some rounding problem may appear on mor than 10 page long report
try{
//height of bvr in mm
var xpos = 105 + ${company.bvr_delta_horz or '0'};
//height of A4 page in bvr
var a4height = 297 ;
//should be insert a page
var insert_page = false; //will insert a blank page if true
// should we insert bvr background
var insert_bvrimg = ${str(company.bvr_background).lower()};
//horiz decalage
var vert_decalage = ${company.bvr_delta_vert or '0'};
// height of header
var headheight = ${headheight()};
//dpi resolution has found in wkhtmltopdf doc if you want to calculate it just create a div with one inch of width and retrieve is with in px
var res = 94;
//we retriev all the bvr frame on the dom
var els_node_list = document.getElementsByName('bvrframe');
//we put them on an array
var els = [];
for(var i=0, len = els_node_list.length; i < len; i++)
{
els.push(els_node_list[i]);
}
//we sort on y postiton values
els.sort(sortfunction);
for (var i=0; i<els.length; i++) {
var el = els[i];
var el_height_mm = el.offsetTop/(res/25.4);
// we insert the white page only if the BVR in not alleready on a separated page
//so we insert the white page only if the difference bettween the old posisition and the new posisition is < 297 mm
if(insert_page){
el_height_mm = el_height_mm + a4height;
}
if(el_height_mm % xpos){
var el_xpos = Math.ceil(el_height_mm/a4height)*a4height;
//We compute the page position of the a4 page on wich is the element.
// we substact the bvr height and the height of header*the number of pages and we add the vertical decalage
var ypos = (el_xpos-xpos)-(Math.ceil(el_height_mm/a4height)*headheight);
el.style.top = (ypos+vert_decalage)+"mm";
el.style.position = "absolute";
}
//This will propbely never happen but how knows ?
else {
var el_height_mm = el.offsetTop/(res/25.4);
el.style.top = (el_height_mm+vert_decalage)+"mm";
if(insert_page){
el.style.top = el.style.top + a4height
}
}
//we place the image if needed
if(insert_bvrimg){
img = document.getElementById("bvrimg_"+el.id);
img.style.top = el.style.top;
img.style.position = "absolute";
}
}
} catch(err){
//console.log(err)
//document.getElementById("debug").textContent = document.getElementById("debug").textContent +"<br/>"+'-ERROR-'+err;
}
}
window.onload=foo
function foo() {
place_element2();
}
</script>
${_check(objects)}
%for inv in objects :
<% setLang(inv.partner_id.lang) %>
<div id="cont_${inv.id}" style="padding-left:20mm;padding-top:0;padding-bottom:10;height:180mm">
<!-- Your communication message here -->
</div>
%if company.bvr_background:
<img name="bvrimg" id="bvrimg_${inv.id}" alt="bvr" src="${bvr_absolute_path()}" style="width:210mm;height:106mm;border:0;margin:0;position:absolute;top:0" />
%endif
<table name="bvrframe" id="${inv.id}" style="width:210mm;height:106mm;border-collapse:collapse;padding-left:3mm;font-family:Helvetica;font-size:8pt;border-width:0px" border="0" CELLPADDING="0" CELLSPACING="0"> <!--border-width:1px;border-style:solid;border-color:black;-->
<tr style="height:16.933333mm;vertical-align:bottom;padding-bottom:3mm"><td style="width:60.14mm;padding-bottom:3mm"><div style="padding-left:3mm;">${inv.partner_bank_id and inv.partner_bank_id.print_bank and inv.partner_bank_id.bank and inv.partner_bank_id.bank.name or ''}</div></td><td style="width:60.96mm;padding-bottom:3mm"><div style="padding-left:3mm;">${inv.partner_bank_id and inv.partner_bank_id.print_bank and inv.partner_bank_id.bank and inv.partner_bank_id.bank.name or ''}</div></td><td style="width:88.9mm"></td></tr>
<tr style="height:12.7mm;vertical-align:bottom;padding-bottom:3mm"><td style="width:60.14mm;padding-bottom:3mm"><div style="padding-left:3mm;"><b>${user.company_id.partner_id.name}</b></div></td><td style="width:60.96mm;padding-bottom:3mm"><div style="padding-left:3mm;"><b>${user.company_id.partner_id.name}</b></div></td><td style="width:88.9mm"></td></tr>
<tr style="height:16.933333mm;vertical-align:bottom;padding-bottom:0"><td><table style="padding-left:3mm;font-family:Helvetica;font-size:8pt" height="100%"><tr style="vertical-align:top;padding-bottom:0"><td>${user.company_id.partner_id.address[0].street}<br/> ${user.company_id.partner_id.address[0].zip} ${user.company_id.partner_id.address[0].city}</td></tr><tr style="vertical-align:bottom;padding-bottom:0"><td><div style="padding-left:30.48mm;">${inv.partner_bank_id.print_account and inv.partner_bank_id.bvr_number or ''}</div></td></tr></table></td><td style="padding-left:3mm"><table style="padding-left:3mm;font-family:Helvetica;font-size:8pt" height="100%"><tr style="vertical-align:top;padding-bottom:0"><td>${user.company_id.partner_id.address[0].street}<br/>${user.company_id.partner_id.address[0].zip} ${user.company_id.partner_id.address[0].city}</td></tr><tr style="vertical-align:bottom;padding-bottom:0"><td><div style="padding-left:30.48mm;">${inv.partner_bank_id.print_account and inv.partner_bank_id.bvr_number or ''}</div></td></tr></table></td><td style="text-align: right;padding-right:4mm;padding-bottom:8mm;font-size:11pt">${_space(_get_ref(inv))}</td></tr>
<tr style="height:8.4666667mm;vertical-align:bottom;padding-bottom:0"> <td><table style="width:100%" CELLPADDING="0" CELLSPACING="0"><td style="width:4mm"></td><td style="width:40mm;text-align: right" >${_space(('%.2f' % inv.amount_total)[:-3], 1)}</td><td style="width:6mm"></td><td style="width:10mm;text-align: right">${ _space(('%.2f' % inv.amount_total)[-2:], 1)}</td><td style="width:3mm;text-align: right"></td></table></td><td><table style="width:100%" CELLPADDING="0" CELLSPACING="0"><td style="width:4mm"></td><td style="width:40mm;text-align: right" >${_space(('%.2f' % inv.amount_total)[:-3], 1)}</td><td style="width:6mm"></td><td style="width:10mm;text-align: right">${ _space(('%.2f' % inv.amount_total)[-2:], 1)}</td><td style="width:3mm;text-align: right"></td></table></td><td></td></tr>
<tr style="height:21.166667mm"><td></td><td></td><td></td></tr>
<tr style="height:8.4666667mm"> <td></td><td></td><td></td></tr>
<tr style="height:21.166667mm;vertical-align:top"><td></td><td colspan="2" style="text-align:right;padding-right:0.3in;font-family:bvrocrb;font-size:12pt">${mod10r('01'+str('%.2f' % inv.amount_total).replace('.','').rjust(10,'0'))}&gt;${_get_ref(inv)}+${inv.partner_bank_id.bvr_number.split('-')[0]+(str(inv.partner_bank_id.bvr_number.split('-')[1])).rjust(6,'0')+inv.partner_bank_id.bvr_number.split('-')[2]}&gt;</td></tr>
</table>
%endfor
</body>
</html>

Binary file not shown.

After

Width:  |  Height:  |  Size: 224 KiB

View File

@ -0,0 +1,84 @@
<html>
<head>
<style type="text/css">
${css}
</style>
</head>
<body>
%for inv in objects :
<% setLang(inv.partner_id.lang) %>
<div id="inv_cont_${inv.id}" style="padding-left:20mm;padding-top:0;padding-bottom:10;border-width:0px;border-style:solid">
<table class="dest_address">
<tr><td ><b>${inv.partner_id.title or ''|entity} ${inv.partner_id.name |entity}</b></td></tr>
<tr><td>${inv.address_invoice_id.street or ''|entity}</td></tr>
<tr><td>${inv.address_invoice_id.street2 or ''|entity}</td></tr>
<tr><td>${inv.address_invoice_id.zip or ''|entity} ${inv.address_invoice_id.city or ''|entity}</td></tr>
%if inv.address_invoice_id.country_id :
<tr><td>${inv.address_invoice_id.country_id.name or ''|entity} </td></tr>
%endif
%if inv.address_invoice_id.phone :
<tr><td>${_("Tel")}: ${inv.address_invoice_id.phone|entity}</td></tr>
%endif
%if inv.address_invoice_id.fax :
<tr><td>${_("Fax")}: ${inv.address_invoice_id.fax|entity}</td></tr>
%endif
%if inv.address_invoice_id.email :
<tr><td>${_("E-mail")}: ${inv.address_invoice_id.email|entity}</td></tr>
%endif
%if inv.partner_id.vat :
<tr><td>${_("VAT")}: ${inv.partner_id.vat|entity}</td></tr>
%endif
</table>
<br />
%if inv.type == 'out_invoice' :
<span class="title">${_("Invoice")} ${inv.number or ''|entity}</span>
%elif inv.type == 'in_invoice' :
<span class="title">${_("Supplier Invoice")} ${inv.number or ''|entity}</span>
%elif inv.type == 'out_refund' :
<span class="title">${_("Refund")} ${inv.number or ''|entity}</span>
%elif inv.type == 'in_refund' :
<span class="title">${_("Supplier Refund")} ${inv.number or ''|entity}</span>
%endif
<br/>
<br/>
<table class="basic_table" width="90%">
<tr><td>${_("Document")}</td><td>${_("Invoice Date")}</td><td>${_("Partner Ref.")}</td></tr>
<tr><td>${inv.name}</td><td>${formatLang(inv.date_invoice, date=True)|entity}</td><td>&nbsp;</td></tr>
</table>
<h1><br /></h1>
<table class="list_table" width="90%">
<thead><tr><th>${_("Description")}</th><th class>${_("Taxes")}</th><th class>${_("QTY")}</th><th>${_("Unit Price")}</th><th >${_("Disc.(%)")}</th><th>${_("Price")}</th></tr></thead>
%for line in inv.invoice_line :
<tbody>
<tr><td>${line.name|entity}</td><td>${ ', '.join([ tax.name or '' for tax in line.invoice_line_tax_id ])|entity}</td><td>${line.quantity}</td><td style="text-align:right;">${formatLang(line.price_unit)}</td><td style="text-align:center;">${line.discount or 0.00}</td><td style="text-align:right;">${formatLang(line.price_subtotal)}</td></tr>
%if line.note :
<tr><td colspan="6" style="border-style:none"><pre style="font-family:Helvetica;padding-left:20px">${line.note |entity}</pre></td></tr>
%endif
%endfor
<tr><td style="border-style:none"/><td style="border-style:none"/><td style="border-style:none"/><td style="border-style:none"/><td style="border-top:2px solid"><b>Net Total:</b></td><td style="border-top:2px solid;text-align:right">${formatLang(inv.amount_untaxed)}</td></tr>
<tr><td style="border-style:none"/><td style="border-style:none"/><td style="border-style:none"/><td style="border-style:none"/><td style="border-style:none"><b>Taxes:</b></td><td style="text-align:right">${formatLang(inv.amount_tax)}</td></tr>
<tr><td style="border-style:none"/><td style="border-style:none"/><td style="border-style:none"/><td style="border-style:none"/><td style="border-top:2px solid"><b>Total:</b></td><td style="border-top:2px solid;text-align:right">${formatLang(inv.amount_total)}</td></tr>
</tbody>
</table>
<table class="list_table" width="40%">
<tr><th>Tax</th><th>${_("Base")}</th><th>${_("Amount")}</th></tr>
%if inv.tax_line :
%for t in inv.tax_line :
<tr>
<td>${ t.name|entity } </td>
<td>${ t.base|entity}</td>
<td>${ formatLang(t.amount) }</td>
</tr>
%endfor
%endif
<tr>
<td style="border-style:none"/>
<td style="border-top:2px solid"><b>${_("Total")}</b></td>
<td style="border-top:2px solid">${ formatLang(inv.amount_tax) }</td>
</tr>
</table>
</div>
%endfor
</body>
</html>

View File

@ -0,0 +1,265 @@
# -*- encoding: utf-8 -*-
##############################################################################
#
# Author: Nicolas Bessi. Copyright Camptocamp SA
# Donors: Hasa Sàrl, Open Net Sàrl and Prisme Solutions Informatique SA
#
# 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 <http://www.gnu.org/licenses/>.
#
##############################################################################
import time
from report import report_sxw
from report_webkit import webkit_report
from report_webkit import report_helper
from osv import osv
from tools import mod10r
import sys
import os
import re
import wizard
import addons
import pooler
from tools.config import config
from mako.template import Template
class l10n_ch_report_webkit_html(report_sxw.rml_parse):
def __init__(self, cr, uid, name, context):
super(l10n_ch_report_webkit_html, self).__init__(cr, uid, name, context=context)
self.localcontext.update({
'time': time,
'cr':cr,
'uid': uid,
'user':self.pool.get("res.users").browse(cr, uid, uid),
'mod10r': mod10r,
'_space': self._space,
'_get_ref': self._get_ref,
'comma_me': self.comma_me,
'police_absolute_path' : self.police_absolute_path,
'bvr_absolute_path':self.bvr_absolute_path,
'_check' : self._check,
'headheight': self.headheight
})
#will be fixed in 5.0.10
def police_absolute_path(self, inner_path) :
"""Will get the ocrb police absolute path"""
path = addons.get_module_resource('l10n_ch/report/'+inner_path)
return path
def bvr_absolute_path(self) :
"""Will get the ocrb police absolute path"""
path = addons.get_module_resource('l10n_ch/report/bvr1.jpg')
return path
def headheight(self):
report_id = self.pool.get('ir.actions.report.xml').search(self.cr, self.uid, [('name','=', 'BVR invoice')])[0]
report = self.pool.get('ir.actions.report.xml').browse(self.cr, self.uid, report_id)
return report.webkit_header.margin_top
def comma_me(self, amount):
"""Fast swiss number formatting"""
if type(amount) is float :
amount = str('%.2f'%amount)
else :
amount = str(amount)
orig = amount
new = re.sub("^(-?\d+)(\d{3})", "\g<1>'\g<2>", amount)
if orig == new:
return new
else:
return self.comma_me(new)
def _space(self, nbr, nbrspc=5):
"""Spaces * 5"""
res = ''
for i in range(len(nbr)):
res = res + nbr[i]
if not (i-1) % nbrspc:
res = res + ' '
return res
def _get_ref(self, inv):
"""Retrieve ESR/BVR reference form invoice in order to print it"""
res = ''
if inv.partner_bank_id.bvr_adherent_num:
res = inv.partner_bank_id.bvr_adherent_num
invoice_number = ''
if inv.number:
invoice_number = re.sub('[^0-9]', '', inv.number)
return mod10r(res + invoice_number.rjust(26-len(res), '0'))
def _check(self, invoices):
"""Check if the invoice is ready to be printed"""
cursor = self.cr
pool = self.pool
invoice_obj = pool.get('account.invoice')
ids = [x.id for x in invoices]
for invoice in invoice_obj.browse(cursor, self.uid, ids):
if not invoice.partner_bank_id:
raise wizard.except_wizard('UserError',
'No bank specified on invoice:\n' + \
invoice_obj.name_get(cursor, self.uid, [invoice.id],
context={})[0][1])
if not re.compile('[0-9][0-9]-[0-9]{3,6}-[0-9]').match(
invoice.partner_bank_id.bvr_number or ''):
raise wizard.except_wizard('UserError',
"Your bank BVR number should be of the form 0X-XXX-X! " +
'Please check your company ' +
'information for the invoice:\n' +
invoice_obj.name_get(cursor, self.uid, [invoice.id],
context={})[0][1])
if invoice.partner_bank_id.bvr_adherent_num \
and not re.compile('[0-9]*$').match(
invoice.partner_bank_id.bvr_adherent_num):
raise wizard.except_wizard('UserError',
'Your bank BVR adherent number must contain exactly seven' +
'digits!\nPlease check your company ' +
'information for the invoice:\n' +
invoice_obj.name_get(cursor, self.uid, [invoice.id],
context={})[0][1])
return ""
class BVRWebKitParser(webkit_report.WebKitParser):
def create_single_pdf(self, cursor, uid, ids, data, report_xml, context=None):
"""generate the PDF"""
self.parser_instance = self.parser(
cursor,
uid,
self.name2,
context=context
)
self.pool = pooler.get_pool(cursor.dbname)
objs = self.getObjects(cursor, uid, ids, context)
self.parser_instance.set_context(objs, data, ids, report_xml.report_type)
template = False
if report_xml.report_file :
path = addons.get_module_resource(report_xml.report_file)
if os.path.exists(path) :
template = file(path).read()
if not template and report_xml.report_webkit_data :
template = report_xml.report_webkit_data
if not template :
raise except_osv(_('Webkit Report template not found !'), _(''))
header = report_xml.webkit_header.html
footer = report_xml.webkit_header.footer_html
if not header and report_xml.header:
raise except_osv(
_('No header defined for this Webkit report!'),
_('Please set a header in company settings')
)
if not report_xml.header :
#I know it could be cleaner ...
header = u"""
<html>
<head>
<style type="text/css">
${css}
</style>
<script>
function subst() {
var vars={};
var x=document.location.search.substring(1).split('&');
for(var i in x) {var z=x[i].split('=',2);vars[z[0]] = unescape(z[1]);}
var x=['frompage','topage','page','webpage','section','subsection','subsubsection'];
for(var i in x) {
var y = document.getElementsByClassName(x[i]);
for(var j=0; j<y.length; ++j) y[j].textContent = vars[x[i]];
}
}
</script>
</head>
<body style="border:0; margin: 0;" onload="subst()">
</body>
</html>"""
css = report_xml.webkit_header.css
if not css :
css = ''
user = self.pool.get('res.users').browse(cursor, uid, uid)
company= user.company_id
parse_template = template
#default_filters=['unicode', 'entity'] can be used to set global filter
body_mako_tpl = Template(parse_template ,input_encoding='utf-8')
#BVR specific
bvr_path = addons.get_module_resource('l10n_ch/report/bvr.mako')
body_bvr_tpl = Template(file(bvr_path).read(), input_encoding='utf-8')
helper = report_helper.WebKitHelper(cursor, uid, report_xml.id, context)
##BVR Specific
htmls = []
for obj in objs :
self.parser_instance.localcontext['objects'] = [obj]
if not company.bvr_only:
html = body_mako_tpl.render(
helper=helper,
css=css,
_=self.translate_call,
**self.parser_instance.localcontext
)
htmls.append(html)
if not company.invoice_only:
bvr = body_bvr_tpl.render(
helper=helper,
css=css,
_=self.translate_call,
**self.parser_instance.localcontext
)
htmls.append(bvr)
head_mako_tpl = Template(header, input_encoding='utf-8')
head = head_mako_tpl.render(
company=company,
time=time,
helper=helper,
css=css,
formatLang=self.parser_instance.formatLang,
setLang=self.parser_instance.setLang,
_debug=False
)
foot = False
if footer and company.invoice_only :
foot_mako_tpl = Template(footer ,input_encoding='utf-8')
foot = foot_mako_tpl.render(
company=company,
time=time,
helper=helper,
css=css,
formatLang=self.parser_instance.formatLang,
setLang=self.parser_instance.setLang,
_=self.translate_call,
)
if report_xml.webkit_debug :
deb = head_mako_tpl.render(
company=company,
time=time,
helper=helper,
css=css,
_debug=html,
formatLang=self.parser_instance.formatLang,
setLang=self.parser_instance.setLang,
_=self.translate_call,
)
return (deb, 'html')
bin = self.get_lib(cursor, uid, company.id)
pdf = self.generate_pdf(bin, report_xml, head, foot, htmls)
return (pdf, 'pdf')
BVRWebKitParser('report.invoice_web_bvr',
'account.invoice',
'addons/l10n_ch/report/report_webkit_html.mako',
parser=l10n_ch_report_webkit_html)

View File

@ -0,0 +1,162 @@
<?xml version="1.0" encoding="utf-8"?>
<openerp>
<data>
<record id="ir_header_webkit_bvr_invoice0" model="ir.header_webkit">
<field eval="&quot;&quot;&quot;Portrait&quot;&quot;&quot;" name="orientation"/>
<field eval="&quot;&quot;&quot;A4&quot;&quot;&quot;" name="format"/>
<field name="html"><![CDATA[<html>
<head>
<script>
function subst() {
var vars={};
var x=document.location.search.substring(1).split('&');
for(var i in x) {var z=x[i].split('=',2);vars[z[0]] = unescape(z[1]);}
var x=['frompage','topage','page','webpage','section','subsection','subsubsection'];
for(var i in x) {
var y = document.getElementsByClassName(x[i]);
for(var j=0; j<y.length; ++j) y[j].textContent = vars[x[i]];
}
}
</script>
<style type="text/css">
${css}
</style>
</head>
<body style="border:0; margin: 0;" onload="subst()">
<table class="header" style="border-bottom: 0px solid black; width: 100%;padding-left:20mm">
<tr style="vertical-align:top" >
<td>${helper.embed_logo_by_name('camptocamp_logo', width=64)}</td>
<td style="text-align:right">
<table style="border-top: 0px solid black; width: 100%;height:100%">
<tr style="vertical-align:top">
<td style="text-align:right;font-size:12" width="80%"><span class="page"/></td><td style="text-align:left;font-size:12;"> / <span class="topage"/></td>
</tr>
</table> </td>
</tr>
<tr>
<td><br/></td>
<td style="text-align:right"> </td>
</tr>
<tr>
<td>${company.partner_id.name |entity}</td>
<td/>
</tr>
<tr>
<td >${company.partner_id.address and company.partner_id.address[0].street or ''|entity}</td>
<td/>
</tr>
<tr>
<td>Phone: ${company.partner_id.address and company.partner_id.address[0].phone or ''|entity} </td>
<td/>
</tr>
<tr>
<td>Mail: <a href="mailto:${company.partner_id.address and company.partner_id.address[0].email or ''|entity}">${company.partner_id.address and company.partner_id.address[0].email or ''|entity}</a><br/></td>
</tr>
</table> ${_debug or ''} <br/></body>
</html>]]>
</field>
<field eval="45" name="margin_top"/>
<field eval="0.01" name="margin_bottom"/>
<field eval="0.01" name="margin_left"/>
<field eval="0.01" name="margin_right"/>
<field name="css" ><![CDATA[
body {
font-family:helvetica;
font-size:12;
}
.dest_address {
margin-left:60%;
font-size:12;
}
.header {
margin-left:0;
text-align:left;
width:300px;
font-size:12;
}
.title {
font-size:16;
font-weight: bold;
}
.basic_table{
text-align:center;
border:1px solid lightGrey;
border-collapse: collapse;
}
.basic_table td {
border:1px solid lightGrey;
font-size:12;
}
.list_table {
border-color:black;
text-align:center;
border-collapse: collapse;
}
.list_table td {
border-color:gray;
border-top:1px solid gray;
text-align:left;
font-size:12;
padding-right:3px
padding-left:3px
padding-top:3px
padding-bottom:3px
}
.list_table th {
border-bottom:2px solid black;
text-align:left;
font-size:12;
font-weight:bold;
padding-right:3px
padding-left:3px
}
.list_tabe thead {
display:table-header-group;
}
.total {
width:100%;
}
.lib {
width:10.3%;
}
.tot {
text-align:right;
width:15%;
}
.lefttot {
width:74%;
}
.tax {
width:50%;
}]]></field>
<field eval="&quot;&quot;&quot;BVR header&quot;&quot;&quot;" name="name"/>
</record>
<report auto="True"
id="report_bvr_invoice_html"
model="account.invoice"
name="invoice_web_bvr"
file="l10n_ch/report/report_webkit_html.mako"
string="BVR invoice"
report_type="webkit"
/>
<record id="l10n_ch.report_bvr_invoice_html" model="ir.actions.report.xml">
<field name="webkit_header" ref="ir_header_webkit_bvr_invoice0" />
</record>
</data>
</openerp>

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,36 @@
<?xml version="1.0" encoding="UTF-8"?>
<openerp>
<data noupdate="True">
<!-- journal configuration of account -->
<record id="expenses_journal" model="account.journal">
<field name="default_debit_account_id" model="account.account" search="[('code','=', '4200')]" />
<field name="default_credit_account_id" model="account.account" search="[('code','=', '4200')]" />
</record>
<record id="bank_journal" model="account.journal">
<field name="default_debit_account_id" model="account.account" search="[('code','=', '1020')]"/>
<field name="default_credit_account_id" model="account.account" search="[('code','=', '1020')]"/>
</record>
<record id="bank_euro_journal" model="account.journal">
<field name="default_debit_account_id" model="account.account" search="[('code','=', '1024')]"/>
<field name="default_credit_account_id" model="account.account" search="[('code','=', '1024')]"/>
</record>
<record id="petty_cash_journal" model="account.journal">
<field name="default_debit_account_id" model="account.account" search="[('code','=', '1000')]"/>
<field name="default_credit_account_id" model="account.account" search="[('code','=', '1000')]"/>
</record>
<record id="misc_transaction_journal" model="account.journal">
<field name="default_debit_account_id" eval="False"/>
<field name="default_credit_account_id" eval="False"/>
</record>
<record model="account.journal" id="bilan_journal">
<field name="default_debit_account_id" model="account.account" search="[('code','=', '2991')]"/>
<field name="default_credit_account_id" model="account.account" search="[('code','=', '2991')]"/>
</record>
</data>
</openerp>

View File

@ -0,0 +1,118 @@
<openerp>
<data>
<!-- Fiscal Position Templates -->
<record id="fiscal_position_template_import" model="account.fiscal.position.template">
<field name="name">Import/Export</field>
<field name="chart_template_id" ref="l10nch_chart_template"/>
</record>
<record id="fiscal_position_tax_template_1" model="account.fiscal.position.tax.template">
<field name="position_id" ref="fiscal_position_template_import" />
<field name="tax_src_id" ref="vat_24_purchase" />
<field name="tax_dest_id" ref="vat_O_import" />
</record>
<record id="fiscal_position_tax_template_2" model="account.fiscal.position.tax.template">
<field name="position_id" ref="fiscal_position_template_import" />
<field name="tax_src_id" ref="vat_24_invest" />
<field name="tax_dest_id" ref="vat_O_import" />
</record>
<record id="fiscal_position_tax_template_3" model="account.fiscal.position.tax.template">
<field name="position_id" ref="fiscal_position_template_import" />
<field name="tax_src_id" ref="vat_25_purchase" />
<field name="tax_dest_id" ref="vat_O_import" />
</record>
<record id="fiscal_position_tax_template_4" model="account.fiscal.position.tax.template">
<field name="position_id" ref="fiscal_position_template_import" />
<field name="tax_src_id" ref="vat_25_invest" />
<field name="tax_dest_id" ref="vat_O_import" />
</record>
<record id="fiscal_position_tax_template_5" model="account.fiscal.position.tax.template">
<field name="position_id" ref="fiscal_position_template_import" />
<field name="tax_src_id" ref="vat_36_purchase" />
<field name="tax_dest_id" ref="vat_O_import" />
</record>
<record id="fiscal_position_tax_template_6" model="account.fiscal.position.tax.template">
<field name="position_id" ref="fiscal_position_template_import" />
<field name="tax_src_id" ref="vat_36_invest" />
<field name="tax_dest_id" ref="vat_O_import" />
</record>
<record id="fiscal_position_tax_template_7" model="account.fiscal.position.tax.template">
<field name="position_id" ref="fiscal_position_template_import" />
<field name="tax_src_id" ref="vat_38_purchase" />
<field name="tax_dest_id" ref="vat_O_import" />
</record>
<record id="fiscal_position_tax_template_8" model="account.fiscal.position.tax.template">
<field name="position_id" ref="fiscal_position_template_import" />
<field name="tax_src_id" ref="vat_38_invest" />
<field name="tax_dest_id" ref="vat_O_import" />
</record>
<record id="fiscal_position_tax_template_9" model="account.fiscal.position.tax.template">
<field name="position_id" ref="fiscal_position_template_import" />
<field name="tax_src_id" ref="vat_76_purchase" />
<field name="tax_dest_id" ref="vat_O_import" />
</record>
<record id="fiscal_position_tax_template_10" model="account.fiscal.position.tax.template">
<field name="position_id" ref="fiscal_position_template_import" />
<field name="tax_src_id" ref="vat_76_invest" />
<field name="tax_dest_id" ref="vat_O_import" />
</record>
<record id="fiscal_position_tax_template_11" model="account.fiscal.position.tax.template">
<field name="position_id" ref="fiscal_position_template_import" />
<field name="tax_src_id" ref="vat_80_purchase" />
<field name="tax_dest_id" ref="vat_O_import" />
</record>
<record id="fiscal_position_tax_template_12" model="account.fiscal.position.tax.template">
<field name="position_id" ref="fiscal_position_template_import" />
<field name="tax_src_id" ref="vat_80_invest" />
<field name="tax_dest_id" ref="vat_O_import" />
</record>
<record id="fiscal_position_tax_template_13" model="account.fiscal.position.tax.template">
<field name="position_id" ref="fiscal_position_template_import" />
<field name="tax_src_id" ref="vat_24" />
<field name="tax_dest_id" ref="vat_XO" />
</record>
<record id="fiscal_position_tax_template_14" model="account.fiscal.position.tax.template">
<field name="position_id" ref="fiscal_position_template_import" />
<field name="tax_src_id" ref="vat_25" />
<field name="tax_dest_id" ref="vat_XO" />
</record>
<record id="fiscal_position_tax_template_15" model="account.fiscal.position.tax.template">
<field name="position_id" ref="fiscal_position_template_import" />
<field name="tax_src_id" ref="vat_36" />
<field name="tax_dest_id" ref="vat_XO" />
</record>
<record id="fiscal_position_tax_template_16" model="account.fiscal.position.tax.template">
<field name="position_id" ref="fiscal_position_template_import" />
<field name="tax_src_id" ref="vat_38" />
<field name="tax_dest_id" ref="vat_XO" />
</record>
<record id="fiscal_position_tax_template_17" model="account.fiscal.position.tax.template">
<field name="position_id" ref="fiscal_position_template_import" />
<field name="tax_src_id" ref="vat_76" />
<field name="tax_dest_id" ref="vat_XO" />
</record>
<record id="fiscal_position_tax_template_18" model="account.fiscal.position.tax.template">
<field name="position_id" ref="fiscal_position_template_import" />
<field name="tax_src_id" ref="vat_80" />
<field name="tax_dest_id" ref="vat_XO" />
</record>
</data>
</openerp>

View File

@ -0,0 +1,324 @@
<openerp>
<data noupdate="1">
<!-- SOME DATA IN THIS FILE ARE DUPLICATED ON VAT2011.XML IT WILL ALLOWS EASY FUTURE REMOVAL OF THIS FILE IN 2012 2013. -->
<!-- SOME UNUSED TAX CODE ARE STILL KEPT IN ORDER TO ALLOW MORE EASY MIGRATION FORM V5 -->
<record model="account.tax.code.template" id="vat_code_balance_net">
<field name="name">Solde de TVA a payer a l'AFC</field>
<field name="code">500</field>
<field name="parent_id" ref="vat_code_chart_root"/>
</record>
<record model="account.tax.code.template" id="vat_code_due_tva">
<field name="name">TVA Due </field>
<field name="code">399</field>
<field name="parent_id" ref="vat_code_balance_net"/>
</record>
<record model="account.tax.code.template" id="vat_code_due_tva76">
<field name="name">TVA due a 7.6% (TN)</field>
<field name="code">300b</field>
<field name="parent_id" ref="vat_code_due_tva"/>
</record>
<record model="account.tax.code.template" id="vat_code_due_tva24">
<field name="name">TVA due a 2.4% (TR)</field>
<field name="code">310b</field>
<field name="parent_id" ref="vat_code_due_tva"/>
</record>
<record model="account.tax.code.template" id="vat_code_due_tva36">
<field name="name">TVA due a 3.6% (TS)</field>
<field name="code">340b</field>
<field name="parent_id" ref="vat_code_due_tva"/>
</record>
<record model="account.tax.code.template" id="vat_code_payable">
<field name="name">TVA préalable sur acquisitions (a récupérer)</field>
<field name="code">479</field>
<field name="parent_id" ref="vat_code_balance_net"/>
</record>
<record model="account.tax.code.template" id="vat_code_payable_bs">
<field name="name">TVA préalable sur biens et services</field>
<field name="code">400</field>
<field name="parent_id" ref="vat_code_payable"/>
</record>
<record model="account.tax.code.template" id="vat_code_payable_invest">
<field name="name">TVA préalable sur invest. et autres ch.</field>
<field name="code">405</field>
<field name="parent_id" ref="vat_code_payable"/>
</record>
<record model="account.tax.code.template" id="vat_code_base_net">
<field name="name">Base de calcul de TVA</field>
<field name="code"/>
<field name="parent_id" ref="vat_code_chart_root"/>
</record>
<record model="account.tax.code.template" id="vat_code_base_ca_total">
<field name="name">Chiffre d'affaires - total</field>
<field name="code">200</field>
<field name="parent_id" ref="vat_code_base_net"/>
</record>
<record model="account.tax.code.template" id="vat_code_base_due">
<field name="name">Chiffre d'affaires imposable</field>
<field name="code">299</field>
<field name="parent_id" ref="vat_code_base_ca_total"/>
</record>
<record model="account.tax.code.template" id="vat_code_due_76">
<field name="name">Chiffre d'affaires imposable a 7.6% (TN)</field>
<field name="code">300a</field>
<field name="parent_id" ref="vat_code_base_due"/>
</record>
<record model="account.tax.code.template" id="vat_code_due_24">
<field name="name">Chiffre d'affaires imposable a 2.4% (TR)</field>
<field name="code">310a</field>
<field name="parent_id" ref="vat_code_base_due"/>
</record>
<record model="account.tax.code.template" id="vat_code_due_36">
<field name="name">Chiffre d'affaires imposable a 3.6% (TS)</field>
<field name="code">340a</field>
<field name="parent_id" ref="vat_code_base_due"/>
</record>
<record model="account.tax.code.template" id="vat_code_due_0">
<field name="name">Chiffre d'affaires imposable a 0% (export)</field>
<field name="code">200-220</field>
<field name="parent_id" ref="vat_code_base_ca_total"/>
</record>
<record model="account.tax.code.template" id="vat_code_due_0_exclu">
<field name="name">Chiffre d'affaires non-imposable a 0% (exclu)</field>
<field name="code">200-230</field>
<field name="parent_id" ref="vat_code_base_ca_total"/>
</record>
<record model="account.tax.code.template" id="vat_code_receivable_net">
<field name="name">Acquisition - total</field>
<field name="code"/>
<field name="parent_id" ref="vat_code_base_net"/>
</record>
<record model="account.tax.code.template" id="vat_code_receivable_base">
<field name="name">Acquisition de biens et services</field>
<field name="code"/>
<field name="parent_id" ref="vat_code_receivable_net"/>
</record>
<record model="account.tax.code.template" id="vat_code_receivable_base_0">
<field name="name">Acquisition de biens et services a 0%</field>
<field name="code"/>
<field name="parent_id" ref="vat_code_receivable_base"/>
</record>
<record model="account.tax.code.template" id="vat_code_receivable_base_76">
<field name="name">Acquisition de biens et services a 7.6% (TN)</field>
<field name="code"/>
<field name="parent_id" ref="vat_code_receivable_base"/>
</record>
<record model="account.tax.code.template" id="vat_code_receivable_base_24">
<field name="name">Acquisition de biens et services a 2.4% (TR)</field>
<field name="code"/>
<field name="parent_id" ref="vat_code_receivable_base"/>
</record>
<record model="account.tax.code.template" id="vat_code_receivable_base_36">
<field name="name">Acquisition de biens et services a 3.6% (TS)</field>
<field name="code"/>
<field name="parent_id" ref="vat_code_receivable_base"/>
</record>
<record model="account.tax.code.template" id="vat_code_receivable_base_24_50%">
<field name="name">Acquisition de biens et services a 2.4% récup. à 50% (TR)</field>
<field name="code"/>
<field name="parent_id" ref="vat_code_receivable_base"/>
</record>
<record model="account.tax.code.template" id="vat_code_receivable_base_76_50%">
<field name="name">Acquisition de biens et services a 7.6% récup. à 50% (TN)</field>
<field name="code"/>
<field name="parent_id" ref="vat_code_receivable_base"/>
</record>
<record model="account.tax.code.template" id="vat_code_receivable_base_36_50%">
<field name="name">Acquisition de biens et services a 3.6% récup. à 50% (TS)</field>
<field name="code"/>
<field name="parent_id" ref="vat_code_receivable_base"/>
</record>
<record model="account.tax.code.template" id="vat_code_receivable_base_invest">
<field name="name">Acquisition de biens d'invest. et autres charges</field>
<field name="code"/>
<field name="parent_id" ref="vat_code_receivable_net"/>
</record>
<record model="account.tax.code.template" id="vat_code_receivable_base_invest76">
<field name="name">Acquisition de biens d'invest. et autres charges a 7.6% (TN)</field>
<field name="code"/>
<field name="parent_id" ref="vat_code_receivable_base_invest"/>
</record>
<record model="account.tax.code.template" id="vat_code_receivable_base_invest24">
<field name="name">Acquisition de biens d'invest. et autres charges a 2.4% (TR)</field>
<field name="code"/>
<field name="parent_id" ref="vat_code_receivable_base_invest"/>
</record>
<record model="account.tax.code.template" id="vat_code_receivable_base_invest36">
<field name="name">Acquisition de biens d'invest. et autres charges a 3.6% (TS)</field>
<field name="code"/>
<field name="parent_id" ref="vat_code_receivable_base_invest"/>
</record>
<!--
# TVA - Taxe sur la Valeur Ajoutée
-->
<record model="account.tax.template" id="vat_24">
<field name="name">TVA due a 2.4% (TR)</field>
<field name="amount" eval="0.024"/>
<field name="type">percent</field>
<field name="base_code_id" ref="vat_code_due_24"/>
<field name="tax_code_id" ref="vat_code_due_tva24"/>
<field name="ref_base_code_id" ref="vat_code_due_24"/>
<field name="ref_tax_code_id" ref="vat_code_due_tva24"/>
<field name="base_sign" eval="1.0"/>
<field name="tax_sign" eval="1.0"/>
<field name="ref_base_sign" eval="-1.0"/>
<field name="ref_tax_sign" eval="-1.0"/>
<field name="chart_template_id" ref="l10nch_chart_template"/>
<field name="account_collected_id" ref="ch_1170"/>
<field name="account_paid_id" ref="ch_1170"/>
<field name="type_tax_use">sale</field>
</record>
<record model="account.tax.template" id="vat_24_purchase">
<field name="name">TVA 2.4% sur achat B&amp;S (TR)</field>
<field name="amount" eval="0.024"/>
<field name="type">percent</field>
<field name="base_code_id" ref="vat_code_receivable_base_24"/>
<field name="tax_code_id" ref="vat_code_payable_bs"/>
<field name="ref_base_code_id" ref="vat_code_receivable_base_24"/>
<field name="ref_tax_code_id" ref="vat_code_payable_bs"/>
<field name="python_compute">result = round((price_unit * 0.024) / 0.05) * 0.05</field>
<field name="python_compute_inv">result = round((price_unit * ( 1 - (1 / 1.024))) / 0.05) * 0.05</field>
<field name="base_sign" eval="-1.0"/>
<field name="tax_sign" eval="-1.0"/>
<field name="ref_base_sign" eval="1.0"/>
<field name="ref_tax_sign" eval="1.0"/>
<field name="chart_template_id" ref="l10nch_chart_template"/>
<field name="type_tax_use">purchase</field>
<field name="account_collected_id" ref="ch_1171"/>
<field name="account_paid_id" ref="ch_1171"/>
</record>
<record model="account.tax.template" id="vat_24_invest">
<field name="name">TVA 2.4% sur invest. et autres ch. (TR)</field>
<field name="amount" eval="0.024"/>
<field name="type">percent</field>
<field name="base_code_id" ref="vat_code_receivable_base_invest24"/>
<field name="tax_code_id" ref="vat_code_payable_invest"/>
<field name="ref_base_code_id" ref="vat_code_receivable_base_invest24"/>
<field name="ref_tax_code_id" ref="vat_code_payable_invest"/>
<field name="python_compute">result = round((price_unit * 0.024) / 0.05) * 0.05</field>
<field name="python_compute_inv">result = round((price_unit * ( 1 - (1 / 1.024))) / 0.05) * 0.05</field>
<field name="base_sign" eval="-1.0"/>
<field name="tax_sign" eval="-1.0"/>
<field name="ref_base_sign" eval="1.0"/>
<field name="ref_tax_sign" eval="1.0"/>
<field name="chart_template_id" ref="l10nch_chart_template"/>
<field name="type_tax_use">purchase</field>
<field name="account_collected_id" ref="ch_1171"/>
<field name="account_paid_id" ref="ch_1171"/>
</record>
<record model="account.tax.template" id="vat_36">
<field name="name">TVA due a 3.6% (TS)</field>
<field name="amount" eval="0.036"/>
<field name="type">percent</field>
<field name="base_code_id" ref="vat_code_due_36"/>
<field name="tax_code_id" ref="vat_code_due_tva36"/>
<field name="ref_base_code_id" ref="vat_code_due_36"/>
<field name="ref_tax_code_id" ref="vat_code_due_tva36"/>
<field name="python_compute">result = round((price_unit * 0.036) / 0.05) * 0.05</field>
<field name="python_compute_inv">result = round((price_unit * ( 1 - (1 / 1.036))) / 0.05) * 0.05</field>
<field name="base_sign" eval="1.0"/>
<field name="tax_sign" eval="1.0"/>
<field name="ref_base_sign" eval="-1.0"/>
<field name="ref_tax_sign" eval="-1.0"/>
<field name="chart_template_id" ref="l10nch_chart_template"/>
<field name="type_tax_use">sale</field>
<field name="account_collected_id" ref="ch_1170"/>
<field name="account_paid_id" ref="ch_1170"/>
</record>
<record model="account.tax.template" id="vat_36_purchase">
<field name="name">TVA 3.6% sur achat B&amp;S (TS)</field>
<field name="amount" eval="0.036"/>
<field name="type">percent</field>
<field name="base_code_id" ref="vat_code_receivable_base_36"/>
<field name="tax_code_id" ref="vat_code_payable_bs"/>
<field name="ref_base_code_id" ref="vat_code_receivable_base_36"/>
<field name="ref_tax_code_id" ref="vat_code_payable_bs"/>
<field name="python_compute">result = round((price_unit * 0.036) / 0.05) * 0.05</field>
<field name="python_compute_inv">result = round((price_unit * ( 1 - (1 / 1.036))) / 0.05) * 0.05</field>
<field name="base_sign" eval="-1.0"/>
<field name="tax_sign" eval="-1.0"/>
<field name="ref_base_sign" eval="1.0"/>
<field name="ref_tax_sign" eval="1.0"/>
<field name="chart_template_id" ref="l10nch_chart_template"/>
<field name="type_tax_use">purchase</field>
<field name="account_collected_id" ref="ch_1171"/>
<field name="account_paid_id" ref="ch_1171"/>
</record>
<record model="account.tax.template" id="vat_36_invest">
<field name="name">TVA 3.6% sur invest. et autres ch. (TS)</field>
<field name="amount" eval="0.036"/>
<field name="type">percent</field>
<field name="base_code_id" ref="vat_code_receivable_base_invest36"/>
<field name="tax_code_id" ref="vat_code_payable_invest"/>
<field name="ref_base_code_id" ref="vat_code_receivable_base_invest36"/>
<field name="ref_tax_code_id" ref="vat_code_payable_invest"/>
<field name="python_compute">result = round((price_unit * 0.036) / 0.05) * 0.05</field>
<field name="python_compute_inv">result = round((price_unit * ( 1 - (1 / 1.036))) / 0.05) * 0.05</field>
<field name="base_sign" eval="-1.0"/>
<field name="tax_sign" eval="-1.0"/>
<field name="ref_base_sign" eval="1.0"/>
<field name="ref_tax_sign" eval="1.0"/>
<field name="chart_template_id" ref="l10nch_chart_template"/>
<field name="type_tax_use">purchase</field>
<field name="account_collected_id" ref="ch_1171"/>
<field name="account_paid_id" ref="ch_1171"/>
</record>
<record model="account.tax.template" id="vat_76">
<field name="name">TVA due a 7.6% (TN)</field>
<field name="amount" eval="0.076"/>
<field name="type">percent</field>
<field name="base_code_id" ref="vat_code_due_76"/>
<field name="tax_code_id" ref="vat_code_due_tva76"/>
<field name="ref_base_code_id" ref="vat_code_due_76"/>
<field name="ref_tax_code_id" ref="vat_code_due_tva76"/>
<field name="python_compute">result = round((price_unit * 0.076) / 0.05) * 0.05</field>
<field name="python_compute_inv">result = round((price_unit * ( 1 - (1 / 1.076))) / 0.05) * 0.05</field>
<field name="base_sign" eval="1.0"/>
<field name="tax_sign" eval="1.0"/>
<field name="ref_base_sign" eval="-1.0"/>
<field name="ref_tax_sign" eval="-1.0"/>
<field name="chart_template_id" ref="l10nch_chart_template"/>
<field name="type_tax_use">sale</field>
<field name="account_collected_id" ref="ch_1170"/>
<field name="account_paid_id" ref="ch_1170"/>
</record>
<record model="account.tax.template" id="vat_76_purchase">
<field name="name">TVA 7.6% sur achat B&amp;S</field>
<field name="amount" eval="0.076"/>
<field name="type">percent</field>
<field name="base_code_id" ref="vat_code_receivable_base_76"/>
<field name="tax_code_id" ref="vat_code_payable_bs"/>
<field name="ref_base_code_id" ref="vat_code_receivable_base_76"/>
<field name="ref_tax_code_id" ref="vat_code_payable_bs"/>
<field name="python_compute">result = round((price_unit * 0.076) / 0.05) * 0.05</field>
<field name="python_compute_inv">result = round((price_unit * ( 1 - (1 / 1.076))) / 0.05) * 0.05</field>
<field name="base_sign" eval="-1.0"/>
<field name="tax_sign" eval="-1.0"/>
<field name="ref_base_sign" eval="1.0"/>
<field name="ref_tax_sign" eval="1.0"/>
<field name="chart_template_id" ref="l10nch_chart_template"/>
<field name="type_tax_use">purchase</field>
<field name="account_collected_id" ref="ch_1171"/>
<field name="account_paid_id" ref="ch_1171"/>
</record>
<record model="account.tax.template" id="vat_76_invest">
<field name="name">TVA 7.6% sur invest. et autres ch. (TN)</field>
<field name="amount" eval="0.076"/>
<field name="type">percent</field>
<field name="base_code_id" ref="vat_code_receivable_base_invest76"/>
<field name="tax_code_id" ref="vat_code_payable_invest"/>
<field name="ref_base_code_id" ref="vat_code_receivable_base_invest76"/>
<field name="ref_tax_code_id" ref="vat_code_payable_invest"/>
<field name="python_compute">result = round((price_unit * 0.076) / 0.05) * 0.05</field>
<field name="python_compute_inv">result = round((price_unit * ( 1 - (1 / 1.076))) / 0.05) * 0.05</field>
<field name="base_sign" eval="-1.0"/>
<field name="tax_sign" eval="-1.0"/>
<field name="ref_base_sign" eval="1.0"/>
<field name="ref_tax_sign" eval="1.0"/>
<field name="chart_template_id" ref="l10nch_chart_template"/>
<field name="type_tax_use">purchase</field>
<field name="account_collected_id" ref="ch_1171"/>
<field name="account_paid_id" ref="ch_1171"/>
</record>
</data>
</openerp>

View File

@ -0,0 +1,371 @@
<?xml version="1.0"?>
<openerp>
<data noupdate="1">
<record model="account.tax.code.template" id="vat_code_balance_net">
<field name="name">Solde de TVA a payer a l'AFC</field>
<field name="code">500</field>
<field name="parent_id" ref="vat_code_chart_root"/>
</record>
<record model="account.tax.code.template" id="vat_code_due_tva">
<field name="name">TVA Due </field>
<field name="code">399</field>
<field name="parent_id" ref="vat_code_balance_net"/>
</record>
<record model="account.tax.code.template" id="vat_code_due_tva80">
<field name="name">TVA due a 8.0% (TN)</field>
<field name="code">301b</field>
<field name="parent_id" ref="vat_code_due_tva"/>
</record>
<record model="account.tax.code.template" id="vat_code_due_tva25">
<field name="name">TVA due a 2.5% (TR)</field>
<field name="code">311b</field>
<field name="parent_id" ref="vat_code_due_tva"/>
</record>
<record model="account.tax.code.template" id="vat_code_due_tva38">
<field name="name">TVA due a 3.8% (TS)</field>
<field name="code">341b</field>
<field name="parent_id" ref="vat_code_due_tva"/>
</record>
<record model="account.tax.code.template" id="vat_code_payable">
<field name="name">TVA préalable sur acquisitions (a récupérer)</field>
<field name="code">479</field>
<field name="parent_id" ref="vat_code_balance_net"/>
</record>
<record model="account.tax.code.template" id="vat_code_payable_bs">
<field name="name">TVA préalable sur biens et services</field>
<field name="code">400</field>
<field name="parent_id" ref="vat_code_payable"/>
</record>
<record model="account.tax.code.template" id="vat_code_payable_invest">
<field name="name">TVA préalable sur invest. et autres ch.</field>
<field name="code">405</field>
<field name="parent_id" ref="vat_code_payable"/>
</record>
<record model="account.tax.code.template" id="vat_code_base_net">
<field name="name">Base de calcul de TVA</field>
<field name="code"/>
<field name="parent_id" ref="vat_code_chart_root"/>
</record>
<record model="account.tax.code.template" id="vat_code_base_ca_total">
<field name="name">Chiffre d'affaires - total</field>
<field name="code">200</field>
<field name="parent_id" ref="vat_code_base_net"/>
</record>
<record model="account.tax.code.template" id="vat_code_base_due">
<field name="name">Chiffre d'affaires imposable</field>
<field name="code">299</field>
<field name="parent_id" ref="vat_code_base_ca_total"/>
</record>
<record model="account.tax.code.template" id="vat_code_due_80">
<field name="name">Chiffre d'affaires imposable a 8.0% (TN)</field>
<field name="code">301a</field>
<field name="parent_id" ref="vat_code_base_due"/>
</record>
<record model="account.tax.code.template" id="vat_code_due_25">
<field name="name">Chiffre d'affaires imposable a 2.5% (TR)</field>
<field name="code">311a</field>
<field name="parent_id" ref="vat_code_base_due"/>
</record>
<record model="account.tax.code.template" id="vat_code_due_38">
<field name="name">Chiffre d'affaires imposable a 3.8% (TS)</field>
<field name="code">341a</field>
<field name="parent_id" ref="vat_code_base_due"/>
</record>
<record model="account.tax.code.template" id="vat_code_due_0">
<field name="name">Chiffre d'affaires imposable a 0% (export)</field>
<field name="code">200-220</field>
<field name="parent_id" ref="vat_code_base_ca_total"/>
</record>
<record model="account.tax.code.template" id="vat_code_due_0_exclu">
<field name="name">Chiffre d'affaires non-imposable a 0% (exclu)</field>
<field name="code">200-230</field>
<field name="parent_id" ref="vat_code_base_ca_total"/>
</record>
<record model="account.tax.code.template" id="vat_code_receivable_net">
<field name="name">Acquisition - total</field>
<field name="code"/>
<field name="parent_id" ref="vat_code_base_net"/>
</record>
<record model="account.tax.code.template" id="vat_code_receivable_base">
<field name="name">Acquisition de biens et services</field>
<field name="code"/>
<field name="parent_id" ref="vat_code_receivable_net"/>
</record>
<record model="account.tax.code.template" id="vat_code_receivable_base_0">
<field name="name">Acquisition de biens et services a 0%</field>
<field name="code"/>
<field name="parent_id" ref="vat_code_receivable_base"/>
</record>
<record model="account.tax.code.template" id="vat_code_receivable_base_80">
<field name="name">Acquisition de biens et services a 8.0% (TN)</field>
<field name="code"/>
<field name="parent_id" ref="vat_code_receivable_base"/>
</record>
<record model="account.tax.code.template" id="vat_code_receivable_base_25">
<field name="name">Acquisition de biens et services a 2.5% (TR)</field>
<field name="code"/>
<field name="parent_id" ref="vat_code_receivable_base"/>
</record>
<record model="account.tax.code.template" id="vat_code_receivable_base_38">
<field name="name">Acquisition de biens et services a 3.8% (TS)</field>
<field name="code"/>
<field name="parent_id" ref="vat_code_receivable_base"/>
</record>
<record model="account.tax.code.template" id="vat_code_receivable_base_invest">
<field name="name">Acquisition de biens d'invest. et autres charges</field>
<field name="code"/>
<field name="parent_id" ref="vat_code_receivable_net"/>
</record>
<record model="account.tax.code.template" id="vat_code_receivable_base_invest80">
<field name="name">Acquisition de biens d'invest. et autres charges a 8.0% (TN)</field>
<field name="code"/>
<field name="parent_id" ref="vat_code_receivable_base_invest"/>
</record>
<record model="account.tax.code.template" id="vat_code_receivable_base_invest25">
<field name="name">Acquisition de biens d'invest. et autres charges a 2.5% (TR)</field>
<field name="code"/>
<field name="parent_id" ref="vat_code_receivable_base_invest"/>
</record>
<record model="account.tax.code.template" id="vat_code_receivable_base_invest38">
<field name="name">Acquisition de biens d'invest. et autres charges a 3.8% (TS)</field>
<field name="code"/>
<field name="parent_id" ref="vat_code_receivable_base_invest"/>
</record>
<!--
# TVA - Taxe sur la Valeur Ajoutée
-->
<record model="account.tax.template" id="vat_25">
<field name="name">TVA due a 2.5% (TR)</field>
<field name="amount" eval="0.025"/>
<field name="type">percent</field>
<field name="base_code_id" ref="vat_code_due_25"/>
<field name="tax_code_id" ref="vat_code_due_tva25"/>
<field name="ref_base_code_id" ref="vat_code_due_25"/>
<field name="ref_tax_code_id" ref="vat_code_due_tva25"/>
<field name="base_sign" eval="1.0"/>
<field name="tax_sign" eval="1.0"/>
<field name="ref_base_sign" eval="-1.0"/>
<field name="ref_tax_sign" eval="-1.0"/>
<field name="chart_template_id" ref="l10nch_chart_template"/>
<field name="account_collected_id" ref="ch_1170"/>
<field name="account_paid_id" ref="ch_1170"/>
<field name="type_tax_use">sale</field>
</record>
<record model="account.tax.template" id="vat_25_purchase">
<field name="name">TVA 2.5% sur achat B&amp;S (TR)</field>
<field name="amount" eval="0.025"/>
<field name="type">percent</field>
<field name="base_code_id" ref="vat_code_receivable_base_25"/>
<field name="tax_code_id" ref="vat_code_payable_bs"/>
<field name="ref_base_code_id" ref="vat_code_receivable_base_25"/>
<field name="ref_tax_code_id" ref="vat_code_payable_bs"/>
<field name="python_compute">result = round((price_unit * 0.025) / 0.05) * 0.05</field>
<field name="python_compute_inv">result = round((price_unit * ( 1 - (1 / 1.025))) /0.05) * 0.05</field>
<field name="base_sign" eval="-1.0"/>
<field name="tax_sign" eval="-1.0"/>
<field name="ref_base_sign" eval="1.0"/>
<field name="ref_tax_sign" eval="1.0"/>
<field name="chart_template_id" ref="l10nch_chart_template"/>
<field name="type_tax_use">purchase</field>
<field name="account_collected_id" ref="ch_1171"/>
<field name="account_paid_id" ref="ch_1171"/>
</record>
<record model="account.tax.template" id="vat_25_invest">
<field name="name">TVA 2.5% sur invest. et autres ch. (TR)</field>
<field name="amount" eval="0.025"/>
<field name="type">percent</field>
<field name="base_code_id" ref="vat_code_receivable_base_invest25"/>
<field name="tax_code_id" ref="vat_code_payable_invest"/>
<field name="ref_base_code_id" ref="vat_code_receivable_base_invest25"/>
<field name="ref_tax_code_id" ref="vat_code_payable_invest"/>
<field name="python_compute">result = round((price_unit * 0.025) / 0.05) * 0.05</field>
<field name="python_compute_inv">result = round((price_unit * ( 1 - (1 / 1.025))) /0.05) * 0.05</field>
<field name="base_sign" eval="-1.0"/>
<field name="tax_sign" eval="-1.0"/>
<field name="ref_base_sign" eval="1.0"/>
<field name="ref_tax_sign" eval="1.0"/>
<field name="chart_template_id" ref="l10nch_chart_template"/>
<field name="type_tax_use">purchase</field>
<field name="account_collected_id" ref="ch_1171"/>
<field name="account_paid_id" ref="ch_1171"/>
</record>
<record model="account.tax.template" id="vat_38">
<field name="name">TVA due a 3.8% (TS)</field>
<field name="amount" eval="0.038"/>
<field name="type">percent</field>
<field name="base_code_id" ref="vat_code_due_38"/>
<field name="tax_code_id" ref="vat_code_due_tva38"/>
<field name="ref_base_code_id" ref="vat_code_due_38"/>
<field name="ref_tax_code_id" ref="vat_code_due_tva38"/>
<field name="python_compute">result = round((price_unit * 0.038) / 0.05) * 0.05</field>
<field name="python_compute_inv">result = round((price_unit * ( 1 - (1 / 1.038))) /0.05) * 0.05</field>
<field name="base_sign" eval="1.0"/>
<field name="tax_sign" eval="1.0"/>
<field name="ref_base_sign" eval="-1.0"/>
<field name="ref_tax_sign" eval="-1.0"/>
<field name="chart_template_id" ref="l10nch_chart_template"/>
<field name="type_tax_use">sale</field>
<field name="account_collected_id" ref="ch_1170"/>
<field name="account_paid_id" ref="ch_1170"/>
</record>
<record model="account.tax.template" id="vat_38_purchase">
<field name="name">TVA 3.8% sur achat B&amp;S (TS)</field>
<field name="amount" eval="0.038"/>
<field name="type">percent</field>
<field name="base_code_id" ref="vat_code_receivable_base_38"/>
<field name="tax_code_id" ref="vat_code_payable_bs"/>
<field name="ref_base_code_id" ref="vat_code_receivable_base_38"/>
<field name="ref_tax_code_id" ref="vat_code_payable_bs"/>
<field name="python_compute">result = round((price_unit * 0.038) / 0.05) * 0.05</field>
<field name="python_compute_inv">result = round((price_unit * ( 1 - (1 / 1.038))) /0.05) * 0.05</field>
<field name="base_sign" eval="-1.0"/>
<field name="tax_sign" eval="-1.0"/>
<field name="ref_base_sign" eval="1.0"/>
<field name="ref_tax_sign" eval="1.0"/>
<field name="chart_template_id" ref="l10nch_chart_template"/>
<field name="type_tax_use">purchase</field>
<field name="account_collected_id" ref="ch_1171"/>
<field name="account_paid_id" ref="ch_1171"/>
</record>
<record model="account.tax.template" id="vat_38_invest">
<field name="name">TVA 3.8% sur invest. et autres ch. (TS)</field>
<field name="amount" eval="0.038"/>
<field name="type">percent</field>
<field name="base_code_id" ref="vat_code_receivable_base_invest38"/>
<field name="tax_code_id" ref="vat_code_payable_invest"/>
<field name="ref_base_code_id" ref="vat_code_receivable_base_invest38"/>
<field name="ref_tax_code_id" ref="vat_code_payable_invest"/>
<field name="python_compute">result = round((price_unit * 0.038) / 0.05) * 0.05</field>
<field name="python_compute_inv">result = round((price_unit * ( 1 - (1 / 1.038))) /0.05) * 0.05</field>
<field name="base_sign" eval="-1.0"/>
<field name="tax_sign" eval="-1.0"/>
<field name="ref_base_sign" eval="1.0"/>
<field name="ref_tax_sign" eval="1.0"/>
<field name="chart_template_id" ref="l10nch_chart_template"/>
<field name="type_tax_use">purchase</field>
<field name="account_collected_id" ref="ch_1171"/>
<field name="account_paid_id" ref="ch_1171"/>
</record>
<record model="account.tax.template" id="vat_80">
<field name="name">TVA due a 8.0% (TN)</field>
<field name="amount" eval="0.080"/>
<field name="type">percent</field>
<field name="base_code_id" ref="vat_code_due_80"/>
<field name="tax_code_id" ref="vat_code_due_tva80"/>
<field name="ref_base_code_id" ref="vat_code_due_80"/>
<field name="ref_tax_code_id" ref="vat_code_due_tva80"/>
<field name="python_compute">result = round((price_unit * 0.080) / 0.05) * 0.05</field>
<field name="python_compute_inv">result = round((price_unit * ( 1 - (1 / 1.080))) /0.05) * 0.05</field>
<field name="base_sign" eval="1.0"/>
<field name="tax_sign" eval="1.0"/>
<field name="ref_base_sign" eval="-1.0"/>
<field name="ref_tax_sign" eval="-1.0"/>
<field name="chart_template_id" ref="l10nch_chart_template"/>
<field name="type_tax_use">sale</field>
<field name="account_collected_id" ref="ch_1170"/>
<field name="account_paid_id" ref="ch_1170"/>
</record>
<record model="account.tax.template" id="vat_80_purchase">
<field name="name">TVA 8.0% sur achat B&amp;S (TN)</field>
<field name="amount" eval="0.080"/>
<field name="type">percent</field>
<field name="base_code_id" ref="vat_code_receivable_base_80"/>
<field name="tax_code_id" ref="vat_code_payable_bs"/>
<field name="ref_base_code_id" ref="vat_code_receivable_base_80"/>
<field name="ref_tax_code_id" ref="vat_code_payable_bs"/>
<field name="python_compute">result = round((price_unit * 0.080) / 0.05) * 0.05</field>
<field name="python_compute_inv">result = round((price_unit * ( 1 - (1 / 1.080))) /0.05) * 0.05</field>
<field name="base_sign" eval="-1.0"/>
<field name="tax_sign" eval="-1.0"/>
<field name="ref_base_sign" eval="1.0"/>
<field name="ref_tax_sign" eval="1.0"/>
<field name="chart_template_id" ref="l10nch_chart_template"/>
<field name="type_tax_use">purchase</field>
<field name="account_collected_id" ref="ch_1171"/>
<field name="account_paid_id" ref="ch_1171"/>
</record>
<record model="account.tax.template" id="vat_80_invest">
<field name="name">TVA 8.0% sur invest. et autres ch. (TN)</field>
<field name="amount" eval="0.080"/>
<field name="type">percent</field>
<field name="base_code_id" ref="vat_code_receivable_base_invest80"/>
<field name="tax_code_id" ref="vat_code_payable_invest"/>
<field name="ref_base_code_id" ref="vat_code_receivable_base_invest80"/>
<field name="ref_tax_code_id" ref="vat_code_payable_invest"/>
<field name="python_compute">result = round((price_unit * 0.080) / 0.05) * 0.05</field>
<field name="python_compute_inv">result = round((price_unit * ( 1 - (1 / 1.080))) /0.05) * 0.05</field>
<field name="base_sign" eval="-1.0"/>
<field name="tax_sign" eval="-1.0"/>
<field name="ref_base_sign" eval="1.0"/>
<field name="ref_tax_sign" eval="1.0"/>
<field name="chart_template_id" ref="l10nch_chart_template"/>
<field name="type_tax_use">purchase</field>
<field name="account_collected_id" ref="ch_1171"/>
<field name="account_paid_id" ref="ch_1171"/>
</record>
<record model="account.tax.template" id="vat_XO">
<field name="name">TVA due a 0% (Exportations)</field>
<field name="amount" eval="0.00"/>
<field name="type">percent</field>
<field name="base_code_id" ref="vat_code_due_0"/>
<!-- <field name="tax_code_id" ref="vat_code_due_tva0"/> -->
<field name="ref_base_code_id" ref="vat_code_due_0"/>
<!-- <field name="ref_tax_code_id" ref="vat_code_due_tva0"/> -->
<field name="base_sign" eval="1.0"/>
<field name="tax_sign" eval="1.0"/>
<field name="ref_base_sign" eval="-1.0"/>
<field name="ref_tax_sign" eval="-1.0"/>
<field name="chart_template_id" ref="l10nch_chart_template"/>
<field name="type_tax_use">sale</field>
<field name="account_collected_id" ref="ch_1170"/>
<field name="account_paid_id" ref="ch_1170"/>
</record>
<record model="account.tax.template" id="vat_O_exclude">
<field name="name">TVA 0% exclue</field>
<field name="amount" eval="0.00"/>
<field name="type">percent</field>
<field name="base_code_id" ref="vat_code_due_0_exclu"/>
<!-- <field name="tax_code_id" ref="vat_code_due_tva0"/> -->
<field name="ref_base_code_id" ref="vat_code_due_0_exclu"/>
<!-- <field name="ref_tax_code_id" ref="vat_code_due_tva0"/> -->
<field name="base_sign" eval="1.0"/>
<field name="tax_sign" eval="1.0"/>
<field name="ref_base_sign" eval="-1.0"/>
<field name="ref_tax_sign" eval="-1.0"/>
<field name="chart_template_id" ref="l10nch_chart_template"/>
<field name="type_tax_use">sale</field>
</record>
<record model="account.tax.template" id="vat_O_import">
<field name="name">TVA 0% Importations de biens et services</field>
<field name="amount" eval="0.00"/>
<field name="type">percent</field>
<field name="base_code_id" ref="vat_code_receivable_base_0"/>
<field name="tax_code_id" ref="vat_code_payable_bs"/>
<field name="ref_base_code_id" ref="vat_code_receivable_base_0"/>
<field name="ref_tax_code_id" ref="vat_code_payable_bs"/>
<field name="base_sign" eval="-1.0"/>
<field name="tax_sign" eval="-1.0"/>
<field name="ref_base_sign" eval="1.0"/>
<field name="ref_tax_sign" eval="1.0"/>
<field name="chart_template_id" ref="l10nch_chart_template"/>
<field name="type_tax_use">purchase</field>
</record>
<!--# 100% on import !! the tax percentage is 00-->
<record model="account.tax.template" id="vat_100_import">
<field name="name">100% sur import</field>
<field name="amount" eval="0.0"/>
<field name="type">percent</field>
<field name="base_code_id" ref="vat_code_payable_bs"/>
<field name="ref_base_code_id" ref="vat_code_payable_bs"/>
<field name="base_sign" eval="1.0"/>
<field name="tax_sign" eval="1.0"/>
<field name="ref_base_sign" eval="-1.0"/>
<field name="ref_tax_sign" eval="-1.0"/>
<field name="chart_template_id" ref="l10nch_chart_template"/>
<field name="type_tax_use">purchase</field>
<field name="account_collected_id" ref="ch_1171"/>
<field name="account_paid_id" ref="ch_1171"/>
</record>
</data>
</openerp>