@ -0,0 +1,29 @@ |
|||
|
|||
Tax Dissolved SO/Customer Invoice Report |
|||
======================================== |
|||
|
|||
This module help to take tax dissolved PDF Print of SO & Customer Invoice. |
|||
|
|||
Reports |
|||
------- |
|||
* Tax Dissolved Report (In Sales) |
|||
* Tax Dissolved Report (In Customer Invoice) |
|||
|
|||
Installation |
|||
============ |
|||
|
|||
To install this module, you just update the app list after placing the module. |
|||
|
|||
Usage |
|||
===== |
|||
To use this module, you need to: |
|||
|
|||
* go to the Sales/Accounting menu |
|||
* select Quotation/SAle Order -> Print(Centralized Menu) |
|||
* select Tax Dissolved Report |
|||
|
|||
Credits |
|||
======= |
|||
Author |
|||
------ |
|||
* Nilmar Shereef , Cybrosys <www.cybrosys.com> |
@ -0,0 +1,23 @@ |
|||
# -*- coding: utf-8 -*- |
|||
############################################################################## |
|||
# |
|||
# Cybrosys Technologies Pvt. Ltd. |
|||
# Copyright (C) 2009-TODAY Cybrosys Technologies(<http://www.cybrosys.com>). |
|||
# Author: Nilmar Shereef(<http://www.cybrosys.com>) |
|||
# you can modify it under the terms of the GNU LESSER |
|||
# GENERAL PUBLIC LICENSE (LGPL v3), Version 3. |
|||
# |
|||
# It is forbidden to publish, distribute, sublicense, or sell copies |
|||
# of the Software or modified copies of the Software. |
|||
# |
|||
# 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 LESSER GENERAL PUBLIC LICENSE (LGPL v3) for more details. |
|||
# |
|||
# You should have received a copy of the GNU LESSER GENERAL PUBLIC LICENSE |
|||
# GENERAL PUBLIC LICENSE (LGPL v3) along with this program. |
|||
# If not, see <http://www.gnu.org/licenses/>. |
|||
# |
|||
############################################################################## |
|||
import models |
@ -0,0 +1,42 @@ |
|||
# -*- coding: utf-8 -*- |
|||
############################################################################## |
|||
# |
|||
# Cybrosys Technologies Pvt. Ltd. |
|||
# Copyright (C) 2009-TODAY Cybrosys Technologies(<http://www.cybrosys.com>). |
|||
# Author: Nilmar Shereef(<http://www.cybrosys.com>) |
|||
# you can modify it under the terms of the GNU LESSER |
|||
# GENERAL PUBLIC LICENSE (LGPL v3), Version 3. |
|||
# |
|||
# It is forbidden to publish, distribute, sublicense, or sell copies |
|||
# of the Software or modified copies of the Software. |
|||
# |
|||
# 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 LESSER GENERAL PUBLIC LICENSE (LGPL v3) for more details. |
|||
# |
|||
# You should have received a copy of the GNU LESSER GENERAL PUBLIC LICENSE |
|||
# GENERAL PUBLIC LICENSE (LGPL v3) along with this program. |
|||
# If not, see <http://www.gnu.org/licenses/>. |
|||
# |
|||
############################################################################## |
|||
{ |
|||
'name': 'Tax Dissolved Sale Order Report', |
|||
'version': '0.2', |
|||
'author': 'Cybrosys Techno Solutions', |
|||
'company': 'Cybrosys Techno Solutions', |
|||
'website': "http://www.cybrosys.com", |
|||
'category': 'sale', |
|||
'description': """ Module gives the Tax Dissolved (In Total Amount) SO/Customer Invoice Print""", |
|||
'depends': ['sale', 'account'], |
|||
"data": [ |
|||
"views/without_tax_report_account_view.xml", |
|||
"views/without_tax_account_view.xml", |
|||
"views/without_tax_sale_view.xml", |
|||
"views/without_tax_report_sale_view.xml", |
|||
], |
|||
'installable': True, |
|||
'auto_install': False, |
|||
} |
|||
|
|||
|
@ -0,0 +1,23 @@ |
|||
# -*- coding: utf-8 -*- |
|||
############################################################################## |
|||
# |
|||
# Cybrosys Technologies Pvt. Ltd. |
|||
# Copyright (C) 2009-TODAY Cybrosys Technologies(<http://www.cybrosys.com>). |
|||
# Author: Nilmar Shereef(<http://www.cybrosys.com>) |
|||
# you can modify it under the terms of the GNU LESSER |
|||
# GENERAL PUBLIC LICENSE (LGPL v3), Version 3. |
|||
# |
|||
# It is forbidden to publish, distribute, sublicense, or sell copies |
|||
# of the Software or modified copies of the Software. |
|||
# |
|||
# 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 LESSER GENERAL PUBLIC LICENSE (LGPL v3) for more details. |
|||
# |
|||
# You should have received a copy of the GNU LESSER GENERAL PUBLIC LICENSE |
|||
# GENERAL PUBLIC LICENSE (LGPL v3) along with this program. |
|||
# If not, see <http://www.gnu.org/licenses/>. |
|||
# |
|||
############################################################################## |
|||
import without_tax_report |
@ -0,0 +1,65 @@ |
|||
# -*- coding: utf-8 -*- |
|||
############################################################################## |
|||
# |
|||
# Cybrosys Technologies Pvt. Ltd. |
|||
# Copyright (C) 2009-TODAY Cybrosys Technologies(<http://www.cybrosys.com>). |
|||
# Author: Nilmar Shereef(<http://www.cybrosys.com>) |
|||
# you can modify it under the terms of the GNU LESSER |
|||
# GENERAL PUBLIC LICENSE (LGPL v3), Version 3. |
|||
# |
|||
# It is forbidden to publish, distribute, sublicense, or sell copies |
|||
# of the Software or modified copies of the Software. |
|||
# |
|||
# 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 LESSER GENERAL PUBLIC LICENSE (LGPL v3) for more details. |
|||
# |
|||
# You should have received a copy of the GNU LESSER GENERAL PUBLIC LICENSE |
|||
# GENERAL PUBLIC LICENSE (LGPL v3) along with this program. |
|||
# If not, see <http://www.gnu.org/licenses/>. |
|||
# |
|||
############################################################################## |
|||
from openerp.report import report_sxw |
|||
from openerp.osv import osv |
|||
|
|||
|
|||
class WithoutTax(report_sxw.rml_parse): |
|||
|
|||
_inherit = 'account.tax' |
|||
|
|||
def __init__(self, cr, uid, name, context=None): |
|||
super(WithoutTax, self).__init__(cr, uid, name, context=context) |
|||
self.localcontext.update({ |
|||
'get_details': self.get_details, |
|||
|
|||
|
|||
}) |
|||
self.context = context |
|||
|
|||
def get_details(self, tax, subtotal): |
|||
print tax |
|||
total_amount = 0 |
|||
tax_amount = [] |
|||
for i in tax: |
|||
tax_amount.append(i.amount * 100 ) |
|||
print tax_amount |
|||
for j in range(0, len(tax)): |
|||
total_amount = (tax_amount[j] / 100 * subtotal) + total_amount |
|||
print total_amount |
|||
total = total_amount + subtotal |
|||
return total |
|||
|
|||
|
|||
class AccountReport(osv.AbstractModel): |
|||
_name = 'report.untaxed_saleorder_report.invoice_account_report' |
|||
_inherit = 'report.abstract_report' |
|||
_template = 'untaxed_saleorder_report.invoice_account_report' |
|||
_wrapped_report_class = WithoutTax |
|||
|
|||
|
|||
class SaleReport(osv.AbstractModel): |
|||
_name = 'report.untaxed_saleorder_report.invoice_sale_report' |
|||
_inherit = 'report.abstract_report' |
|||
_template = 'untaxed_saleorder_report.invoice_sale_report' |
|||
_wrapped_report_class = WithoutTax |
@ -0,0 +1,39 @@ |
|||
from openerp.report import report_sxw |
|||
from openerp.osv import osv |
|||
|
|||
|
|||
class WithoutTax(report_sxw.rml_parse): |
|||
|
|||
_inherit = 'account.tax' |
|||
|
|||
def __init__(self, cr, uid, name, context=None): |
|||
super(WithoutTax, self).__init__(cr, uid, name, context=context) |
|||
self.localcontext.update({ |
|||
'get_details': self.get_details, |
|||
|
|||
|
|||
}) |
|||
self.context = context |
|||
|
|||
def get_details(self, tax, subtotal): |
|||
print tax |
|||
total_amount = 0 |
|||
tax_amount = [] |
|||
for i in tax: |
|||
tax_amount.append(i.amount*100 ) |
|||
print tax_amount |
|||
for j in range(0, len(tax)): |
|||
total_amount = (tax_amount[j] / 100 * subtotal) + total_amount |
|||
print total_amount |
|||
total = total_amount + subtotal |
|||
return total |
|||
|
|||
|
|||
class PrintReport(osv.AbstractModel): |
|||
_name = 'report.untaxed_saleorder_report.invoice_report1' |
|||
_inherit = 'report.abstract_report' |
|||
_template = 'untaxed_saleorder_report.invoice_report1' |
|||
_wrapped_report_class = WithoutTax |
|||
|
|||
|
|||
|
After Width: | Height: | Size: 141 KiB |
After Width: | Height: | Size: 10 KiB |
@ -0,0 +1,101 @@ |
|||
<section class="oe_container"> |
|||
<div class="oe_row oe_spaced"> |
|||
<h2 class="oe_slogan">Tax Dissolved Sale Order/Customer Invoice Report</h2> |
|||
<div class="oe_span12"> |
|||
<p class='oe_mt32'> |
|||
We can easily print the Sale Order & Customer Invoice without tax. |
|||
Here actually we do not avoid the tax amount, But it dissolved with total amount. |
|||
</p> |
|||
<div class="oe_centeralign oe_websiteonly"> |
|||
</div> |
|||
</div> |
|||
</div> |
|||
</section> |
|||
|
|||
<section class="oe_container oe_dark"> |
|||
<div class="oe_row"> |
|||
<h2 class="oe_slogan">Tax Dissolved Sale Report</h2> |
|||
<div class="oe_span12"> |
|||
<p class='oe_mt32'> |
|||
If you want to hide the tax information from the Sale Report without |
|||
effecting the total amount in the sale order report.<br> |
|||
|
|||
You just click the PRINT button |
|||
then there we can see two option |
|||
</p> |
|||
<p class='oe_mt32'> |
|||
1.Quotation/Sale Order<br> |
|||
2.Tax Dissolved Sale Order |
|||
</p> |
|||
</div> |
|||
</div> |
|||
</section> |
|||
|
|||
<section class="oe_container oe_dark"> |
|||
<div class="oe_row oe_padded"> |
|||
<div class="oe_span6"> |
|||
<h3>Print Button</h3> |
|||
<div class="oe_row_img oe_centered"> |
|||
<img class="oe_picture oe_screenshot" src="taxdissolvedmenu_sale.png"> |
|||
</div> |
|||
</div> |
|||
<div class="oe_span6"> |
|||
<h3>Tax Dissolved Sale Order Print</h3> |
|||
<img class="oe_picture oe_screenshot" src="taxdissolvedsalereport.png"> |
|||
</div> |
|||
</div> |
|||
</section> |
|||
|
|||
<section class="oe_container oe_dark"> |
|||
<div class="oe_row"> |
|||
<h2 class="oe_slogan">Tax Dissolved Invoice Report</h2> |
|||
<div class="oe_span12"> |
|||
<p class='oe_mt32'> |
|||
If you want to hide the tax information from the Invoice Report without |
|||
effecting the total amount in the customer invoice report.<br> |
|||
|
|||
You just click the PRINT button |
|||
then there we can see two option |
|||
</p> |
|||
<p class='oe_mt32'> |
|||
1.Invoice<br> |
|||
2.Tax Dissolved Invoice |
|||
</p> |
|||
</div> |
|||
</div> |
|||
</section> |
|||
|
|||
<section class="oe_container oe_dark"> |
|||
<div class="oe_row oe_padded"> |
|||
<div class="oe_span6"> |
|||
<h3>Print Button</h3> |
|||
<div class="oe_row_img oe_centered"> |
|||
<img class="oe_picture oe_screenshot" src="taxdissolvedreportmenu.png"> |
|||
</div> |
|||
</div> |
|||
<div class="oe_span6"> |
|||
<h3>Tax Dissolved Invoice Print</h3> |
|||
<img class="oe_picture oe_screenshot" src="taxdissolvedinvoice.png"> |
|||
</div> |
|||
</div> |
|||
</section> |
|||
|
|||
<section class="oe_container oe_dark"> |
|||
<h2 class="oe_slogan">Need Any Help?</h2> |
|||
<div class="oe_slogan"> |
|||
<a class="btn btn-primary btn-lg mt8" |
|||
style="color: #FFFFFF !important;" href="http://www.cybrosys.com"><i |
|||
class="fa fa-envelope"></i> Email </a> <a |
|||
class="btn btn-primary btn-lg mt8" style="color: #FFFFFF !important;" |
|||
href="http://www.cybrosys.com/contact/"><i |
|||
class="fa fa-phone"></i> Contact Us </a> <a |
|||
class="btn btn-primary btn-lg mt8" style="color: #FFFFFF !important;" |
|||
href="http://www.cybrosys.com/odoo-customization-and-installation/"><i |
|||
class="fa fa-check-square"></i> Request Customization </a> |
|||
</div> |
|||
</section> |
|||
|
|||
|
|||
|
|||
|
|||
|
After Width: | Height: | Size: 53 KiB |
After Width: | Height: | Size: 41 KiB |
After Width: | Height: | Size: 125 KiB |
After Width: | Height: | Size: 270 KiB |
After Width: | Height: | Size: 36 KiB |
@ -0,0 +1,114 @@ |
|||
<?xml version="1.0" encoding="utf-8"?> |
|||
<openerp> |
|||
<data> |
|||
<template id="without_tax_account_invoice"> |
|||
<t t-call="report.external_layout"> |
|||
<div class="page"> |
|||
<div class="row"> |
|||
<div class="col-xs-5 col-xs-offset-7"> |
|||
<address t-field="o.partner_id" |
|||
t-field-options='{"widget": "contact", "fields": ["address", "name"], "no_marker": true}' /> |
|||
<span t-if="o.partner_id.vat">TIN: <span t-field="o.partner_id.vat"/></span> |
|||
</div> |
|||
</div> |
|||
|
|||
<h2> |
|||
<span t-if="o.type == 'out_invoice' and (o.state == 'open' or o.state == 'paid')">Invoice</span> |
|||
<span t-if="o.type == 'out_invoice' and o.state == 'proforma2'">PRO-FORMA</span> |
|||
<span t-if="o.type == 'out_invoice' and o.state == 'draft'">Draft Invoice</span> |
|||
<span t-if="o.type == 'out_invoice' and o.state == 'cancel'">Cancelled Invoice</span> |
|||
<span t-if="o.type == 'out_refund'">Refund</span> |
|||
<span t-if="o.type == 'in_refund'">Supplier Refund</span> |
|||
<span t-if="o.type == 'in_invoice'">Supplier Invoice</span> |
|||
<span t-field="o.number"/> |
|||
</h2> |
|||
|
|||
<div class="row mt32 mb32"> |
|||
<div class="col-xs-2" t-if="o.name"> |
|||
<strong>Description:</strong> |
|||
<p t-field="o.name"/> |
|||
</div> |
|||
<div class="col-xs-2" t-if="o.date_invoice"> |
|||
<strong>Invoice Date:</strong> |
|||
<p t-field="o.date_invoice"/> |
|||
</div> |
|||
<div class="col-xs-2" t-if="o.origin"> |
|||
<strong>Source:</strong> |
|||
<p t-field="o.origin"/> |
|||
</div> |
|||
<div class="col-xs-2" t-if="o.partner_id.ref"> |
|||
<strong>Customer Code:</strong> |
|||
<p t-field="o.partner_id.ref"/> |
|||
</div> |
|||
<div class="col-xs-2" t-if="o.reference"> |
|||
<strong>Reference:</strong> |
|||
<p t-field="o.reference"/> |
|||
</div> |
|||
</div> |
|||
|
|||
<table class="table table-condensed"> |
|||
<thead> |
|||
<tr> |
|||
<th>Descriptions</th> |
|||
<th>Quantity</th> |
|||
<th class="text-right">Unit Price</th> |
|||
<th class="text-right" groups="sale.group_discount_per_so_line">Discount (%)</th> |
|||
<th class="text-right">Amount</th> |
|||
</tr> |
|||
</thead> |
|||
<tbody class="invoice_tbody"> |
|||
<tr t-foreach="o.invoice_line" t-as="l"> |
|||
<td><span t-field="l.name"/></td> |
|||
<td> |
|||
<span t-field="l.quantity"/> |
|||
<span t-field="l.uos_id" groups="product.group_uom"/> |
|||
</td> |
|||
<td class="text-right"> |
|||
<span t-field="l.price_unit"/> |
|||
</td> |
|||
<td class="text-right" groups="sale.group_discount_per_so_line"><span t-field="l.discount"/></td> |
|||
<td class="text-right"> |
|||
<span t-esc="get_details(l.invoice_line_tax_id,l.price_subtotal)"/> |
|||
</td> |
|||
</tr> |
|||
</tbody> |
|||
</table> |
|||
|
|||
<div class="row"> |
|||
<div class="col-xs-4 pull-right"> |
|||
<table class="table table-condensed"> |
|||
<tr class="border-black"> |
|||
<td><strong>Total</strong></td> |
|||
<td class="text-right"> |
|||
<span t-field="o.amount_total" t-field-options='{"widget": "monetary", "display_currency": "o.currency_id"}'/> |
|||
</td> |
|||
</tr> |
|||
</table> |
|||
</div> |
|||
</div> |
|||
<p t-if="o.comment"> |
|||
<strong>Comment:</strong> |
|||
<span t-field="o.comment"/> |
|||
</p> |
|||
<p t-if="o.payment_term.note"> |
|||
<strong>Payment Term:</strong> |
|||
<span t-field="o.payment_term.note"/> |
|||
</p> |
|||
<p t-if="o.fiscal_position.note"> |
|||
<strong>Fiscal Position Remark:</strong> |
|||
<span t-field="o.fiscal_position.note"/> |
|||
</p> |
|||
</div> |
|||
</t> |
|||
</template> |
|||
|
|||
<template id="invoice_account_report"> |
|||
<t t-call="report.html_container"> |
|||
<t t-foreach="doc_ids" t-as="doc_id"> |
|||
<t t-raw="translate_doc(doc_id, doc_model, 'partner_id.lang', 'untaxed_saleorder_report.without_tax_account_invoice')"/> |
|||
</t> |
|||
</t> |
|||
</template> |
|||
</data> |
|||
</openerp> |
|||
|
@ -0,0 +1,13 @@ |
|||
<?xml version="1.0" encoding="utf-8"?> |
|||
<openerp> |
|||
<data> |
|||
<report |
|||
id="account_without_tax_invoice" |
|||
string="Tax Dissolved Invoice Report" |
|||
model="account.invoice" |
|||
report_type="qweb-pdf" |
|||
file="untaxed_saleorder_report.invoice_account_report" |
|||
name="untaxed_saleorder_report.invoice_account_report" |
|||
/> |
|||
</data> |
|||
</openerp> |
@ -0,0 +1,13 @@ |
|||
<?xml version="1.0" encoding="utf-8"?> |
|||
<openerp> |
|||
<data> |
|||
<report |
|||
id="without_tax_invoice" |
|||
string="Tax Dissolved Invoice Report" |
|||
model="account.invoice" |
|||
report_type="qweb-pdf" |
|||
file="untaxed_saleorder_print.invoice_account_report" |
|||
name="untaxed_saleorder_print.invoice_account_report" |
|||
/> |
|||
</data> |
|||
</openerp> |
@ -0,0 +1,13 @@ |
|||
<?xml version="1.0" encoding="utf-8"?> |
|||
<openerp> |
|||
<data> |
|||
<report |
|||
id="sale_without_tax_invoice" |
|||
string="tax dissolved invoice report" |
|||
model="sale.order" |
|||
report_type="qweb-pdf" |
|||
file="untaxed_saleorder_report.invoice_sale_report" |
|||
name="untaxed_saleorder_report.invoice_sale_report" |
|||
/> |
|||
</data> |
|||
</openerp> |
@ -0,0 +1,120 @@ |
|||
<?xml version="1.0" encoding="utf-8"?> |
|||
<openerp> |
|||
<data> |
|||
<template id="without_tax_sale_invoice"> |
|||
<t t-call="report.external_layout"> |
|||
<div class="page"> |
|||
<div class="oe_structure"/> |
|||
<div class="row"> |
|||
<div class="col-xs-6"> |
|||
<strong t-if="o.partner_shipping_id == o.partner_invoice_id">Invoice and shipping address:</strong> |
|||
<strong t-if="o.partner_shipping_id != o.partner_invoice_id">Invoice address:</strong> |
|||
<div t-field="o.partner_invoice_id" |
|||
t-field-options='{"widget": "contact", "fields": ["address", "name", "phone", "fax"], "no_marker": true}'/> |
|||
<p t-if="o.partner_id.vat">VAT: <span t-field="o.partner_id.vat"/></p> |
|||
<div t-if="o.partner_shipping_id != o.partner_invoice_id" class="mt8"> |
|||
<strong>Shipping address:</strong> |
|||
<div t-field="o.partner_shipping_id" |
|||
t-field-options='{"widget": "contact", "fields": ["address", "name", "phone", "fax"], "no_marker": true}'/> |
|||
<p t-if="o.partner_id.vat">VAT: <span t-field="o.partner_id.vat"/></p> |
|||
</div> |
|||
</div> |
|||
<div class="col-xs-5 col-xs-offset-1"> |
|||
<div t-field="o.partner_id" |
|||
t-field-options='{"widget": "contact", "fields": ["address", "name"], "no_marker": true}' /> |
|||
</div> |
|||
</div> |
|||
|
|||
<h2> |
|||
<span t-if="o.state not in ['draft','sent']">Order N° </span> |
|||
<span t-if="o.state in ['draft','sent']">Quotation N° </span> |
|||
<span t-field="o.name"/> |
|||
</h2> |
|||
|
|||
<div class="row mt32 mb32" id="informations"> |
|||
<div t-if="o.client_order_ref" class="col-xs-3"> |
|||
<strong>Your Reference:</strong> |
|||
<p t-field="o.client_order_ref"/> |
|||
</div> |
|||
<div t-if="o.date_order" class="col-xs-3"> |
|||
<strong t-if="o.state not in ['draft','sent']">Date Ordered:</strong> |
|||
<strong t-if="o.state in ['draft','sent']">Quotation Date:</strong> |
|||
<p t-field="o.date_order"/> |
|||
</div> |
|||
<div t-if="o.user_id.name" class="col-xs-3"> |
|||
<strong>Salesperson:</strong> |
|||
<p t-field="o.user_id.name"/> |
|||
</div> |
|||
<div t-if="o.payment_term" class="col-xs-3"> |
|||
<strong>Payment Term:</strong> |
|||
<p t-field="o.payment_term"/> |
|||
</div> |
|||
</div> |
|||
|
|||
<table class="table table-condensed"> |
|||
<thead> |
|||
<tr> |
|||
<th>Description</th> |
|||
<!--<th>Taxes</th>--> |
|||
<th class="text-right">Quantity</th> |
|||
<th class="text-right">Unit Price</th> |
|||
<th groups="sale.group_discount_per_so_line">Disc.(%)</th> |
|||
<th class="text-right">Price</th> |
|||
</tr> |
|||
</thead> |
|||
<tbody class="sale_tbody"> |
|||
<tr t-foreach="o.order_line" t-as="l"> |
|||
<td> |
|||
<span t-field="l.name"/> |
|||
</td> |
|||
<td class="text-right"> |
|||
<span t-field="l.product_uom_qty"/> |
|||
<span groups="product.group_uom" t-field="l.product_uom"/> |
|||
</td> |
|||
<td class="text-right"> |
|||
<span t-field="l.price_unit"/> |
|||
</td> |
|||
<td groups="sale.group_discount_per_so_line"> |
|||
<span t-field="l.discount"/> |
|||
</td> |
|||
<td class="text-right"> |
|||
<span t-esc="get_details(l.tax_id,l.price_subtotal)"/> |
|||
</td> |
|||
</tr> |
|||
</tbody> |
|||
</table> |
|||
|
|||
<div class="row"> |
|||
<div class="col-xs-4 pull-right"> |
|||
<table class="table table-condensed"> |
|||
<tr class="border-black"> |
|||
<td><strong>Total</strong></td> |
|||
<td class="text-right"> |
|||
<span t-field="o.amount_total" |
|||
t-field-options='{"widget": "monetary", "display_currency": "o.pricelist_id.currency_id"}'/> |
|||
</td> |
|||
</tr> |
|||
</table> |
|||
</div> |
|||
</div> |
|||
|
|||
<p t-field="o.note" /> |
|||
<p t-if="o.payment_term.note"> |
|||
<strong>Payment Term:</strong> |
|||
<span t-field="o.payment_term.note"/> |
|||
</p> |
|||
<div class="oe_structure"/> |
|||
</div> |
|||
</t> |
|||
|
|||
</template> |
|||
|
|||
<template id="invoice_sale_report"> |
|||
<t t-call="report.html_container"> |
|||
<t t-foreach="doc_ids" t-as="doc_id"> |
|||
<t t-raw="translate_doc(doc_id, doc_model, 'partner_id.lang','untaxed_saleorder_report.without_tax_sale_invoice')" /> |
|||
</t> |
|||
</t> |
|||
</template> |
|||
</data> |
|||
</openerp> |