【发布时间】:2015-11-04 16:09:35
【问题描述】:
我需要修改销售点收据
在 Odoo 销售点,有两个打印收据的模板: XmlReceipt 和 PostTicket
由于我使用的是 Posbox,我想我必须修改 XmlReceipt。 我想知道是否有办法继承原始模板? 我找到了有关如何使用 PosTicket 模板执行此操作的示例,但 Xmlreceipt 的工作方式似乎不同。
有什么想法吗?
谢谢。
【问题讨论】:
标签: openerp
我需要修改销售点收据
在 Odoo 销售点,有两个打印收据的模板: XmlReceipt 和 PostTicket
由于我使用的是 Posbox,我想我必须修改 XmlReceipt。 我想知道是否有办法继承原始模板? 我找到了有关如何使用 PosTicket 模板执行此操作的示例,但 Xmlreceipt 的工作方式似乎不同。
有什么想法吗?
谢谢。
【问题讨论】:
标签: openerp
我扩展模板“PosTicket”,通过 t-jquery 查找元素,替换为我的数据(在产品名称中添加“免费”)
<templates id="template" >
<t t-extend="PosTicket">
<t t-jquery=".receipt-orderlines .product_line" t-operation="inner">
<t t-if="orderline.get_reward() and orderline.get_reward().type == 'gift'">Free </t>
<t t-esc="orderline.get_product().display_name"/>
</t>
</t>
【讨论】:
据我所知,XmlReceipt 和 PosTicket 模板都是在 pos.xml 中定义的,因此您可以以相同的方式继承它们。 继承 XmlReceipt 示例:
<?xml version="1.0" encoding="UTF-8"?>
<templates id="myReceiptTemplate" xml:space="preserve">
<t t-extend="XmlReceipt">
"your code here"
</t>
</templates>
【讨论】:
好的,我找到了解决方案。 打印含税单价的示例,我的 xml 是这样写的:
<?xml version="1.0" encoding="UTF-8"?>
<templates id="myReceiptTemplate" xml:space="preserve">
<t t-extend="XmlReceipt">
<t t-jquery="t[t-esc='line.price']" t-operation="replace">
<t t-esc='line.price_with_tax / line.quantity ' />
</t>
</t>
</templates>
【讨论】: