Skip to Content
Menu
This question has been flagged
3 Replies
12188 Views

Dear all,
I am using Odoo 12 and having problems on using xpath for 2 expressions.
The original code for the views I want to inherit and replace are:

1.
<t t-foreach="payments_vals" t-as="payment_vals">
<tr>
<td>
<i class="oe_form_field text-right oe_payment_label">Paid on <t t-esc="payment_vals['date']"/></i>
</td>
<td class="text-right">
<span t-esc="payment_vals['amount']" t-options='{"widget": "monetary", "display_currency": o.currency_id}'/>
</td>
</tr>
</t>

2.
<t t-if="len(payments_vals) > 0">
<tr class="border-black">
<td>
<strong>Amount Due</strong>
</td>
<td class="text-right">
<span t-field="o.residual"/>
</td>
</tr>
</t>

On the first code I want to use xpath to locate: <t t-foreach="payments_vals" t-as="payment_vals">
On the second case, I want to use xpath to locate: <t t-if="len(payments_vals) > 0">

Can anyone help me please?

Thank you all in advance

Best regards

PM


Avatar
Discard
Best Answer
Hello Paulo Matos,

Try below code, it will work in my case so it will help you.

<template id="report_invoice_payments" inherit_id="account.report_invoice_document_with_payments">
    <xpath expr="//t[2]/tr" position="replace">
        <tr>
            do you custom code here ....
        </tr>
    </xpath>
    <xpath expr="//t[3]/tr" position="replace">
        <tr class="border-black">
            do you custom code here ....
        </tr>
    </xpath>
</template>​

-------
Thanks

Sunny Sheth ​
Avatar
Discard
Best Answer

Hi Paulo Matos ,

Please try this.

1.

<xpath expr="//t[@t-foreach='payments_vals']" position="after">
<field name="field_name" string="custom_field"/>
</xpath>

2.
<xpath expr="//t[@t-if='len(payments_vals) > 0']" position="after">
<field name="field_name" string="custom_field"/>
</xpath


Avatar
Discard
Author

Hi @Sugeesh Ps

I have tried both options with position='replace' because want to replace the full code inside but it does not work.

Odoo cannot locate the expression and I am sure I am inheriting the correct xlm id.

I think the problem is related to the fact that each expression have more data inside of it... ie. <t t-foreach="payments_vals" t-as="payment_vals">... is not just 'payment_vals'.

Regards

PM

Related Posts Replies Views Activity
3
Oct 23
5979
1
Sep 23
1968
1
May 23
1004
2
Apr 23
1378
1
Mar 23
996