3
<style type="text/css">
7
border:thin solid #E3E4EA;
9
border-collapse: collapse;
11
.list_invoice_table th {
12
background-color: #EEEEEE;
13
border: thin solid #000000;
20
.list_invoice_table td {
21
border-top : thin solid #EEEEEE;
29
.list_invoice_table thead {
30
display:table-header-group;
36
border-collapse: collapse;
39
background-color: #EEEEEE;
64
.list_tax_table thead {
65
display:table-header-group;
70
border:thin solid #E3E4EA;
72
border-collapse: collapse;
74
.list_total_table td {
75
border-top : thin solid #EEEEEE;
83
.list_total_table th {
84
background-color: #EEEEEE;
85
border: thin solid #000000;
92
.list_total_table thead {
93
display:table-header-group;
98
border-top: thin solid #ffffff ;
115
tfoot.totals tr:first-child td{
123
td.amount, th.amount {
129
border: 1px solid lightGrey;
130
border-collapse: collapse;
134
border: 1px solid lightGrey;
138
border: 1px solid lightGrey;
153
<%page expression_filter="entity"/>
155
def carriage_returns(text):
156
return text.replace('\n', '<br />')
160
<% setLang(inv.partner_id.lang) %>
161
<div class="address">
162
<table class="recipient">
163
<tr><td class="name">${inv.partner_id.title and inv.partner_id.title.name or ''} ${inv.partner_id.name }</td></tr>
164
<tr><td>${inv.partner_id.street or ''}</td></tr>
165
<tr><td>${inv.partner_id.street2 or ''}</td></tr>
166
<tr><td>${inv.partner_id.zip or ''} ${inv.partner_id.city or ''}</td></tr>
167
%if inv.partner_id.country_id:
168
<tr><td>${inv.partner_id.country_id.name or ''} </td></tr>
174
%if inv.note1_webkit :
175
<p class="std_text"> ${inv.note1_webkit | carriage_returns} </p>
178
<h1 style="clear: both; padding-top: 20px;">
179
%if inv.type == 'out_invoice' and inv.state == 'proforma2':
181
%elif inv.type == 'out_invoice' and inv.state == 'draft':
182
${_("Draft Invoice")}
183
%elif inv.type == 'out_invoice' and inv.state == 'cancel':
184
${_("Cancelled Invoice")} ${inv.number or ''}
185
%elif inv.type == 'out_invoice':
186
${_("Invoice")} ${inv.number or ''}
187
%elif inv.type == 'in_invoice':
188
${_("Supplier Invoice")} ${inv.number or ''}
189
%elif inv.type == 'out_refund':
190
${_("Refund")} ${inv.number or ''}
191
%elif inv.type == 'in_refund':
192
${_("Supplier Refund")} ${inv.number or ''}
195
<h3 style="clear: both; padding-top: 20px;">
196
${_("Subject : ")} ${inv.name or ''}
199
<table class="basic_table" width="100%">
201
<th class="date">${_("Invoice Date")}</td>
202
<th class="date">${_("Due Date")}</td>
203
<th style="text-align:left;">${_("Our Ref.")}</td>
206
<td class="date">${formatLang(inv.date_invoice, date=True)}</td>
207
<td class="date">${formatLang(inv.date_due, date=True)}</td>
208
<td style="text-align:left;">${inv.origin or ''}</td>
212
<table class="list_invoice_table" width="100%" style="margin-top: 20px;">
215
<th>${_("Description")}</th>
218
<th>${_("Unit Price")}</th>
219
<th>${_("Taxes")}</th>
220
<th>${_("Disc.(%)")}</th>
221
<th>${_("Net Sub Total")}</th>
225
%for line in inv.invoice_line :
227
<td>${line.product_id and line.product_id.code or ''} ${line.product_id and line.product_id.name or ''}</td>
228
<td class="amount">${formatLang(line.quantity or 0.0,digits=get_digits(dp='Account'))}</td>
229
<td class="amount">${line.uos_id and line.uos_id.name or ''}</td>
230
<td class="amount">${formatLang(line.price_unit)}</td>
231
<td style="font-style:italic; font-size: 10;text-align:center;" >${ ', '.join([ tax.name or '' for tax in line.invoice_line_tax_id ])}</td>
232
<td class="amount" width="10%">${line.discount and formatLang(line.discount, digits=get_digits(dp='Account')) or ''} ${line.discount and '%' or ''}</td>
233
<td class="amount" width="13%">${formatLang(line.price_subtotal, digits=get_digits(dp='Account'))} ${inv.currency_id.symbol}</td>
237
<td colspan="7" class="note" style="font-style:italic; font-size: 10; border-top: thin solid #ffffff ; border-right: thin solid #E3E4EA; padding:20;">${line.name | carriage_returns}</td>
242
<tfoot class="totals">
244
<td colspan="6" style="text-align:right;border-right: thin solid #ffffff ;border-left: thin solid #ffffff ;">
247
<td class="amount" style="border-right: thin solid #ffffff ;border-left: thin solid #ffffff ;">
248
${formatLang(inv.amount_untaxed, digits=get_digits(dp='Account'))} ${inv.currency_id.symbol}
252
<td colspan="6" style="text-align:right; border-top: thin solid #ffffff ; border-right: thin solid #ffffff ;border-left: thin solid #ffffff ;">
253
<b>${_("Taxes:")}</b>
255
<td class="amount" style="border-right: thin solid #ffffff ;border-top: thin solid #ffffff ;border-left: thin solid #ffffff ;">
256
${formatLang(inv.amount_tax, digits=get_digits(dp='Account'))} ${inv.currency_id.symbol}
260
<td colspan="6" style="border-right: thin solid #ffffff ;border-top: thin solid #ffffff ;border-left: thin solid #ffffff ;border-bottom: thin solid #ffffff ;text-align:right;">
261
<b>${_("Total:")}</b>
263
<td class="amount" style="border-right: thin solid #ffffff ;border-top: thin solid #ffffff ;border-left: thin solid #ffffff ;border-bottom: thin solid #ffffff ;">
264
<b>${formatLang(inv.amount_total, digits=get_digits(dp='Account'))} ${inv.currency_id.symbol}</b>
270
<table class="list_total_table" width="40%" >
272
<th style="text-align:left;">${_("Rate")}</th>
273
<th>${_("Base")}</th>
277
%for t in inv.tax_line :
279
<td style="text-align:left;">${ t.name } </td>
280
<td class="amount">${ formatLang(t.base, digits=get_digits(dp='Account')) }</td>
281
<td class="amount">${ formatLang(t.amount, digits=get_digits(dp='Account')) }</td>
289
${_("Thank you for your prompt payment")}
293
inv_bank = inv.partner_bank_id
294
bank_institution = inv_bank and inv_bank.bank
296
<table class="list_bank_table" width="100%" >
298
<th style="width:20%;">${_("Bank")}</th>
299
<td style="width:30%;text-align:left;">${ bank_institution and bank_institution.name or '-' } </td>
300
%if inv.partner_id and inv.partner_id.vat :
301
<th style="width:20%;">${_("Customer VAT No")}</th>
302
<td style="width:30%;">${inv.partner_id.vat or '-'}</td>
304
<!-- conserve table's cells widths -->
305
<td style="width:20%;"></td>
306
<td style="width:30%;"></td>
310
<th style="width:20%;">${_("IBAN")}</th>
311
<td style="width:30%;text-align:left;">${ inv_bank and inv_bank.iban or '-' }</td>
312
<th style="width:20%;">${_("Our VAT No")}</th>
313
<td style="width:30%;" class="vat">''</td>
316
<th width="20%">${_("BIC")}</th>
317
<td style="width:30%;">${ inv.partner_bank_id and inv.partner_bank_id.bank and inv.partner_bank_id.bank.bic or '-' }</td>
322
<p class="std_text">${inv.comment | carriage_returns}</p>
324
%if inv.note2_webkit :
325
<p class="std_text">${inv.note2_webkit | carriage_returns}</p>
327
<p style="page-break-after:always"></p>