Dans Odoo 9, j'essaie d'hériter du formulaire de bon de commande (fichier: addons/purchase/purchase_view.xml, record: <record id="purchase_order_form" model="ir.ui.view">
). Ce que je dois faire, c'est juste modifier un attribut d'un tag page
. J'ai essayé de sélectionner la page désirée en utilisant xpath, mais ça ne marche pas très bien.La sélection de Xpath ne fonctionne pas dans Odoo 9
Parent Structure Voir
<notebook>
<page string="Products">
......
......
<notebook>
<page string="Notes">
<field name="name"/>
</page><page string="Invoices and Incoming Shipments">
<field name="invoice_lines"/>
<field name="move_ids"/>
</page>
</notebook>
......
......
</page>
<page string="Deliveries & Invoices">
</page>
</notebook>
Dans mon fichier de vue, j'ai utilisé le code suivant pour sélectionner le <page string="Deliveries & Invoices">
et cela ne fonctionne pas comme prévu.
<record model="ir.ui.view" id="purchase_order_type_form_view_inherit">
<field name="name">purchase.order.form.inherit</field>
<field name="model">purchase.order</field>
<field name="inherit_id" ref="purchase.purchase_order_form"/>
<field name="priority">10000</field>
<field name="arch" type="xml">
<xpath expr="//notebook/page[2]" position="attributes">
<attribute name="groups">custom_module.manager</attribute>
</xpath>
</field>
</record>
Merci d'avance.
Le problème pourrait être dans deux structures similaires, qui sont imbriquées. Qu'en est-il de '/ notebook/page [2]'? Retirez simplement la première barre oblique. Ou essayez '// page [@ string =" Livraisons & Factures "]'. Votre XPath sélectionne chaque deuxième élément 'page', quel que soit le niveau. –
@HonzaHejzl Merci pour votre aide. En fait, je ne peux pas utiliser '// page [@ string =" Livraisons & Factures "]' car Odoo 9 ne supporte pas l'utilisation de la sélection d'attribut de chaîne. Je vais essayer la première option très bientôt et vous le faire savoir alors. –
@NikhilMohan montrer le xml de vue s'il vous plaît. Je veux dire avec 'inherit_id' et' model'. –