add new module of template
28
bi_professional_reports_templates/LICENSE
Executable file
@@ -0,0 +1,28 @@
|
|||||||
|
Odoo Proprietary License v1.0
|
||||||
|
|
||||||
|
This software and associated files (the "Software") may only be used (executed,
|
||||||
|
modified, executed after modifications) if you have purchased a valid license
|
||||||
|
from the authors, typically via Odoo Apps, or if you have received a written
|
||||||
|
agreement from the authors of the Software (see the COPYRIGHT file).
|
||||||
|
|
||||||
|
You may develop Odoo modules that use the Software as a library (typically
|
||||||
|
by depending on it, importing it and using its resources), but without copying
|
||||||
|
any source code or material from the Software. You may distribute those
|
||||||
|
modules under the license of your choice, provided that this license is
|
||||||
|
compatible with the terms of the Odoo Proprietary License (For example:
|
||||||
|
LGPL, MIT, or proprietary licenses similar to this one).
|
||||||
|
|
||||||
|
It is forbidden to publish, distribute, sublicense, or sell copies of the Software
|
||||||
|
or modified copies of the Software.
|
||||||
|
|
||||||
|
The above copyright notice and this permission notice must be included in all
|
||||||
|
copies or substantial portions of the Software.
|
||||||
|
|
||||||
|
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||||
|
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||||
|
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
|
||||||
|
IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,
|
||||||
|
DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE,
|
||||||
|
ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
|
||||||
|
DEALINGS IN THE SOFTWARE.
|
||||||
|
|
||||||
5
bi_professional_reports_templates/__init__.py
Normal file
@@ -0,0 +1,5 @@
|
|||||||
|
# -*- coding: utf-8 -*-
|
||||||
|
# Part of BrowseInfo. See LICENSE file for full copyright and licensing details.
|
||||||
|
|
||||||
|
from . import res_company
|
||||||
|
|
||||||
54
bi_professional_reports_templates/__manifest__.py
Normal file
@@ -0,0 +1,54 @@
|
|||||||
|
# -*- coding: utf-8 -*-
|
||||||
|
# Part of BrowseInfo. See LICENSE file for full copyright and licensing details.
|
||||||
|
|
||||||
|
{
|
||||||
|
'name': 'Odoo Professional Report Templates',
|
||||||
|
'version': '13.0.0.0',
|
||||||
|
'summary': 'Easily Customizable Report Template for Quotation/SO/Sales, Invoice, Picking/Delivery Order,RFQ/PO/Purchases',
|
||||||
|
'category': 'Tools',
|
||||||
|
'description': """
|
||||||
|
Customize report, customize pdf report, customize template report, Customize Sales Order report,Customize Purchase Order report, Customize invoice report, Customize delivery Order report, Accounting Reports, Easy reports, Flexible report,Fancy Report template.
|
||||||
|
|
||||||
|
""",
|
||||||
|
'license':'OPL-1',
|
||||||
|
'author': 'BrowseInfo',
|
||||||
|
'live_test_url':'https://youtu.be/_aihFWW4a5E',
|
||||||
|
'website': 'http://www.browseinfo.in',
|
||||||
|
'depends': ['base', 'account', 'sale', 'purchase', 'stock', 'sale_stock', 'base_vat','sale_management','purchase_stock'],
|
||||||
|
'data': [
|
||||||
|
|
||||||
|
"res_company.xml",
|
||||||
|
|
||||||
|
"invoice_report/fency_report_account.xml",
|
||||||
|
"invoice_report/fency_report_invoice.xml",
|
||||||
|
"invoice_report/report_invoice_classic.xml",
|
||||||
|
"invoice_report/report_invoice_modern.xml",
|
||||||
|
"invoice_report/report_invoice_odoo_standard.xml",
|
||||||
|
|
||||||
|
"delivery_report/stock_report_classic.xml",
|
||||||
|
"delivery_report/fency_report_deliveryslip.xml",
|
||||||
|
"delivery_report/modern_report_deliveryslip.xml",
|
||||||
|
"delivery_report/odoo_standard_report_deliveryslip.xml",
|
||||||
|
"delivery_report/report_deliveryslip_classic.xml",
|
||||||
|
|
||||||
|
|
||||||
|
"purchase_report/classic_report_purchaseorder.xml",
|
||||||
|
"purchase_report/classic_report_purchasequotation.xml",
|
||||||
|
"purchase_report/fency_report_purchaseorder.xml",
|
||||||
|
"purchase_report/fency_report_purchasequotation.xml",
|
||||||
|
"purchase_report/modern_report_purchaseorder.xml",
|
||||||
|
"purchase_report/modern_report_purchasequotation.xml",
|
||||||
|
"purchase_report/odoo_standard_report_purchaseorder.xml",
|
||||||
|
"purchase_report/odoo_standard_report_purchasequotation.xml",
|
||||||
|
|
||||||
|
"sale_report/classic_report_saleorder.xml",
|
||||||
|
"sale_report/fency_report_saleorder.xml",
|
||||||
|
"sale_report/modern_report_saleorder.xml",
|
||||||
|
"sale_report/odoo_standard_report_saleorder.xml",
|
||||||
|
],
|
||||||
|
'demo': [],
|
||||||
|
'test': [],
|
||||||
|
'installable': True,
|
||||||
|
'auto_install': False,
|
||||||
|
"images":['static/description/Banner.png'],
|
||||||
|
}
|
||||||
@@ -0,0 +1,232 @@
|
|||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<odoo>
|
||||||
|
<data>
|
||||||
|
<template id="fency_report_deliveryslip_document">
|
||||||
|
<t t-if="o and 'company_id' in o">
|
||||||
|
<t t-set="company" t-value="o.company_id"></t>
|
||||||
|
</t>
|
||||||
|
<t t-if="not o or not 'company_id' in o">
|
||||||
|
<t t-set="company" t-value="res_company"></t>
|
||||||
|
</t>
|
||||||
|
<div class="header">
|
||||||
|
<div class="row mt32 mb32">
|
||||||
|
<div class="col-6">
|
||||||
|
<img t-if="company.logo" t-att-src="'data:image/png;base64,%s' % to_text(company.logo)"
|
||||||
|
style="max-height: 50px;"/>
|
||||||
|
</div>
|
||||||
|
<div class="col-6 text-right" style="font:12px lucida-console,sans-serif !important;">
|
||||||
|
<span t-field="company.partner_id"/>
|
||||||
|
<br/>
|
||||||
|
<span t-field="company.partner_id.street"/>
|
||||||
|
<br/>
|
||||||
|
<span t-field="company.partner_id.street2"/>
|
||||||
|
<br/>
|
||||||
|
<span t-field="company.partner_id.city"/>
|
||||||
|
<br/>
|
||||||
|
<span t-field="company.partner_id.country_id"/>
|
||||||
|
<br/>
|
||||||
|
<span t-field="company.partner_id.vat"/>
|
||||||
|
<br/>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<t t-call="web.external_layout">
|
||||||
|
<t t-set="o" t-value="o.with_context({'lang':o.partner_id.lang})"/>
|
||||||
|
<div class="page">
|
||||||
|
<div class="oe_structure"/>
|
||||||
|
<div class="row">
|
||||||
|
<div class="col-6" style="font:15px lucida-console,sans-serif !important;">
|
||||||
|
<span style="background-color:#3498DB;">Customer Address</span>
|
||||||
|
<br/>
|
||||||
|
<span t-field="o.partner_id"/>
|
||||||
|
<br/>
|
||||||
|
<span t-field="o.partner_id.street"/>
|
||||||
|
<br/>
|
||||||
|
<span t-field="o.partner_id.street2"/>
|
||||||
|
<br/>
|
||||||
|
<span t-field="o.partner_id.city"/>
|
||||||
|
<br/>
|
||||||
|
<span t-field="o.partner_id.state_id"/>
|
||||||
|
<br/>
|
||||||
|
<span t-field="o.partner_id.country_id"/>
|
||||||
|
<br/>
|
||||||
|
<span t-field="o.partner_id.vat"/>
|
||||||
|
<br/>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="col-6 text-right" style="font:15px lucida-console,sans-serif !important; ">
|
||||||
|
<span style="background-color:#3498DB;">Delivery Address</span>
|
||||||
|
<div t-if="o.move_lines and o.move_lines[0].partner_id and o.move_lines[0].partner_id.id != o.partner_id.id">
|
||||||
|
<div>
|
||||||
|
<div t-field="o.move_lines[0].partner_id"
|
||||||
|
t-field-options='{"widget": "contact", "fields": ["address", "name", "phone", "fax"], "no_marker": true}'/>
|
||||||
|
<div t-field="o.move_lines[0].partner_id.street"/>
|
||||||
|
<span t-field="o.move_lines[0].partner_id.street2"/>
|
||||||
|
<br/>
|
||||||
|
<span t-field="o.move_lines[0].partner_id.city"/>
|
||||||
|
<br/>
|
||||||
|
<span t-field="o.move_lines[0].partner_id.country_id"/>
|
||||||
|
<br/>
|
||||||
|
<span t-field="o.move_lines[0].partner_id.zip"/>
|
||||||
|
<br/>
|
||||||
|
<div t-field="o.move_lines[0].partner_id.vat"/>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div t-if="(o.move_lines and o.move_lines[0].partner_id and o.move_lines[0].partner_id.id == o.partner_id.id) or o.move_lines and not o.move_lines[0].partner_id">
|
||||||
|
<span t-field="o.partner_id"/>
|
||||||
|
<br/>
|
||||||
|
<span t-field="o.partner_id.street"/>
|
||||||
|
<br/>
|
||||||
|
<span t-field="o.partner_id.street2"/>
|
||||||
|
<br/>
|
||||||
|
<span t-field="o.partner_id.city"/>
|
||||||
|
<br/>
|
||||||
|
<span t-field="o.partner_id.state_id"/>
|
||||||
|
<br/>
|
||||||
|
<span t-field="o.partner_id.country_id"/>
|
||||||
|
<br/>
|
||||||
|
<span t-field="o.partner_id.vat"/>
|
||||||
|
<br/>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="row">
|
||||||
|
<div class="col-4"/>
|
||||||
|
<div class="col-8 text-right"
|
||||||
|
style="font:15px lucida-console,sans-serif !important; background-color: #3498DB; ">
|
||||||
|
<h2>
|
||||||
|
<span>
|
||||||
|
<font color="#fff">Delivery Note #</font>
|
||||||
|
<span style="color:#FFF !important;" t-field="o.name"/>
|
||||||
|
</span>
|
||||||
|
<br/>
|
||||||
|
</h2>
|
||||||
|
<div>
|
||||||
|
<div class="col-5">
|
||||||
|
<div>
|
||||||
|
<font color="#fff">Origin:</font>
|
||||||
|
</div>
|
||||||
|
<div style="color:#FFF !important;" t-field="o.picking_type_id"/>
|
||||||
|
</div>
|
||||||
|
<div class="col-4">
|
||||||
|
<div>
|
||||||
|
<div>
|
||||||
|
<font color="#fff">Scheduled Date:</font>
|
||||||
|
</div>
|
||||||
|
<div style="color:#FFF !important;" t-field="o.scheduled_date"/>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<br/>
|
||||||
|
|
||||||
|
<table class="table table-sm" style="padding-top=50px; padding-bottom=50px;"
|
||||||
|
t-if="not o.move_line_ids">
|
||||||
|
<thead>
|
||||||
|
<tr>
|
||||||
|
<th style="background-color:#3498DB !important;color:#FFF !important;">Product</th>
|
||||||
|
<th style="background-color:#3498DB !important;color:#FFF !important;">Ordered
|
||||||
|
Quantity
|
||||||
|
</th>
|
||||||
|
</tr>
|
||||||
|
</thead>
|
||||||
|
<tbody>
|
||||||
|
<tr t-foreach="o.move_lines" t-as="move">
|
||||||
|
<td>
|
||||||
|
<span t-field="move.product_id"/>
|
||||||
|
</td>
|
||||||
|
<td>
|
||||||
|
<span t-field="move.product_qty"/>
|
||||||
|
<span t-field="move.product_uom"/>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
</tbody>
|
||||||
|
</table>
|
||||||
|
<table class="table table-sm" style="padding-top=50px;" t-if="o.move_line_ids">
|
||||||
|
<t t-set="has_serial_number" t-value="o.move_line_ids.mapped('lot_id')"
|
||||||
|
groups="stock.group_production_lot"/>
|
||||||
|
<thead>
|
||||||
|
<tr>
|
||||||
|
<th style="background-color:#3498DB !important;color:#FFF !important;">Product</th>
|
||||||
|
<th style="background-color:#3498DB !important;color:#FFF !important;" name="lot_serial"
|
||||||
|
t-if="has_serial_number">
|
||||||
|
Lot/Serial Number
|
||||||
|
</th>
|
||||||
|
<th style="background-color:#3498DB !important;color:#FFF !important;">Ordered
|
||||||
|
Quantity
|
||||||
|
</th>
|
||||||
|
<th t-if="any([move_line.state == 'done' for move_line in o.move_line_ids])"
|
||||||
|
style="background-color:#3498DB !important;color:#FFF !important;">
|
||||||
|
Delivered Quantity
|
||||||
|
</th>
|
||||||
|
</tr>
|
||||||
|
</thead>
|
||||||
|
<tbody>
|
||||||
|
<tr t-foreach="o.move_line_ids" t-as="move_line">
|
||||||
|
<td>
|
||||||
|
<span t-field="move_line.product_id"/>
|
||||||
|
<p t-if="o.picking_type_code == 'outgoing'">
|
||||||
|
<span t-field="move_line.product_id.description_pickingout"/>
|
||||||
|
</p>
|
||||||
|
<p t-if="o.picking_type_code == 'incoming'">
|
||||||
|
<span t-field="move_line.product_id.description_pickingin"/>
|
||||||
|
</p>
|
||||||
|
<t t-if="not move_line.product_id and move_line.package_id">
|
||||||
|
<span t-field="move_line.package_id"/>
|
||||||
|
</t>
|
||||||
|
</td>
|
||||||
|
<t t-if="has_serial_number">
|
||||||
|
<td>
|
||||||
|
<table width="100%">
|
||||||
|
<tr>
|
||||||
|
<td>
|
||||||
|
<span t-field="move_line.lot_id"/>
|
||||||
|
<t t-if="not move_line.lot_id">
|
||||||
|
<span t-field="move_line.lot_name"/>
|
||||||
|
</t>
|
||||||
|
</td>
|
||||||
|
<td name="lot_qty">
|
||||||
|
<t t-if="move_line.product_qty">
|
||||||
|
<span t-field="move_line.product_qty"/>
|
||||||
|
</t>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
</table>
|
||||||
|
</td>
|
||||||
|
</t>
|
||||||
|
<td class="text-center">
|
||||||
|
<span t-field="move_line.package_id"/>
|
||||||
|
<span t-if="move_line.package_id">:</span>
|
||||||
|
<span t-field="move_line.product_qty"/>
|
||||||
|
<span t-field="move_line.product_uom_id"/>
|
||||||
|
</td>
|
||||||
|
<td class="text-right" t-if="move_line.state == 'done'">
|
||||||
|
<t t-if="move_line.product_qty != move_line.qty_done">
|
||||||
|
<t t-set="backorder" t-value="True"/>
|
||||||
|
</t>
|
||||||
|
<span t-field="move_line.qty_done"/>
|
||||||
|
<span t-field="move_line.product_uom_id"/>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
</tbody>
|
||||||
|
</table>
|
||||||
|
<p t-if="o.backorder_id">
|
||||||
|
This shipment is a backorder of<t t-esc="o.backorder_id.name"/>.
|
||||||
|
</p>
|
||||||
|
<p>
|
||||||
|
<t t-if="backorder">
|
||||||
|
All items couldn't be shipped, the remaining ones will be shipped as soon as they become
|
||||||
|
available.
|
||||||
|
</t>
|
||||||
|
</p>
|
||||||
|
|
||||||
|
</div>
|
||||||
|
|
||||||
|
</t>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
</data>
|
||||||
|
</odoo>
|
||||||
@@ -0,0 +1,247 @@
|
|||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<odoo>
|
||||||
|
<data>
|
||||||
|
<template id="modern_report_deliveryslip_document">
|
||||||
|
<t t-if="o and 'company_id' in o">
|
||||||
|
<t t-set="company" t-value="o.company_id"></t>
|
||||||
|
</t>
|
||||||
|
<t t-if="not o or not 'company_id' in o">
|
||||||
|
<t t-set="company" t-value="res_company"></t>
|
||||||
|
</t>
|
||||||
|
<div class="header">
|
||||||
|
<div class="row mt32 mb32">
|
||||||
|
<div class="col-6">
|
||||||
|
<img t-if="company.logo" t-att-src="'data:image/png;base64,%s' % to_text(company.logo)"
|
||||||
|
style="max-height: 50px;"/>
|
||||||
|
</div>
|
||||||
|
<div class="col-6 text-right" style="font:12px lucida-console,sans-serif !important;">
|
||||||
|
<span t-field="company.partner_id"/>
|
||||||
|
<br/>
|
||||||
|
<span t-field="company.partner_id.street"/>
|
||||||
|
<br/>
|
||||||
|
<span t-field="company.partner_id.street2"/>
|
||||||
|
<br/>
|
||||||
|
<span t-field="company.partner_id.city"/>
|
||||||
|
<br/>
|
||||||
|
<span t-field="company.partner_id.country_id"/>
|
||||||
|
<br/>
|
||||||
|
<span t-field="company.partner_id.vat"/>
|
||||||
|
<br/>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<t t-call="web.external_layout">
|
||||||
|
<t t-set="o" t-value="o.with_context({'lang':o.partner_id.lang})"/>
|
||||||
|
<div class="page">
|
||||||
|
<div class="oe_structure"/>
|
||||||
|
|
||||||
|
<table class="table table-sm" style=" table-layout:fixed;">
|
||||||
|
<thead>
|
||||||
|
<tr>
|
||||||
|
<th width="30px"
|
||||||
|
style="background-color:#893b74 !important;border: 1px !important; border-style: solid !important; border-color: #fff; color:#fff !important; ">
|
||||||
|
Customer Address
|
||||||
|
</th>
|
||||||
|
<th width="30px"
|
||||||
|
style="background-color:#893b74 !important;border: 1px !important; border-style: solid !important; border-color: #fff; color:#fff !important; ">
|
||||||
|
Contact Address
|
||||||
|
</th>
|
||||||
|
<th width="20px"
|
||||||
|
style="background-color:#893b74 !important;border: 1px !important; border-style: solid !important; border-color: #fff; color:#fff !important; ">
|
||||||
|
Origin
|
||||||
|
</th>
|
||||||
|
<th width="20px"
|
||||||
|
style="background-color:#893b74 !important;border: 1px !important; border-style: solid !important; border-color: #fff; color:#fff !important; ">
|
||||||
|
Scheduled Date
|
||||||
|
</th>
|
||||||
|
<th width="20px"
|
||||||
|
style="background-color:#893b74 !important;border: 1px !important; border-style: solid !important; border-color: #fff; color:#fff !important; ">
|
||||||
|
Delevery #
|
||||||
|
</th>
|
||||||
|
</tr>
|
||||||
|
</thead>
|
||||||
|
<tbody>
|
||||||
|
<tr>
|
||||||
|
<td style="border: 1px !important; border-style: solid !important; border-color: #fff !important;">
|
||||||
|
<div t-field="o.partner_id"/>
|
||||||
|
<t t-if="o.partner_id.street">
|
||||||
|
<t t-esc="o.partner_id.street"/>
|
||||||
|
</t>
|
||||||
|
<br/>
|
||||||
|
<t t-if="o.partner_id.street2">
|
||||||
|
<t t-esc="o.partner_id.street2"/>
|
||||||
|
</t>
|
||||||
|
<br/>
|
||||||
|
<t t-if="o.partner_id.city">
|
||||||
|
<t t-esc="o.partner_id.city"/>
|
||||||
|
</t>
|
||||||
|
<br/>
|
||||||
|
<t t-if="o.partner_id.state_id.name">
|
||||||
|
<t t-esc="o.partner_id.state_id.name"/>
|
||||||
|
</t>
|
||||||
|
<br/>
|
||||||
|
<t t-if="o.partner_id.country_id.name">
|
||||||
|
<t t-esc="o.partner_id.country_id.name"/>
|
||||||
|
</t>
|
||||||
|
<br/>
|
||||||
|
<t t-if="o.partner_id.zip">
|
||||||
|
<t t-esc="o.partner_id.zip"/>
|
||||||
|
</t>
|
||||||
|
<br/>
|
||||||
|
<div t-field="o.partner_id.vat"/>
|
||||||
|
</td>
|
||||||
|
<td style="border: 1px !important; border-style: solid !important; border-color: #fff !important;">
|
||||||
|
<div t-if="o.move_lines and o.move_lines[0].partner_id and o.move_lines[0].partner_id.id != o.partner_id.id">
|
||||||
|
<div>
|
||||||
|
<div t-field="o.partner_id"/>
|
||||||
|
<div t-field="o.partner_id.street"/>
|
||||||
|
<span t-field="o.partner_id.street2"/>
|
||||||
|
<br/>
|
||||||
|
<span t-field="o.partner_id.city"/>
|
||||||
|
<br/>
|
||||||
|
<span t-field="o.partner_id.state_id"/>
|
||||||
|
<br/>
|
||||||
|
<span t-field="o.partner_id.country_id"/>
|
||||||
|
<br/>
|
||||||
|
<span t-field="o.partner_id.zip"/>
|
||||||
|
<br/>
|
||||||
|
<div t-field="o.partner_id.vat"/>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div t-if="(o.move_lines and o.move_lines[0].partner_id and o.move_lines[0].partner_id.id == o.partner_id.id) or o.move_lines and not o.move_lines[0].partner_id">
|
||||||
|
<div t-field="o.partner_id"/>
|
||||||
|
<div t-field="o.partner_id.street"/>
|
||||||
|
<span t-field="o.partner_id.street2"/>
|
||||||
|
<br/>
|
||||||
|
<span t-field="o.partner_id.city"/>
|
||||||
|
<br/>
|
||||||
|
<span t-field="o.partner_id.state_id"/>
|
||||||
|
<br/>
|
||||||
|
<span t-field="o.partner_id.country_id"/>
|
||||||
|
<br/>
|
||||||
|
<span t-field="o.partner_id.zip"/>
|
||||||
|
<br/>
|
||||||
|
<div t-field="o.partner_id.vat"/>
|
||||||
|
</div>
|
||||||
|
</td>
|
||||||
|
<td style="border: 1px !important; border-style: solid !important; border-color: #fff !important;">
|
||||||
|
<div t-field="o.picking_type_id"/>
|
||||||
|
</td>
|
||||||
|
<td style="border: 1px !important; border-style: solid !important; border-color: #fff !important;">
|
||||||
|
<b>
|
||||||
|
<div t-field="o.scheduled_date"/>
|
||||||
|
</b>
|
||||||
|
</td>
|
||||||
|
<td style="border: 1px !important; border-style: solid !important; border-color: #fff !important;">
|
||||||
|
<b>
|
||||||
|
<div t-field="o.name"/>
|
||||||
|
</b>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
</tbody>
|
||||||
|
</table>
|
||||||
|
|
||||||
|
<table class="table table-sm" t-if="not o.move_line_ids">
|
||||||
|
<thead>
|
||||||
|
<tr>
|
||||||
|
<th style="background-color:#893b74 !important;color:#FFF !important;">
|
||||||
|
<strong>Product</strong>
|
||||||
|
</th>
|
||||||
|
<th style="background-color:#893b74 !important;color:#FFF !important;">
|
||||||
|
<strong>Ordered Quantity</strong>
|
||||||
|
</th>
|
||||||
|
</tr>
|
||||||
|
</thead>
|
||||||
|
<tbody>
|
||||||
|
<tr t-foreach="o.move_lines" t-as="move">
|
||||||
|
<td>
|
||||||
|
<span t-field="move.product_id"/>
|
||||||
|
</td>
|
||||||
|
<td>
|
||||||
|
<span t-field="move.product_qty"/>
|
||||||
|
<span t-field="move.product_uom"/>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
</tbody>
|
||||||
|
</table>
|
||||||
|
<table class="table table-sm" t-if="o.move_line_ids">
|
||||||
|
<t t-set="has_serial_number" t-value="o.move_line_ids.mapped('lot_id')"
|
||||||
|
groups="stock.group_production_lot"/>
|
||||||
|
<thead style=" background-color: #893b74;">
|
||||||
|
<tr>
|
||||||
|
<th style="background-color:#893b74 !important;color:#FFF !important;">
|
||||||
|
<strong>Product</strong>
|
||||||
|
</th>
|
||||||
|
<th style="background-color:#893b74 !important;color:#FFF !important;" name="lot_serial"
|
||||||
|
t-if="has_serial_number">
|
||||||
|
Lot/Serial Number
|
||||||
|
</th>
|
||||||
|
<th style="background-color:#893b74 !important;color:#FFF !important;"
|
||||||
|
class="text-center">
|
||||||
|
<strong>Ordered Quantity</strong>
|
||||||
|
</th>
|
||||||
|
<th style="background-color:#893b74 !important;color:#FFF !important;"
|
||||||
|
t-if="any([move_line.state == 'done' for move_line in o.move_line_ids])"
|
||||||
|
class="text-right">
|
||||||
|
<strong>Delivered Quantity</strong>
|
||||||
|
</th>
|
||||||
|
</tr>
|
||||||
|
</thead>
|
||||||
|
<tbody>
|
||||||
|
<tr t-foreach="o.move_line_ids" t-as="move_line">
|
||||||
|
<td>
|
||||||
|
<span t-field="move_line.product_id"/>
|
||||||
|
<p t-if="o.picking_type_code == 'outgoing'">
|
||||||
|
<span t-field="move_line.product_id.description_pickingout"/>
|
||||||
|
</p>
|
||||||
|
<p t-if="o.picking_type_code == 'incoming'">
|
||||||
|
<span t-field="move_line.product_id.description_pickingin"/>
|
||||||
|
</p>
|
||||||
|
<t t-if="not move_line.product_id and move_line.package_id">
|
||||||
|
<span t-field="move_line.package_id"/>
|
||||||
|
</t>
|
||||||
|
</td>
|
||||||
|
<t t-if="has_serial_number">
|
||||||
|
<td>
|
||||||
|
<table width="100%">
|
||||||
|
<tr>
|
||||||
|
<td>
|
||||||
|
<span t-field="move_line.lot_id"/>
|
||||||
|
<t t-if="not move_line.lot_id">
|
||||||
|
<span t-field="move_line.lot_name"/>
|
||||||
|
</t>
|
||||||
|
</td>
|
||||||
|
<td name="lot_qty">
|
||||||
|
<t t-if="move_line.product_qty">
|
||||||
|
<span t-field="move_line.product_qty"/>
|
||||||
|
</t>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
</table>
|
||||||
|
</td>
|
||||||
|
</t>
|
||||||
|
<td class="text-center">
|
||||||
|
<span t-field="move_line.package_id"/>
|
||||||
|
<span t-if="move_line.package_id">:</span>
|
||||||
|
<span t-field="move_line.product_qty"/>
|
||||||
|
<span t-field="move_line.product_uom_id"/>
|
||||||
|
</td>
|
||||||
|
<td class="text-right" t-if="move_line.state == 'done'">
|
||||||
|
<t t-if="move_line.product_qty != move_line.qty_done">
|
||||||
|
<t t-set="backorder" t-value="True"/>
|
||||||
|
</t>
|
||||||
|
<span t-field="move_line.qty_done"/>
|
||||||
|
<span t-field="move_line.product_uom_id"/>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
</tbody>
|
||||||
|
</table>
|
||||||
|
|
||||||
|
</div>
|
||||||
|
|
||||||
|
</t>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
</data>
|
||||||
|
</odoo>
|
||||||
@@ -0,0 +1,237 @@
|
|||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<odoo>
|
||||||
|
<data>
|
||||||
|
<template id="odoo_std_report_deliveryslip_document">
|
||||||
|
<t t-if="o and 'company_id' in o">
|
||||||
|
<t t-set="company" t-value="o.company_id"></t>
|
||||||
|
</t>
|
||||||
|
<t t-if="not o or not 'company_id' in o">
|
||||||
|
<t t-set="company" t-value="res_company"></t>
|
||||||
|
</t>
|
||||||
|
<div class="header">
|
||||||
|
<div class="row mt32 mb32">
|
||||||
|
<div class="col-6">
|
||||||
|
<img t-if="company.logo" t-att-src="'data:image/png;base64,%s' % to_text(company.logo)"
|
||||||
|
style="max-height: 50px;"/>
|
||||||
|
</div>
|
||||||
|
<div class="col-6 text-right" style="font:12px lucida-console,sans-serif !important;">
|
||||||
|
<span t-field="company.partner_id"/>
|
||||||
|
<br/>
|
||||||
|
<span t-field="company.partner_id.street"/>
|
||||||
|
<br/>
|
||||||
|
<span t-field="company.partner_id.street2"/>
|
||||||
|
<br/>
|
||||||
|
<span t-field="company.partner_id.city"/>
|
||||||
|
<br/>
|
||||||
|
<span t-field="company.partner_id.country_id"/>
|
||||||
|
<br/>
|
||||||
|
<span t-field="company.partner_id.vat"/>
|
||||||
|
<br/>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<t t-call="web.external_layout">
|
||||||
|
<t t-set="o" t-value="o.with_context({'lang':o.partner_id.lang})"/>
|
||||||
|
<div class="page">
|
||||||
|
<div class="oe_structure"/>
|
||||||
|
<div class="row">
|
||||||
|
<div class="col-6" style="font:15px lucida-console,sans-serif !important;">
|
||||||
|
<span style="background-color:#893b74; color:#FFF; font:20px lucida-console,sans-serif !important;">
|
||||||
|
Customer Address
|
||||||
|
</span>
|
||||||
|
<br/>
|
||||||
|
<span t-field="o.partner_id"/>
|
||||||
|
<br/>
|
||||||
|
<span t-field="o.partner_id.street"/>
|
||||||
|
<br/>
|
||||||
|
<span t-field="o.partner_id.street2"/>
|
||||||
|
<br/>
|
||||||
|
<span t-field="o.partner_id.city"/>
|
||||||
|
<br/>
|
||||||
|
<span t-field="o.partner_id.state_id"/>
|
||||||
|
<br/>
|
||||||
|
<span t-field="o.partner_id.country_id"/>
|
||||||
|
<br/>
|
||||||
|
<span t-field="o.partner_id.vat"/>
|
||||||
|
<br/>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="col-6 text-right" style="font:15px lucida-console,sans-serif !important; ">
|
||||||
|
<span style="background-color:#893b74; color:#FFF; font:20px lucida-console,sans-serif !important;">
|
||||||
|
Delivery Address
|
||||||
|
</span>
|
||||||
|
<div t-if="o.move_lines and o.move_lines[0].partner_id and o.move_lines[0].partner_id.id != o.partner_id.id">
|
||||||
|
<div>
|
||||||
|
<span t-field="o.partner_id"/>
|
||||||
|
<br/>
|
||||||
|
<span t-field="o.partner_id.street"/>
|
||||||
|
<br/>
|
||||||
|
<span t-field="o.partner_id.street2"/>
|
||||||
|
<br/>
|
||||||
|
<span t-field="o.partner_id.city"/>
|
||||||
|
<br/>
|
||||||
|
<span t-field="o.partner_id.state_id"/>
|
||||||
|
<br/>
|
||||||
|
<span t-field="o.partner_id.country_id"/>
|
||||||
|
<br/>
|
||||||
|
<span t-field="o.partner_id.vat"/>
|
||||||
|
<br/>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
</div>
|
||||||
|
<div t-if="(o.move_lines and o.move_lines[0].partner_id and o.move_lines[0].partner_id.id == o.partner_id.id) or o.move_lines and not o.move_lines[0].partner_id">
|
||||||
|
<span t-field="o.partner_id"/>
|
||||||
|
<br/>
|
||||||
|
<span t-field="o.partner_id.street"/>
|
||||||
|
<br/>
|
||||||
|
<span t-field="o.partner_id.street2"/>
|
||||||
|
<br/>
|
||||||
|
<span t-field="o.partner_id.city"/>
|
||||||
|
<br/>
|
||||||
|
<span t-field="o.partner_id.state_id"/>
|
||||||
|
<br/>
|
||||||
|
<span t-field="o.partner_id.country_id"/>
|
||||||
|
<br/>
|
||||||
|
<span t-field="o.partner_id.vat"/>
|
||||||
|
<br/>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="row">
|
||||||
|
<div class="col-4"/>
|
||||||
|
<div class="col-8 text-right"
|
||||||
|
style="font:15px lucida-console,sans-serif !important; background-color: #893b74; ">
|
||||||
|
<h2>
|
||||||
|
<span>
|
||||||
|
<font color="#fff">Delivery Note #</font>
|
||||||
|
<span style="color:#FFF !important;" t-field="o.name"/>
|
||||||
|
</span>
|
||||||
|
<br/>
|
||||||
|
</h2>
|
||||||
|
<div>
|
||||||
|
<div class="col-5 text-left">
|
||||||
|
<div>
|
||||||
|
<font color="#fff">Origin:</font>
|
||||||
|
</div>
|
||||||
|
<div style="color:#FFF !important;" t-field="o.picking_type_id"/>
|
||||||
|
</div>
|
||||||
|
<br/>
|
||||||
|
<div class="col-3 text-left">
|
||||||
|
<div>
|
||||||
|
<font color="#fff">Scheduled Date:</font>
|
||||||
|
</div>
|
||||||
|
<div style="color:#FFF !important;" t-field="o.scheduled_date"/>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<br/>
|
||||||
|
|
||||||
|
<table class="table table-sm" style="padding-top=50px; padding-bottom=50px;"
|
||||||
|
t-if="not o.move_line_ids">
|
||||||
|
<thead>
|
||||||
|
<tr>
|
||||||
|
<th style="background-color:#893b74 !important;color:#FFF !important;">Product</th>
|
||||||
|
<th style="background-color:#893b74 !important;color:#FFF !important;">Ordered
|
||||||
|
Quantity
|
||||||
|
</th>
|
||||||
|
</tr>
|
||||||
|
</thead>
|
||||||
|
<tbody>
|
||||||
|
<tr t-foreach="o.move_lines" t-as="move">
|
||||||
|
<td>
|
||||||
|
<span t-field="move.product_id"/>
|
||||||
|
</td>
|
||||||
|
<td>
|
||||||
|
<span t-field="move.product_qty"/>
|
||||||
|
<span t-field="move.product_uom"/>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
</tbody>
|
||||||
|
</table>
|
||||||
|
<table class="table table-sm" style="padding-top=50px;" t-if="o.move_line_ids">
|
||||||
|
<t t-set="has_serial_number" t-value="o.move_line_ids.mapped('lot_id')"
|
||||||
|
groups="stock.group_production_lot"/>
|
||||||
|
<thead style=" background-color: #893b74;">
|
||||||
|
<tr>
|
||||||
|
<th style="background-color:#893b74 !important;color:#FFF !important;">Product</th>
|
||||||
|
<th style="background-color:#893b74 !important;color:#FFF !important;" name="lot_serial"
|
||||||
|
t-if="has_serial_number">
|
||||||
|
Lot/Serial Number
|
||||||
|
</th>
|
||||||
|
<th style="background-color:#893b74 !important;color:#FFF !important;"
|
||||||
|
class="text-center">Ordered Quantity
|
||||||
|
</th>
|
||||||
|
<th style="background-color:#893b74 !important;color:#FFF !important;"
|
||||||
|
t-if="any([move_line.state == 'done' for move_line in o.move_line_ids])"
|
||||||
|
class="text-right">
|
||||||
|
Delivered Quantity
|
||||||
|
</th>
|
||||||
|
</tr>
|
||||||
|
</thead>
|
||||||
|
<tbody>
|
||||||
|
<tr t-foreach="o.move_line_ids" t-as="move_line">
|
||||||
|
<td>
|
||||||
|
<span t-field="move_line.product_id"/>
|
||||||
|
<p t-if="o.picking_type_code == 'outgoing'">
|
||||||
|
<span t-field="move_line.product_id.description_pickingout"/>
|
||||||
|
</p>
|
||||||
|
<p t-if="o.picking_type_code == 'incoming'">
|
||||||
|
<span t-field="move_line.product_id.description_pickingin"/>
|
||||||
|
</p>
|
||||||
|
<t t-if="not move_line.product_id and move_line.package_id">
|
||||||
|
<span t-field="move_line.package_id"/>
|
||||||
|
</t>
|
||||||
|
</td>
|
||||||
|
<t t-if="has_serial_number">
|
||||||
|
<td>
|
||||||
|
<table width="100%">
|
||||||
|
<tr>
|
||||||
|
<td>
|
||||||
|
<span t-field="move_line.lot_id"/>
|
||||||
|
<t t-if="not move_line.lot_id">
|
||||||
|
<span t-field="move_line.lot_name"/>
|
||||||
|
</t>
|
||||||
|
</td>
|
||||||
|
<td name="lot_qty">
|
||||||
|
<t t-if="move_line.product_qty">
|
||||||
|
<span t-field="move_line.product_qty"/>
|
||||||
|
</t>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
</table>
|
||||||
|
</td>
|
||||||
|
</t>
|
||||||
|
<td class="text-center">
|
||||||
|
<span t-field="move_line.package_id"/>
|
||||||
|
<span t-if="move_line.package_id">:</span>
|
||||||
|
<span t-field="move_line.product_qty"/>
|
||||||
|
<span t-field="move_line.product_uom_id"/>
|
||||||
|
</td>
|
||||||
|
<td class="text-right" t-if="move_line.state == 'done'">
|
||||||
|
<t t-if="move_line.product_qty != move_line.qty_done">
|
||||||
|
<t t-set="backorder" t-value="True"/>
|
||||||
|
</t>
|
||||||
|
<span t-field="move_line.qty_done"/>
|
||||||
|
<span t-field="move_line.product_uom_id"/>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
</tbody>
|
||||||
|
</table>
|
||||||
|
<p t-if="o.backorder_id">
|
||||||
|
This shipment is a backorder of<t t-esc="o.backorder_id.name"/>.
|
||||||
|
</p>
|
||||||
|
<p>
|
||||||
|
<t t-if="backorder">
|
||||||
|
All items couldn't be shipped, the remaining ones will be shipped as soon as they become
|
||||||
|
available.
|
||||||
|
</t>
|
||||||
|
</p>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
</t>
|
||||||
|
</template>
|
||||||
|
</data>
|
||||||
|
</odoo>
|
||||||
@@ -0,0 +1,295 @@
|
|||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<odoo>
|
||||||
|
<data>
|
||||||
|
<template id="classic_report_deliveryslip_document">
|
||||||
|
<t t-if="o and 'company_id' in o">
|
||||||
|
<t t-set="company" t-value="o.company_id"></t>
|
||||||
|
</t>
|
||||||
|
<t t-if="not o or not 'company_id' in o">
|
||||||
|
<t t-set="company" t-value="res_company"></t>
|
||||||
|
</t>
|
||||||
|
<div class="header">
|
||||||
|
<div class="row mt32 mb32">
|
||||||
|
<div class="col-6">
|
||||||
|
<img t-if="company.logo" t-att-src="'data:image/png;base64,%s' % to_text(company.logo)"
|
||||||
|
style="max-height: 50px;"/>
|
||||||
|
</div>
|
||||||
|
<div class="col-6 text-right" style="font:12px lucida-console,sans-serif !important;">
|
||||||
|
<span t-field="company.partner_id"/>
|
||||||
|
<br/>
|
||||||
|
<span t-field="company.partner_id.street"/>
|
||||||
|
<br/>
|
||||||
|
<span t-field="company.partner_id.street2"/>
|
||||||
|
<br/>
|
||||||
|
<span t-field="company.partner_id.city"/>
|
||||||
|
<br/>
|
||||||
|
<span t-field="company.partner_id.country_id"/>
|
||||||
|
<br/>
|
||||||
|
<span t-field="company.partner_id.vat"/>
|
||||||
|
<br/>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<t t-call="web.external_layout">
|
||||||
|
<t t-set="o" t-value="o.with_context({'lang':o.partner_id.lang})"/>
|
||||||
|
<div class="page">
|
||||||
|
<div class="oe_structure"/>
|
||||||
|
|
||||||
|
<table class="table table-sm" style=" table-layout:fixed;">
|
||||||
|
<thead>
|
||||||
|
<tr>
|
||||||
|
<th width="30px"
|
||||||
|
style="background-color:#3498DB !important;border: 1px !important; border-style: solid !important; border-color: #fff; color:#fff !important; ">
|
||||||
|
Customer Address
|
||||||
|
</th>
|
||||||
|
<th width="30px"
|
||||||
|
style="background-color:#3498DB !important;border: 1px !important; border-style: solid !important; border-color: #fff; color:#fff !important; ">
|
||||||
|
Contact Address
|
||||||
|
</th>
|
||||||
|
<th width="20px"
|
||||||
|
style="background-color:#3498DB !important;border: 1px !important; border-style: solid !important; border-color: #fff; color:#fff !important; ">
|
||||||
|
Origin
|
||||||
|
</th>
|
||||||
|
<th width="20px"
|
||||||
|
style="background-color:#3498DB !important;border: 1px !important; border-style: solid !important; border-color: #fff; color:#fff !important; ">
|
||||||
|
Scheduled Date
|
||||||
|
</th>
|
||||||
|
<th width="20px"
|
||||||
|
style="background-color:#3498DB !important;border: 1px !important; border-style: solid !important; border-color: #fff; color:#fff !important; ">
|
||||||
|
Delevery #
|
||||||
|
</th>
|
||||||
|
</tr>
|
||||||
|
</thead>
|
||||||
|
<tbody>
|
||||||
|
<tr>
|
||||||
|
<td style="border: 1px !important; border-style: solid !important; border-color: #fff !important;">
|
||||||
|
<div t-field="o.partner_id"/>
|
||||||
|
<t t-if="o.partner_id.street">
|
||||||
|
<t t-esc="o.partner_id.street"/>
|
||||||
|
</t>
|
||||||
|
<br/>
|
||||||
|
<t t-if="o.partner_id.street2">
|
||||||
|
<t t-esc="o.partner_id.street2"/>
|
||||||
|
</t>
|
||||||
|
<br/>
|
||||||
|
<t t-if="o.partner_id.city">
|
||||||
|
<t t-esc="o.partner_id.city"/>
|
||||||
|
</t>
|
||||||
|
<br/>
|
||||||
|
<t t-if="o.partner_id.state_id.name">
|
||||||
|
<t t-esc="o.partner_id.state_id.name"/>
|
||||||
|
</t>
|
||||||
|
<br/>
|
||||||
|
<t t-if="o.partner_id.country_id.name">
|
||||||
|
<t t-esc="o.partner_id.country_id.name"/>
|
||||||
|
</t>
|
||||||
|
<br/>
|
||||||
|
<t t-if="o.partner_id.zip">
|
||||||
|
<t t-esc="o.partner_id.zip"/>
|
||||||
|
</t>
|
||||||
|
<br/>
|
||||||
|
<div t-field="o.partner_id.vat"/>
|
||||||
|
</td>
|
||||||
|
|
||||||
|
<td style="border: 1px !important; border-style: solid !important; border-color: #fff !important;">
|
||||||
|
<div t-if="o.move_lines and o.move_lines[0].partner_id and o.move_lines[0].partner_id.id != o.partner_id.id">
|
||||||
|
<div>
|
||||||
|
<div t-field="o.move_lines[0].partner_id"/>
|
||||||
|
<t t-if="o.move_lines[0].partner_id.street">
|
||||||
|
<t t-esc="o.move_lines[0].partner_id.street"/>
|
||||||
|
</t>
|
||||||
|
<br/>
|
||||||
|
<t t-if="o.move_lines[0].partner_id.street2">
|
||||||
|
<t t-esc="o.move_lines[0].partner_id.street2"/>
|
||||||
|
</t>
|
||||||
|
<br/>
|
||||||
|
<t t-if="o.move_lines[0].partner_id.city">
|
||||||
|
<t t-esc="o.move_lines[0].partner_id.city"/>
|
||||||
|
</t>
|
||||||
|
<br/>
|
||||||
|
<t t-if="o.move_lines[0].partner_id.state_id.name">
|
||||||
|
<t t-esc="o.move_lines[0].partner_id.state_id.name"/>
|
||||||
|
</t>
|
||||||
|
<br/>
|
||||||
|
<t t-if="o.move_lines[0].partner_id.country_id.name">
|
||||||
|
<t t-esc="o.move_lines[0].partner_id.country_id.name"/>
|
||||||
|
</t>
|
||||||
|
<br/>
|
||||||
|
<t t-if="o.move_lines[0].partner_id.zip">
|
||||||
|
<t t-esc="o.move_lines[0].partner_id.zip"/>
|
||||||
|
</t>
|
||||||
|
<br/>
|
||||||
|
</div>
|
||||||
|
<div t-field="o.move_lines[0].partner_id.vat"/>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div t-if="(o.move_lines and o.move_lines[0].partner_id and o.move_lines[0].partner_id.id == o.partner_id.id) or o.move_lines and not o.move_lines[0].partner_id">
|
||||||
|
<div t-field="o.partner_id"/>
|
||||||
|
<t t-if="o.partner_id.street">
|
||||||
|
<t t-esc="o.partner_id.street"/>
|
||||||
|
</t>
|
||||||
|
<br/>
|
||||||
|
<t t-if="o.partner_id.street2">
|
||||||
|
<t t-esc="o.partner_id.street2"/>
|
||||||
|
</t>
|
||||||
|
<br/>
|
||||||
|
<t t-if="o.partner_id.city">
|
||||||
|
<t t-esc="o.partner_id.city"/>
|
||||||
|
</t>
|
||||||
|
<br/>
|
||||||
|
<t t-if="o.partner_id.state_id.name">
|
||||||
|
<t t-esc="o.partner_id.state_id.name"/>
|
||||||
|
</t>
|
||||||
|
<br/>
|
||||||
|
<t t-if="o.partner_id.country_id.name">
|
||||||
|
<t t-esc="o.partner_id.country_id.name"/>
|
||||||
|
</t>
|
||||||
|
<br/>
|
||||||
|
<t t-if="o.partner_id.zip">
|
||||||
|
<t t-esc="o.partner_id.zip"/>
|
||||||
|
</t>
|
||||||
|
<br/>
|
||||||
|
<div t-field="o.partner_id.vat"/>
|
||||||
|
</div>
|
||||||
|
</td>
|
||||||
|
<td style="border: 1px !important; border-style: solid !important; border-color: #fff !important;">
|
||||||
|
<div t-field="o.picking_type_id"/>
|
||||||
|
</td>
|
||||||
|
<td style="border: 1px !important; border-style: solid !important; border-color: #fff !important;">
|
||||||
|
<b>
|
||||||
|
<div t-field="o.scheduled_date"/>
|
||||||
|
</b>
|
||||||
|
</td>
|
||||||
|
<td style="border: 1px !important; border-style: solid !important; border-color: #fff !important;">
|
||||||
|
<b>
|
||||||
|
<div t-field="o.name"/>
|
||||||
|
</b>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
</tbody>
|
||||||
|
</table>
|
||||||
|
|
||||||
|
<table class="table table-sm" t-if="not o.move_line_ids">
|
||||||
|
<thead>
|
||||||
|
<tr>
|
||||||
|
<th style="background-color:#3498DB !important;color:#FFF !important;">Product</th>
|
||||||
|
<th style="background-color:#3498DB !important;color:#FFF !important;">Ordered
|
||||||
|
Quantity
|
||||||
|
</th>
|
||||||
|
</tr>
|
||||||
|
</thead>
|
||||||
|
<tbody>
|
||||||
|
<tr t-foreach="o.move_lines" t-as="move">
|
||||||
|
<td>
|
||||||
|
<span t-field="move.product_id"/>
|
||||||
|
</td>
|
||||||
|
<td>
|
||||||
|
<span t-field="move.product_qty"/>
|
||||||
|
<span t-field="move.product_uom"/>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
</tbody>
|
||||||
|
</table>
|
||||||
|
<table class="table table-sm" t-if="o.move_line_ids">
|
||||||
|
<t t-set="has_serial_number" t-value="o.move_line_ids.mapped('lot_id')"
|
||||||
|
groups="stock.group_production_lot"/>
|
||||||
|
<thead>
|
||||||
|
<tr>
|
||||||
|
<th style="background-color:#3498DB !important;color:#FFF !important;">Product</th>
|
||||||
|
<th style="background-color:#3498DB !important;color:#FFF !important;" name="lot_serial"
|
||||||
|
t-if="has_serial_number">
|
||||||
|
Lot/Serial Number
|
||||||
|
</th>
|
||||||
|
<th style="background-color:#3498DB !important;color:#FFF !important;"
|
||||||
|
class="text-center">Ordered Quantity
|
||||||
|
</th>
|
||||||
|
<th style="background-color:#3498DB !important;color:#FFF !important;"
|
||||||
|
t-if="any([move_line.state == 'done' for move_line in o.move_line_ids])"
|
||||||
|
class="text-right">
|
||||||
|
Delivered Quantity
|
||||||
|
</th>
|
||||||
|
</tr>
|
||||||
|
</thead>
|
||||||
|
<tbody>
|
||||||
|
<tr t-foreach="o.move_line_ids" t-as="move_line">
|
||||||
|
<td>
|
||||||
|
<span t-field="move_line.product_id"/>
|
||||||
|
<p t-if="o.picking_type_code == 'outgoing'">
|
||||||
|
<span t-field="move_line.product_id.description_pickingout"/>
|
||||||
|
</p>
|
||||||
|
<p t-if="o.picking_type_code == 'incoming'">
|
||||||
|
<span t-field="move_line.product_id.description_pickingin"/>
|
||||||
|
</p>
|
||||||
|
<t t-if="not move_line.product_id and move_line.package_id">
|
||||||
|
<span t-field="move_line.package_id"/>
|
||||||
|
</t>
|
||||||
|
</td>
|
||||||
|
<t t-if="has_serial_number">
|
||||||
|
<td>
|
||||||
|
<table width="100%">
|
||||||
|
<tr>
|
||||||
|
<td>
|
||||||
|
<span t-field="move_line.lot_id"/>
|
||||||
|
<t t-if="not move_line.lot_id">
|
||||||
|
<span t-field="move_line.lot_name"/>
|
||||||
|
</t>
|
||||||
|
</td>
|
||||||
|
<td name="lot_qty">
|
||||||
|
<t t-if="move_line.product_qty">
|
||||||
|
<span t-field="move_line.product_qty"/>
|
||||||
|
</t>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
</table>
|
||||||
|
</td>
|
||||||
|
</t>
|
||||||
|
<td class="text-center">
|
||||||
|
<span t-field="move_line.package_id"/>
|
||||||
|
<span t-if="move_line.package_id">:</span>
|
||||||
|
<span t-field="move_line.product_qty"/>
|
||||||
|
<span t-field="move_line.product_uom_id"/>
|
||||||
|
</td>
|
||||||
|
<td class="text-right" t-if="move_line.state == 'done'">
|
||||||
|
<t t-if="move_line.product_qty != move_line.qty_done">
|
||||||
|
<t t-set="backorder" t-value="True"/>
|
||||||
|
</t>
|
||||||
|
<span t-field="move_line.qty_done"/>
|
||||||
|
<span t-field="move_line.product_uom_id"/>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
</tbody>
|
||||||
|
</table>
|
||||||
|
|
||||||
|
</div>
|
||||||
|
|
||||||
|
</t>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<template id="report_deliveryslip" inherit_id="stock.report_deliveryslip">
|
||||||
|
<xpath expr="//t[@t-call='stock.report_delivery_document']" position='replace'>
|
||||||
|
|
||||||
|
<t t-call="web.html_container">
|
||||||
|
<t t-foreach="docs" t-as="o">
|
||||||
|
<t t-if="o.company_id.stock_template == 'classic'">
|
||||||
|
<t t-call="bi_professional_reports_templates.classic_report_deliveryslip_document"
|
||||||
|
t-lang="o.partner_id.lang"/>
|
||||||
|
</t>
|
||||||
|
<t t-if="o.company_id.stock_template == 'fency'">
|
||||||
|
<t t-call="bi_professional_reports_templates.fency_report_deliveryslip_document"
|
||||||
|
t-lang="o.partner_id.lang"/>
|
||||||
|
</t>
|
||||||
|
<t t-if="o.company_id.stock_template == 'modern'">
|
||||||
|
<t t-call="bi_professional_reports_templates.modern_report_deliveryslip_document"
|
||||||
|
t-lang="o.partner_id.lang"/>
|
||||||
|
</t>
|
||||||
|
<t t-if="o.company_id.stock_template == 'odoo_standard'">
|
||||||
|
<t t-call="bi_professional_reports_templates.odoo_std_report_deliveryslip_document"
|
||||||
|
t-lang="o.partner_id.lang"/>
|
||||||
|
</t>
|
||||||
|
</t>
|
||||||
|
</t>
|
||||||
|
</xpath>
|
||||||
|
</template>
|
||||||
|
</data>
|
||||||
|
</odoo>
|
||||||
@@ -0,0 +1,6 @@
|
|||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<odoo>
|
||||||
|
<data>
|
||||||
|
|
||||||
|
</data>
|
||||||
|
</odoo>
|
||||||
@@ -0,0 +1,7 @@
|
|||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<odoo>
|
||||||
|
<data>
|
||||||
|
|
||||||
|
|
||||||
|
</data>
|
||||||
|
</odoo>
|
||||||
@@ -0,0 +1,304 @@
|
|||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<odoo>
|
||||||
|
<data>
|
||||||
|
<template id="fency_report_invoice_document">
|
||||||
|
<t t-if="o and 'company_id' in o">
|
||||||
|
<t t-set="company" t-value="o.company_id"></t>
|
||||||
|
</t>
|
||||||
|
<t t-if="not o or not 'company_id' in o">
|
||||||
|
<t t-set="company" t-value="res_company"></t>
|
||||||
|
</t>
|
||||||
|
<div class="header">
|
||||||
|
<div class="row mt32 mb32">
|
||||||
|
<div class="col-6">
|
||||||
|
<img t-if="company.logo" t-att-src="'data:image/png;base64,%s' % to_text(company.logo)"
|
||||||
|
style="max-height: 50px;"/>
|
||||||
|
</div>
|
||||||
|
<div class="col-6 text-right" style="font:12px lucida-console,sans-serif !important;">
|
||||||
|
<span t-field="company.partner_id"/>
|
||||||
|
<br/>
|
||||||
|
<span t-field="company.partner_id.street"/>
|
||||||
|
<br/>
|
||||||
|
<span t-field="company.partner_id.street2"/>
|
||||||
|
<br/>
|
||||||
|
<span t-field="company.partner_id.city"/>
|
||||||
|
<br/>
|
||||||
|
<span t-field="company.partner_id.country_id"/>
|
||||||
|
<br/>
|
||||||
|
<span t-field="company.partner_id.vat"/>
|
||||||
|
<br/>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<t t-call="web.external_layout">
|
||||||
|
<t t-set="o" t-value="o.with_context({'lang':o.partner_id.lang})"/>
|
||||||
|
<div class="page">
|
||||||
|
|
||||||
|
<div style=" background-color: #3498DB;">
|
||||||
|
<h2>
|
||||||
|
<span t-if="o.type == 'out_invoice' and (o.state == 'draft' or o.state == 'posted')">
|
||||||
|
<font color="#fff">Invoice</font>
|
||||||
|
</span>
|
||||||
|
<span t-if="o.type == 'out_invoice' and o.state == 'proforma2'">
|
||||||
|
<font color="#fff">PRO-FORMA</font>
|
||||||
|
</span>
|
||||||
|
<span t-if="o.type == 'out_invoice' and o.state == 'draft'">
|
||||||
|
<font color="#fff">Draft Invoice</font>
|
||||||
|
</span>
|
||||||
|
<span t-if="o.type == 'out_invoice' and o.state == 'cancel'">
|
||||||
|
<font color="#fff">Cancelled Invoice</font>
|
||||||
|
</span>
|
||||||
|
<span t-if="o.type == 'out_refund'">
|
||||||
|
<font color="#fff">Refund</font>
|
||||||
|
</span>
|
||||||
|
<span t-if="o.type == 'in_refund'">
|
||||||
|
<font color="#fff">Vendor Refund</font>
|
||||||
|
</span>
|
||||||
|
<span t-if="o.type == 'in_invoice'">
|
||||||
|
<font color="#fff">Vendor Bill</font>
|
||||||
|
</span>
|
||||||
|
<font color="#fff">
|
||||||
|
<span t-field="o.name"/>
|
||||||
|
</font>
|
||||||
|
</h2>
|
||||||
|
|
||||||
|
<div class="row mt32 mb32">
|
||||||
|
|
||||||
|
<div class="col-3" t-if="o.invoice_date">
|
||||||
|
<font color="#fff">
|
||||||
|
<strong>Invoice Date:</strong>
|
||||||
|
<p t-field="o.invoice_date"/>
|
||||||
|
</font>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="col-3"
|
||||||
|
t-if="o.invoice_date_due and o.type == 'out_invoice' and (o.state == 'draft' or o.state == 'posted')">
|
||||||
|
<font color="#fff">
|
||||||
|
<strong>Due Date:</strong>
|
||||||
|
<p t-field="o.invoice_date_due"/>
|
||||||
|
</font>
|
||||||
|
</div>
|
||||||
|
<div class="col-3" t-if="o.invoice_payment_term_id">
|
||||||
|
<font color="#fff">
|
||||||
|
<strong>Payment Term:</strong>
|
||||||
|
<p t-field="o.invoice_payment_term_id"/>
|
||||||
|
</font>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="col-3" t-if="o.user_id">
|
||||||
|
<font color="#fff">
|
||||||
|
<strong>SalesPerson:</strong>
|
||||||
|
<p t-field="o.user_id"/>
|
||||||
|
</font>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div style="padding-top:20px;">
|
||||||
|
<div class="col-3" style="font:15px lucida-console,sans-serif !important;">
|
||||||
|
<strong>Customer Address</strong>
|
||||||
|
<br/>
|
||||||
|
<span style="color:#3498DB !important;" t-field="o.partner_id"/>
|
||||||
|
<br/>
|
||||||
|
<span style="color:gray !important;" t-field="o.partner_id.street"/>
|
||||||
|
<br/>
|
||||||
|
<span style="color:gray !important;" t-field="o.partner_id.street2"/>
|
||||||
|
<br/>
|
||||||
|
<span style="color:gray !important;" t-field="o.partner_id.city"/>
|
||||||
|
<br/>
|
||||||
|
<span style="color:gray !important;" t-field="o.partner_id.country_id"/>
|
||||||
|
<br/>
|
||||||
|
<span style="color:gray !important;" t-field="o.partner_id.vat"/>
|
||||||
|
<br/>
|
||||||
|
</div>
|
||||||
|
<div style="padding-top:20px;"></div>
|
||||||
|
<!-- Is there a discount on at least one line? -->
|
||||||
|
<t t-set="display_discount" t-value="any([l.discount for l in o.invoice_line_ids])"/>
|
||||||
|
|
||||||
|
<table class="table table-sm">
|
||||||
|
<thead>
|
||||||
|
<tr>
|
||||||
|
<th style="background-color:#3498DB !important;color:#FFF !important;">Description
|
||||||
|
</th>
|
||||||
|
<th class="text-right"
|
||||||
|
style="background-color:#3498DB !important;color:#FFF !important;">Quantity
|
||||||
|
</th>
|
||||||
|
<th class="text-right"
|
||||||
|
style="background-color:#3498DB !important;color:#FFF !important;">Unit Price
|
||||||
|
</th>
|
||||||
|
<th t-if="display_discount" class="text-right"
|
||||||
|
groups="sale.group_discount_per_so_line"
|
||||||
|
style="background-color:#3498DB !important;color:#FFF !important;">Disc.(%)
|
||||||
|
</th>
|
||||||
|
<th class="text-right"
|
||||||
|
style="background-color:#3498DB !important;color:#FFF !important;">Taxes
|
||||||
|
</th>
|
||||||
|
<th class="text-right"
|
||||||
|
style="background-color:#3498DB !important;color:#FFF !important;">Price
|
||||||
|
</th>
|
||||||
|
</tr>
|
||||||
|
</thead>
|
||||||
|
<tbody class="invoice_tbody">
|
||||||
|
<tr t-foreach="o.invoice_line_ids" t-as="l">
|
||||||
|
<td>
|
||||||
|
<span t-field="l.name"/>
|
||||||
|
</td>
|
||||||
|
<td class="text-right">
|
||||||
|
<span t-field="l.quantity"/>
|
||||||
|
<span t-field="l.uom_id" groups="product.group_uom"/>
|
||||||
|
</td>
|
||||||
|
<td class="text-right">
|
||||||
|
<span t-field="l.price_unit"/>
|
||||||
|
</td>
|
||||||
|
<td t-if="display_discount" class="text-right"
|
||||||
|
groups="sale.group_discount_per_so_line">
|
||||||
|
<span t-field="l.discount"/>
|
||||||
|
</td>
|
||||||
|
<td>
|
||||||
|
<span t-esc="', '.join(map(lambda x: (x.description or x.name), l.tax_ids))"/>
|
||||||
|
</td>
|
||||||
|
<td class="text-right">
|
||||||
|
<span t-field="l.price_subtotal"
|
||||||
|
t-field-options='{"widget": "monetary", "display_currency": "o.currency_id"}'/>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
</tbody>
|
||||||
|
</table>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div>
|
||||||
|
<div class="col-4 pull-right">
|
||||||
|
<table class="table table-condensed">
|
||||||
|
<tr class="border-black">
|
||||||
|
<td>
|
||||||
|
<strong>Subtotal</strong>
|
||||||
|
</td>
|
||||||
|
<td class="text-right">
|
||||||
|
<span t-field="o.amount_untaxed"
|
||||||
|
t-field-options='{"widget": "monetary", "display_currency": "o.currency_id"}'/>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
<t t-foreach="o.amount_by_group" t-as="amount_by_group">
|
||||||
|
<tr>
|
||||||
|
<td><span t-esc="amount_by_group[0]"/></td>
|
||||||
|
<td class="text-right">
|
||||||
|
<span t-esc="amount_by_group[1]"/>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
</t>
|
||||||
|
<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>
|
||||||
|
<div style="padding-top:50px;">
|
||||||
|
</div>
|
||||||
|
<p t-if="o.narration">
|
||||||
|
<strong>Comment:</strong>
|
||||||
|
<span t-field="o.narration"/>
|
||||||
|
</p>
|
||||||
|
<p t-if="o.paypal_chk">
|
||||||
|
<strong style="color:#3498DB !important;">Paypal Account Details</strong>
|
||||||
|
<br/>
|
||||||
|
<span>Paypal Id :</span>
|
||||||
|
<span style="color:gray !important;" t-field="o.paypal_id"/>
|
||||||
|
</p>
|
||||||
|
<p t-if="o.paypal_chk == False">
|
||||||
|
<strong style="color:#3498DB !important;">Bank Account Details</strong>
|
||||||
|
<br/>
|
||||||
|
<span>Account Id :</span>
|
||||||
|
<span style="color:gray !important;" t-field="o.company_id.bank_account_id.acc_number"/>
|
||||||
|
<br/>
|
||||||
|
<span>Bank Name :</span>
|
||||||
|
<span style="color:gray !important;" t-field="o.company_id.bank_account_id.bank_id.name"/>
|
||||||
|
<br/>
|
||||||
|
<span>Branch Name/Address :</span>
|
||||||
|
<span style="color:gray !important;" t-field="o.company_id.bank_account_id.branch_name"/>
|
||||||
|
<br/>
|
||||||
|
<span style="color:gray !important;" t-field="o.company_id.bank_account_id.street"/>
|
||||||
|
<br/>
|
||||||
|
<span style="color:gray !important;" t-field="o.company_id.bank_account_id.street2"/>
|
||||||
|
<span>,</span>
|
||||||
|
<span style="color:gray !important;" t-field="o.company_id.bank_account_id.city"/>
|
||||||
|
<span>,</span>
|
||||||
|
<span style="color:gray !important;" t-field="o.company_id.bank_account_id.zip"/>
|
||||||
|
<br/>
|
||||||
|
<span style="color:gray !important;" t-field="o.company_id.bank_account_id.state_id"/>
|
||||||
|
<span>,</span>
|
||||||
|
<span style="color:gray !important;" t-field="o.company_id.bank_account_id.country_id"/>
|
||||||
|
<br/>
|
||||||
|
<span>Swift Code :</span>
|
||||||
|
<span style="color:gray !important;" t-field="o.company_id.bank_account_id.swift_code"/>
|
||||||
|
<br/>
|
||||||
|
<span>IFSC Code :</span>
|
||||||
|
<span style="color:gray !important;" t-field="o.company_id.bank_account_id.ifsc"/>
|
||||||
|
<br/>
|
||||||
|
|
||||||
|
</p>
|
||||||
|
<p t-if="o.fiscal_position_id.note">
|
||||||
|
<strong>Fiscal Position Remark:</strong>
|
||||||
|
<span t-field="o.fiscal_position_id.note"/>
|
||||||
|
</p>
|
||||||
|
</div>
|
||||||
|
</t>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<template id="report_invoice" inherit_id="account.report_invoice_with_payments">
|
||||||
|
<xpath expr="//t[@t-call='account.report_invoice_document_with_payments']" position="replace">
|
||||||
|
<t t-call="web.html_container">
|
||||||
|
<t t-foreach="docs" t-as="o">
|
||||||
|
<t t-if="o.company_id.account_template == 'fency' ">
|
||||||
|
<t t-call="bi_professional_reports_templates.fency_report_invoice_document"
|
||||||
|
t-lang="o.partner_id.lang"/>
|
||||||
|
</t>
|
||||||
|
<t t-if="o.company_id.account_template == 'classic' ">
|
||||||
|
<t t-call="bi_professional_reports_templates.classic_report_invoice_document"
|
||||||
|
t-lang="o.partner_id.lang"/>
|
||||||
|
</t>
|
||||||
|
<t t-if="o.company_id.account_template == 'modern' ">
|
||||||
|
<t t-call="bi_professional_reports_templates.modern_report_invoice_document"
|
||||||
|
t-lang="o.partner_id.lang"/>
|
||||||
|
</t>
|
||||||
|
<t t-if="o.company_id.account_template == 'odoo_standard' ">
|
||||||
|
<t t-call="bi_professional_reports_templates.odoo_std_report_invoice_document"
|
||||||
|
t-lang="o.partner_id.lang"/>
|
||||||
|
</t>
|
||||||
|
</t>
|
||||||
|
</t>
|
||||||
|
</xpath>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<template id="report_invoices" inherit_id="account.report_invoice">
|
||||||
|
|
||||||
|
<xpath expr="//t[@t-call='account.report_invoice_document']" position="replace">
|
||||||
|
<t t-call="web.html_container">
|
||||||
|
<t t-foreach="docs" t-as="o">
|
||||||
|
<t t-if="o.company_id.account_template == 'fency' ">
|
||||||
|
<t t-call="bi_professional_reports_templates.fency_report_invoice_document"
|
||||||
|
t-lang="o.partner_id.lang"/>
|
||||||
|
</t>
|
||||||
|
<t t-if="o.company_id.account_template == 'classic' ">
|
||||||
|
<t t-call="bi_professional_reports_templates.classic_report_invoice_document"
|
||||||
|
t-lang="o.partner_id.lang"/>
|
||||||
|
</t>
|
||||||
|
<t t-if="o.company_id.account_template == 'modern' ">
|
||||||
|
<t t-call="bi_professional_reports_templates.modern_report_invoice_document"
|
||||||
|
t-lang="o.partner_id.lang"/>
|
||||||
|
</t>
|
||||||
|
<t t-if="o.company_id.account_template == 'odoo_standard' ">
|
||||||
|
<t t-call="bi_professional_reports_templates.odoo_std_report_invoice_document"
|
||||||
|
t-lang="o.partner_id.lang"/>
|
||||||
|
</t>
|
||||||
|
</t>
|
||||||
|
</t>
|
||||||
|
</xpath>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
</data>
|
||||||
|
</odoo>
|
||||||
@@ -0,0 +1,322 @@
|
|||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<odoo>
|
||||||
|
<data>
|
||||||
|
<template id="classic_report_invoice_document">
|
||||||
|
<t t-if="o and 'company_id' in o">
|
||||||
|
<t t-set="company" t-value="o.company_id"></t>
|
||||||
|
</t>
|
||||||
|
<t t-if="not o or not 'company_id' in o">
|
||||||
|
<t t-set="company" t-value="res_company"></t>
|
||||||
|
</t>
|
||||||
|
<div class="header">
|
||||||
|
<div class="row mt32 mb32">
|
||||||
|
<div class="col-6">
|
||||||
|
<img t-if="company.logo" t-att-src="'data:image/png;base64,%s' % to_text(company.logo)"
|
||||||
|
style="max-height: 50px;"/>
|
||||||
|
</div>
|
||||||
|
<div class="col-6 text-right" style="font:12px lucida-console,sans-serif !important;">
|
||||||
|
<span t-field="company.partner_id"/>
|
||||||
|
<br/>
|
||||||
|
<span t-field="company.partner_id.street"/>
|
||||||
|
<br/>
|
||||||
|
<span t-field="company.partner_id.street2"/>
|
||||||
|
<br/>
|
||||||
|
<span t-field="company.partner_id.city"/>
|
||||||
|
<br/>
|
||||||
|
<span t-field="company.partner_id.country_id"/>
|
||||||
|
<br/>
|
||||||
|
<span t-field="company.partner_id.vat"/>
|
||||||
|
<br/>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<t t-call="web.external_layout">
|
||||||
|
<t t-set="o" t-value="o.with_context({'lang':o.partner_id.lang})"/>
|
||||||
|
<div class="page">
|
||||||
|
<div class="oe_structure"/>
|
||||||
|
<div>
|
||||||
|
<table class="table table-sm" style=" table-layout:fixed;">
|
||||||
|
<thead>
|
||||||
|
<tr>
|
||||||
|
<th width="30px"
|
||||||
|
style="background-color:#3498DB !important;border: 1px !important; border-style: solid !important; border-color: #fff; color:#fff !important; ">
|
||||||
|
Customer
|
||||||
|
</th>
|
||||||
|
<th width="30px"
|
||||||
|
style="background-color:#3498DB !important;border: 1px !important; border-style: solid !important; border-color: #fff; color:#fff !important; ">
|
||||||
|
Delivery Address
|
||||||
|
</th>
|
||||||
|
<th width="20px"
|
||||||
|
style="background-color:#3498DB !important;border: 1px !important; border-style: solid !important; border-color: #fff; color:#fff !important; ">
|
||||||
|
Reference/Description
|
||||||
|
</th>
|
||||||
|
<th width="20px"
|
||||||
|
style="background-color:#3498DB !important;border: 1px !important; border-style: solid !important; border-color: #fff; color:#fff !important; ">
|
||||||
|
Invoice #
|
||||||
|
</th>
|
||||||
|
</tr>
|
||||||
|
</thead>
|
||||||
|
<tbody>
|
||||||
|
<tr>
|
||||||
|
<td style="border: 1px !important; border-style: solid !important; border-color: #fff !important;">
|
||||||
|
<div t-field="o.partner_id"/>
|
||||||
|
<t t-if="o.partner_id.street">
|
||||||
|
<t t-esc="o.partner_id.street"/>
|
||||||
|
</t>
|
||||||
|
<br/>
|
||||||
|
<t t-if="o.partner_id.street2">
|
||||||
|
<t t-esc="o.partner_id.street2"/>
|
||||||
|
</t>
|
||||||
|
<br/>
|
||||||
|
<t t-if="o.partner_id.city">
|
||||||
|
<t t-esc="o.partner_id.city"/>
|
||||||
|
</t>
|
||||||
|
<br/>
|
||||||
|
<t t-if="o.partner_id.state_id.name">
|
||||||
|
<t t-esc="o.partner_id.state_id.name"/>
|
||||||
|
</t>
|
||||||
|
<br/>
|
||||||
|
<t t-if="o.partner_id.country_id.name">
|
||||||
|
<t t-esc="o.partner_id.country_id.name"/>
|
||||||
|
</t>
|
||||||
|
<br/>
|
||||||
|
<t t-if="o.partner_id.zip">
|
||||||
|
<t t-esc="o.partner_id.zip"/>
|
||||||
|
</t>
|
||||||
|
<br/>
|
||||||
|
<div t-field="o.partner_id.vat"/>
|
||||||
|
</td>
|
||||||
|
<td style="border: 1px !important; border-style: solid !important; border-color: #fff !important;">
|
||||||
|
<div t-field="o.partner_shipping_id"/>
|
||||||
|
<t t-if="o.partner_id.street">
|
||||||
|
<t t-esc="o.partner_shipping_id.street"/>
|
||||||
|
</t>
|
||||||
|
<br/>
|
||||||
|
<t t-if="o.partner_shipping_id.street2">
|
||||||
|
<t t-esc="o.partner_shipping_id.street2"/>
|
||||||
|
</t>
|
||||||
|
<br/>
|
||||||
|
<t t-if="o.partner_shipping_id.city">
|
||||||
|
<t t-esc="o.partner_shipping_id.city"/>
|
||||||
|
</t>
|
||||||
|
<br/>
|
||||||
|
<t t-if="o.partner_shipping_id.state_id.name">
|
||||||
|
<t t-esc="o.partner_shipping_id.state_id.name"/>
|
||||||
|
</t>
|
||||||
|
<br/>
|
||||||
|
<t t-if="o.partner_shipping_id.country_id.name">
|
||||||
|
<t t-esc="o.partner_shipping_id.country_id.name"/>
|
||||||
|
</t>
|
||||||
|
<br/>
|
||||||
|
<t t-if="o.partner_shipping_id.zip">
|
||||||
|
<t t-esc="o.partner_shipping_id.zip"/>
|
||||||
|
</t>
|
||||||
|
<br/>
|
||||||
|
<div t-field="o.partner_shipping_id.vat"/>
|
||||||
|
</td>
|
||||||
|
<td style="border: 1px !important; border-style: solid !important; border-color: #fff !important;">
|
||||||
|
<div t-field="o.name"/>
|
||||||
|
</td>
|
||||||
|
<td style="border: 1px !important; border-style: solid !important; border-color: #fff !important;">
|
||||||
|
<div t-if="o.type == 'out_invoice' and o.state == 'proforma2'">PRO-FORMA</div>
|
||||||
|
<div t-if="o.type == 'out_invoice' and o.state == 'draft'">Draft Invoice</div>
|
||||||
|
<br/>
|
||||||
|
<b>
|
||||||
|
<div t-field="o.name"/>
|
||||||
|
</b>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
</tbody>
|
||||||
|
</table>
|
||||||
|
|
||||||
|
<table class="table table-sm" style=" table-layout:fixed; padding-top=20px;">
|
||||||
|
<thead>
|
||||||
|
<tr>
|
||||||
|
<th width="30px"
|
||||||
|
style="background-color:#3498DB !important;border: 1px !important; border-style: solid !important; border-color: #fff; color:#fff !important; ">
|
||||||
|
Invoice Date
|
||||||
|
</th>
|
||||||
|
<th width="30px"
|
||||||
|
style="background-color:#3498DB !important;border: 1px !important; border-style: solid !important; border-color: #fff; color:#fff !important; ">
|
||||||
|
Due Date
|
||||||
|
</th>
|
||||||
|
<th width="20px"
|
||||||
|
style="background-color:#3498DB !important;border: 1px !important; border-style: solid !important; border-color: #fff; color:#fff !important; ">
|
||||||
|
Payment Term
|
||||||
|
</th>
|
||||||
|
<th width="20px"
|
||||||
|
style="background-color:#3498DB !important;border: 1px !important; border-style: solid !important; border-color: #fff; color:#fff !important; ">
|
||||||
|
SalesPerson
|
||||||
|
</th>
|
||||||
|
</tr>
|
||||||
|
</thead>
|
||||||
|
<tbody>
|
||||||
|
<tr>
|
||||||
|
<td style="border: 1px !important; border-style: solid !important; border-color: #fff !important;">
|
||||||
|
<div t-field="o.invoice_date"/>
|
||||||
|
</td>
|
||||||
|
<td style="border: 1px !important; border-style: solid !important; border-color: #fff !important;">
|
||||||
|
<div t-field="o.invoice_date_due"/>
|
||||||
|
</td>
|
||||||
|
<td style="border: 1px !important; border-style: solid !important; border-color: #fff !important;">
|
||||||
|
<div t-field="o.invoice_payment_term_id"/>
|
||||||
|
</td>
|
||||||
|
<td style="border: 1px !important; border-style: solid !important; border-color: #fff !important;">
|
||||||
|
<div t-field="o.user_id"/>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
</tbody>
|
||||||
|
</table>
|
||||||
|
|
||||||
|
<div style="padding-top:20px;"></div>
|
||||||
|
<!-- Is there a discount on at least one line? -->
|
||||||
|
<t t-set="display_discount" t-value="any([l.discount for l in o.invoice_line_ids])"/>
|
||||||
|
|
||||||
|
<table class="table table-sm">
|
||||||
|
<thead>
|
||||||
|
<tr>
|
||||||
|
<th style="background-color:#3498DB !important;color:#FFF !important;">Description
|
||||||
|
</th>
|
||||||
|
<th style="background-color:#3498DB !important;color:#FFF !important;">Quantity</th>
|
||||||
|
<th style="background-color:#3498DB !important;color:#FFF !important;">Unit Price
|
||||||
|
</th>
|
||||||
|
<th style="background-color:#3498DB !important;color:#FFF !important;"
|
||||||
|
t-if="display_discount" class="text-right"
|
||||||
|
groups="sale.group_discount_per_so_line">Disc.(%)
|
||||||
|
</th>
|
||||||
|
<th style="background-color:#3498DB !important;color:#FFF !important;">Taxes</th>
|
||||||
|
<th style="background-color:#3498DB !important;color:#FFF !important;">Price</th>
|
||||||
|
</tr>
|
||||||
|
</thead>
|
||||||
|
<tbody class="invoice_tbody">
|
||||||
|
<tr t-foreach="o.invoice_line_ids" t-as="l">
|
||||||
|
<td>
|
||||||
|
<span t-field="l.name"/>
|
||||||
|
</td>
|
||||||
|
<td class="text-right">
|
||||||
|
<span t-field="l.quantity"/>
|
||||||
|
<span t-field="l.uom_id" groups="product.group_uom"/>
|
||||||
|
</td>
|
||||||
|
<td class="text-right">
|
||||||
|
<span t-field="l.price_unit"/>
|
||||||
|
</td>
|
||||||
|
<td t-if="display_discount" class="text-right"
|
||||||
|
groups="sale.group_discount_per_so_line">
|
||||||
|
<span t-field="l.discount"/>
|
||||||
|
</td>
|
||||||
|
<td>
|
||||||
|
<span t-esc="', '.join(map(lambda x: (x.description or x.name), l.tax_ids))"/>
|
||||||
|
</td>
|
||||||
|
<td class="text-right">
|
||||||
|
<span t-field="l.price_subtotal"
|
||||||
|
t-field-options='{"widget": "monetary", "display_currency": "o.currency_id"}'/>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
</tbody>
|
||||||
|
</table>
|
||||||
|
</div>
|
||||||
|
<div>
|
||||||
|
<div class="col-6 pull-right">
|
||||||
|
<table class="table table-condensed">
|
||||||
|
<tr class="border-black">
|
||||||
|
<td>
|
||||||
|
<strong>Subtotal</strong>
|
||||||
|
</td>
|
||||||
|
<td class="text-right">
|
||||||
|
<span t-field="o.amount_untaxed"
|
||||||
|
t-field-options='{"widget": "monetary", "display_currency": "o.currency_id"}'/>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
<t t-foreach="o.amount_by_group" t-as="amount_by_group">
|
||||||
|
<tr>
|
||||||
|
<td><span t-esc="amount_by_group[0]"/></td>
|
||||||
|
<td class="text-right">
|
||||||
|
<span t-esc="amount_by_group[1]"/>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
</t>
|
||||||
|
<tr class="border-black" style=" background-color: #3498DB; color:#fff !important;">
|
||||||
|
<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>
|
||||||
|
<br/>
|
||||||
|
<br/>
|
||||||
|
<br/>
|
||||||
|
<div style="padding-top:50px;">
|
||||||
|
</div>
|
||||||
|
<p t-if="o.narration">
|
||||||
|
<strong>Comment:</strong>
|
||||||
|
<span t-field="o.narration"/>
|
||||||
|
</p>
|
||||||
|
<p t-if="o.paypal_chk">
|
||||||
|
<div style="background-color: #3498DB;">
|
||||||
|
<strong style="color:#fff !important;">Paypal Account Details</strong>
|
||||||
|
<br/>
|
||||||
|
<span>
|
||||||
|
<font color="#fff">Paypal Id :</font>
|
||||||
|
</span>
|
||||||
|
<span style="color:#fff !important;" t-field="o.paypal_id"/>
|
||||||
|
</div>
|
||||||
|
</p>
|
||||||
|
<p t-if="o.paypal_chk == False">
|
||||||
|
<div style="background-color: #3498DB;">
|
||||||
|
<strong style="color:#fff !important;">Bank Account Details</strong>
|
||||||
|
<br/>
|
||||||
|
<span>
|
||||||
|
<font color="#fff">Account Id :</font>
|
||||||
|
</span>
|
||||||
|
<span style="color:#fff !important;" t-field="o.company_id.bank_account_id.acc_number"/>
|
||||||
|
<br/>
|
||||||
|
<span>
|
||||||
|
<font color="#fff">Bank Name :</font>
|
||||||
|
</span>
|
||||||
|
<span style="color:#fff !important;" t-field="o.company_id.bank_account_id.bank_id.name"/>
|
||||||
|
<br/>
|
||||||
|
<span>
|
||||||
|
<font color="#fff">Branch Name/Address :</font>
|
||||||
|
</span>
|
||||||
|
<span style="color:#fff !important;" t-field="o.company_id.bank_account_id.branch_name"/>
|
||||||
|
<br/>
|
||||||
|
<span style="color:#fff !important;" t-field="o.company_id.bank_account_id.street"/>
|
||||||
|
<br/>
|
||||||
|
<span style="color:#fff !important;" t-field="o.company_id.bank_account_id.street2"/>
|
||||||
|
<span style="color:#fff !important;">,</span>
|
||||||
|
<span style="color:#fff !important;" t-field="o.company_id.bank_account_id.city"/>
|
||||||
|
<span style="color:#fff !important;">,</span>
|
||||||
|
<span style="color:#fff !important;" t-field="o.company_id.bank_account_id.zip"/>
|
||||||
|
<br/>
|
||||||
|
<span style="color:#fff !important;" t-field="o.company_id.bank_account_id.state_id"/>
|
||||||
|
<span style="color:#fff !important;">,</span>
|
||||||
|
<span style="color:#fff !important;" t-field="o.company_id.bank_account_id.country_id"/>
|
||||||
|
<br/>
|
||||||
|
<span>
|
||||||
|
<font color="#fff">Swift Code :</font>
|
||||||
|
</span>
|
||||||
|
<span style="color:#fff !important;" t-field="o.company_id.bank_account_id.swift_code"/>
|
||||||
|
<br/>
|
||||||
|
<span>
|
||||||
|
<font color="#fff">IFSC Code :</font>
|
||||||
|
</span>
|
||||||
|
<span style="color:#fff !important;" t-field="o.company_id.bank_account_id.ifsc"/>
|
||||||
|
<br/>
|
||||||
|
</div>
|
||||||
|
</p>
|
||||||
|
<p t-if="o.fiscal_position_id.note">
|
||||||
|
<strong>Fiscal Position Remark:</strong>
|
||||||
|
<span t-field="o.fiscal_position_id.note"/>
|
||||||
|
</p>
|
||||||
|
</div>
|
||||||
|
</t>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
</data>
|
||||||
|
</odoo>
|
||||||
@@ -0,0 +1,236 @@
|
|||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<odoo>
|
||||||
|
<data>
|
||||||
|
<template id="modern_report_invoice_document">
|
||||||
|
<t t-if="o and 'company_id' in o">
|
||||||
|
<t t-set="company" t-value="o.company_id"></t>
|
||||||
|
</t>
|
||||||
|
<t t-if="not o or not 'company_id' in o">
|
||||||
|
<t t-set="company" t-value="res_company"></t>
|
||||||
|
</t>
|
||||||
|
<div class="header">
|
||||||
|
<div class="row mt32 mb32">
|
||||||
|
<div class="col-6">
|
||||||
|
<img t-if="company.logo" t-att-src="'data:image/png;base64,%s' % to_text(company.logo)" style="max-height: 50px;" />
|
||||||
|
</div>
|
||||||
|
<div class="col-6 text-right" style="font:12px lucida-console,sans-serif !important;">
|
||||||
|
<span t-field="company.partner_id" />
|
||||||
|
<br/>
|
||||||
|
<span t-field="company.partner_id.street" />
|
||||||
|
<br/>
|
||||||
|
<span t-field="company.partner_id.street2" />
|
||||||
|
<br/>
|
||||||
|
<span t-field="company.partner_id.city" />
|
||||||
|
<br/>
|
||||||
|
<span t-field="company.partner_id.country_id" />
|
||||||
|
<br/>
|
||||||
|
<span t-field="company.partner_id.vat" />
|
||||||
|
<br/>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<t t-call="web.external_layout">
|
||||||
|
<t t-set="o" t-value="o.with_context({'lang':o.partner_id.lang})" />
|
||||||
|
<div class="page">
|
||||||
|
<div class="oe_structure"/>
|
||||||
|
<div>
|
||||||
|
<table class="table table-sm" style=" table-layout:fixed;" >
|
||||||
|
<thead>
|
||||||
|
<tr>
|
||||||
|
<th width="30px" style="background-color:#893b74 !important;border: 1px !important; border-style: solid !important; border-color: #fff; color:#fff !important; ">Customer</th>
|
||||||
|
<th width="30px" style="background-color:#893b74 !important;border: 1px !important; border-style: solid !important; border-color: #fff; color:#fff !important; ">Delivery Address</th>
|
||||||
|
<th width="20px" style="background-color:#893b74 !important;border: 1px !important; border-style: solid !important; border-color: #fff; color:#fff !important; ">Reference/Description</th>
|
||||||
|
<th width="20px" style="background-color:#893b74 !important;border: 1px !important; border-style: solid !important; border-color: #fff; color:#fff !important; ">Invoice #</th>
|
||||||
|
</tr>
|
||||||
|
</thead>
|
||||||
|
<tbody>
|
||||||
|
<tr>
|
||||||
|
<td style="border: 1px !important; border-style: solid !important; border-color: #fff !important;">
|
||||||
|
<div t-field="o.partner_id"/>
|
||||||
|
<t t-if="o.partner_id.street">
|
||||||
|
<t t-esc="o.partner_id.street"/>
|
||||||
|
</t><br/>
|
||||||
|
<t t-if="o.partner_id.street2">
|
||||||
|
<t t-esc="o.partner_id.street2"/>
|
||||||
|
</t><br/>
|
||||||
|
<t t-if="o.partner_id.city">
|
||||||
|
<t t-esc="o.partner_id.city"/>
|
||||||
|
</t><br/>
|
||||||
|
<t t-if="o.partner_id.state_id.name">
|
||||||
|
<t t-esc="o.partner_id.state_id.name"/>
|
||||||
|
</t><br/>
|
||||||
|
<t t-if="o.partner_id.country_id.name">
|
||||||
|
<t t-esc="o.partner_id.country_id.name"/>
|
||||||
|
</t><br/>
|
||||||
|
<t t-if="o.partner_id.zip">
|
||||||
|
<t t-esc="o.partner_id.zip"/>
|
||||||
|
</t><br/>
|
||||||
|
<div t-field="o.partner_id.vat"/>
|
||||||
|
</td>
|
||||||
|
<td style="border: 1px !important; border-style: solid !important; border-color: #fff !important;">
|
||||||
|
<div t-field="o.partner_shipping_id"/>
|
||||||
|
<t t-if="o.partner_id.street">
|
||||||
|
<t t-esc="o.partner_shipping_id.street"/>
|
||||||
|
</t><br/>
|
||||||
|
<t t-if="o.partner_shipping_id.street2">
|
||||||
|
<t t-esc="o.partner_shipping_id.street2"/>
|
||||||
|
</t><br/>
|
||||||
|
<t t-if="o.partner_shipping_id.city">
|
||||||
|
<t t-esc="o.partner_shipping_id.city"/>
|
||||||
|
</t><br/>
|
||||||
|
<t t-if="o.partner_shipping_id.state_id.name">
|
||||||
|
<t t-esc="o.partner_shipping_id.state_id.name"/>
|
||||||
|
</t><br/>
|
||||||
|
<t t-if="o.partner_shipping_id.country_id.name">
|
||||||
|
<t t-esc="o.partner_shipping_id.country_id.name"/>
|
||||||
|
</t><br/>
|
||||||
|
<t t-if="o.partner_shipping_id.zip">
|
||||||
|
<t t-esc="o.partner_shipping_id.zip"/>
|
||||||
|
</t><br/>
|
||||||
|
<div t-field="o.partner_shipping_id.vat"/>
|
||||||
|
</td>
|
||||||
|
<td style="border: 1px !important; border-style: solid !important; border-color: #fff !important;">
|
||||||
|
<div t-field="o.name"/>
|
||||||
|
</td>
|
||||||
|
<td style="border: 1px !important; border-style: solid !important; border-color: #fff !important;">
|
||||||
|
<div t-if="o.type == 'out_invoice' and o.state == 'proforma2'">PRO-FORMA</div>
|
||||||
|
<div t-if="o.type == 'out_invoice' and o.state == 'draft'"> Draft Invoice </div>
|
||||||
|
<br/>
|
||||||
|
<b><div t-field="o.name"/></b>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
</tbody>
|
||||||
|
</table>
|
||||||
|
|
||||||
|
<table class="table table-sm" style=" table-layout:fixed; padding-top=20px;" >
|
||||||
|
<thead>
|
||||||
|
<tr>
|
||||||
|
<th width="30px" style="background-color:#893b74 !important;border: 1px !important; border-style: solid !important; border-color: #fff; color:#fff !important; ">Invoice Date</th>
|
||||||
|
<th width="30px" style="background-color:#893b74 !important;border: 1px !important; border-style: solid !important; border-color: #fff; color:#fff !important; ">Due Date</th>
|
||||||
|
<th width="20px" style="background-color:#893b74 !important;border: 1px !important; border-style: solid !important; border-color: #fff; color:#fff !important; ">Payment Term</th>
|
||||||
|
<th width="20px" style="background-color:#893b74 !important;border: 1px !important; border-style: solid !important; border-color: #fff; color:#fff !important; ">SalesPerson</th>
|
||||||
|
</tr>
|
||||||
|
</thead>
|
||||||
|
<tbody>
|
||||||
|
<tr>
|
||||||
|
<td style="border: 1px !important; border-style: solid !important; border-color: #fff !important;">
|
||||||
|
<div t-field="o.invoice_date"/>
|
||||||
|
</td>
|
||||||
|
<td style="border: 1px !important; border-style: solid !important; border-color: #fff !important;">
|
||||||
|
<div t-field="o.invoice_date_due"/>
|
||||||
|
</td>
|
||||||
|
<td style="border: 1px !important; border-style: solid !important; border-color: #fff !important;">
|
||||||
|
<div t-field="o.invoice_payment_term_id"/>
|
||||||
|
</td>
|
||||||
|
<td style="border: 1px !important; border-style: solid !important; border-color: #fff !important;">
|
||||||
|
<div t-field="o.user_id"/>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
</tbody>
|
||||||
|
</table>
|
||||||
|
|
||||||
|
<div style="padding-top:20px;"></div>
|
||||||
|
<!-- Is there a discount on at least one line? -->
|
||||||
|
<t t-set="display_discount" t-value="any([l.discount for l in o.invoice_line_ids])"/>
|
||||||
|
|
||||||
|
<table class="table table-sm">
|
||||||
|
<thead>
|
||||||
|
<tr>
|
||||||
|
<th style="border: 1px !important; border-style: solid !important; border-color: #fff !important;">Description</th>
|
||||||
|
<th style="border: 1px !important; border-style: solid !important; border-color: #fff !important;">Quantity </th>
|
||||||
|
<th style="border: 1px !important; border-style: solid !important; border-color: #fff !important;">Unit Price</th>
|
||||||
|
<th style="border: 1px !important; border-style: solid !important; border-color: #fff !important;" t-if="display_discount" class="text-right" groups="sale.group_discount_per_so_line">Disc.(%)</th>
|
||||||
|
<th style="border: 1px !important; border-style: solid !important; border-color: #fff !important;">Taxes</th>
|
||||||
|
<th style="border: 1px !important; border-style: solid !important; border-color: #fff !important;">Price</th>
|
||||||
|
</tr>
|
||||||
|
</thead>
|
||||||
|
<tbody class="invoice_tbody">
|
||||||
|
<tr t-foreach="o.invoice_line_ids" t-as="l">
|
||||||
|
<td><span t-field="l.name"/></td>
|
||||||
|
<td class="text-right">
|
||||||
|
<span t-field="l.quantity"/>
|
||||||
|
<span t-field="l.uom_id" groups="product.group_uom"/>
|
||||||
|
</td>
|
||||||
|
<td class="text-right">
|
||||||
|
<span t-field="l.price_unit"/>
|
||||||
|
</td>
|
||||||
|
<td t-if="display_discount" class="text-right" groups="sale.group_discount_per_so_line">
|
||||||
|
<span t-field="l.discount"/>
|
||||||
|
</td>
|
||||||
|
<td>
|
||||||
|
<span t-esc="', '.join(map(lambda x: (x.description or x.name), l.tax_ids))"/>
|
||||||
|
</td>
|
||||||
|
<td class="text-right">
|
||||||
|
<span t-field="l.price_subtotal"
|
||||||
|
t-field-options='{"widget": "monetary", "display_currency": "o.currency_id"}'/>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
</tbody>
|
||||||
|
</table>
|
||||||
|
</div>
|
||||||
|
<div>
|
||||||
|
<div class="col-4 pull-right">
|
||||||
|
<table class="table table-sm">
|
||||||
|
<tr class="border-black">
|
||||||
|
<td><strong>Subtotal</strong></td>
|
||||||
|
<td class="text-right">
|
||||||
|
<span t-field="o.amount_untaxed" t-field-options='{"widget": "monetary", "display_currency": "o.currency_id"}'/>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
|
||||||
|
<t t-foreach="o.amount_by_group" t-as="amount_by_group">
|
||||||
|
<tr>
|
||||||
|
<td><span t-esc="amount_by_group[0]"/></td>
|
||||||
|
<td class="text-right">
|
||||||
|
<span t-esc="amount_by_group[1]"/>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
</t>
|
||||||
|
<tr class="border-black" >
|
||||||
|
<td style=" background-color: #893b74; color:#fff !important;"><strong>Total</strong></td>
|
||||||
|
<td style=" background-color: #893b74; color:#fff !important;" class="text-right">
|
||||||
|
<span t-field="o.amount_total" t-field-options='{"widget": "monetary", "display_currency": "o.currency_id"}'/>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
</table>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<br/><br/><br/>
|
||||||
|
<div style="padding-top:50px;">
|
||||||
|
</div>
|
||||||
|
<p t-if="o.narration">
|
||||||
|
<strong>Comment:</strong>
|
||||||
|
<span t-field="o.narration"/>
|
||||||
|
</p>
|
||||||
|
<p t-if="o.paypal_chk">
|
||||||
|
<div style="background-color: #893b74;">
|
||||||
|
<strong style="color:#fff !important;">Paypal Account Details</strong><br/>
|
||||||
|
<span><font color="#fff">Paypal Id :</font> </span><span style="color:#fff !important;" t-field="o.paypal_id"/>
|
||||||
|
</div>
|
||||||
|
</p>
|
||||||
|
<p t-if="o.paypal_chk == False">
|
||||||
|
<div style="background-color: #893b74;">
|
||||||
|
<strong style="color:#fff !important;">Bank Account Details</strong><br/>
|
||||||
|
<span><font color="#fff">Account Id :</font> </span><span style="color:#fff !important;" t-field="o.company_id.bank_account_id.acc_number"/><br/>
|
||||||
|
<span><font color="#fff">Bank Name :</font> </span><span style="color:#fff !important;" t-field="o.company_id.bank_account_id.bank_id.name"/><br/>
|
||||||
|
<span><font color="#fff">Branch Name/Address :</font> </span><span style="color:#fff !important;" t-field="o.company_id.bank_account_id.branch_name"/><br/>
|
||||||
|
<span style="color:#fff !important;" t-field="o.company_id.bank_account_id.street"/><br/>
|
||||||
|
<span style="color:#fff !important;" t-field="o.company_id.bank_account_id.street2"/><span style="color:#fff !important;">,</span>
|
||||||
|
<span style="color:#fff !important;" t-field="o.company_id.bank_account_id.city"/><span style="color:#fff !important;">,</span>
|
||||||
|
<span style="color:#fff !important;" t-field="o.company_id.bank_account_id.zip"/><br/>
|
||||||
|
<span style="color:#fff !important;" t-field="o.company_id.bank_account_id.state_id"/><span style="color:#fff !important;">,</span><span style="color:#fff !important;" t-field="o.company_id.bank_account_id.country_id"/><br/>
|
||||||
|
<span><font color="#fff">Swift Code :</font> </span><span style="color:#fff !important;" t-field="o.company_id.bank_account_id.swift_code"/><br/>
|
||||||
|
<span><font color="#fff">IFSC Code : </font></span><span style="color:#fff !important;" t-field="o.company_id.bank_account_id.ifsc"/><br/>
|
||||||
|
</div>
|
||||||
|
</p>
|
||||||
|
<p t-if="o.fiscal_position_id.note">
|
||||||
|
<strong>Fiscal Position Remark:</strong>
|
||||||
|
<span t-field="o.fiscal_position_id.note"/>
|
||||||
|
</p>
|
||||||
|
</div>
|
||||||
|
</t>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
|
||||||
|
</data>
|
||||||
|
</odoo>
|
||||||
@@ -0,0 +1,179 @@
|
|||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<odoo>
|
||||||
|
<data>
|
||||||
|
<template id="odoo_std_report_invoice_document">
|
||||||
|
<t t-if="o and 'company_id' in o">
|
||||||
|
<t t-set="company" t-value="o.company_id"></t>
|
||||||
|
</t>
|
||||||
|
<t t-if="not o or not 'company_id' in o">
|
||||||
|
<t t-set="company" t-value="res_company"></t>
|
||||||
|
</t>
|
||||||
|
<div class="header">
|
||||||
|
<div class="row mt32 mb32">
|
||||||
|
<div class="col-6">
|
||||||
|
<img t-if="company.logo" t-att-src="'data:image/png;base64,%s' % to_text(company.logo)" style="max-height: 50px;" />
|
||||||
|
</div>
|
||||||
|
<div class="col-6 text-right" style="font:12px lucida-console,sans-serif !important;">
|
||||||
|
<span t-field="company.partner_id" />
|
||||||
|
<br/>
|
||||||
|
<span t-field="company.partner_id.street" />
|
||||||
|
<br/>
|
||||||
|
<span t-field="company.partner_id.street2" />
|
||||||
|
<br/>
|
||||||
|
<span t-field="company.partner_id.city" />
|
||||||
|
<br/>
|
||||||
|
<span t-field="company.partner_id.country_id" />
|
||||||
|
<br/>
|
||||||
|
<span t-field="company.partner_id.vat" />
|
||||||
|
<br/>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<t t-call="web.external_layout">
|
||||||
|
<t t-set="o" t-value="o.with_context({'lang':o.partner_id.lang})" />
|
||||||
|
<div class="page">
|
||||||
|
<div class="row" style="padding-top:20px;">
|
||||||
|
<div class="col-3" style="font:15px lucida-console,sans-serif !important;" >
|
||||||
|
<span style="color:#893b74 !important;" t-field="o.partner_id" /><br/>
|
||||||
|
<span style="color:gray !important;" t-field="o.partner_id.street" /><br/>
|
||||||
|
<span style="color:gray !important;" t-field="o.partner_id.street2" /><br/>
|
||||||
|
<span style="color:gray !important;" t-field="o.partner_id.city" /><br/>
|
||||||
|
<span style="color:gray !important;" t-field="o.partner_id.state_id" /><br/>
|
||||||
|
<span style="color:gray !important;" t-field="o.partner_id.country_id" /><br/>
|
||||||
|
<span style="color:gray !important;" t-field="o.partner_id.vat" /><br/>
|
||||||
|
</div>
|
||||||
|
<div class="col-3" />
|
||||||
|
|
||||||
|
<div class="col-6" style="font:15px lucida-console,sans-serif !important; background-color: #893b74;" >
|
||||||
|
<h2>
|
||||||
|
<span t-if="o.type == 'out_invoice' and (o.state == 'draft' or o.state == 'posted')"><font color="#fff">Invoice</font></span>
|
||||||
|
<span t-if="o.type == 'out_invoice' and o.state == 'proforma2'"><font color="#fff">PRO-FORMA</font></span>
|
||||||
|
<span t-if="o.type == 'out_invoice' and o.state == 'draft'"><font color="#fff">Draft Invoice</font></span>
|
||||||
|
<span t-if="o.type == 'out_invoice' and o.state == 'cancel'"><font color="#fff">Cancelled Invoice</font></span>
|
||||||
|
<span t-if="o.type == 'out_refund'"><font color="#fff">Refund</font></span>
|
||||||
|
<span t-if="o.type == 'in_refund'"><font color="#fff">Vendor Refund</font></span>
|
||||||
|
<span t-if="o.type == 'in_invoice'"><font color="#fff">Vendor Bill</font></span>
|
||||||
|
<font color="#fff"><span t-field="o.name"/></font>
|
||||||
|
</h2>
|
||||||
|
<div t-if="o.invoice_date">
|
||||||
|
<font color="#fff">
|
||||||
|
<strong>Invoice Date:</strong><p t-field="o.invoice_date"/></font>
|
||||||
|
</div>
|
||||||
|
<div t-if="o.name">
|
||||||
|
<font color="#fff">
|
||||||
|
<strong>Invoice Date:</strong> <p t-field="o.name"/></font>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div style="padding-top:20px;"></div>
|
||||||
|
<!-- Is there a discount on at least one line? -->
|
||||||
|
<t t-set="display_discount" t-value="any([l.discount for l in o.invoice_line_ids])"/>
|
||||||
|
|
||||||
|
<table class="table table-sm">
|
||||||
|
<thead>
|
||||||
|
<tr>
|
||||||
|
<th style="background-color:#893b74 !important;color:#FFF !important;">Description</th>
|
||||||
|
<th style="background-color:#893b74 !important;color:#FFF !important;">Quantity </th>
|
||||||
|
<th style="background-color:#893b74 !important;color:#FFF !important;">Unit Price</th>
|
||||||
|
<th style="background-color:#893b74 !important;color:#FFF !important;" t-if="display_discount" class="text-right" groups="sale.group_discount_per_so_line">Disc.(%)</th>
|
||||||
|
<th style="background-color:#893b74 !important;color:#FFF !important;">Taxes</th>
|
||||||
|
<th style="background-color:#893b74 !important;color:#FFF !important;">Price</th>
|
||||||
|
</tr>
|
||||||
|
</thead>
|
||||||
|
<tbody class="invoice_tbody">
|
||||||
|
<tr t-foreach="o.invoice_line_ids" t-as="l">
|
||||||
|
<td><span t-field="l.name"/></td>
|
||||||
|
<td class="text-right">
|
||||||
|
<span t-field="l.quantity"/>
|
||||||
|
<span t-field="l.uom_id" groups="product.group_uom"/>
|
||||||
|
</td>
|
||||||
|
<td class="text-right">
|
||||||
|
<span t-field="l.price_unit"/>
|
||||||
|
</td>
|
||||||
|
<td t-if="display_discount" class="text-right" groups="sale.group_discount_per_so_line">
|
||||||
|
<span t-field="l.discount"/>
|
||||||
|
</td>
|
||||||
|
<td>
|
||||||
|
<span t-esc="', '.join(map(lambda x: (x.description or x.name), l.tax_ids))"/>
|
||||||
|
</td>
|
||||||
|
<td class="text-right">
|
||||||
|
<span t-field="l.price_subtotal"
|
||||||
|
t-field-options='{"widget": "monetary", "display_currency": "o.currency_id"}'/>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
</tbody>
|
||||||
|
</table>
|
||||||
|
|
||||||
|
<div>
|
||||||
|
<div class="col-4 pull-right">
|
||||||
|
<table class="table table-condensed">
|
||||||
|
<tr class="border-black">
|
||||||
|
<td><strong>Subtotal</strong></td>
|
||||||
|
<td class="text-right">
|
||||||
|
<span t-field="o.amount_untaxed" t-field-options='{"widget": "monetary", "display_currency": "o.currency_id"}'/>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
<t t-foreach="o.amount_by_group" t-as="amount_by_group">
|
||||||
|
<tr>
|
||||||
|
<td><span t-esc="amount_by_group[0]"/></td>
|
||||||
|
<td class="text-right">
|
||||||
|
<span t-esc="amount_by_group[1]"/>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
</t>
|
||||||
|
<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>
|
||||||
|
<tr class="border-black">
|
||||||
|
<td><strong>Amount Due</strong></td>
|
||||||
|
<td class="text-right">
|
||||||
|
<span t-field="o.amount_residual" t-field-options='{"widget": "monetary", "display_currency": "o.currency_id"}'/>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
</table>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<br/><br/><br/><br/><br/>
|
||||||
|
<div style="padding-top:50px;">
|
||||||
|
</div>
|
||||||
|
<div style=" background-color: #893b74; color:#fff !important; font:15px lucida-console,sans-serif !important; ">
|
||||||
|
<p t-if="o.narration">
|
||||||
|
<strong><span>Comments:</span> </strong> <span t-field="o.narraction" />
|
||||||
|
</p>
|
||||||
|
</div>
|
||||||
|
<div class="oe_structure"/>
|
||||||
|
<div>
|
||||||
|
<div class="col-xs-6" style=" background-color: #893b74; color:#fff !important; font:15px lucida-console,sans-serif !important; " t-if="o.paypal_chk">
|
||||||
|
<strong >Paypal Account Details</strong><br/>
|
||||||
|
<span>Paypal Id : </span><span t-field="o.paypal_id"/>
|
||||||
|
</div>
|
||||||
|
<div class="col-xs-6" style=" background-color: #893b74; color:#fff !important; font:15px lucida-console,sans-serif !important; " t-if="o.paypal_chk == False">
|
||||||
|
<strong >Bank Account Details</strong><br/>
|
||||||
|
<span>Account Id : </span><span t-field="o.company_id.bank_account_id.acc_number"/><br/>
|
||||||
|
<span>Bank Name : </span><span t-field="o.company_id.bank_account_id.bank_id.name"/><br/>
|
||||||
|
<span>Branch Name/Address : </span><span t-field="o.company_id.bank_account_id.branch_name"/><br/>
|
||||||
|
<span t-field="o.company_id.bank_account_id.street"/><br/>
|
||||||
|
<span t-field="o.company_id.bank_account_id.street2"/><span>,</span>
|
||||||
|
<span t-field="o.company_id.bank_account_id.city"/><span>,</span>
|
||||||
|
<span t-field="o.company_id.bank_account_id.zip"/><br/>
|
||||||
|
<span t-field="o.company_id.bank_account_id.state_id"/><span>,</span><span t-field="o.company_id.bank_account_id.country_id"/><br/>
|
||||||
|
<span>Swift Code : </span><span t-field="o.company_id.bank_account_id.swift_code"/><br/>
|
||||||
|
<span>IFSC Code : </span><span t-field="o.company_id.bank_account_id.ifsc"/><br/>
|
||||||
|
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<p t-if="o.fiscal_position_id.note">
|
||||||
|
<strong>Fiscal Position Remark:</strong>
|
||||||
|
<span t-field="o.fiscal_position_id.note"/>
|
||||||
|
</p>
|
||||||
|
|
||||||
|
</div>
|
||||||
|
</t>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
|
||||||
|
</data>
|
||||||
|
</odoo>
|
||||||
@@ -0,0 +1,219 @@
|
|||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<odoo>
|
||||||
|
<data>
|
||||||
|
<template id="classic_report_purchaseorder_document">
|
||||||
|
<t t-if="o and 'company_id' in o">
|
||||||
|
<t t-set="company" t-value="o.company_id"></t>
|
||||||
|
</t>
|
||||||
|
<t t-if="not o or not 'company_id' in o">
|
||||||
|
<t t-set="company" t-value="res_company"></t>
|
||||||
|
</t>
|
||||||
|
<div class="header">
|
||||||
|
<div class="row mt32 mb32">
|
||||||
|
<div class="col-6">
|
||||||
|
<img t-if="company.logo" t-att-src="'data:image/png;base64,%s' % to_text(company.logo)" style="max-height: 50px;" />
|
||||||
|
</div>
|
||||||
|
<div class="col-6 text-right" style="font:12px lucida-console,sans-serif !important;">
|
||||||
|
<span t-field="company.partner_id" />
|
||||||
|
<br/>
|
||||||
|
<span t-field="company.partner_id.street" />
|
||||||
|
<br/>
|
||||||
|
<span t-field="company.partner_id.street2" />
|
||||||
|
<br/>
|
||||||
|
<span t-field="company.partner_id.city" />
|
||||||
|
<br/>
|
||||||
|
<span t-field="company.partner_id.country_id" />
|
||||||
|
<br/>
|
||||||
|
<span t-field="company.partner_id.vat" />
|
||||||
|
<br/>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<t t-call="web.external_layout">
|
||||||
|
<t t-set="o" t-value="o.with_context({'lang':o.partner_id.lang})"/>
|
||||||
|
<div class="page">
|
||||||
|
<div class="oe_structure"/>
|
||||||
|
|
||||||
|
<table class="table table-sm" style=" table-layout:fixed;" >
|
||||||
|
<thead>
|
||||||
|
<tr>
|
||||||
|
<th width="30px" style="background-color:#3498DB !important;border: 1px !important; border-style: solid !important; border-color: #fff; color:#fff !important; ">Vendor</th>
|
||||||
|
<th width="30px" style="background-color:#3498DB !important;border: 1px !important; border-style: solid !important; border-color: #fff; color:#fff !important; ">Shipping Address</th>
|
||||||
|
<th width="20px" style="background-color:#3498DB !important;border: 1px !important; border-style: solid !important; border-color: #fff; color:#fff !important; ">Reference/Description</th>
|
||||||
|
<th t-if="o.state != 'draft'" width="20px" style="background-color:#3498DB !important;border: 1px !important; border-style: solid !important; border-color: #fff; color:#fff !important; ">Purchase Order #</th>
|
||||||
|
<th t-if="o.state == 'draft'" width="20px" style="background-color:#3498DB !important;border: 1px !important; border-style: solid !important; border-color: #fff; color:#fff !important; ">Request for Quotation #</th>
|
||||||
|
</tr>
|
||||||
|
</thead>
|
||||||
|
<tbody>
|
||||||
|
<tr>
|
||||||
|
<td style="border: 1px !important; border-style: solid !important; border-color: #fff !important;">
|
||||||
|
<div t-field="o.partner_id"/>
|
||||||
|
<t t-if="o.partner_id.street">
|
||||||
|
<t t-esc="o.partner_id.street"/>
|
||||||
|
</t><br/>
|
||||||
|
<t t-if="o.partner_id.street2">
|
||||||
|
<t t-esc="o.partner_id.street2"/>
|
||||||
|
</t><br/>
|
||||||
|
<t t-if="o.partner_id.city">
|
||||||
|
<t t-esc="o.partner_id.city"/>
|
||||||
|
</t><br/>
|
||||||
|
<t t-if="o.partner_id.state_id.name">
|
||||||
|
<t t-esc="o.partner_id.state_id.name"/>
|
||||||
|
</t><br/>
|
||||||
|
<t t-if="o.partner_id.country_id.name">
|
||||||
|
<t t-esc="o.partner_id.country_id.name"/>
|
||||||
|
</t><br/>
|
||||||
|
<t t-if="o.partner_id.zip">
|
||||||
|
<t t-esc="o.partner_id.zip"/>
|
||||||
|
</t><br/>
|
||||||
|
<div t-field="o.partner_id.vat"/>
|
||||||
|
</td>
|
||||||
|
<td style="border: 1px !important; border-style: solid !important; border-color: #fff !important;">
|
||||||
|
<div t-if="o.dest_address_id">
|
||||||
|
<div t-field="o.dest_address_id"
|
||||||
|
t-field-options='{"widget": "contact", "fields": ["address", "name", "phone", "fax"], "no_marker": true, "phone_icons": true}'/>
|
||||||
|
<div t-field="o.partner_id.vat"/>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div t-if="not o.dest_address_id and o.picking_type_id and o.picking_type_id.warehouse_id">
|
||||||
|
<span t-field="o.picking_type_id.warehouse_id.name"/>
|
||||||
|
<div t-field="o.picking_type_id.warehouse_id.partner_id"
|
||||||
|
t-field-options='{"widget": "contact", "fields": ["address", "phone", "fax"], "no_marker": true, "phone_icons": true}'/>
|
||||||
|
<div t-field="o.partner_id.vat"/>
|
||||||
|
</div>
|
||||||
|
</td>
|
||||||
|
<td style="border: 1px !important; border-style: solid !important; border-color: #fff !important;">
|
||||||
|
<div t-field="o.partner_ref"/>
|
||||||
|
</td>
|
||||||
|
<td style="border: 1px !important; border-style: solid !important; border-color: #fff !important;">
|
||||||
|
<b><div t-field="o.name"/></b>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
</tbody>
|
||||||
|
</table>
|
||||||
|
|
||||||
|
<table class="table table-sm" style=" table-layout:fixed; padding-top=20px;" >
|
||||||
|
<thead>
|
||||||
|
<tr>
|
||||||
|
<th width="30px" style="background-color:#3498DB !important;border: 1px !important; border-style: solid !important; border-color: #fff; color:#fff !important; ">Order Date</th>
|
||||||
|
<th width="30px" style="background-color:#3498DB !important;border: 1px !important; border-style: solid !important; border-color: #fff; color:#fff !important; ">Scheduled Date</th>
|
||||||
|
<th width="20px" style="background-color:#3498DB !important;border: 1px !important; border-style: solid !important; border-color: #fff; color:#fff !important; ">Approval Date</th>
|
||||||
|
<th width="20px" style="background-color:#3498DB !important;border: 1px !important; border-style: solid !important; border-color: #fff; color:#fff !important; ">Payment Term</th>
|
||||||
|
</tr>
|
||||||
|
</thead>
|
||||||
|
<tbody>
|
||||||
|
<tr>
|
||||||
|
<td style="border: 1px !important; border-style: solid !important; border-color: #fff !important;">
|
||||||
|
<div t-field="o.date_order"/>
|
||||||
|
</td>
|
||||||
|
<td style="border: 1px !important; border-style: solid !important; border-color: #fff !important;">
|
||||||
|
<div t-field="o.date_planned"/>
|
||||||
|
</td>
|
||||||
|
<td style="border: 1px !important; border-style: solid !important; border-color: #fff !important;">
|
||||||
|
<div t-field="o.date_approve"/>
|
||||||
|
</td>
|
||||||
|
<td style="border: 1px !important; border-style: solid !important; border-color: #fff !important;">
|
||||||
|
<div t-field="o.payment_term_id"/>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
</tbody>
|
||||||
|
</table>
|
||||||
|
|
||||||
|
<table class="table table-sm">
|
||||||
|
<thead>
|
||||||
|
<tr>
|
||||||
|
<th style="background-color:#3498DB !important;border: 1px !important; border-style: solid !important; border-color: #fff; color:#fff !important; "><strong>Description</strong></th>
|
||||||
|
<th style="background-color:#3498DB !important;border: 1px !important; border-style: solid !important; border-color: #fff; color:#fff !important; "><strong>Taxes</strong></th>
|
||||||
|
<th class="text-center" style="background-color:#3498DB !important;border: 1px !important; border-style: solid !important; border-color: #fff; color:#fff !important; "><strong>Date Req.</strong></th>
|
||||||
|
<th class="text-right" style="background-color:#3498DB !important;border: 1px !important; border-style: solid !important; border-color: #fff; color:#fff !important; "><strong>Qty</strong></th>
|
||||||
|
<th class="text-right" style="background-color:#3498DB !important;border: 1px !important; border-style: solid !important; border-color: #fff; color:#fff !important; "><strong>Unit Price</strong></th>
|
||||||
|
<th class="text-right" style="background-color:#3498DB !important;border: 1px !important; border-style: solid !important; border-color: #fff; color:#fff !important; "><strong>Net Price</strong></th>
|
||||||
|
</tr>
|
||||||
|
</thead>
|
||||||
|
<tbody>
|
||||||
|
<tr t-foreach="o.order_line" t-as="line">
|
||||||
|
<td>
|
||||||
|
<span t-field="line.name"/>
|
||||||
|
</td>
|
||||||
|
<td>
|
||||||
|
<span t-esc="', '.join(map(lambda x: x.name, line.taxes_id))"/>
|
||||||
|
</td>
|
||||||
|
<td class="text-center">
|
||||||
|
<span t-field="line.date_planned"/>
|
||||||
|
</td>
|
||||||
|
<td class="text-right">
|
||||||
|
<span t-field="line.product_qty"/>
|
||||||
|
<span t-field="line.product_uom.name" groups="product.group_uom"/>
|
||||||
|
</td>
|
||||||
|
<td class="text-right">
|
||||||
|
<span t-field="line.price_unit"/>
|
||||||
|
</td>
|
||||||
|
<td class="text-right">
|
||||||
|
<span t-field="line.price_subtotal"
|
||||||
|
t-field-options='{"widget": "monetary", "display_currency": "o.currency_id"}'/>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
</tbody>
|
||||||
|
</table>
|
||||||
|
|
||||||
|
|
||||||
|
<div class="col-xs-4 pull-right">
|
||||||
|
<table class="table table-condensed">
|
||||||
|
<tr class="border-black">
|
||||||
|
<td><strong>Total Without Taxes</strong></td>
|
||||||
|
<td class="text-right">
|
||||||
|
<span t-field="o.amount_untaxed"
|
||||||
|
t-field-options='{"widget": "monetary", "display_currency": "o.currency_id"}'/>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>Taxes</td>
|
||||||
|
<td class="text-right">
|
||||||
|
<span t-field="o.amount_tax"
|
||||||
|
t-field-options='{"widget": "monetary", "display_currency": "o.currency_id"}'/>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
<tr style=" background-color: #3498DB;" 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>
|
||||||
|
<br/><br/><br/><br/><br/><br/><br/>
|
||||||
|
<div style=" background-color: #3498DB; color:#fff !important; font:15px lucida-console,sans-serif !important; ">
|
||||||
|
<p t-if="o.notes">
|
||||||
|
<strong><span>Note:</span> </strong> <span t-field="o.notes" />
|
||||||
|
</p>
|
||||||
|
</div>
|
||||||
|
<div class="oe_structure"/>
|
||||||
|
</div>
|
||||||
|
</t>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<template id="report_purchaseorder" inherit_id="purchase.report_purchaseorder_document">
|
||||||
|
|
||||||
|
<xpath expr="//t[@t-call='web.external_layout']" position="replace">
|
||||||
|
<t t-call="web.html_container">
|
||||||
|
<t t-foreach="docs" t-as="o">
|
||||||
|
<t t-if="o.company_id.purchase_template == 'classic'">
|
||||||
|
<t t-call="bi_professional_reports_templates.classic_report_purchaseorder_document" t-lang="o.partner_id.lang"/>
|
||||||
|
</t>
|
||||||
|
<t t-if="o.company_id.purchase_template == 'fency'">
|
||||||
|
<t t-call="bi_professional_reports_templates.fency_report_purchaseorder_document" t-lang="o.partner_id.lang"/>
|
||||||
|
</t>
|
||||||
|
<t t-if="o.company_id.purchase_template == 'modern'">
|
||||||
|
<t t-call="bi_professional_reports_templates.modern_report_purchaseorder_document" t-lang="o.partner_id.lang"/>
|
||||||
|
</t>
|
||||||
|
<t t-if="o.company_id.purchase_template =='odoo_standard'">
|
||||||
|
<t t-call="bi_professional_reports_templates.odoo_standard_report_purchaseorder_document" t-lang="o.partner_id.lang"/>
|
||||||
|
</t>
|
||||||
|
</t>
|
||||||
|
</t>
|
||||||
|
</xpath>
|
||||||
|
</template>
|
||||||
|
</data>
|
||||||
|
</odoo>
|
||||||
@@ -0,0 +1,222 @@
|
|||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<odoo>
|
||||||
|
<data>
|
||||||
|
<template id="classic_report_purchasequotation_document">
|
||||||
|
<t t-if="o and 'company_id' in o">
|
||||||
|
<t t-set="company" t-value="o.company_id"></t>
|
||||||
|
</t>
|
||||||
|
<t t-if="not o or not 'company_id' in o">
|
||||||
|
<t t-set="company" t-value="res_company"></t>
|
||||||
|
</t>
|
||||||
|
<div class="header">
|
||||||
|
<div class="row mt32 mb32">
|
||||||
|
<div class="col-6">
|
||||||
|
<img t-if="company.logo" t-att-src="'data:image/png;base64,%s' % to_text(company.logo)" style="max-height: 50px;" />
|
||||||
|
</div>
|
||||||
|
<div class="col-6 text-right" style="font:12px lucida-console,sans-serif !important;">
|
||||||
|
<span t-field="company.partner_id" />
|
||||||
|
<br/>
|
||||||
|
<span t-field="company.partner_id.street" />
|
||||||
|
<br/>
|
||||||
|
<span t-field="company.partner_id.street2" />
|
||||||
|
<br/>
|
||||||
|
<span t-field="company.partner_id.city" />
|
||||||
|
<br/>
|
||||||
|
<span t-field="company.partner_id.country_id" />
|
||||||
|
<br/>
|
||||||
|
<span t-field="company.partner_id.vat" />
|
||||||
|
<br/>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<t t-call="web.html_container"/>
|
||||||
|
<t t-call="web.external_layout">
|
||||||
|
<t t-set="o" t-value="o.with_context({'lang':o.partner_id.lang})"/>
|
||||||
|
<div class="page">
|
||||||
|
<div class="oe_structure"/>
|
||||||
|
|
||||||
|
<table class="table table-sm" style=" table-layout:fixed;" >
|
||||||
|
<thead>
|
||||||
|
<tr>
|
||||||
|
<th width="30px" style="background-color:#3498DB !important;border: 1px !important; border-style: solid !important; border-color: #fff; color:#fff !important; ">Vendor</th>
|
||||||
|
<th width="30px" style="background-color:#3498DB !important;border: 1px !important; border-style: solid !important; border-color: #fff; color:#fff !important; ">Shipping Address</th>
|
||||||
|
<th width="20px" style="background-color:#3498DB !important;border: 1px !important; border-style: solid !important; border-color: #fff; color:#fff !important; ">Reference/Description</th>
|
||||||
|
<th t-if="o.state != 'draft'" width="20px" style="background-color:#3498DB !important;border: 1px !important; border-style: solid !important; border-color: #fff; color:#fff !important; ">Purchase Order #</th>
|
||||||
|
<th t-if="o.state == 'draft'" width="20px" style="background-color:#3498DB !important;border: 1px !important; border-style: solid !important; border-color: #fff; color:#fff !important; ">Request for Quotation #</th>
|
||||||
|
</tr>
|
||||||
|
</thead>
|
||||||
|
<tbody>
|
||||||
|
<tr>
|
||||||
|
<td style="border: 1px !important; border-style: solid !important; border-color: #fff !important;">
|
||||||
|
<div t-field="o.partner_id"/>
|
||||||
|
<t t-if="o.partner_id.street">
|
||||||
|
<t t-esc="o.partner_id.street"/>
|
||||||
|
</t><br/>
|
||||||
|
<t t-if="o.partner_id.street2">
|
||||||
|
<t t-esc="o.partner_id.street2"/>
|
||||||
|
</t><br/>
|
||||||
|
<t t-if="o.partner_id.city">
|
||||||
|
<t t-esc="o.partner_id.city"/>
|
||||||
|
</t><br/>
|
||||||
|
<t t-if="o.partner_id.state_id.name">
|
||||||
|
<t t-esc="o.partner_id.state_id.name"/>
|
||||||
|
</t><br/>
|
||||||
|
<t t-if="o.partner_id.country_id.name">
|
||||||
|
<t t-esc="o.partner_id.country_id.name"/>
|
||||||
|
</t><br/>
|
||||||
|
<t t-if="o.partner_id.zip">
|
||||||
|
<t t-esc="o.partner_id.zip"/>
|
||||||
|
</t><br/>
|
||||||
|
<div t-field="o.partner_id.vat"/>
|
||||||
|
</td>
|
||||||
|
|
||||||
|
<td style="border: 1px !important; border-style: solid !important; border-color: #fff !important;">
|
||||||
|
<div t-if="o.dest_address_id">
|
||||||
|
<div t-field="o.dest_address_id"
|
||||||
|
t-field-options='{"widget": "contact", "fields": ["address", "name", "phone", "fax"], "no_marker": true, "phone_icons": true}'/>
|
||||||
|
<div t-field="o.partner_id.vat"/>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div t-if="not o.dest_address_id and o.picking_type_id and o.picking_type_id.warehouse_id">
|
||||||
|
<span t-field="o.picking_type_id.warehouse_id.name"/>
|
||||||
|
<div t-field="o.picking_type_id.warehouse_id.partner_id"
|
||||||
|
t-field-options='{"widget": "contact", "fields": ["address", "phone", "fax"], "no_marker": true, "phone_icons": true}'/>
|
||||||
|
<div t-field="o.partner_id.vat"/>
|
||||||
|
</div>
|
||||||
|
</td>
|
||||||
|
|
||||||
|
<td style="border: 1px !important; border-style: solid !important; border-color: #fff !important;">
|
||||||
|
<div t-field="o.partner_ref"/>
|
||||||
|
</td>
|
||||||
|
|
||||||
|
<td style="border: 1px !important; border-style: solid !important; border-color: #fff !important;">
|
||||||
|
<b><div t-field="o.name"/></b>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
</tbody>
|
||||||
|
</table>
|
||||||
|
|
||||||
|
<table class="table table-sm" style=" table-layout:fixed; padding-top=20px;" >
|
||||||
|
<thead>
|
||||||
|
<tr>
|
||||||
|
<th width="30px" style="background-color:#3498DB !important;border: 1px !important; border-style: solid !important; border-color: #fff; color:#fff !important; ">Order Date</th>
|
||||||
|
<th width="30px" style="background-color:#3498DB !important;border: 1px !important; border-style: solid !important; border-color: #fff; color:#fff !important; ">Scheduled Date</th>
|
||||||
|
<th width="20px" style="background-color:#3498DB !important;border: 1px !important; border-style: solid !important; border-color: #fff; color:#fff !important; ">Approval Date</th>
|
||||||
|
<th width="20px" style="background-color:#3498DB !important;border: 1px !important; border-style: solid !important; border-color: #fff; color:#fff !important; ">Payment Term</th>
|
||||||
|
</tr>
|
||||||
|
</thead>
|
||||||
|
<tbody>
|
||||||
|
<tr>
|
||||||
|
<td style="border: 1px !important; border-style: solid !important; border-color: #fff !important;">
|
||||||
|
<div t-field="o.date_order"/>
|
||||||
|
</td>
|
||||||
|
<td style="border: 1px !important; border-style: solid !important; border-color: #fff !important;">
|
||||||
|
<div t-field="o.date_planned"/>
|
||||||
|
</td>
|
||||||
|
<td style="border: 1px !important; border-style: solid !important; border-color: #fff !important;">
|
||||||
|
<div t-field="o.date_approve"/>
|
||||||
|
</td>
|
||||||
|
<td style="border: 1px !important; border-style: solid !important; border-color: #fff !important;">
|
||||||
|
<div t-field="o.payment_term_id"/>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
</tbody>
|
||||||
|
</table>
|
||||||
|
|
||||||
|
<table class="table table-sm">
|
||||||
|
<thead>
|
||||||
|
<tr>
|
||||||
|
<th style="background-color:#3498DB !important;border: 1px !important; border-style: solid !important; border-color: #fff; color:#fff !important; "><strong>Description</strong></th>
|
||||||
|
<th style="background-color:#3498DB !important;border: 1px !important; border-style: solid !important; border-color: #fff; color:#fff !important; "><strong>Taxes</strong></th>
|
||||||
|
<th class="text-center" style="background-color:#3498DB !important;border: 1px !important; border-style: solid !important; border-color: #fff; color:#fff !important; "><strong>Date Req.</strong></th>
|
||||||
|
<th class="text-right" style="background-color:#3498DB !important;border: 1px !important; border-style: solid !important; border-color: #fff; color:#fff !important; "><strong>Qty</strong></th>
|
||||||
|
<th class="text-right" style="background-color:#3498DB !important;border: 1px !important; border-style: solid !important; border-color: #fff; color:#fff !important; "><strong>Unit Price</strong></th>
|
||||||
|
<th class="text-right" style="background-color:#3498DB !important;border: 1px !important; border-style: solid !important; border-color: #fff; color:#fff !important; "><strong>Net Price</strong></th>
|
||||||
|
</tr>
|
||||||
|
</thead>
|
||||||
|
<tbody>
|
||||||
|
<tr t-foreach="o.order_line" t-as="line">
|
||||||
|
<td>
|
||||||
|
<span t-field="line.name"/>
|
||||||
|
</td>
|
||||||
|
<td>
|
||||||
|
<span t-esc="', '.join(map(lambda x: x.name, line.taxes_id))"/>
|
||||||
|
</td>
|
||||||
|
<td class="text-center">
|
||||||
|
<span t-field="line.date_planned"/>
|
||||||
|
</td>
|
||||||
|
<td class="text-right">
|
||||||
|
<span t-field="line.product_qty"/>
|
||||||
|
<span t-field="line.product_uom.name" groups="product.group_uom"/>
|
||||||
|
</td>
|
||||||
|
<td class="text-right">
|
||||||
|
<span t-field="line.price_unit"/>
|
||||||
|
</td>
|
||||||
|
<td class="text-right">
|
||||||
|
<span t-field="line.price_subtotal"
|
||||||
|
t-field-options='{"widget": "monetary", "display_currency": "o.currency_id"}'/>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
</tbody>
|
||||||
|
</table>
|
||||||
|
|
||||||
|
|
||||||
|
<div class="col-xs-4 pull-right">
|
||||||
|
<table class="table table-condensed">
|
||||||
|
<tr class="border-black">
|
||||||
|
<td><strong>Total Without Taxes</strong></td>
|
||||||
|
<td class="text-right">
|
||||||
|
<span t-field="o.amount_untaxed"
|
||||||
|
t-field-options='{"widget": "monetary", "display_currency": "o.currency_id"}'/>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>Taxes</td>
|
||||||
|
<td class="text-right">
|
||||||
|
<span t-field="o.amount_tax"
|
||||||
|
t-field-options='{"widget": "monetary", "display_currency": "o.currency_id"}'/>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
<tr style=" background-color: #3498DB;" 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>
|
||||||
|
<br/><br/><br/><br/><br/><br/><br/><br/>
|
||||||
|
<div style=" background-color: #3498DB; color:#fff !important; font:15px lucida-console,sans-serif !important; ">
|
||||||
|
<p t-if="o.notes">
|
||||||
|
<strong><span>Note:</span> </strong> <span t-field="o.notes" />
|
||||||
|
</p>
|
||||||
|
</div>
|
||||||
|
<div class="oe_structure"/>
|
||||||
|
</div>
|
||||||
|
</t>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<template id="report_purchasequotation" inherit_id="purchase.report_purchasequotation">
|
||||||
|
<xpath expr="//t[@t-call='purchase.report_purchasequotation_document']" position="replace">
|
||||||
|
<t t-call="web.html_container">
|
||||||
|
<t t-foreach="docs" t-as="o">
|
||||||
|
<t t-if="o.company_id.purchase_template == 'classic'">
|
||||||
|
<t t-call="bi_professional_reports_templates.classic_report_purchasequotation_document" t-lang="o.partner_id.lang"/>
|
||||||
|
</t>
|
||||||
|
<t t-if="o.company_id.purchase_template == 'modern'">
|
||||||
|
<t t-call="bi_professional_reports_templates.modern_report_purchasequotation_document" t-lang="o.partner_id.lang"/>
|
||||||
|
</t>
|
||||||
|
<t t-if="o.company_id.purchase_template == 'odoo_standard'">
|
||||||
|
<t t-call="bi_professional_reports_templates.odoo_std_report_purchasequotation_document" t-lang="o.partner_id.lang"/>
|
||||||
|
</t>
|
||||||
|
<t t-if="o.company_id.purchase_template == 'fency'">
|
||||||
|
<t t-call="bi_professional_reports_templates.fency_report_purchasequotation_document" t-lang="o.partner_id.lang"/>
|
||||||
|
</t>
|
||||||
|
</t>
|
||||||
|
</t>
|
||||||
|
</xpath>
|
||||||
|
</template>
|
||||||
|
</data>
|
||||||
|
</odoo>
|
||||||
|
|
||||||
@@ -0,0 +1,144 @@
|
|||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<odoo>
|
||||||
|
<data>
|
||||||
|
<template id="fency_report_purchaseorder_document">
|
||||||
|
<t t-if="o and 'company_id' in o">
|
||||||
|
<t t-set="company" t-value="o.company_id"></t>
|
||||||
|
</t>
|
||||||
|
<t t-if="not o or not 'company_id' in o">
|
||||||
|
<t t-set="company" t-value="res_company"></t>
|
||||||
|
</t>
|
||||||
|
<div class="header">
|
||||||
|
<div class="row mt32 mb32">
|
||||||
|
<div class="col-6">
|
||||||
|
<img t-if="company.logo" t-att-src="'data:image/png;base64,%s' % to_text(company.logo)" style="max-height: 50px;" />
|
||||||
|
</div>
|
||||||
|
<div class="col-6 text-right" style="font:12px lucida-console,sans-serif !important;">
|
||||||
|
<span t-field="company.partner_id" />
|
||||||
|
<br/>
|
||||||
|
<span t-field="company.partner_id.street" />
|
||||||
|
<br/>
|
||||||
|
<span t-field="company.partner_id.street2" />
|
||||||
|
<br/>
|
||||||
|
<span t-field="company.partner_id.city" />
|
||||||
|
<br/>
|
||||||
|
<span t-field="company.partner_id.country_id" />
|
||||||
|
<br/>
|
||||||
|
<span t-field="company.partner_id.vat" />
|
||||||
|
<br/>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<t t-call="web.external_layout">
|
||||||
|
<t t-set="o" t-value="o.with_context({'lang':o.partner_id.lang})"/>
|
||||||
|
<div class="page">
|
||||||
|
<div class="oe_structure"/>
|
||||||
|
<h2 style=" background-color: #3498DB;"><font color="#fff">Purchase Order:<span t-field="o.name"/></font></h2>
|
||||||
|
<div class="row">
|
||||||
|
<div class="col-6 ">
|
||||||
|
<strong style="color:gray !important;">Vendor address:</strong><br/>
|
||||||
|
<span style="color:#3498DB !important;" t-field="o.partner_id" /><br/>
|
||||||
|
<span t-if="o.partner_id.street" t-field="o.partner_id.street" /><br t-if="o.partner_id.street"/>
|
||||||
|
<span t-if="o.partner_id.street2" t-field="o.partner_id.street2" /><br t-if="o.partner_id.street2"/>
|
||||||
|
<span t-if="o.partner_id.city" t-field="o.partner_id.city" /><br t-if="o.partner_id.city"/>
|
||||||
|
<span t-if="o.partner_id.state_id" t-field="o.partner_id.state_id" /><br/>
|
||||||
|
<span t-if="o.partner_id.country_id" t-field="o.partner_id.country_id" /><br t-if="o.partner_id.country_id"/>
|
||||||
|
<span t-if="o.partner_id.vat" t-field="o.partner_id.vat"/><br/>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="col-6 text-left">
|
||||||
|
<strong style="color:gray !important;">Shipping address:</strong>
|
||||||
|
<div t-if="o.dest_address_id">
|
||||||
|
<div t-field="o.dest_address_id"
|
||||||
|
t-field-options='{"widget": "contact", "fields": ["address", "name", "phone", "fax"], "no_marker": true, "phone_icons": true}'/>
|
||||||
|
<div t-field="o.dest_address_id.vat"/>
|
||||||
|
</div>
|
||||||
|
<div t-if="not o.dest_address_id and o.picking_type_id.warehouse_id">
|
||||||
|
<span t-field="o.picking_type_id.warehouse_id.name"/>
|
||||||
|
<div t-field="o.picking_type_id.warehouse_id.partner_id"
|
||||||
|
t-field-options='{"widget": "contact", "fields": ["address", "phone", "fax"], "no_marker": true, "phone_icons": true}'/>
|
||||||
|
<div t-field="o.picking_type_id.warehouse_id.partner_id.vat"/>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<table class="table table-sm">
|
||||||
|
<thead>
|
||||||
|
<tr>
|
||||||
|
<th style="background-color:#3498DB !important;color:#FFF !important;">Description</th>
|
||||||
|
<th style="background-color:#3498DB !important;color:#FFF !important;">Taxes</th>
|
||||||
|
<th style="background-color:#3498DB !important;color:#FFF !important;">Date Req.</th>
|
||||||
|
<th style="background-color:#3498DB !important;color:#FFF !important;">Qty</th>
|
||||||
|
<th style="background-color:#3498DB !important;color:#FFF !important;">Unit Price</th>
|
||||||
|
<th style="background-color:#3498DB !important;color:#FFF !important;">Net Price</th>
|
||||||
|
</tr>
|
||||||
|
</thead>
|
||||||
|
<tbody>
|
||||||
|
<tr t-foreach="o.order_line" t-as="line">
|
||||||
|
<td>
|
||||||
|
<span t-field="line.name"/>
|
||||||
|
</td>
|
||||||
|
<td>
|
||||||
|
<span t-esc="', '.join(map(lambda x: x.name, line.taxes_id))"/>
|
||||||
|
</td>
|
||||||
|
<td class="text-center">
|
||||||
|
<span t-field="line.date_planned"/>
|
||||||
|
</td>
|
||||||
|
<td class="text-right">
|
||||||
|
<span t-field="line.product_qty"/>
|
||||||
|
<span t-field="line.product_uom.name" />
|
||||||
|
</td>
|
||||||
|
<td class="text-right">
|
||||||
|
<span t-field="line.price_unit"/>
|
||||||
|
</td>
|
||||||
|
<td class="text-right">
|
||||||
|
<span t-field="line.price_subtotal"
|
||||||
|
t-field-options='{"widget": "monetary", "display_currency": "o.currency_id"}'/>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
</tbody>
|
||||||
|
</table>
|
||||||
|
|
||||||
|
<div class="col-xs-4 pull-right">
|
||||||
|
<table class="table table-condensed">
|
||||||
|
<tr class="border-black">
|
||||||
|
<td><strong>Total Without Taxes</strong></td>
|
||||||
|
<td class="text-right">
|
||||||
|
<span t-field="o.amount_untaxed"
|
||||||
|
t-field-options='{"widget": "monetary", "display_currency": "o.currency_id"}'/>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>Taxes</td>
|
||||||
|
<td class="text-right">
|
||||||
|
<span t-field="o.amount_tax"
|
||||||
|
t-field-options='{"widget": "monetary", "display_currency": "o.currency_id"}'/>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
<tr style=" background-color: #3498DB;" 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>
|
||||||
|
<br/><br/><br/><br/><br/><br/><br/><br/>
|
||||||
|
<div style=" background-color: #3498DB; color:#fff !important; font:15px lucida-console,sans-serif !important; ">
|
||||||
|
<p t-if="o.notes">
|
||||||
|
<strong><span>Note:</span> </strong> <span t-field="o.notes" />
|
||||||
|
</p>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="oe_structure"/>
|
||||||
|
</div>
|
||||||
|
</t>
|
||||||
|
</template>
|
||||||
|
</data>
|
||||||
|
</odoo>
|
||||||
|
|
||||||
@@ -0,0 +1,106 @@
|
|||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<odoo>
|
||||||
|
<data>
|
||||||
|
<template id="fency_report_purchasequotation_document">
|
||||||
|
<t t-if="o and 'company_id' in o">
|
||||||
|
<t t-set="company" t-value="o.company_id"></t>
|
||||||
|
</t>
|
||||||
|
<t t-if="not o or not 'company_id' in o">
|
||||||
|
<t t-set="company" t-value="res_company"></t>
|
||||||
|
</t>
|
||||||
|
<div class="header">
|
||||||
|
<div class="row mt32 mb32">
|
||||||
|
<div class="col-6">
|
||||||
|
<img t-if="company.logo" t-att-src="'data:image/png;base64,%s' % to_text(company.logo)" style="max-height: 50px;" />
|
||||||
|
</div>
|
||||||
|
<div class="col-6 text-right" style="font:12px lucida-console,sans-serif !important;">
|
||||||
|
<span t-field="company.partner_id" />
|
||||||
|
<br/>
|
||||||
|
<span t-field="company.partner_id.street" />
|
||||||
|
<br/>
|
||||||
|
<span t-field="company.partner_id.street2" />
|
||||||
|
<br/>
|
||||||
|
<span t-field="company.partner_id.city" />
|
||||||
|
<br/>
|
||||||
|
<span t-field="company.partner_id.country_id" />
|
||||||
|
<br/>
|
||||||
|
<span t-field="company.partner_id.vat" />
|
||||||
|
<br/>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<t t-call="web.html_container"/>
|
||||||
|
<t t-call="web.external_layout">
|
||||||
|
<t t-set="o" t-value="o.with_context({'lang':o.partner_id.lang})"/>
|
||||||
|
<div class="page">
|
||||||
|
<div class="oe_structure"/>
|
||||||
|
<h2 style=" background-color: #3498DB;"><font color="#fff">Request for Quotation <span t-field="o.name"/></font></h2>
|
||||||
|
<div class="row mt32 mb32">
|
||||||
|
<div class="col-6 ">
|
||||||
|
<strong style="color:gray !important;">Vendor address:</strong><br/>
|
||||||
|
<span style="color:#3498DB !important;" t-field="o.partner_id" /><br/>
|
||||||
|
<span t-if="o.partner_id.street" t-field="o.partner_id.street" /><br/>
|
||||||
|
<span t-if="o.partner_id.street2" t-field="o.partner_id.street2" /><br/>
|
||||||
|
<span t-if="o.partner_id.city" t-field="o.partner_id.city" /><br/>
|
||||||
|
<span t-if="o.partner_id.state_id" t-field="o.partner_id.state_id" /><br/>
|
||||||
|
<span t-if="o.partner_id.country_id" t-field="o.partner_id.country_id" /><br/>
|
||||||
|
<span t-if="o.partner_id.country_id" t-field="o.partner_id.vat" />
|
||||||
|
</div>
|
||||||
|
<div class="col-6 text-right">
|
||||||
|
<strong style="color:gray !important;">Shipping address:</strong>
|
||||||
|
<div t-if="o.dest_address_id">
|
||||||
|
<div t-field="o.dest_address_id"
|
||||||
|
t-field-options='{"widget": "contact", "fields": ["address", "name", "phone", "fax"], "no_marker": true, "phone_icons": true}'/>
|
||||||
|
<div t-field="o.dest_address_id.vat"/>
|
||||||
|
</div>
|
||||||
|
<div t-if="not o.dest_address_id and o.picking_type_id.warehouse_id">
|
||||||
|
<span t-field="o.picking_type_id.warehouse_id.name"/>
|
||||||
|
<div t-field="o.picking_type_id.warehouse_id.partner_id"
|
||||||
|
t-field-options='{"widget": "contact", "fields": ["address", "phone", "fax"], "no_marker": true, "phone_icons": true}'/>
|
||||||
|
|
||||||
|
<div t-field="o.picking_type_id.warehouse_id.partner_id.vat"/>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<table class="table table-sm">
|
||||||
|
<thead>
|
||||||
|
<tr>
|
||||||
|
<th style="background-color:#3498DB !important;color:#FFF !important;">Description</th>
|
||||||
|
<th style="background-color:#3498DB !important;color:#FFF !important;" class="text-center">Expected Date</th>
|
||||||
|
<th style="background-color:#3498DB !important;color:#FFF !important;" class="text-right">Qty</th>
|
||||||
|
</tr>
|
||||||
|
</thead>
|
||||||
|
<tbody>
|
||||||
|
<tr t-foreach="o.order_line" t-as="order_line">
|
||||||
|
<td>
|
||||||
|
<span t-field="order_line.name"/>
|
||||||
|
</td>
|
||||||
|
<td class="text-center">
|
||||||
|
<span t-field="order_line.date_planned"/>
|
||||||
|
</td>
|
||||||
|
<td class="text-right">
|
||||||
|
<span t-field="order_line.product_qty"/>
|
||||||
|
<span t-field="order_line.product_uom" groups="product.group_uom"/>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
</tbody>
|
||||||
|
</table>
|
||||||
|
|
||||||
|
<div style=" background-color: #3498DB; color:#fff !important; font:15px lucida-console,sans-serif !important; ">
|
||||||
|
<p t-if="o.notes">
|
||||||
|
<strong><span>Note:</span> </strong> <span t-field="o.notes" />
|
||||||
|
</p>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="oe_structure"/>
|
||||||
|
</div>
|
||||||
|
</t>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
</data>
|
||||||
|
</odoo>
|
||||||
|
|
||||||
@@ -0,0 +1,199 @@
|
|||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<odoo>
|
||||||
|
<data>
|
||||||
|
<template id="modern_report_purchaseorder_document">
|
||||||
|
<t t-if="o and 'company_id' in o">
|
||||||
|
<t t-set="company" t-value="o.company_id"></t>
|
||||||
|
</t>
|
||||||
|
<t t-if="not o or not 'company_id' in o">
|
||||||
|
<t t-set="company" t-value="res_company"></t>
|
||||||
|
</t>
|
||||||
|
<div class="header">
|
||||||
|
<div class="row mt32 mb32">
|
||||||
|
<div class="col-6">
|
||||||
|
<img t-if="company.logo" t-att-src="'data:image/png;base64,%s' % to_text(company.logo)" style="max-height: 50px;" />
|
||||||
|
</div>
|
||||||
|
<div class="col-6 text-right" style="font:12px lucida-console,sans-serif !important;">
|
||||||
|
<span t-field="company.partner_id" />
|
||||||
|
<br/>
|
||||||
|
<span t-field="company.partner_id.street" />
|
||||||
|
<br/>
|
||||||
|
<span t-field="company.partner_id.street2" />
|
||||||
|
<br/>
|
||||||
|
<span t-field="company.partner_id.city" />
|
||||||
|
<br/>
|
||||||
|
<span t-field="company.partner_id.country_id" />
|
||||||
|
<br/>
|
||||||
|
<span t-field="company.partner_id.vat" />
|
||||||
|
<br/>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<t t-call="web.html_container"/>
|
||||||
|
<t t-call="web.external_layout">
|
||||||
|
<t t-set="o" t-value="o.with_context({'lang':o.partner_id.lang})"/>
|
||||||
|
<div class="page">
|
||||||
|
|
||||||
|
<div class="oe_structure"/>
|
||||||
|
<div>
|
||||||
|
<table class="table table-sm" style=" table-layout:fixed;" >
|
||||||
|
<thead>
|
||||||
|
<tr>
|
||||||
|
<th width="30px" style="background-color:#893b74 !important;border: 1px !important; border-style: solid !important; border-color: #fff; color:#fff !important; ">Vendor</th>
|
||||||
|
<th width="30px" style="background-color:#893b74 !important;border: 1px !important; border-style: solid !important; border-color: #fff; color:#fff !important; ">Shipping Address</th>
|
||||||
|
<th width="20px" style="background-color:#893b74 !important;border: 1px !important; border-style: solid !important; border-color: #fff; color:#fff !important; ">Reference/Description</th>
|
||||||
|
<th t-if="o.state != 'draft'" width="20px" style="background-color:#893b74 !important;border: 1px !important; border-style: solid !important; border-color: #fff; color:#fff !important; ">Purchase Order #</th>
|
||||||
|
<th t-if="o.state == 'draft'" width="20px" style="background-color:#893b74 !important;border: 1px !important; border-style: solid !important; border-color: #fff; color:#fff !important; ">Request for Quotation #</th>
|
||||||
|
</tr>
|
||||||
|
</thead>
|
||||||
|
<tbody>
|
||||||
|
<tr>
|
||||||
|
<td style="border: 1px !important; border-style: solid !important; border-color: #fff !important;">
|
||||||
|
<div t-field="o.partner_id"/>
|
||||||
|
<t t-if="o.partner_id.street">
|
||||||
|
<t t-esc="o.partner_id.street"/>
|
||||||
|
</t><br/>
|
||||||
|
<t t-if="o.partner_id.street2">
|
||||||
|
<t t-esc="o.partner_id.street2"/>
|
||||||
|
</t><br/>
|
||||||
|
<t t-if="o.partner_id.city">
|
||||||
|
<t t-esc="o.partner_id.city"/>
|
||||||
|
</t><br/>
|
||||||
|
<t t-if="o.partner_id.state_id.name">
|
||||||
|
<t t-esc="o.partner_id.state_id.name"/>
|
||||||
|
</t><br/>
|
||||||
|
<t t-if="o.partner_id.country_id.name">
|
||||||
|
<t t-esc="o.partner_id.country_id.name"/>
|
||||||
|
</t><br/>
|
||||||
|
<t t-if="o.partner_id.zip">
|
||||||
|
<t t-esc="o.partner_id.zip"/>
|
||||||
|
</t><br/>
|
||||||
|
<div t-field="o.partner_id.vat"/>
|
||||||
|
</td>
|
||||||
|
<td style="border: 1px !important; border-style: solid !important; border-color: #fff !important;">
|
||||||
|
<div t-if="o.dest_address_id">
|
||||||
|
<div t-field="o.dest_address_id"
|
||||||
|
t-field-options='{"widget": "contact", "fields": ["address", "name", "phone", "fax"], "no_marker": true, "phone_icons": true}'/>
|
||||||
|
<div t-field="o.dest_address_id.vat"/>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div t-if="not o.dest_address_id and o.picking_type_id and o.picking_type_id.warehouse_id">
|
||||||
|
<span t-field="o.picking_type_id.warehouse_id.name"/>
|
||||||
|
<div t-field="o.picking_type_id.warehouse_id.partner_id"
|
||||||
|
t-field-options='{"widget": "contact", "fields": ["address", "phone", "fax"], "no_marker": true, "phone_icons": true}'/>
|
||||||
|
<div t-field="o.picking_type_id.warehouse_id.partner_id.vat"/>
|
||||||
|
</div>
|
||||||
|
</td>
|
||||||
|
<td style="border: 1px !important; border-style: solid !important; border-color: #fff !important;">
|
||||||
|
<div t-field="o.partner_ref"/>
|
||||||
|
</td>
|
||||||
|
<td style="border: 1px !important; border-style: solid !important; border-color: #fff !important;">
|
||||||
|
<b><div t-field="o.name"/></b>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
</tbody>
|
||||||
|
</table>
|
||||||
|
|
||||||
|
<table class="table table-sm" style=" table-layout:fixed; padding-top=20px;" >
|
||||||
|
<thead>
|
||||||
|
<tr>
|
||||||
|
<th width="30px" style="background-color:#893b74 !important;border: 1px !important; border-style: solid !important; border-color: #fff; color:#fff !important; ">Order Date</th>
|
||||||
|
<th width="30px" style="background-color:#893b74 !important;border: 1px !important; border-style: solid !important; border-color: #fff; color:#fff !important; ">Scheduled Date</th>
|
||||||
|
<th width="20px" style="background-color:#893b74 !important;border: 1px !important; border-style: solid !important; border-color: #fff; color:#fff !important; ">Approval Date</th>
|
||||||
|
<th width="20px" style="background-color:#893b74 !important;border: 1px !important; border-style: solid !important; border-color: #fff; color:#fff !important; ">Payment Term</th>
|
||||||
|
</tr>
|
||||||
|
</thead>
|
||||||
|
<tbody>
|
||||||
|
<tr>
|
||||||
|
<td style="border: 1px !important; border-style: solid !important; border-color: #fff !important;">
|
||||||
|
<div t-field="o.date_order"/>
|
||||||
|
</td>
|
||||||
|
<td style="border: 1px !important; border-style: solid !important; border-color: #fff !important;">
|
||||||
|
<div t-field="o.date_planned"/>
|
||||||
|
</td>
|
||||||
|
<td style="border: 1px !important; border-style: solid !important; border-color: #fff !important;">
|
||||||
|
<div t-field="o.date_approve"/>
|
||||||
|
</td>
|
||||||
|
<td style="border: 1px !important; border-style: solid !important; border-color: #fff !important;">
|
||||||
|
<div t-field="o.payment_term_id"/>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
</tbody>
|
||||||
|
</table>
|
||||||
|
|
||||||
|
|
||||||
|
<table class="table table-sm">
|
||||||
|
<thead>
|
||||||
|
<tr>
|
||||||
|
<th style="background-color:#893b74 !important;border: 1px !important; border-style: solid !important; border-color: #fff; color:#fff !important; "><strong>Description</strong></th>
|
||||||
|
<th style="background-color:#893b74 !important;border: 1px !important; border-style: solid !important; border-color: #fff; color:#fff !important; "><strong>Taxes</strong></th>
|
||||||
|
<th class="text-center" style="background-color:#893b74 !important;border: 1px !important; border-style: solid !important; border-color: #fff; color:#fff !important; "><strong>Date Req.</strong></th>
|
||||||
|
<th class="text-right" style="background-color:#893b74 !important;border: 1px !important; border-style: solid !important; border-color: #fff; color:#fff !important; "><strong>Qty</strong></th>
|
||||||
|
<th class="text-right" style="background-color:#893b74 !important;border: 1px !important; border-style: solid !important; border-color: #fff; color:#fff !important; "><strong>Unit Price</strong></th>
|
||||||
|
<th class="text-right" style="background-color:#893b74 !important;border: 1px !important; border-style: solid !important; border-color: #fff; color:#fff !important; "><strong>Net Price</strong></th>
|
||||||
|
</tr>
|
||||||
|
</thead>
|
||||||
|
<tbody>
|
||||||
|
<tr t-foreach="o.order_line" t-as="line">
|
||||||
|
<td>
|
||||||
|
<span t-field="line.name"/>
|
||||||
|
</td>
|
||||||
|
<td>
|
||||||
|
<span t-esc="', '.join(map(lambda x: x.name, line.taxes_id))"/>
|
||||||
|
</td>
|
||||||
|
<td class="text-center">
|
||||||
|
<span t-field="line.date_planned"/>
|
||||||
|
</td>
|
||||||
|
<td class="text-right">
|
||||||
|
<span t-field="line.product_qty"/>
|
||||||
|
<span t-field="line.product_uom.name" groups="product.group_uom"/>
|
||||||
|
</td>
|
||||||
|
<td class="text-right">
|
||||||
|
<span t-field="line.price_unit"/>
|
||||||
|
</td>
|
||||||
|
<td class="text-right">
|
||||||
|
<span t-field="line.price_subtotal"
|
||||||
|
t-field-options='{"widget": "monetary", "display_currency": "o.currency_id"}'/>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
</tbody>
|
||||||
|
</table>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="col-xs-4 pull-right">
|
||||||
|
<table class="table table-sm">
|
||||||
|
<tr class="border-black">
|
||||||
|
<td><strong>Total Without Taxes</strong></td>
|
||||||
|
<td class="text-right">
|
||||||
|
<span t-field="o.amount_untaxed"
|
||||||
|
t-field-options='{"widget": "monetary", "display_currency": "o.currency_id"}'/>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>Taxes</td>
|
||||||
|
<td class="text-right">
|
||||||
|
<span t-field="o.amount_tax"
|
||||||
|
t-field-options='{"widget": "monetary", "display_currency": "o.currency_id"}'/>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
<tr style=" background-color: #893b74;" 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>
|
||||||
|
<br/><br/><br/><br/><br/><br/><br/><br/>
|
||||||
|
<div style=" background-color: #893b74; color:#fff !important; font:15px lucida-console,sans-serif !important; ">
|
||||||
|
<p t-if="o.notes">
|
||||||
|
<strong><font color="#FFF"><span>Note:</span> </font></strong> <font color="#FFF"><span t-field="o.notes" /></font>
|
||||||
|
</p>
|
||||||
|
</div>
|
||||||
|
<div class="oe_structure"/>
|
||||||
|
</div>
|
||||||
|
</t>
|
||||||
|
</template>
|
||||||
|
</data>
|
||||||
|
</odoo>
|
||||||
@@ -0,0 +1,154 @@
|
|||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<odoo>
|
||||||
|
<data>
|
||||||
|
<template id="modern_report_purchasequotation_document">
|
||||||
|
<t t-if="o and 'company_id' in o">
|
||||||
|
<t t-set="company" t-value="o.company_id"></t>
|
||||||
|
</t>
|
||||||
|
<t t-if="not o or not 'company_id' in o">
|
||||||
|
<t t-set="company" t-value="res_company"></t>
|
||||||
|
</t>
|
||||||
|
<div class="header">
|
||||||
|
<div class="row mt32 mb32">
|
||||||
|
<div class="col-6">
|
||||||
|
<img t-if="company.logo" t-att-src="'data:image/png;base64,%s' % to_text(company.logo)" style="max-height: 50px;" />
|
||||||
|
</div>
|
||||||
|
<div class="col-6 text-right" style="font:12px lucida-console,sans-serif !important;">
|
||||||
|
<span t-field="company.partner_id" />
|
||||||
|
<br/>
|
||||||
|
<span t-field="company.partner_id.street" />
|
||||||
|
<br/>
|
||||||
|
<span t-field="company.partner_id.street2" />
|
||||||
|
<br/>
|
||||||
|
<span t-field="company.partner_id.city" />
|
||||||
|
<br/>
|
||||||
|
<span t-field="company.partner_id.country_id" />
|
||||||
|
<br/>
|
||||||
|
<span t-field="company.partner_id.vat" />
|
||||||
|
<br/>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<t t-call="web.html_container"/>
|
||||||
|
<t t-call="web.external_layout">
|
||||||
|
<t t-set="o" t-value="o.with_context({'lang':o.partner_id.lang})"/>
|
||||||
|
<div class="page">
|
||||||
|
<div class="oe_structure"/>
|
||||||
|
|
||||||
|
<table class="table table-sm" style=" table-layout:fixed;" >
|
||||||
|
<thead style=" background-color: #893b74;">
|
||||||
|
<tr>
|
||||||
|
<th width="30px" style="background-color:#893b74 !important;border: 1px !important; border-style: solid !important; border-color: #fff; color:#fff !important; ">Vendor</th>
|
||||||
|
<th width="30px" style="background-color:#893b74 !important;border: 1px !important; border-style: solid !important; border-color: #fff; color:#fff !important; ">Shipping Address</th>
|
||||||
|
<th width="20px" style="background-color:#893b74 !important;border: 1px !important; border-style: solid !important; border-color: #fff; color:#fff !important; ">Reference/Description</th>
|
||||||
|
<th width="20px" style="background-color:#893b74 !important;border: 1px !important; border-style: solid !important; border-color: #fff; color:#fff !important; ">Request For Quatation #</th>
|
||||||
|
</tr>
|
||||||
|
</thead>
|
||||||
|
<tbody>
|
||||||
|
<tr>
|
||||||
|
<td style="border: 1px !important; border-style: solid !important; border-color: #fff !important;">
|
||||||
|
<div t-field="o.partner_id"/>
|
||||||
|
<t t-if="o.partner_id.street">
|
||||||
|
<t t-esc="o.partner_id.street"/>
|
||||||
|
</t><br/>
|
||||||
|
<t t-if="o.partner_id.street2">
|
||||||
|
<t t-esc="o.partner_id.street2"/>
|
||||||
|
</t><br/>
|
||||||
|
<t t-if="o.partner_id.city">
|
||||||
|
<t t-esc="o.partner_id.city"/>
|
||||||
|
</t><br/>
|
||||||
|
<t t-if="o.partner_id.state_id.name">
|
||||||
|
<t t-esc="o.partner_id.state_id.name"/>
|
||||||
|
</t><br/>
|
||||||
|
<t t-if="o.partner_id.country_id.name">
|
||||||
|
<t t-esc="o.partner_id.country_id.name"/>
|
||||||
|
</t><br/>
|
||||||
|
<t t-if="o.partner_id.zip">
|
||||||
|
<t t-esc="o.partner_id.zip"/>
|
||||||
|
</t><br/>
|
||||||
|
<div t-field="o.partner_id.vat"/>
|
||||||
|
</td>
|
||||||
|
<td style="border: 1px !important; border-style: solid !important; border-color: #fff !important;">
|
||||||
|
<div t-if="o.dest_address_id">
|
||||||
|
<div t-field="o.dest_address_id"
|
||||||
|
t-field-options='{"widget": "contact", "fields": ["address", "name", "phone", "fax"], "no_marker": true, "phone_icons": true}'/>
|
||||||
|
<div t-field="o.dest_address_id.vat"/>
|
||||||
|
</div>
|
||||||
|
<div t-if="not o.dest_address_id and o.picking_type_id.warehouse_id">
|
||||||
|
<span t-field="o.picking_type_id.warehouse_id.name"/>
|
||||||
|
<div t-field="o.picking_type_id.warehouse_id.partner_id"
|
||||||
|
t-field-options='{"widget": "contact", "fields": ["address", "phone", "fax"], "no_marker": true, "phone_icons": true}'/>
|
||||||
|
<div t-field="o.picking_type_id.warehouse_id.partner_id.vat"/>
|
||||||
|
</div>
|
||||||
|
</td>
|
||||||
|
<td style="border: 1px !important; border-style: solid !important; border-color: #fff !important;">
|
||||||
|
</td>
|
||||||
|
<td style="border: 1px !important; border-style: solid !important; border-color: #fff !important;">
|
||||||
|
<b><div t-field="o.name"/></b>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
</tbody>
|
||||||
|
</table>
|
||||||
|
|
||||||
|
<table class="table table-sm" style=" table-layout:fixed; padding-top=20px;" >
|
||||||
|
<thead style=" background-color: #893b74;">
|
||||||
|
<tr>
|
||||||
|
<th width="30px" style="background-color:#893b74 !important;border: 1px !important; border-style: solid !important; border-color: #fff; color:#fff !important; ">Order Date</th>
|
||||||
|
<th width="30px" style="background-color:#893b74 !important;border: 1px !important; border-style: solid !important; border-color: #fff; color:#fff !important; ">Scheduled Date</th>
|
||||||
|
<th width="20px" style="background-color:#893b74 !important;border: 1px !important; border-style: solid !important; border-color: #fff; color:#fff !important; ">Approval Date</th>
|
||||||
|
<th width="20px" style="background-color:#893b74 !important;border: 1px !important; border-style: solid !important; border-color: #fff; color:#fff !important; ">Payment Term</th>
|
||||||
|
</tr>
|
||||||
|
</thead>
|
||||||
|
<tbody>
|
||||||
|
<tr>
|
||||||
|
<td style="border: 1px !important; border-style: solid !important; border-color: #fff !important;">
|
||||||
|
<div t-field="o.date_order"/>
|
||||||
|
</td>
|
||||||
|
<td style="border: 1px !important; border-style: solid !important; border-color: #fff !important;">
|
||||||
|
<div t-field="o.date_planned"/>
|
||||||
|
</td>
|
||||||
|
<td style="border: 1px !important; border-style: solid !important; border-color: #fff !important;">
|
||||||
|
<div t-field="o.date_approve"/>
|
||||||
|
</td>
|
||||||
|
<td style="border: 1px !important; border-style: solid !important; border-color: #fff !important;">
|
||||||
|
<div t-field="o.payment_term_id"/>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
</tbody>
|
||||||
|
</table>
|
||||||
|
|
||||||
|
|
||||||
|
<table class="table table-sm">
|
||||||
|
<thead>
|
||||||
|
<tr>
|
||||||
|
<th style="background-color:#893b74 !important;color:#FFF !important;">Description</th>
|
||||||
|
<th style="background-color:#893b74 !important;color:#FFF !important;" class="text-center">Expected Date</th>
|
||||||
|
<th style="background-color:#893b74 !important;color:#FFF !important;" class="text-right">Qty</th>
|
||||||
|
</tr>
|
||||||
|
</thead>
|
||||||
|
<tbody>
|
||||||
|
<tr t-foreach="o.order_line" t-as="order_line">
|
||||||
|
<td>
|
||||||
|
<span t-field="order_line.name"/>
|
||||||
|
</td>
|
||||||
|
<td class="text-center">
|
||||||
|
<span t-field="order_line.date_planned"/>
|
||||||
|
</td>
|
||||||
|
<td class="text-right">
|
||||||
|
<span t-field="order_line.product_qty"/>
|
||||||
|
<span t-field="order_line.product_uom" groups="product.group_uom"/>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
</tbody>
|
||||||
|
</table>
|
||||||
|
|
||||||
|
<p style=" background-color: #893b74;" t-field="o.notes" />
|
||||||
|
|
||||||
|
<div class="oe_structure"/>
|
||||||
|
</div>
|
||||||
|
</t>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
</data>
|
||||||
|
</odoo>
|
||||||
|
|
||||||
@@ -0,0 +1,143 @@
|
|||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<odoo>
|
||||||
|
<data>
|
||||||
|
<template id="odoo_standard_report_purchaseorder_document">
|
||||||
|
<t t-if="o and 'company_id' in o">
|
||||||
|
<t t-set="company" t-value="o.company_id"></t>
|
||||||
|
</t>
|
||||||
|
<t t-if="not o or not 'company_id' in o">
|
||||||
|
<t t-set="company" t-value="res_company"></t>
|
||||||
|
</t>
|
||||||
|
<div class="header">
|
||||||
|
<div class="row mt32 mb32">
|
||||||
|
<div class="col-6">
|
||||||
|
<img t-if="company.logo" t-att-src="'data:image/png;base64,%s' % to_text(company.logo)" style="max-height: 50px;" />
|
||||||
|
</div>
|
||||||
|
<div class="col-6 text-right" style="font:12px lucida-console,sans-serif !important;">
|
||||||
|
<span t-field="company.partner_id" />
|
||||||
|
<br/>
|
||||||
|
<span t-field="company.partner_id.street" />
|
||||||
|
<br/>
|
||||||
|
<span t-field="company.partner_id.street2" />
|
||||||
|
<br/>
|
||||||
|
<span t-field="company.partner_id.city" />
|
||||||
|
<br/>
|
||||||
|
<span t-field="company.partner_id.country_id" />
|
||||||
|
<br/>
|
||||||
|
<span t-field="company.partner_id.vat" />
|
||||||
|
<br/>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<t t-call="web.external_layout">
|
||||||
|
<t t-set="o" t-value="o.with_context({'lang':o.partner_id.lang})"/>
|
||||||
|
<div class="page">
|
||||||
|
<div class="oe_structure"/>
|
||||||
|
<h2 style=" background-color: #893b74;"><font color="#fff">Request for Quotation <span t-field="o.name"/></font></h2>
|
||||||
|
<div class="row mt32 mb32">
|
||||||
|
<div class="col-xs-6 ">
|
||||||
|
<strong style="color:gray !important;">Vendor address:</strong><br/>
|
||||||
|
<span style="color:#893b74 !important;" t-field="o.partner_id" /><br/>
|
||||||
|
<t t-if="o.partner_id.street">
|
||||||
|
<t t-esc="o.partner_id.street"/>
|
||||||
|
</t><br/>
|
||||||
|
<t t-if="o.partner_id.street2">
|
||||||
|
<t t-esc="o.partner_id.street2"/>
|
||||||
|
</t><br/>
|
||||||
|
<t t-if="o.partner_id.city">
|
||||||
|
<t t-esc="o.partner_id.city"/>
|
||||||
|
</t><br/>
|
||||||
|
<t t-if="o.partner_id.state_id.name">
|
||||||
|
<t t-esc="o.partner_id.state_id.name"/>
|
||||||
|
</t><br/>
|
||||||
|
<t t-if="o.partner_id.country_id.name">
|
||||||
|
<t t-esc="o.partner_id.country_id.name"/>
|
||||||
|
</t><br/>
|
||||||
|
<t t-if="o.partner_id.zip">
|
||||||
|
<t t-esc="o.partner_id.zip"/>
|
||||||
|
</t><br/>
|
||||||
|
<div t-field="o.partner_id.vat"/>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<table class="table table-sm">
|
||||||
|
<thead>
|
||||||
|
<tr>
|
||||||
|
<th style="background-color:#893b74 !important;color:#FFF !important;">Description</th>
|
||||||
|
<th style="background-color:#893b74 !important;color:#FFF !important;" class="text-center">Taxes</th>
|
||||||
|
<th style="background-color:#893b74 !important;color:#FFF !important;" class="text-center">Date Req.</th>
|
||||||
|
<th style="background-color:#893b74 !important;color:#FFF !important;" class="text-center">Qty</th>
|
||||||
|
<th style="background-color:#893b74 !important;color:#FFF !important;" class="text-center">Unit Price</th>
|
||||||
|
<th style="background-color:#893b74 !important;color:#FFF !important;" class="text-right">Net Price</th>
|
||||||
|
</tr>
|
||||||
|
</thead>
|
||||||
|
<tbody>
|
||||||
|
<tr t-foreach="o.order_line" t-as="line">
|
||||||
|
<td>
|
||||||
|
<span t-field="line.name"/>
|
||||||
|
</td>
|
||||||
|
<td>
|
||||||
|
<span t-esc="', '.join(map(lambda x: x.name, line.taxes_id))"/>
|
||||||
|
</td>
|
||||||
|
<td class="text-center">
|
||||||
|
<span t-field="line.date_planned"/>
|
||||||
|
</td>
|
||||||
|
<td class="text-right">
|
||||||
|
<span t-field="line.product_qty"/>
|
||||||
|
<span t-field="line.product_uom.name" groups="product.group_uom"/>
|
||||||
|
</td>
|
||||||
|
<td class="text-right">
|
||||||
|
<span t-field="line.price_unit"/>
|
||||||
|
</td>
|
||||||
|
<td class="text-right">
|
||||||
|
<span t-field="line.price_subtotal"
|
||||||
|
t-field-options='{"widget": "monetary", "display_currency": "o.currency_id"}'/>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
</tbody>
|
||||||
|
</table>
|
||||||
|
<div >
|
||||||
|
<div class="col-xs-4 pull-right">
|
||||||
|
<table class="table table-condensed">
|
||||||
|
<tr class="border-black">
|
||||||
|
<td><strong>Total Without Taxes</strong></td>
|
||||||
|
<td class="text-right">
|
||||||
|
<span t-field="o.amount_untaxed"
|
||||||
|
t-field-options='{"widget": "monetary", "display_currency": "o.currency_id"}'/>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>Taxes</td>
|
||||||
|
<td class="text-right">
|
||||||
|
<span t-field="o.amount_tax"
|
||||||
|
t-field-options='{"widget": "monetary", "display_currency": "o.currency_id"}'/>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td style="background-color:#893b74 !important;color:#FFF !important;"><strong>Total</strong></td>
|
||||||
|
<td style="background-color:#893b74 !important;color:#FFF !important;" class="text-right">
|
||||||
|
<span t-field="o.amount_total"
|
||||||
|
t-field-options='{"widget": "monetary", "display_currency": "o.currency_id"}'/>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
</table>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<br/><br/><br/><br/><br/><br/><br/><br/>
|
||||||
|
<div style=" background-color: #893b74; color:#fff !important; font:15px lucida-console,sans-serif !important; ">
|
||||||
|
<p t-if="o.notes">
|
||||||
|
<strong><span>Note:</span> </strong> <span t-field="o.notes" />
|
||||||
|
</p>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="oe_structure"/>
|
||||||
|
</div>
|
||||||
|
</t>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
</data>
|
||||||
|
</odoo>
|
||||||
|
|
||||||
@@ -0,0 +1,103 @@
|
|||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<odoo>
|
||||||
|
<data>
|
||||||
|
<template id="odoo_std_report_purchasequotation_document">
|
||||||
|
<t t-if="o and 'company_id' in o">
|
||||||
|
<t t-set="company" t-value="o.company_id"></t>
|
||||||
|
</t>
|
||||||
|
<t t-if="not o or not 'company_id' in o">
|
||||||
|
<t t-set="company" t-value="res_company"></t>
|
||||||
|
</t>
|
||||||
|
<div class="header">
|
||||||
|
<div class="row mt32 mb32">
|
||||||
|
<div class="col-6">
|
||||||
|
<img t-if="company.logo" t-att-src="'data:image/png;base64,%s' % to_text(company.logo)" style="max-height: 50px;" />
|
||||||
|
</div>
|
||||||
|
<div class="col-6 text-right" style="font:12px lucida-console,sans-serif !important;">
|
||||||
|
<span t-field="company.partner_id" />
|
||||||
|
<br/>
|
||||||
|
<span t-field="company.partner_id.street" />
|
||||||
|
<br/>
|
||||||
|
<span t-field="company.partner_id.street2" />
|
||||||
|
<br/>
|
||||||
|
<span t-field="company.partner_id.city" />
|
||||||
|
<br/>
|
||||||
|
<span t-field="company.partner_id.country_id" />
|
||||||
|
<br/>
|
||||||
|
<span t-field="company.partner_id.vat" />
|
||||||
|
<br/>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<t t-call="web.external_layout">
|
||||||
|
<t t-set="o" t-value="o.with_context({'lang':o.partner_id.lang})"/>
|
||||||
|
<div class="page">
|
||||||
|
<div class="oe_structure"/>
|
||||||
|
<h2 style=" background-color: #893b74;"><font color="#fff">Request for Quotation <span t-field="o.name"/></font></h2>
|
||||||
|
<div class="row mt32 mb32">
|
||||||
|
<div class="col-xs-6 ">
|
||||||
|
<strong style="color:gray !important;">Vendor address:</strong><br/>
|
||||||
|
<span style="color:#893b74 !important;" t-field="o.partner_id" /><br/>
|
||||||
|
<t t-if="o.partner_id.street">
|
||||||
|
<t t-esc="o.partner_id.street"/>
|
||||||
|
</t><br/>
|
||||||
|
<t t-if="o.partner_id.street2">
|
||||||
|
<t t-esc="o.partner_id.street2"/>
|
||||||
|
</t><br/>
|
||||||
|
<t t-if="o.partner_id.city">
|
||||||
|
<t t-esc="o.partner_id.city"/>
|
||||||
|
</t><br/>
|
||||||
|
<t t-if="o.partner_id.state_id.name">
|
||||||
|
<t t-esc="o.partner_id.state_id.name"/>
|
||||||
|
</t><br/>
|
||||||
|
<t t-if="o.partner_id.country_id.name">
|
||||||
|
<t t-esc="o.partner_id.country_id.name"/>
|
||||||
|
</t><br/>
|
||||||
|
<t t-if="o.partner_id.zip">
|
||||||
|
<t t-esc="o.partner_id.zip"/>
|
||||||
|
</t><br/>
|
||||||
|
<div t-field="o.partner_id.vat"/>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<table class="table table-sm">
|
||||||
|
<thead>
|
||||||
|
<tr>
|
||||||
|
<th style="background-color:#893b74 !important;color:#FFF !important;">Description</th>
|
||||||
|
<th style="background-color:#893b74 !important;color:#FFF !important;" class="text-center">Expected Date</th>
|
||||||
|
<th style="background-color:#893b74 !important;color:#FFF !important;" class="text-right">Qty</th>
|
||||||
|
</tr>
|
||||||
|
</thead>
|
||||||
|
<tbody>
|
||||||
|
<tr t-foreach="o.order_line" t-as="order_line">
|
||||||
|
<td>
|
||||||
|
<span t-field="order_line.name"/>
|
||||||
|
</td>
|
||||||
|
<td class="text-center">
|
||||||
|
<span t-field="order_line.date_planned"/>
|
||||||
|
</td>
|
||||||
|
<td class="text-right">
|
||||||
|
<span t-field="order_line.product_qty"/>
|
||||||
|
<span t-field="order_line.product_uom" groups="product.group_uom"/>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
</tbody>
|
||||||
|
</table>
|
||||||
|
|
||||||
|
<div style=" background-color: #893b74; color:#fff !important; font:15px lucida-console,sans-serif !important; ">
|
||||||
|
<p t-if="o.notes">
|
||||||
|
<strong><span>Note:</span> </strong> <span t-field="o.notes" />
|
||||||
|
</p>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="oe_structure"/>
|
||||||
|
</div>
|
||||||
|
</t>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
</data>
|
||||||
|
</odoo>
|
||||||
|
|
||||||
85
bi_professional_reports_templates/res_company.py
Normal file
@@ -0,0 +1,85 @@
|
|||||||
|
# -*- coding: utf-8 -*-
|
||||||
|
# Part of BrowseInfo. See LICENSE file for full copyright and licensing details.
|
||||||
|
|
||||||
|
from odoo import models, fields, api, _
|
||||||
|
|
||||||
|
class res_company(models.Model):
|
||||||
|
_inherit = "res.company"
|
||||||
|
|
||||||
|
sale_template = fields.Selection([
|
||||||
|
('fency', 'Fency'),
|
||||||
|
('classic', 'Classic'),
|
||||||
|
('modern', 'Modern'),
|
||||||
|
('odoo_standard', 'Odoo Standard'),
|
||||||
|
], 'Sale')
|
||||||
|
purchase_template = fields.Selection([
|
||||||
|
('fency', 'Fency'),
|
||||||
|
('classic', 'Classic'),
|
||||||
|
('modern', 'Modern'),
|
||||||
|
('odoo_standard', 'Odoo Stan/home/sanjay/odoo-12.0/custom_addons/custom_wizard/modeldard'),
|
||||||
|
], 'Purchase')
|
||||||
|
stock_template = fields.Selection([
|
||||||
|
('fency', 'Fency'),
|
||||||
|
('classic', 'Classic'),
|
||||||
|
('modern', 'Modern'),
|
||||||
|
('odoo_standard', 'Odoo Standard'),
|
||||||
|
], 'Stock')
|
||||||
|
account_template = fields.Selection([
|
||||||
|
('fency', 'Fency'),
|
||||||
|
('classic', 'Classic'),
|
||||||
|
('modern', 'Modern'),
|
||||||
|
('odoo_standard', 'Odoo Standard'),
|
||||||
|
], 'Account')
|
||||||
|
|
||||||
|
|
||||||
|
class account_invoice(models.Model):
|
||||||
|
_inherit = "account.move"
|
||||||
|
|
||||||
|
paypal_chk = fields.Boolean("Paypal")
|
||||||
|
paypal_id = fields.Char("Paypal Id")
|
||||||
|
|
||||||
|
|
||||||
|
def invoice_print(self):
|
||||||
|
""" Print the invoice and mark it as sent, so that we can see more
|
||||||
|
easily the next step of the workflow
|
||||||
|
"""
|
||||||
|
self.ensure_one()
|
||||||
|
self.sent = True
|
||||||
|
return self.env.ref('bi_professional_reports_templates.custom_account_invoices').report_action(self)
|
||||||
|
|
||||||
|
|
||||||
|
class res_company(models.Model):
|
||||||
|
_inherit = "res.company"
|
||||||
|
|
||||||
|
bank_account_id = fields.Many2one('res.partner.bank', 'Bank Account')
|
||||||
|
|
||||||
|
class res_partner_bank(models.Model):
|
||||||
|
_inherit = "res.partner.bank"
|
||||||
|
|
||||||
|
street = fields.Char('Street')
|
||||||
|
street2 = fields.Char('Street2')
|
||||||
|
zip = fields.Char('Zip', size=24, change_default=True)
|
||||||
|
city = fields.Char('City')
|
||||||
|
state_id = fields.Many2one("res.country.state", 'State')
|
||||||
|
country_id = fields.Many2one('res.country', 'Country')
|
||||||
|
swift_code = fields.Char('Swift Code')
|
||||||
|
ifsc = fields.Char('IFSC')
|
||||||
|
branch_name = fields.Char('Branch Name')
|
||||||
|
|
||||||
|
|
||||||
|
class sale_order(models.Model):
|
||||||
|
_inherit = 'sale.order'
|
||||||
|
|
||||||
|
|
||||||
|
def print_quotation(self):
|
||||||
|
self.filtered(lambda s: s.state == 'draft').write({'state': 'sent'})
|
||||||
|
return self.env.ref('bi_professional_reports_templates.custom_report_sale_order').report_action(self)
|
||||||
|
|
||||||
|
|
||||||
|
class PurchaseOrder(models.Model):
|
||||||
|
_inherit = "purchase.order"
|
||||||
|
|
||||||
|
def print_quotation(self):
|
||||||
|
self.write({'state': "sent"})
|
||||||
|
return self.env.ref('bi_professional_reports_templates.custom_report_purchase_quotation').report_action(self)
|
||||||
|
|
||||||
70
bi_professional_reports_templates/res_company.xml
Normal file
@@ -0,0 +1,70 @@
|
|||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<odoo>
|
||||||
|
<data>
|
||||||
|
|
||||||
|
<record id="res_company_custom_inherit_form_view" model="ir.ui.view">
|
||||||
|
<field name="name">res_company_inherit.inherit_form_view</field>
|
||||||
|
<field name="model">res.company</field>
|
||||||
|
<field name="inherit_id" ref="base.view_company_form" />
|
||||||
|
<field name="type">form</field>
|
||||||
|
<field name="arch" type="xml">
|
||||||
|
<field name="parent_id" position="after">
|
||||||
|
<group colspan="2" col="2">
|
||||||
|
<field name="sale_template"/>
|
||||||
|
<field name="purchase_template"/>
|
||||||
|
<field name="account_template"/>
|
||||||
|
<field name="stock_template"/>
|
||||||
|
</group>
|
||||||
|
</field>
|
||||||
|
</field>
|
||||||
|
</record>
|
||||||
|
<record id="account_invoice_inherit_form_view" model="ir.ui.view">
|
||||||
|
<field name="name">account_invoice_inherit.inherit_form_view</field>
|
||||||
|
<field name="model">account.move</field>
|
||||||
|
<field name="inherit_id" ref="account.view_move_form" />
|
||||||
|
<field name="type">form</field>
|
||||||
|
<field name="arch" type="xml">
|
||||||
|
<field name="invoice_payment_term_id" position='after'>
|
||||||
|
<field name="paypal_chk"/>
|
||||||
|
<field name="paypal_id" attrs="{'invisible': [('paypal_chk','!=',True)],'required': [['paypal_chk', '=', True]]}"/>
|
||||||
|
</field>
|
||||||
|
</field>
|
||||||
|
</record>
|
||||||
|
|
||||||
|
<record id="res_company_inherit_form_view" model="ir.ui.view">
|
||||||
|
<field name="name">res_company_inherit.inherit_form_view</field>
|
||||||
|
<field name="model">res.company</field>
|
||||||
|
<field name="inherit_id" ref="base.view_company_form" />
|
||||||
|
<field name="type">form</field>
|
||||||
|
<field name="arch" type="xml">
|
||||||
|
<field name="parent_id" position="before">
|
||||||
|
<field name="bank_account_id"/>
|
||||||
|
</field>
|
||||||
|
</field>
|
||||||
|
</record>
|
||||||
|
|
||||||
|
<record id="res_partner_bank_inherit_form_view" model="ir.ui.view">
|
||||||
|
<field name="name">res_partner_bank_inherit.inherit_form_view</field>
|
||||||
|
<field name="model">res.partner.bank</field>
|
||||||
|
<field name="inherit_id" ref="base.view_partner_bank_form" />
|
||||||
|
<field name="type">form</field>
|
||||||
|
<field name="arch" type="xml">
|
||||||
|
<field name="company_id" position="after">
|
||||||
|
<field name="branch_name" />
|
||||||
|
<label for="street" string="Address"/>
|
||||||
|
<div class="o_address_format">
|
||||||
|
<field name="street" placeholder="Street..." class="o_address_street" />
|
||||||
|
<field name="street2" placeholder="Street 2..." class="o_address_street"/>
|
||||||
|
<field name="city" placeholder="City" class="o_address_city" />
|
||||||
|
<field name="state_id" class="o_address_state" placeholder="State" />
|
||||||
|
<field name="zip" placeholder="ZIP" class="o_address_zip" />
|
||||||
|
<field name="country_id" placeholder="Country" class="o_address_country"/>
|
||||||
|
</div>
|
||||||
|
<field name="swift_code" />
|
||||||
|
<field name="ifsc" />
|
||||||
|
</field>
|
||||||
|
</field>
|
||||||
|
</record>
|
||||||
|
|
||||||
|
</data>
|
||||||
|
</odoo>
|
||||||
@@ -0,0 +1,212 @@
|
|||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<odoo>
|
||||||
|
<data>
|
||||||
|
|
||||||
|
<template id="classic_report_saleorder_document">
|
||||||
|
<t t-if="o and 'company_id' in o">
|
||||||
|
<t t-set="company" t-value="o.company_id"></t>
|
||||||
|
</t>
|
||||||
|
<t t-if="not o or not 'company_id' in o">
|
||||||
|
<t t-set="company" t-value="res_company"></t>
|
||||||
|
</t>
|
||||||
|
<div class="header">
|
||||||
|
<div class="row mt32 mb32">
|
||||||
|
<div class="col-6">
|
||||||
|
<img t-if="company.logo" t-att-src="'data:image/png;base64,%s' % to_text(company.logo)" style="max-height: 50px;" />
|
||||||
|
</div>
|
||||||
|
<div class="col-6 text-right" style="font:12px lucida-console,sans-serif !important;">
|
||||||
|
<span t-field="company.partner_id" />
|
||||||
|
<br/>
|
||||||
|
<span t-field="company.partner_id.street" />
|
||||||
|
<br/>
|
||||||
|
<span t-field="company.partner_id.street2" />
|
||||||
|
<br/>
|
||||||
|
<span t-field="company.partner_id.city" />
|
||||||
|
<br/>
|
||||||
|
<span t-field="company.partner_id.country_id" />
|
||||||
|
<br/>
|
||||||
|
<span t-field="company.partner_id.vat" />
|
||||||
|
<br/>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<t t-call="web.external_layout">
|
||||||
|
<t t-set="doc" t-value="doc.with_context({'lang':zh_CN})" />
|
||||||
|
<div class="page">
|
||||||
|
<div class="oe_structure"/>
|
||||||
|
<div >
|
||||||
|
<table class="table table-sm" style=" table-layout:fixed;" >
|
||||||
|
<thead>
|
||||||
|
<tr>
|
||||||
|
<th width="30px" style="background-color:#3498DB !important;border: 1px !important; border-style: solid !important; border-color: #fff; color:#fff !important; ">Customer Address</th>
|
||||||
|
<th width="30px" style="background-color:#3498DB !important;border: 1px !important; border-style: solid !important; border-color: #fff; color:#fff !important; ">Invoicing and Shipping Address</th>
|
||||||
|
<th width="20px" style="background-color:#3498DB !important;border: 1px !important; border-style: solid !important; border-color: #fff; color:#fff !important; ">Quotation Date</th>
|
||||||
|
<th width="20px" style="background-color:#3498DB !important;border: 1px !important; border-style: solid !important; border-color: #fff; color:#fff !important; ">Quotation #</th>
|
||||||
|
</tr>
|
||||||
|
</thead>
|
||||||
|
<tbody class="sale_tbody">
|
||||||
|
<tr>
|
||||||
|
<td style="border: 1px !important; border-style: solid !important; border-color: #fff !important;">
|
||||||
|
<div t-field="doc.partner_id"/>
|
||||||
|
<t t-if="doc.partner_id.street">
|
||||||
|
<t t-esc="doc.partner_id.street"/>
|
||||||
|
</t><br/>
|
||||||
|
<t t-if="doc.partner_id.street2">
|
||||||
|
<t t-esc="doc.partner_id.street2"/>
|
||||||
|
</t><br/>
|
||||||
|
<t t-if="doc.partner_id.city">
|
||||||
|
<t t-esc="doc.partner_id.city"/>
|
||||||
|
</t><br/>
|
||||||
|
<t t-if="doc.partner_id.state_id.name">
|
||||||
|
<t t-esc="doc.partner_id.state_id.name"/>
|
||||||
|
</t><br/>
|
||||||
|
<t t-if="doc.partner_id.country_id.name">
|
||||||
|
<t t-esc="doc.partner_id.country_id.name"/>
|
||||||
|
</t><br/>
|
||||||
|
<t t-if="doc.partner_id.zip">
|
||||||
|
<t t-esc="doc.partner_id.zip"/>
|
||||||
|
</t><br/>
|
||||||
|
<div t-field="doc.partner_id.vat"/>
|
||||||
|
</td>
|
||||||
|
|
||||||
|
<td style="border: 1px !important; border-style: solid !important; border-color: #fff !important;">
|
||||||
|
<div t-field="doc.partner_invoice_id"/>
|
||||||
|
<t t-if="doc.partner_invoice_id.street">
|
||||||
|
<t t-esc="doc.partner_invoice_id.street"/>
|
||||||
|
</t><br/>
|
||||||
|
<t t-if="doc.partner_invoice_id.street2">
|
||||||
|
<t t-esc="doc.partner_invoice_id.street2"/>
|
||||||
|
</t><br/>
|
||||||
|
<t t-if="doc.partner_invoice_id.city">
|
||||||
|
<t t-esc="doc.partner_invoice_id.city"/>
|
||||||
|
</t>
|
||||||
|
<t t-if="doc.partner_invoice_id.state_id">
|
||||||
|
<t t-esc="doc.partner_invoice_id.state_id.name"/>
|
||||||
|
</t><br/>
|
||||||
|
<t t-if="doc.partner_invoice_id.country_id">
|
||||||
|
<t t-esc="doc.partner_invoice_id.country_id.name"/>
|
||||||
|
</t><br/>
|
||||||
|
<t t-if="doc.partner_invoice_id.zip">
|
||||||
|
<t t-esc="doc.partner_invoice_id.zip"/>
|
||||||
|
</t><br/>
|
||||||
|
<div t-field="doc.partner_invoice_id.vat"/>
|
||||||
|
</td>
|
||||||
|
<td style="border: 1px !important; border-style: solid !important; border-color: #fff !important;">
|
||||||
|
<span t-field="doc.date_order"/>
|
||||||
|
</td>
|
||||||
|
<td style="border: 1px !important; border-style: solid !important; border-color: #fff !important;">
|
||||||
|
<strong><span t-field="doc.name"/></strong>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
</tbody>
|
||||||
|
</table>
|
||||||
|
|
||||||
|
<!-- Is there a discount on at least one line? -->
|
||||||
|
<t t-set="display_discount" t-value="any([l.discount for l in doc.order_line])"/>
|
||||||
|
|
||||||
|
<table class="table table-sm">
|
||||||
|
<thead>
|
||||||
|
<tr>
|
||||||
|
<th style="background-color:#3498DB !important;color:#FFF !important;">Description</th>
|
||||||
|
<th style="background-color:#3498DB !important;color:#FFF !important;" class="text-right">Quantity</th>
|
||||||
|
<th style="background-color:#3498DB !important;color:#FFF !important;" class="text-right">Unit Price</th>
|
||||||
|
<th style="background-color:#3498DB !important;color:#FFF !important;" t-if="display_discount" class="text-right" groups="sale.group_discount_per_so_line">Disc.(%)</th>
|
||||||
|
<th style="background-color:#3498DB !important;color:#FFF !important;" class="text-right">Taxes</th>
|
||||||
|
<th style="background-color:#3498DB !important;color:#FFF !important;" class="text-right">Price</th>
|
||||||
|
</tr>
|
||||||
|
</thead>
|
||||||
|
<tbody class="sale_tbody">
|
||||||
|
<t t-foreach="doc.order_line" t-as="l">
|
||||||
|
<tr t-if="l.product_uom_qty">
|
||||||
|
<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 t-if="display_discount" class="text-right" groups="sale.group_discount_per_so_line">
|
||||||
|
<span t-field="l.discount"/>
|
||||||
|
</td>
|
||||||
|
<td class="text-right">
|
||||||
|
<span t-esc="', '.join(map(lambda x: (x.description or x.name), l.tax_id))"/>
|
||||||
|
</td>
|
||||||
|
<td class="text-right">
|
||||||
|
<span t-field="l.price_subtotal"
|
||||||
|
t-field-options='{"widget": "monetary", "display_currency": "doc.pricelist_id.currency_id"}'/>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
</t>
|
||||||
|
</tbody>
|
||||||
|
</table>
|
||||||
|
</div>
|
||||||
|
<div name="total">
|
||||||
|
<div class="col-xs-4 pull-right">
|
||||||
|
<table class="table table-condensed">
|
||||||
|
<tr class="border-black">
|
||||||
|
<td><strong>Total Without Taxes</strong></td>
|
||||||
|
<td class="text-right">
|
||||||
|
<span t-field="doc.amount_untaxed"
|
||||||
|
t-field-options='{"widget": "monetary", "display_currency": "doc.pricelist_id.currency_id"}'/>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>Taxes</td>
|
||||||
|
<td class="text-right">
|
||||||
|
<span t-field="doc.amount_tax"
|
||||||
|
t-field-options='{"widget": "monetary", "display_currency": "doc.pricelist_id.currency_id"}'/>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
<tr class="border-black">
|
||||||
|
<td style="background-color:#3498DB !important;color:#FFF !important;"><strong>Total</strong></td>
|
||||||
|
<td style="background-color:#3498DB !important;color:#FFF !important;" class="text-right">
|
||||||
|
<span t-field="doc.amount_total"
|
||||||
|
t-field-options='{"widget": "monetary", "display_currency": "doc.pricelist_id.currency_id"}'/>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
</table>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<br/><br/><br/><br/><br/><br/><br/><br/><br/>
|
||||||
|
<div style=" background-color: #3498DB; color:#fff !important; font:15px lucida-console,sans-serif !important; ">
|
||||||
|
<p t-if="doc.note">
|
||||||
|
<strong><span>Note:</span> </strong> <span t-field="doc.note" />
|
||||||
|
</p>
|
||||||
|
</div>
|
||||||
|
<div style=" background-color: #3498DB; color:#fff !important; font:15px lucida-console,sans-serif !important;">
|
||||||
|
<p t-if="doc.payment_term_id ">
|
||||||
|
<strong><div name="payment_term">Payment Term :<span t-field="doc.payment_term_id"/></div></strong>
|
||||||
|
</p>
|
||||||
|
</div>
|
||||||
|
<div class="oe_structure"/>
|
||||||
|
</div>
|
||||||
|
</t>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
|
||||||
|
<template id="custom_report_saleorder" inherit_id="sale.report_saleorder">
|
||||||
|
<xpath expr="//t[@t-call='web.html_container']" position="replace">
|
||||||
|
<t t-call="web.html_container">
|
||||||
|
<t t-foreach="docs" t-as="doc">
|
||||||
|
<t t-if="doc.company_id.sale_template == 'classic'">
|
||||||
|
<t t-call="bi_professional_reports_templates.classic_report_saleorder_document" t-lang="doc.partner_id.lang"/>
|
||||||
|
</t>
|
||||||
|
<t t-if="doc.company_id.sale_template == 'fency'">
|
||||||
|
<t t-call="bi_professional_reports_templates.fency_report_saleorder_document" t-lang="doc.partner_id.lang"/>
|
||||||
|
</t>
|
||||||
|
<t t-if="doc.company_id.sale_template == 'modern'">
|
||||||
|
<t t-call="bi_professional_reports_templates.modern_report_saleorder_document" t-lang="doc.partner_id.lang"/>
|
||||||
|
</t>
|
||||||
|
<t t-if="doc.company_id.sale_template == 'odoo_standard'">
|
||||||
|
<t t-call="bi_professional_reports_templates.odoo_std_report_saleorder_document" t-lang="doc.partner_id.lang"/>
|
||||||
|
</t>
|
||||||
|
</t>
|
||||||
|
</t>
|
||||||
|
</xpath>
|
||||||
|
</template>
|
||||||
|
</data>
|
||||||
|
</odoo>
|
||||||
@@ -0,0 +1,189 @@
|
|||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<odoo>
|
||||||
|
<data>
|
||||||
|
<template id="fency_report_saleorder_document">
|
||||||
|
<t t-if="o and 'company_id' in o">
|
||||||
|
<t t-set="company" t-value="o.company_id"></t>
|
||||||
|
</t>
|
||||||
|
<t t-if="not o or not 'company_id' in o">
|
||||||
|
<t t-set="company" t-value="res_company"></t>
|
||||||
|
</t>
|
||||||
|
<div class="header">
|
||||||
|
<div class="row mt32 mb32">
|
||||||
|
<div class="col-6">
|
||||||
|
<img t-if="company.logo" t-att-src="'data:image/png;base64,%s' % to_text(company.logo)" style="max-height: 50px;" />
|
||||||
|
</div>
|
||||||
|
<div class="col-6 text-right" style="font:12px lucida-console,sans-serif !important;">
|
||||||
|
<span t-field="company.partner_id" />
|
||||||
|
<br/>
|
||||||
|
<span t-field="company.partner_id.street" />
|
||||||
|
<br/>
|
||||||
|
<span t-field="company.partner_id.street2" />
|
||||||
|
<br/>
|
||||||
|
<span t-field="company.partner_id.city" />
|
||||||
|
<br/>
|
||||||
|
<span t-field="company.partner_id.country_id" />
|
||||||
|
<br/>
|
||||||
|
<span t-field="company.partner_id.vat" />
|
||||||
|
<br/>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<t t-call="web.external_layout">
|
||||||
|
<t t-set="o" t-value="doc.with_context({'lang':doc.partner_id.lang})" />
|
||||||
|
<div class="page">
|
||||||
|
<div class="oe_structure" />
|
||||||
|
<div >
|
||||||
|
<div style=" background-color: #3498DB;">
|
||||||
|
<h2>
|
||||||
|
<span ><font color="#fff">Order# </font></span>
|
||||||
|
<font color="#fff"><span t-field="o.name"/></font>
|
||||||
|
</h2>
|
||||||
|
|
||||||
|
<div class="row mt32 mb32">
|
||||||
|
<div class="col-3">
|
||||||
|
<font color="#fff">
|
||||||
|
<strong>Your Reference:</strong>
|
||||||
|
<p t-field="o.client_order_ref"/></font>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="col-3" t-if="o.date_order">
|
||||||
|
<font color="#fff">
|
||||||
|
<strong>Order Date:</strong>
|
||||||
|
<p t-field="o.date_order"/></font>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="col-3" t-if="o.payment_term_id">
|
||||||
|
<font color="#fff">
|
||||||
|
<strong> Payment Term:</strong>
|
||||||
|
<p t-field="o.payment_term_id"/></font>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="col-3" t-if="o.user_id">
|
||||||
|
<font color="#fff">
|
||||||
|
<strong>Sales Person:</strong>
|
||||||
|
<p t-field="o.user_id"/></font>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="row mt32 mb32">
|
||||||
|
<div class="col-6 ">
|
||||||
|
<strong>Customer Address:</strong><br/>
|
||||||
|
<span t-field="o.partner_id" /><br/>
|
||||||
|
<span t-if="o.partner_id.street"
|
||||||
|
t-field="o.partner_id.street" /><br/>
|
||||||
|
<span t-if="o.partner_id.street2"
|
||||||
|
t-field="o.partner_id.street2" /><br/>
|
||||||
|
<span t-if="o.partner_id.city" t-field="o.partner_id.city" /><br/>
|
||||||
|
<span t-if="o.partner_id.state_id"
|
||||||
|
t-field="o.partner_id.state_id" />
|
||||||
|
<br/>
|
||||||
|
<span t-if="o.partner_id.country_id" t-field="o.partner_id.country_id" />
|
||||||
|
<br/>
|
||||||
|
<span t-if="o.partner_id.zip" t-field="o.partner_id.zip" />
|
||||||
|
</div>
|
||||||
|
<div class="col-6 text-right">
|
||||||
|
<strong>Shipping Address:</strong><br/>
|
||||||
|
<span t-field="o.partner_shipping_id" />
|
||||||
|
<br/>
|
||||||
|
<span t-field="o.partner_shipping_id.street" />
|
||||||
|
<br/>
|
||||||
|
<span t-field="o.partner_shipping_id.street2" />
|
||||||
|
<br/>
|
||||||
|
<span t-field="o.partner_shipping_id.city" />
|
||||||
|
<br/>
|
||||||
|
<span t-field="o.partner_shipping_id.state_id" />
|
||||||
|
<br/>
|
||||||
|
<span t-field="o.partner_shipping_id.country_id" />
|
||||||
|
<br/>
|
||||||
|
<span t-field="o.partner_shipping_id.zip" />
|
||||||
|
<br/>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<!-- Is there a discount on at least one line? -->
|
||||||
|
<t t-set="display_discount" t-value="any([l.discount for l in o.order_line])" />
|
||||||
|
|
||||||
|
<table class="table table-sm">
|
||||||
|
<thead>
|
||||||
|
<tr>
|
||||||
|
<th style="background-color:#3498DB !important;color:#FFF !important;">Description</th>
|
||||||
|
<th class="text-right" style="background-color:#3498DB !important;color:#FFF !important;">Quantity</th>
|
||||||
|
<th class="text-right" style="background-color:#3498DB !important;color:#FFF !important;">Unit Price</th>
|
||||||
|
<th t-if="display_discount" class="text-right" groups="sale.group_discount_per_so_line" style="background-color:#3498DB !important;color:#FFF !important;">Disc.(%)</th>
|
||||||
|
<th class="text-right" style="background-color:#3498DB !important;color:#FFF !important;">Taxes</th>
|
||||||
|
<th class="text-right" style="background-color:#3498DB !important;color:#FFF !important;">Price</th>
|
||||||
|
</tr>
|
||||||
|
</thead>
|
||||||
|
<tbody class="sale_tbody">
|
||||||
|
<t t-foreach="doc.order_line" t-as="l">
|
||||||
|
<tr t-if="l.product_uom_qty">
|
||||||
|
<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 t-if="display_discount" class="text-right" groups="sale.group_discount_per_so_line">
|
||||||
|
<span t-field="l.discount" />
|
||||||
|
</td>
|
||||||
|
<td class="text-right">
|
||||||
|
<span t-esc="', '.join(map(lambda x: (x.description or x.name), l.tax_id))" />
|
||||||
|
</td>
|
||||||
|
<td class="text-right">
|
||||||
|
<span t-field="l.price_subtotal" t-field-options='{"widget": "monetary", "display_currency": "doc.pricelist_id.currency_id"}' />
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
</t>
|
||||||
|
</tbody>
|
||||||
|
</table>
|
||||||
|
</div>
|
||||||
|
<div name="total">
|
||||||
|
<div class="col-4 pull-right">
|
||||||
|
<table class="table table-condensed">
|
||||||
|
<tr class="border-black">
|
||||||
|
<td><strong>Total Without Taxes</strong></td>
|
||||||
|
<td class="text-right">
|
||||||
|
<span t-field="doc.amount_untaxed" t-field-options='{"widget": "monetary", "display_currency": "doc.pricelist_id.currency_id"}' />
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>Taxes</td>
|
||||||
|
<td class="text-right">
|
||||||
|
<span t-field="doc.amount_tax" t-field-options='{"widget": "monetary", "display_currency": "doc.pricelist_id.currency_id"}' />
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
<tr >
|
||||||
|
<td style="background-color:#3498DB !important;color:#FFF !important;"><strong>Total</strong></td>
|
||||||
|
<td class="text-right" style="background-color:#3498DB !important;color:#FFF !important;">
|
||||||
|
<span t-field="doc.amount_total" t-field-options='{"widget": "monetary", "display_currency": "doc.pricelist_id.currency_id"}' />
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
</table>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<br/><br/><br/><br/><br/><br/><br/><br/>
|
||||||
|
<div style=" background-color: #3498DB; color:#fff !important; font:15px lucida-console,sans-serif !important; ">
|
||||||
|
<p t-if="doc.note">
|
||||||
|
<strong><span>Note:</span> </strong> <span t-field="doc.note" />
|
||||||
|
</p>
|
||||||
|
</div>
|
||||||
|
<div style=" background-color: #3498DB; color:#fff !important; font:15px lucida-console,sans-serif !important;">
|
||||||
|
<p t-if="doc.payment_term_id ">
|
||||||
|
<strong> <span>Payment Term :</span></strong><span t-field="doc.payment_term_id" />
|
||||||
|
</p>
|
||||||
|
</div>
|
||||||
|
<div class="oe_structure" />
|
||||||
|
</div>
|
||||||
|
</t>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
|
||||||
|
</data>
|
||||||
|
</odoo>
|
||||||
@@ -0,0 +1,190 @@
|
|||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<odoo>
|
||||||
|
<data>
|
||||||
|
<template id="modern_report_saleorder_document">
|
||||||
|
<t t-if="o and 'company_id' in o">
|
||||||
|
<t t-set="company" t-value="o.company_id"></t>
|
||||||
|
</t>
|
||||||
|
<t t-if="not o or not 'company_id' in o">
|
||||||
|
<t t-set="company" t-value="res_company"></t>
|
||||||
|
</t>
|
||||||
|
<div class="header">
|
||||||
|
<div class="row mt32 mb32">
|
||||||
|
<div class="col-6">
|
||||||
|
<img t-if="company.logo" t-att-src="'data:image/png;base64,%s' % to_text(company.logo)" style="max-height: 50px;" />
|
||||||
|
</div>
|
||||||
|
<div class="col-6 text-right" style="font:12px lucida-console,sans-serif !important;">
|
||||||
|
<span t-field="company.partner_id" />
|
||||||
|
<br/>
|
||||||
|
<span t-field="company.partner_id.street" />
|
||||||
|
<br/>
|
||||||
|
<span t-field="company.partner_id.street2" />
|
||||||
|
<br/>
|
||||||
|
<span t-field="company.partner_id.city" />
|
||||||
|
<br/>
|
||||||
|
<span t-field="company.partner_id.country_id" />
|
||||||
|
<br/>
|
||||||
|
<span t-field="company.partner_id.vat" />
|
||||||
|
<br/>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<t t-call="web.external_layout">
|
||||||
|
<t t-set="doc" t-value="doc.with_context({'lang':doc.partner_id.lang})" />
|
||||||
|
<div class="page">
|
||||||
|
<div class="oe_structure"/>
|
||||||
|
|
||||||
|
<table class="table table-sm" style=" table-layout:fixed;" >
|
||||||
|
<thead>
|
||||||
|
<tr>
|
||||||
|
<th width="30px" style="background-color:#893b74 !important;border: 1px !important; border-style: solid !important; border-color: #fff; color:#fff !important; ">Customer</th>
|
||||||
|
<th width="30px" style="background-color:#893b74 !important;border: 1px !important; border-style: solid !important; border-color: #fff; color:#fff !important; ">Invoicing and shipping address</th>
|
||||||
|
<th width="20px" style="background-color:#893b74 !important;border: 1px !important; border-style: solid !important; border-color: #fff; color:#fff !important; ">Quotation Date</th>
|
||||||
|
<th width="20px" style="background-color:#893b74 !important;border: 1px !important; border-style: solid !important; border-color: #fff; color:#fff !important; ">Quotation #</th>
|
||||||
|
</tr>
|
||||||
|
</thead>
|
||||||
|
<tbody class="sale_tbody">
|
||||||
|
<tr>
|
||||||
|
<td style="border: 1px !important; border-style: solid !important; border-color: #fff !important;">
|
||||||
|
<div t-field="doc.partner_id"/>
|
||||||
|
<t t-if="doc.partner_id.street">
|
||||||
|
<t t-esc="doc.partner_id.street"/>
|
||||||
|
</t><br/>
|
||||||
|
<t t-if="doc.partner_id.street2">
|
||||||
|
<t t-esc="doc.partner_id.street2"/>
|
||||||
|
</t><br/>
|
||||||
|
<t t-if="doc.partner_id.city">
|
||||||
|
<t t-esc="doc.partner_id.city"/>
|
||||||
|
</t><br/>
|
||||||
|
<t t-if="doc.partner_id.state_id.name">
|
||||||
|
<t t-esc="doc.partner_id.state_id.name"/>
|
||||||
|
</t><br/>
|
||||||
|
<t t-if="doc.partner_id.country_id.name">
|
||||||
|
<t t-esc="doc.partner_id.country_id.name"/>
|
||||||
|
</t><br/>
|
||||||
|
<t t-if="doc.partner_id.zip">
|
||||||
|
<t t-esc="doc.partner_id.zip"/>
|
||||||
|
</t><br/>
|
||||||
|
<div t-field="doc.partner_id.vat"/>
|
||||||
|
</td>
|
||||||
|
<td style="border: 1px !important; border-style: solid !important; border-color: #fff !important;">
|
||||||
|
<div t-field="doc.partner_invoice_id"/>
|
||||||
|
<t t-if="doc.partner_invoice_id.street">
|
||||||
|
<t t-esc="doc.partner_invoice_id.street"/>
|
||||||
|
</t><br/>
|
||||||
|
<t t-if="doc.partner_invoice_id.street2">
|
||||||
|
<t t-esc="doc.partner_invoice_id.street2"/>
|
||||||
|
</t><br/>
|
||||||
|
<t t-if="doc.partner_invoice_id.city">
|
||||||
|
<t t-esc="doc.partner_invoice_id.city"/>
|
||||||
|
</t>
|
||||||
|
<t t-if="doc.partner_invoice_id.state_id">
|
||||||
|
<t t-esc="doc.partner_invoice_id.state_id.name"/>
|
||||||
|
</t><br/>
|
||||||
|
<t t-if="doc.partner_invoice_id.country_id">
|
||||||
|
<t t-esc="doc.partner_invoice_id.country_id.name"/>
|
||||||
|
</t><br/>
|
||||||
|
<t t-if="doc.partner_invoice_id.zip">
|
||||||
|
<t t-esc="doc.partner_invoice_id.zip"/>
|
||||||
|
</t><br/>
|
||||||
|
<div t-field="doc.partner_invoice_id.vat"/>
|
||||||
|
</td>
|
||||||
|
<td style="border: 1px !important; border-style: solid !important; border-color: #fff !important;">
|
||||||
|
<span t-field="doc.date_order"/>
|
||||||
|
</td>
|
||||||
|
<td style="border: 1px !important; border-style: solid !important; border-color: #fff !important;">
|
||||||
|
<strong><span t-field="doc.name"/></strong>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
</tbody>
|
||||||
|
</table>
|
||||||
|
<!-- Is there a discount on at least one line? -->
|
||||||
|
<t t-set="display_discount" t-value="any([l.discount for l in doc.order_line])"/>
|
||||||
|
|
||||||
|
<table class="table table-sm">
|
||||||
|
<thead>
|
||||||
|
<tr>
|
||||||
|
<th style="background-color:#893b74 !important;color:#FFF !important;">Description</th>
|
||||||
|
<th style="background-color:#893b74 !important;color:#FFF !important;" class="text-right">Quantity</th>
|
||||||
|
<th style="background-color:#893b74 !important;color:#FFF !important;" class="text-right">Unit Price</th>
|
||||||
|
<th style="background-color:#893b74 !important;color:#FFF !important;" t-if="display_discount" class="text-right" groups="sale.group_discount_per_so_line">Disc.(%)</th>
|
||||||
|
<th style="background-color:#893b74 !important;color:#FFF !important;" class="text-right">Taxes</th>
|
||||||
|
<th style="background-color:#893b74 !important;color:#FFF !important;" class="text-right">Price</th>
|
||||||
|
</tr>
|
||||||
|
</thead>
|
||||||
|
<tbody class="sale_tbody">
|
||||||
|
<t t-foreach="doc.order_line" t-as="l">
|
||||||
|
<tr t-if="l.product_uom_qty">
|
||||||
|
<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 t-if="display_discount" class="text-right" groups="sale.group_discount_per_so_line">
|
||||||
|
<span t-field="l.discount"/>
|
||||||
|
</td>
|
||||||
|
<td class="text-right">
|
||||||
|
<span t-esc="', '.join(map(lambda x: (x.description or x.name), l.tax_id))"/>
|
||||||
|
</td>
|
||||||
|
<td class="text-right">
|
||||||
|
<span t-field="l.price_subtotal"
|
||||||
|
t-field-options='{"widget": "monetary", "display_currency": "doc.pricelist_id.currency_id"}'/>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
</t>
|
||||||
|
</tbody>
|
||||||
|
</table>
|
||||||
|
|
||||||
|
|
||||||
|
<div name="total">
|
||||||
|
<div class="col-xs-4 pull-right">
|
||||||
|
<table class="table table-condensed">
|
||||||
|
<tr class="border-black">
|
||||||
|
<td><strong>Total Without Taxes</strong></td>
|
||||||
|
<td class="text-right">
|
||||||
|
<span t-field="doc.amount_untaxed"
|
||||||
|
t-field-options='{"widget": "monetary", "display_currency": "doc.pricelist_id.currency_id"}'/>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>Taxes</td>
|
||||||
|
<td class="text-right">
|
||||||
|
<span t-field="doc.amount_tax"
|
||||||
|
t-field-options='{"widget": "monetary", "display_currency": "doc.pricelist_id.currency_id"}'/>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
<tr class="border-black">
|
||||||
|
<td style="background-color:#893b74 !important;color:#FFF !important;"><strong>Total</strong></td>
|
||||||
|
<td style="background-color:#893b74 !important;color:#FFF !important;" class="text-right">
|
||||||
|
<span t-field="doc.amount_total"
|
||||||
|
t-field-options='{"widget": "monetary", "display_currency": "doc.pricelist_id.currency_id"}'/>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
</table>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<br/><br/><br/><br/><br/><br/><br/><br/>
|
||||||
|
<div style=" background-color: #893b74; color:#fff !important; font:15px lucida-console,sans-serif !important; ">
|
||||||
|
<p t-if="doc.note">
|
||||||
|
<strong><span>Note:</span> </strong> <span t-field="doc.note" />
|
||||||
|
</p>
|
||||||
|
</div>
|
||||||
|
<div style=" background-color: #893b74; color:#fff !important; font:15px lucida-console,sans-serif !important;">
|
||||||
|
<p t-if="doc.payment_term_id ">
|
||||||
|
<strong> <span>Payment Term :</span></strong><span t-field="doc.payment_term_id"/>
|
||||||
|
</p>
|
||||||
|
</div>
|
||||||
|
<div class="oe_structure"/>
|
||||||
|
</div>
|
||||||
|
</t>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
|
||||||
|
</data>
|
||||||
|
</odoo>
|
||||||
@@ -0,0 +1,208 @@
|
|||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<odoo>
|
||||||
|
<data>
|
||||||
|
<template id="odoo_std_report_saleorder_document">
|
||||||
|
<t t-if="o and 'company_id' in o">
|
||||||
|
<t t-set="company" t-value="o.company_id"></t>
|
||||||
|
</t>
|
||||||
|
<t t-if="not o or not 'company_id' in o">
|
||||||
|
<t t-set="company" t-value="res_company"></t>
|
||||||
|
</t>
|
||||||
|
<div class="header">
|
||||||
|
<div class="row mt32 mb32">
|
||||||
|
<div class="col-6">
|
||||||
|
<img t-if="company.logo" t-att-src="'data:image/png;base64,%s' % to_text(company.logo)" style="max-height: 50px;" />
|
||||||
|
</div>
|
||||||
|
<div class="col-6 text-right" style="font:12px lucida-console,sans-serif !important;">
|
||||||
|
<span t-field="company.partner_id" />
|
||||||
|
<br/>
|
||||||
|
<span t-field="company.partner_id.street" />
|
||||||
|
<br/>
|
||||||
|
<span t-field="company.partner_id.street2" />
|
||||||
|
<br/>
|
||||||
|
<span t-field="company.partner_id.city" />
|
||||||
|
<br/>
|
||||||
|
<span t-field="company.partner_id.country_id" />
|
||||||
|
<br/>
|
||||||
|
<span t-field="company.partner_id.vat" />
|
||||||
|
<br/>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<t t-call="web.external_layout">
|
||||||
|
<t t-set="doc" t-value="doc.with_context({'lang':doc.partner_id.lang})" />
|
||||||
|
<div class="page">
|
||||||
|
<div class="oe_structure"/>
|
||||||
|
<div style=" background-color: #893b74;">
|
||||||
|
<h2>
|
||||||
|
<span ><font color="#fff">Order# </font></span>
|
||||||
|
<font color="#fff"><span t-field="doc.name"/></font>
|
||||||
|
</h2>
|
||||||
|
|
||||||
|
<!-- <div class="row mt32 mb32">
|
||||||
|
<div class="col-xs-3" >
|
||||||
|
<font color="#fff">
|
||||||
|
<strong>Your Reference:</strong>
|
||||||
|
<p t-field="doc.client_order_ref"/></font>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="col-xs-3" t-if="doc.date_order">
|
||||||
|
<font color="#fff">
|
||||||
|
<strong>Order Date:</strong>
|
||||||
|
<p t-field="doc.date_order"/></font>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
<div class="col-xs-3" t-if="doc.payment_term_id">
|
||||||
|
<font color="#fff">
|
||||||
|
<strong> Payment Term:</strong>
|
||||||
|
<p t-field="doc.payment_term_id"/></font>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="col-xs-3" t-if="doc.user_id">
|
||||||
|
<font color="#fff">
|
||||||
|
<strong>SalesPerson:</strong>
|
||||||
|
<p t-field="doc.user_id"/></font>
|
||||||
|
</div>
|
||||||
|
</div> -->
|
||||||
|
<table class="table table-sm" style=" table-layout:fixed; padding-top=20px;" >
|
||||||
|
<thead>
|
||||||
|
<tr>
|
||||||
|
<th width="30px" style="background-color:#893b74 !important;border: 1px !important; border-style: solid !important; border-color: #fff; color:#fff !important; ">Your Reference:</th>
|
||||||
|
<th width="30px" style="background-color:#893b74 !important;border: 1px !important; border-style: solid !important; border-color: #fff; color:#fff !important; ">Order Date:</th>
|
||||||
|
<th width="20px" style="background-color:#893b74 !important;border: 1px !important; border-style: solid !important; border-color: #fff; color:#fff !important; ">Payment Term</th>
|
||||||
|
<th width="20px" style="background-color:#893b74 !important;border: 1px !important; border-style: solid !important; border-color: #fff; color:#fff !important; ">SalesPerson</th>
|
||||||
|
</tr>
|
||||||
|
</thead>
|
||||||
|
<tbody>
|
||||||
|
<tr>
|
||||||
|
<td style="border: 1px !important; border-style: solid !important; border-color: #fff !important;">
|
||||||
|
<div t-field="doc.client_order_ref"/>
|
||||||
|
</td>
|
||||||
|
<td style="border: 1px !important; border-style: solid !important; border-color: #fff !important;">
|
||||||
|
<div t-field="doc.date_order"/>
|
||||||
|
</td>
|
||||||
|
<td style="border: 1px !important; border-style: solid !important; border-color: #fff !important;">
|
||||||
|
<div t-field="doc.payment_term_id"/>
|
||||||
|
</td>
|
||||||
|
<td style="border: 1px !important; border-style: solid !important; border-color: #fff !important;">
|
||||||
|
<div t-field="doc.user_id"/>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
</tbody>
|
||||||
|
</table>
|
||||||
|
</div>
|
||||||
|
<div>
|
||||||
|
<strong>Invoicing And Shipping Address</strong>
|
||||||
|
<div t-field="doc.partner_invoice_id"/>
|
||||||
|
<t t-if="doc.partner_invoice_id.street">
|
||||||
|
<t t-esc="doc.partner_invoice_id.street"/>
|
||||||
|
</t><br/>
|
||||||
|
<t t-if="doc.partner_invoice_id.street2">
|
||||||
|
<t t-esc="doc.partner_invoice_id.street2"/>
|
||||||
|
</t><br/>
|
||||||
|
<t t-if="doc.partner_invoice_id.city">
|
||||||
|
<t t-esc="doc.partner_invoice_id.city"/>
|
||||||
|
</t>
|
||||||
|
<t t-if="doc.partner_invoice_id.state_id">
|
||||||
|
<t t-esc="doc.partner_invoice_id.state_id.name"/>
|
||||||
|
</t><br/>
|
||||||
|
<t t-if="doc.partner_invoice_id.country_id">
|
||||||
|
<t t-esc="doc.partner_invoice_id.country_id.name"/>
|
||||||
|
</t><br/>
|
||||||
|
<t t-if="doc.partner_invoice_id.zip">
|
||||||
|
<t t-esc="doc.partner_invoice_id.zip"/>
|
||||||
|
</t><br/>
|
||||||
|
<div t-field="doc.partner_invoice_id.vat"/>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<!-- Is there a discount on at least one line? -->
|
||||||
|
<t t-set="display_discount" t-value="any([l.discount for l in doc.order_line])"/>
|
||||||
|
|
||||||
|
<table class="table table-sm">
|
||||||
|
<thead>
|
||||||
|
<tr>
|
||||||
|
<th style="background-color:#893b74 !important;border: 1px !important; border-style: solid !important; border-color: #fff; color:#fff !important; ">Description</th>
|
||||||
|
<th style="background-color:#893b74 !important;border: 1px !important; border-style: solid !important; border-color: #fff; color:#fff !important; " class="text-right">Quantity</th>
|
||||||
|
<th style="background-color:#893b74 !important;border: 1px !important; border-style: solid !important; border-color: #fff; color:#fff !important; " class="text-right">Unit Price</th>
|
||||||
|
<th style="background-color:#893b74 !important;border: 1px !important; border-style: solid !important; border-color: #fff; color:#fff !important; " t-if="display_discount" class="text-right" groups="sale.group_discount_per_so_line">Disc.(%)</th>
|
||||||
|
<th style="background-color:#893b74 !important;border: 1px !important; border-style: solid !important; border-color: #fff; color:#fff !important; " class="text-right">Taxes</th>
|
||||||
|
<th style="background-color:#893b74 !important;border: 1px !important; border-style: solid !important; border-color: #fff; color:#fff !important; " class="text-right">Price</th>
|
||||||
|
</tr>
|
||||||
|
</thead>
|
||||||
|
<tbody class="sale_tbody">
|
||||||
|
<t t-foreach="doc.order_line" t-as="l">
|
||||||
|
<tr t-if="l.product_uom_qty">
|
||||||
|
<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 t-if="display_discount" class="text-right" groups="sale.group_discount_per_so_line">
|
||||||
|
<span t-field="l.discount"/>
|
||||||
|
</td>
|
||||||
|
<td class="text-right">
|
||||||
|
<span t-esc="', '.join(map(lambda x: (x.description or x.name), l.tax_id))"/>
|
||||||
|
</td>
|
||||||
|
<td class="text-right">
|
||||||
|
<span t-field="l.price_subtotal"
|
||||||
|
t-field-options='{"widget": "monetary", "display_currency": "doc.pricelist_id.currency_id"}'/>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
</t>
|
||||||
|
</tbody>
|
||||||
|
</table>
|
||||||
|
|
||||||
|
|
||||||
|
<div name="total">
|
||||||
|
<div class="col-xs-4 pull-right">
|
||||||
|
<table class="table table-condensed">
|
||||||
|
<tr class="border-black">
|
||||||
|
<td><strong>Total Without Taxes</strong></td>
|
||||||
|
<td class="text-right">
|
||||||
|
<span t-field="doc.amount_untaxed"
|
||||||
|
t-field-options='{"widget": "monetary", "display_currency": "doc.pricelist_id.currency_id"}'/>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>Taxes</td>
|
||||||
|
<td class="text-right">
|
||||||
|
<span t-field="doc.amount_tax"
|
||||||
|
t-field-options='{"widget": "monetary", "display_currency": "doc.pricelist_id.currency_id"}'/>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
<tr class="border-black">
|
||||||
|
<td style="background-color:#893b74 !important;color:#FFF !important;"><strong>Total</strong></td>
|
||||||
|
<td style="background-color:#893b74 !important;color:#FFF !important;" class="text-right">
|
||||||
|
<span t-field="doc.amount_total"
|
||||||
|
t-field-options='{"widget": "monetary", "display_currency": "doc.pricelist_id.currency_id"}'/>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
</table>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<br/><br/><br/><br/><br/><br/><br/><br/>
|
||||||
|
<div style=" background-color: #893b74; color:#fff !important; font:15px lucida-console,sans-serif !important; ">
|
||||||
|
<p t-if="doc.note">
|
||||||
|
<strong><span>Note:</span> </strong> <span t-field="doc.note" />
|
||||||
|
</p>
|
||||||
|
</div>
|
||||||
|
<div style=" background-color: #893b74; color:#fff !important; font:15px lucida-console,sans-serif !important;">
|
||||||
|
<p t-if="doc.payment_term_id ">
|
||||||
|
<strong> <span>Payment Term :</span></strong><span t-field="doc.payment_term_id"/>
|
||||||
|
</p>
|
||||||
|
</div>
|
||||||
|
<div class="oe_structure"/>
|
||||||
|
</div>
|
||||||
|
</t>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
|
||||||
|
</data>
|
||||||
|
</odoo>
|
||||||
BIN
bi_professional_reports_templates/static/description/Banner.png
Normal file
|
After Width: | Height: | Size: 331 KiB |
BIN
bi_professional_reports_templates/static/description/bi_logo.png
Normal file
|
After Width: | Height: | Size: 11 KiB |
|
After Width: | Height: | Size: 82 KiB |
|
After Width: | Height: | Size: 82 KiB |
|
After Width: | Height: | Size: 81 KiB |
|
After Width: | Height: | Size: 81 KiB |
|
After Width: | Height: | Size: 79 KiB |
|
After Width: | Height: | Size: 88 KiB |
|
After Width: | Height: | Size: 81 KiB |
|
After Width: | Height: | Size: 91 KiB |
|
After Width: | Height: | Size: 13 KiB |
|
After Width: | Height: | Size: 48 KiB |
|
After Width: | Height: | Size: 29 KiB |
|
After Width: | Height: | Size: 51 KiB |
|
After Width: | Height: | Size: 16 KiB |
|
After Width: | Height: | Size: 36 KiB |
BIN
bi_professional_reports_templates/static/description/email.png
Normal file
|
After Width: | Height: | Size: 81 KiB |
|
After Width: | Height: | Size: 8.1 KiB |
|
After Width: | Height: | Size: 6.5 KiB |
|
After Width: | Height: | Size: 6.3 KiB |
|
After Width: | Height: | Size: 6.5 KiB |
|
After Width: | Height: | Size: 28 KiB |
|
After Width: | Height: | Size: 112 KiB |
|
After Width: | Height: | Size: 1.5 KiB |
|
After Width: | Height: | Size: 41 KiB |
BIN
bi_professional_reports_templates/static/description/icon.png
Normal file
|
After Width: | Height: | Size: 222 KiB |
486
bi_professional_reports_templates/static/description/index.html
Normal file
@@ -0,0 +1,486 @@
|
|||||||
|
<section class="oe_container lead mt64">
|
||||||
|
<div>
|
||||||
|
<div class="col-md-12 mt16" style="padding:0;">
|
||||||
|
<div class="col-md-12" style="padding:0;">
|
||||||
|
<div class="panel-group mb0 mt0" role="tablist" id="priceAccordeon" style="padding:0;">
|
||||||
|
<div class="panel-heading mb0 mt0 collapsed" role="tab" data-toggle="collapse" data-parent="#priceAccordeon" data-target="#priceAccordeon_area" aria-expanded="false" style="margin-left:0;padding:0 0 2px 0;text-align:right;">
|
||||||
|
<strong>
|
||||||
|
<div style="background-color:#875A7B;color:white;padding:5px;margin-bottom:3px;text-align:center;border-radius:5px;white-space:nowrap;display: inline-block;">
|
||||||
|
<strong style="color:white;">
|
||||||
|
Supported :
|
||||||
|
</strong>
|
||||||
|
</div>
|
||||||
|
<div style="background-color:#875A7B;color:white;padding:5px;margin-bottom:3px;text-align:center;border-radius:5px;white-space:nowrap;display: inline-block;">
|
||||||
|
<strong style="color:white;" title="The tool is compatible with the Odoo Enterprise version">
|
||||||
|
<i class="fa fa-check" style="margin-left:4px;"> </i>
|
||||||
|
Enterprise
|
||||||
|
</strong>
|
||||||
|
</div>
|
||||||
|
<div style="background-color:#875A7B;padding:5px;margin-top:3px;text-align:center;border-radius:5px;white-space:nowrap;display: inline-block;">
|
||||||
|
<strong style="color:white;" title="The tool is compatible with the Odoo Community version">
|
||||||
|
<i class="fa fa-check" style="margin-left:4px;"> </i>
|
||||||
|
Community
|
||||||
|
</strong>
|
||||||
|
</div>
|
||||||
|
<div style="background-color:#875A7B;color:white;padding:5px;margin-bottom:3px;text-align:center;border-radius:5px;white-space:nowrap;display: inline-block;">
|
||||||
|
<strong style="color:white;" title="The tool might be installed to Odoo.sh if you have a linked private git repository">
|
||||||
|
<i class="fa fa-check" style="margin-left:4px;"> </i>
|
||||||
|
Odoo.sh
|
||||||
|
</strong>
|
||||||
|
</div>
|
||||||
|
</strong>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</section>
|
||||||
|
|
||||||
|
<section class="oe_container lead bi_title_box">
|
||||||
|
<div >
|
||||||
|
<div >
|
||||||
|
<h2 class="oe_slogan bi_title" style="color:#5082c4;">
|
||||||
|
<b> Professional Report Template </b>
|
||||||
|
</h2>
|
||||||
|
<p class="oe_slogan">
|
||||||
|
Easily Customizable Report Template for Quotation/Sale Order/Sales, Invoice, Picking/Delivery Order,RFQ/Purchase Order/Purchases. We are provide various
|
||||||
|
Professional Report Templates like A Odoo Standard PDF Report Template, Modern PDF Report Template, Fancy PDF Report Template, Classic PDF Report Template.
|
||||||
|
<br/>Also user can able to Set the Report Template in Company Configuration.
|
||||||
|
</p>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</section>
|
||||||
|
|
||||||
|
<section class="oe_container lead bi_features">
|
||||||
|
<div >
|
||||||
|
<div>
|
||||||
|
<h3 class="oe_slogan" style="opacity:1;background: linear-gradient(to right, #86bcf2 0%, #e2f2f8 100%);padding: 10px 0px;color: ##201111;letter-spacing: 0.2em;text-transform: uppercase;text-shadow: 0.1em .04em 0.1em #7d8c88;"><b>Features</b></h3>
|
||||||
|
</div>
|
||||||
|
<div class="row">
|
||||||
|
<div class="col" style="margin: 10px;">
|
||||||
|
<div class="row">
|
||||||
|
<div class="col-md-3 text-center">
|
||||||
|
<img class="img img-responsive" style="max-width:100%;" src="features/st.png"/>
|
||||||
|
</div>
|
||||||
|
<div class="col-md-9">
|
||||||
|
<h4><b> Odoo Standard PDF Report </b></h4>
|
||||||
|
<span class="oe_slogan"> You can configure Odoo Standard template for specific report. Easily Customizable Standard Report Template for Quotation/Sale Order, Invoices, Picking/Delivery Order,RFQ/PO/Purchases. </span>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="col" style="margin: 10px;">
|
||||||
|
<div class="row">
|
||||||
|
<div class="col-md-3 text-center">
|
||||||
|
<img class="img img-responsive" style="max-width:100%;" src="features/fc.png"/>
|
||||||
|
</div>
|
||||||
|
<div class="col-md-9">
|
||||||
|
<h4><b> Fancy PDF Report </b></h4>
|
||||||
|
<span class="oe_slogan"> You can configure Fancy template for specific report. Easily Customizable Fancy Report Template for Quotation/Sale Order, Invoices, Picking/Delivery Order,RFQ/PO/Purchases. </span>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="row">
|
||||||
|
<div class="col" style="margin: 10px;">
|
||||||
|
<div class="row">
|
||||||
|
<div class="col-md-3 text-center">
|
||||||
|
<img class="img img-responsive" style="max-width:100%;" src="features/m.png"/>
|
||||||
|
</div>
|
||||||
|
<div class="col-md-9">
|
||||||
|
<h4><b> Modern PDF Report </b></h4>
|
||||||
|
<span class="oe_slogan"> You can configure Modern template for specific report. Easily Customizable Modern Report Template for Quotation/Sale Order, Invoices, Picking/Delivery Order,RFQ/PO/Purchases. </span>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="col" style="margin: 10px;">
|
||||||
|
<div class="row">
|
||||||
|
<div class="col-md-3 text-center">
|
||||||
|
<img class="img img-responsive" style="max-width:100%;" src="features/cl.png"/>
|
||||||
|
</div>
|
||||||
|
<div class="col-md-9">
|
||||||
|
<h4><b> Classic PDF Report </b></h4>
|
||||||
|
<span class="oe_slogan"> You can configure Classic template for specific report. Easily Customizable Classic Report Template for Quotation/Sale Order, Invoices, Picking/Delivery Order,RFQ/PO/Purchases. </span>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="row">
|
||||||
|
<div class="col" style="margin: 10px;">
|
||||||
|
<div class="row">
|
||||||
|
<div class="col-md-3 text-center">
|
||||||
|
<img class="img img-responsive" style="max-width:100%;" src="features/it.png"/>
|
||||||
|
</div>
|
||||||
|
<div class="col-md-9">
|
||||||
|
<h4><b> Individual Template For Each Company </b></h4>
|
||||||
|
<span class="oe_slogan"> User can select template for particular company. </span>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="col" style="margin: 10px;">
|
||||||
|
<div class="row">
|
||||||
|
<div class="col-md-3 text-center">
|
||||||
|
<img class="img img-responsive" style="max-width:100%;" src="features/all.png"/>
|
||||||
|
</div>
|
||||||
|
<div class="col-md-9">
|
||||||
|
<h4><b> Useful for All type of Industries </b></h4>
|
||||||
|
<span class="oe_slogan"> As this module is the very useful for all type of Industries. You can contact us for any Query regarding this Module. </span>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="row">
|
||||||
|
<div class="col" style="margin: 10px;">
|
||||||
|
<div class="row">
|
||||||
|
<div class="col-md-3 text-center">
|
||||||
|
<img class="img img-responsive" style="max-width:100%;" src="features/user.png"/>
|
||||||
|
</div>
|
||||||
|
<div class="col-md-9">
|
||||||
|
<h4><b> User Configuration </b></h4>
|
||||||
|
<span class="oe_slogan"> User can easily company configuration for various Templates Report. </span>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="col" style="margin: 10px;">
|
||||||
|
<div class="row">
|
||||||
|
<div class="col-md-3 text-center">
|
||||||
|
<img class="img img-responsive" style="max-width:100%;" src="features/mail.png"/>
|
||||||
|
</div>
|
||||||
|
<div class="col-md-9">
|
||||||
|
<h4><b> Send Mail </b></h4>
|
||||||
|
<span class="oe_slogan"> User can easily Send Mail of various Templates Report. </span>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</section>
|
||||||
|
|
||||||
|
<section class="oe_container lead mt64">
|
||||||
|
<div >
|
||||||
|
<div class="oe_slogan oe_spaced text-center">
|
||||||
|
<a class="btn mt8 mr8" title="Request Demo" style="background-color: #2875aa;color: #FFFFFF !important;font-size: 20px;font-weight: bold;border-radius: 7px;" href="https://browseinfo.in/demo-request/" target="_blank"> Demo Request </a>
|
||||||
|
<a class="btn mt8 ml8" title="Video Tutorial" style="background-color: #2875aa;color: #FFFFFF !important;font-size: 20px;font-weight: bold;border-radius: 7px;" href="https://youtu.be/_aihFWW4a5E" target="_blank"> Video Tutorial</a>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</section>
|
||||||
|
|
||||||
|
<section class="oe_container lead">
|
||||||
|
<div>
|
||||||
|
<div>
|
||||||
|
<p class="oe_slogan" style="color: #49a3fe;font-size: 35px;font-style: italic;font-weight:bolder;"> How to use this module </p>
|
||||||
|
<p class="oe_slogan" style="color: #49a3fe;font-size: 35px;font-style: italic;font-weight:bolder;"> You Can Goto > Settings > Companies </p>
|
||||||
|
<p class="oe_slogan" style="color: #49a3fe;font-size: 35px;font-style: italic;font-weight:bolder;"> You can set the Template in company Configuration.<br/> you can set the template and set bank account information, Tax id, Company Registry number. </p>
|
||||||
|
<br/>
|
||||||
|
<img class="img-border img-responsive thumbnail mb16" style="border: 3px solid black;" src="main.png">
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</section>
|
||||||
|
|
||||||
|
<section class="oe_container lead">
|
||||||
|
<div>
|
||||||
|
<div>
|
||||||
|
<p class="oe_slogan" style="color: #49a3fe;font-size: 35px;font-style: italic;font-weight:bolder;"> Print Report </p>
|
||||||
|
<p class="oe_slogan" style="color: #49a3fe;font-size: 35px;font-style: italic;font-weight:bolder;"> User can easily Print Various Template Report. </p>
|
||||||
|
<br/>
|
||||||
|
<img class="img-border img-responsive thumbnail mb16" style="border: 3px solid black;" src="print.png">
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</section>
|
||||||
|
|
||||||
|
<section class="oe_container lead">
|
||||||
|
<div>
|
||||||
|
<div>
|
||||||
|
<p class="oe_slogan" style="color: #49a3fe;font-size: 35px;font-style: italic;font-weight:bolder;"> Send Mail </p>
|
||||||
|
<p class="oe_slogan" style="color: #49a3fe;font-size: 35px;font-style: italic;font-weight:bolder;"> User can easily Send Mail of Various Template Report. </p>
|
||||||
|
<br/>
|
||||||
|
<img class="img-border img-responsive thumbnail mb16" style="border: 3px solid black;" src="email.png">
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</section>
|
||||||
|
|
||||||
|
<section class="oe_container lead">
|
||||||
|
<div>
|
||||||
|
<div>
|
||||||
|
<p class="oe_slogan" style="color: #49a3fe;font-size: 35px;font-style: italic;font-weight:bolder;"> Fancy Report Template </p>
|
||||||
|
<p class="oe_slogan" style="color: #49a3fe;font-size: 35px;font-style: italic;font-weight:bolder;"> Sale Order Fancy Report. </p>
|
||||||
|
<br/>
|
||||||
|
<img class="img-border img-responsive thumbnail mb16" style="border: 3px solid black;" src="quotation_fency.png">
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</section>
|
||||||
|
|
||||||
|
<section class="oe_container lead">
|
||||||
|
<div>
|
||||||
|
<div>
|
||||||
|
<p class="oe_slogan" style="color: #49a3fe;font-size: 35px;font-style: italic;font-weight:bolder;"> Delivery Order Fancy Report. </p>
|
||||||
|
<br/>
|
||||||
|
<img class="img-border img-responsive thumbnail mb16" style="border: 3px solid black;" src="delivery_fency.png">
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</section>
|
||||||
|
|
||||||
|
<section class="oe_container lead">
|
||||||
|
<div>
|
||||||
|
<div>
|
||||||
|
<p class="oe_slogan" style="color: #49a3fe;font-size: 35px;font-style: italic;font-weight:bolder;"> Purchase Order Fancy Report. </p>
|
||||||
|
<br/>
|
||||||
|
<img class="img-border img-responsive thumbnail mb16" style="border: 3px solid black;" src="rfq_fency.png">
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</section>
|
||||||
|
|
||||||
|
<section class="oe_container lead">
|
||||||
|
<div>
|
||||||
|
<div>
|
||||||
|
<p class="oe_slogan" style="color: #49a3fe;font-size: 35px;font-style: italic;font-weight:bolder;"> Invoice Fancy Report. </p>
|
||||||
|
<br/>
|
||||||
|
<img class="img-border img-responsive thumbnail mb16" style="border: 3px solid black;" src="cust_inv_fency.png">
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</section>
|
||||||
|
|
||||||
|
<section class="oe_container lead">
|
||||||
|
<div>
|
||||||
|
<div>
|
||||||
|
<p class="oe_slogan" style="color: #49a3fe;font-size: 35px;font-style: italic;font-weight:bolder;"> Classic Report Template </p>
|
||||||
|
<p class="oe_slogan" style="color: #49a3fe;font-size: 35px;font-style: italic;font-weight:bolder;"> Sale Order Classic Report. </p>
|
||||||
|
<br/>
|
||||||
|
<img class="img-border img-responsive thumbnail mb16" style="border: 3px solid black;" src="quotation_classic.png">
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</section>
|
||||||
|
|
||||||
|
<section class="oe_container lead">
|
||||||
|
<div>
|
||||||
|
<div>
|
||||||
|
<p class="oe_slogan" style="color: #49a3fe;font-size: 35px;font-style: italic;font-weight:bolder;"> Delivery Order Classic Report. </p>
|
||||||
|
<br/>
|
||||||
|
<img class="img-border img-responsive thumbnail mb16" style="border: 3px solid black;" src="delivery_classic.png">
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</section>
|
||||||
|
|
||||||
|
<section class="oe_container lead">
|
||||||
|
<div>
|
||||||
|
<div>
|
||||||
|
<p class="oe_slogan" style="color: #49a3fe;font-size: 35px;font-style: italic;font-weight:bolder;"> Purchase Order Classic Report. </p>
|
||||||
|
<br/>
|
||||||
|
<img class="img-border img-responsive thumbnail mb16" style="border: 3px solid black;" src="rfq_classic.png">
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</section>
|
||||||
|
|
||||||
|
<section class="oe_container lead">
|
||||||
|
<div>
|
||||||
|
<div>
|
||||||
|
<p class="oe_slogan" style="color: #49a3fe;font-size: 35px;font-style: italic;font-weight:bolder;"> Invoice Classic Report. </p>
|
||||||
|
<br/>
|
||||||
|
<img class="img-border img-responsive thumbnail mb16" style="border: 3px solid black;" src="cust_invoice_classic.png">
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</section>
|
||||||
|
|
||||||
|
<section class="oe_container lead">
|
||||||
|
<div>
|
||||||
|
<div>
|
||||||
|
<p class="oe_slogan" style="color: #49a3fe;font-size: 35px;font-style: italic;font-weight:bolder;"> Modern Report Template </p>
|
||||||
|
<p class="oe_slogan" style="color: #49a3fe;font-size: 35px;font-style: italic;font-weight:bolder;"> Sale Order Modern Report. </p>
|
||||||
|
<br/>
|
||||||
|
<img class="img-border img-responsive thumbnail mb16" style="border: 3px solid black;" src="quotation_modern.png">
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</section>
|
||||||
|
|
||||||
|
<section class="oe_container lead">
|
||||||
|
<div>
|
||||||
|
<div>
|
||||||
|
<p class="oe_slogan" style="color: #49a3fe;font-size: 35px;font-style: italic;font-weight:bolder;"> Delivery Order Modern Report. </p>
|
||||||
|
<br/>
|
||||||
|
<img class="img-border img-responsive thumbnail mb16" style="border: 3px solid black;" src="delivery_modern.png">
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</section>
|
||||||
|
|
||||||
|
<section class="oe_container lead">
|
||||||
|
<div>
|
||||||
|
<div>
|
||||||
|
<p class="oe_slogan" style="color: #49a3fe;font-size: 35px;font-style: italic;font-weight:bolder;"> Purchase Order Modern Report. </p>
|
||||||
|
<br/>
|
||||||
|
<img class="img-border img-responsive thumbnail mb16" style="border: 3px solid black;" src="rfq_modern.png">
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</section>
|
||||||
|
|
||||||
|
<section class="oe_container lead">
|
||||||
|
<div>
|
||||||
|
<div>
|
||||||
|
<p class="oe_slogan" style="color: #49a3fe;font-size: 35px;font-style: italic;font-weight:bolder;"> Invoice Modern Report. </p>
|
||||||
|
<br/>
|
||||||
|
<img class="img-border img-responsive thumbnail mb16" style="border: 3px solid black;" src="cust_in_modern.png">
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</section>
|
||||||
|
|
||||||
|
<section class="oe_container lead">
|
||||||
|
<div>
|
||||||
|
<div>
|
||||||
|
<p class="oe_slogan" style="color: #49a3fe;font-size: 35px;font-style: italic;font-weight:bolder;"> Odoo Standard Template </p>
|
||||||
|
<p class="oe_slogan" style="color: #49a3fe;font-size: 35px;font-style: italic;font-weight:bolder;"> Sale Order Standard Report. </p>
|
||||||
|
<br/>
|
||||||
|
<img class="img-border img-responsive thumbnail mb16" style="border: 3px solid black;" src="quotation_odoo.png">
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</section>
|
||||||
|
|
||||||
|
<section class="oe_container lead">
|
||||||
|
<div>
|
||||||
|
<div>
|
||||||
|
<p class="oe_slogan" style="color: #49a3fe;font-size: 35px;font-style: italic;font-weight:bolder;"> Delivery Order Standard Report. </p>
|
||||||
|
<br/>
|
||||||
|
<img class="img-border img-responsive thumbnail mb16" style="border: 3px solid black;" src="delivery_odoo.png">
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</section>
|
||||||
|
|
||||||
|
<section class="oe_container lead">
|
||||||
|
<div>
|
||||||
|
<div>
|
||||||
|
<p class="oe_slogan" style="color: #49a3fe;font-size: 35px;font-style: italic;font-weight:bolder;"> Purchase Order Standard Report. </p>
|
||||||
|
<br/>
|
||||||
|
<img class="img-border img-responsive thumbnail mb16" style="border: 3px solid black;" src="rfq_odoo.png">
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</section>
|
||||||
|
|
||||||
|
<section class="oe_container lead">
|
||||||
|
<div>
|
||||||
|
<div>
|
||||||
|
<p class="oe_slogan" style="color: #49a3fe;font-size: 35px;font-style: italic;font-weight:bolder;"> Invoice Standard Report. </p>
|
||||||
|
<br/>
|
||||||
|
<img class="img-border img-responsive thumbnail mb16" style="border: 3px solid black;" src="cust_invoice_odoo.png">
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</section>
|
||||||
|
|
||||||
|
<section class="oe_container lead">
|
||||||
|
<div>
|
||||||
|
<div>
|
||||||
|
<p class="oe_slogan" style="color: #49a3fe;font-size: 35px;font-style: italic;font-weight:bolder;"> Now also available in spanish. </p>
|
||||||
|
<br/>
|
||||||
|
<img class="img-border img-responsive thumbnail mb16" style="border: 3px solid black;" src="prt_translate.png">
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</section>
|
||||||
|
|
||||||
|
<section class="oe_container oe_dark" style="min-width: 110%;margin-left: -5%;">
|
||||||
|
<div>
|
||||||
|
<div class="row">
|
||||||
|
<div class="col-sm-4" style="margin: auto;">
|
||||||
|
<p class="oe_slogan" style="font-size: 35px;color: #5082c4;font-style: italic;font-weight: bold;">Apps May You Like</p>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="row col-sm-12" style="margin-left: 1%;padding: 1% 8%;">
|
||||||
|
<div class="col-sm-4" style="padding: 5px;padding-right: 10px;">
|
||||||
|
<a href="https://apps.odoo.com/apps/modules/13.0/bi_financial_excel_reports/">
|
||||||
|
<img class="img img-responsive" src="related/bi_financial_excel_reports.png" style="width: 100%;"/>
|
||||||
|
</a>
|
||||||
|
</div>
|
||||||
|
<div class="col-sm-4" style="padding: 5px;padding-right: 10px;">
|
||||||
|
<a href="https://apps.odoo.com/apps/modules/13.0/bi_inventory_valuation_reports/">
|
||||||
|
<img class="img img-responsive" src="related/bi_inventory_valuation_reports.png" style="width: 100%;"/>
|
||||||
|
</a>
|
||||||
|
</div>
|
||||||
|
<div class="col-sm-4" style="padding: 5px;padding-right: 10px;">
|
||||||
|
<a href="https://apps.odoo.com/apps/modules/13.0/outstanding_report/">
|
||||||
|
<img class="img img-responsive" src="related/outstanding_report.png" style="width: 100%;"/>
|
||||||
|
</a>
|
||||||
|
</div>
|
||||||
|
<div class="col-sm-4" style="padding: 5px;padding-right: 10px;">
|
||||||
|
<a href="https://apps.odoo.com/apps/modules/13.0/bi_stock_rotation_report/">
|
||||||
|
<img class="img img-responsive" src="related/bi_stock_rotation_report.png" style="width: 100%;"/>
|
||||||
|
</a>
|
||||||
|
</div>
|
||||||
|
<div class="col-sm-4" style="padding: 5px;padding-right: 10px;">
|
||||||
|
<a href="https://apps.odoo.com/apps/modules/13.0/bi_inventory_report/">
|
||||||
|
<img class="img img-responsive" src="related/bi_inventory_report.png" style="width: 100%;"/>
|
||||||
|
</a>
|
||||||
|
</div>
|
||||||
|
<div class="col-sm-4" style="padding: 5px;padding-right: 10px;">
|
||||||
|
<a href="https://apps.odoo.com/apps/modules/13.0/bi_sale_margin_report/">
|
||||||
|
<img class="img img-responsive" src="related/bi_sale_margin_report.png" style="width: 100%;"/>
|
||||||
|
</a>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</section>
|
||||||
|
|
||||||
|
<section class="oe_container oe_dark" style="min-width: 110%;margin-left: -5%;">
|
||||||
|
<div>
|
||||||
|
<div class="row">
|
||||||
|
<div class="col-sm-4" style="margin: auto;">
|
||||||
|
<p class="oe_slogan" style="font-size: 35px;color: #5082c4;font-style: italic;font-weight: bold;">Most Demanded Apps</p>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="row col-sm-12" style="margin-left: 1%;padding: 1% 8%;">
|
||||||
|
<div class="col-sm-4" style="padding: 5px;padding-right: 10px;">
|
||||||
|
<a href="https://apps.odoo.com/apps/modules/13.0/pos_orders_all/">
|
||||||
|
<img class="img img-responsive" src="demanded/all_in_one_pos.png" style="width: 100%;"/>
|
||||||
|
</a>
|
||||||
|
</div>
|
||||||
|
<div class="col-sm-4" style="padding: 5px;padding-right: 10px;">
|
||||||
|
<a href="https://apps.odoo.com/apps/modules/13.0/bi_customer_overdue_statement/">
|
||||||
|
<img class="img img-responsive" src="demanded/customer_overdue.png" style="width: 100%;"/>
|
||||||
|
</a>
|
||||||
|
</div>
|
||||||
|
<div class="col-sm-4" style="padding: 5px;padding-right: 10px;">
|
||||||
|
<a href="https://apps.odoo.com/apps/modules/13.0/generic_excel_reports/">
|
||||||
|
<img class="img img-responsive" src="demanded/generic_excel_reports.png" style="width: 100%;"/>
|
||||||
|
</a>
|
||||||
|
</div>
|
||||||
|
<div class="col-sm-4" style="padding: 5px;padding-right: 10px;">
|
||||||
|
<a href="https://apps.odoo.com/apps/modules/13.0/sales_commission_generic/">
|
||||||
|
<img class="img img-responsive" src="demanded/sale_commision.png" style="width: 100%;"/>
|
||||||
|
</a>
|
||||||
|
</div>
|
||||||
|
<div class="col-sm-4" style="padding: 5px;padding-right: 10px;">
|
||||||
|
<a href="https://apps.odoo.com/apps/modules/13.0/bi_generic_import/">
|
||||||
|
<img class="img img-responsive" src="demanded/bi_generic_import.png" style="width: 100%;"/>
|
||||||
|
</a>
|
||||||
|
</div>
|
||||||
|
<div class="col-sm-4" style="padding: 5px;padding-right: 10px;">
|
||||||
|
<a href="https://apps.odoo.com/apps/modules/13.0/branch/">
|
||||||
|
<img class="img img-responsive" src="demanded/branch.png" style="width: 100%;"/>
|
||||||
|
</a>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</section>
|
||||||
|
|
||||||
|
<section class="oe_container">
|
||||||
|
<div >
|
||||||
|
<div >
|
||||||
|
<h2 class="oe_slogan">Free Support</h2>
|
||||||
|
<h3 class="oe_slogan" style="font-size: 21px; color: #000000 !important;">You will get 90 Days free support incase any bugs or issue (Except data recovery).</h3>
|
||||||
|
<p class="oe_slogan" style="font-size: 18px; ">
|
||||||
|
At BrowseInfo we offer end to end solution for Odoo services. Which includes analysis & consultation on the workflows and integration part. Please note that You're not allowed to distribute this module after purchase! Incase of any question regarding this module feel free to email us on <a href="mailto:sales@browseinfo.in">sales@browseinfo.in</a> or raise a ticket on support.
|
||||||
|
</p>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</section>
|
||||||
|
|
||||||
|
<section class="oe_container lead">
|
||||||
|
<div >
|
||||||
|
<div >
|
||||||
|
<div class="img img-responsive text-center">
|
||||||
|
<a href="http://www.browseinfo.in" target="new" style="display: grid;">
|
||||||
|
<img src="bi_logo.png" style="margin: auto;max-width: 350px;">
|
||||||
|
</a>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="oe_slogan oe_spaced text-center">
|
||||||
|
<a class="btn mt8" title="Website" style="background-color: #3497db;color: #FFFFFF !important;font-size: 20px;font-weight: bold;" href="https://browseinfo.in/" target="_blank"> Website </a>
|
||||||
|
<a class="btn mt8" title="Email on Support" style="background-color: #3497db;color: #FFFFFF !important;font-size: 20px;font-weight: bold;" href="https://browseinfo.in/request-support/" target="_blank"> Support Request </a>
|
||||||
|
<a class="btn mt8" title="Request New Features now !" style="background-color: #3497db;color: #FFFFFF !important;font-size: 20px;font-weight: bold;" href="https://browseinfo.in/our-services/" target="_blank">Services</a>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</section>
|
||||||
BIN
bi_professional_reports_templates/static/description/main.png
Normal file
|
After Width: | Height: | Size: 67 KiB |
BIN
bi_professional_reports_templates/static/description/print.png
Normal file
|
After Width: | Height: | Size: 91 KiB |
|
After Width: | Height: | Size: 28 KiB |
|
After Width: | Height: | Size: 94 KiB |
|
After Width: | Height: | Size: 101 KiB |
|
After Width: | Height: | Size: 95 KiB |
|
After Width: | Height: | Size: 102 KiB |
|
After Width: | Height: | Size: 14 KiB |
|
After Width: | Height: | Size: 15 KiB |
|
After Width: | Height: | Size: 12 KiB |
|
After Width: | Height: | Size: 12 KiB |
|
After Width: | Height: | Size: 11 KiB |
|
After Width: | Height: | Size: 6.7 KiB |
|
After Width: | Height: | Size: 110 KiB |
|
After Width: | Height: | Size: 97 KiB |
|
After Width: | Height: | Size: 112 KiB |
|
After Width: | Height: | Size: 98 KiB |