Odoo销售点+ Posbox:如何修改收据

时间:2015-11-01 07:02:50

标签: openerp

我需要修改销售点的收据

在Odoo销售点,两个模板打印收据: XmlReceipt和PosTicket

当我使用Posbox时,我想我必须修改XmlReceipt。 我想知道是否有办法继承原始模板? 我找到了有关如何使用PosTicket模板进行操作的示例,但Xmlreceipt似乎没有以相同的方式工作。

有什么想法吗?

谢谢。

3 个答案:

答案 0 :(得分:2)

我扩展了模板" 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>

答案 1 :(得分:0)

据我所知,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>

答案 2 :(得分:0)

好的,我找到了解决方案。 打印包含税的单价的示例,我写了这样的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>