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

My moudlue inherited sale.order.I try to invisible commitment_date field and change the name of requested_date field.So I used xpth for both two fields.But both of fields occurred
 
 Element '<xpath expr="//field[@name='requested_date'][not(ancestor::field)]">' cannot be located in parent view 
 Element '<xpath expr="//field[@name='commitment_date'][not(ancestor::field)]">' cannot be located in parent view 

How can I fix these error?Thank You.
Following is my code;


<?xml version="1.0" encoding="utf-8"?>
<odoo>
    <data>
        <record id="sale_order_tree_view" model="ir.ui.view">
                <field name="name">sale_order_tree_view</field>
                <field name="model">sale.order</field>
                <field name="inherit_id" ref="sale.view_quotation_tree"></field>
                <field name="arch" type="xml">                 
                  
                    <xpath expr="//field[@name='requested_date']" position="attributes">
                        <attribute name="string">CW Dates</attribute>
                    </xpath>
                    <xpath expr="//field[@name='commitment_date'][not(ancestor::field)]" position="attributes">
                        <attribute name="invisible">1</attribute>
                    </xpath>                 
                </field>
        </record>
     
    </data>
</odoo>


Avatar
Discard

What is the use of [not(ancestor::field)]

Best Answer

This is the correct code, put sale_order_dates in depends list on manifest

<record id="sale_order_tree_view" model="ir.ui.view">
<field name="name">sale_order_tree_view</field>
<field name="model">sale.order</field>
<field name="inherit_id" ref="sale_order_dates.view_quotation_tree_date"></field>
<field name="arch" type="xml">

<xpath expr="//field[@name='requested_date']" position="attributes">
<attribute name="string">CW Dates</attribute>
</xpath>
<xpath expr="//field[@name='commitment_date'][not(ancestor::field)]" position="attributes">
<attribute name="invisible">1</attribute>
</xpath>
</field>
</record>
Avatar
Discard
Best Answer

Make sure that the fields  commitment_date, requested_date are already in the parent view. If you are trying to add these fields as new fields to the view, use a pre-existing field that comes default with odoo in the xpath expression.


     try the code
   <xpath expr="//field[@name='commitment_date'] position="attributes">

Avatar
Discard
Related Posts Replies Views Activity
2
Dec 24
6700
2
Nov 24
26975
2
May 24
6485
3
Mar 24
5841
0
Mar 24
935