Hi all,
I am trying to replace the position of smart button "Purchase" when viewing a product.
This smart button is injected by app "purchase" in the form view named "product.template.purchase.button.inherit"
Code is located in "purchase_views.xml" as below
<record id="view_product_template_purchase_buttons_from" model="ir.ui.view">
<field name="name">product.template.purchase.button.inherit</field>
<field name="model">product.template</field>
<field name="inherit_id" ref="product.product_template_only_form_view"/>
<field name="groups_id" eval="[(4, ref('purchase.group_purchase_user'))]"/>
<field name="arch" type="xml">
<button name="toggle_active" position="before">
<button class="oe_stat_button" name="%(purchase.action_purchase_line_product_tree)d"
type="action" icon="fa-shopping-cart">
<field string="Purchases" name="purchase_count" widget="statinfo"/>
</button>
</button>
</field>
</record>
Most smart buttons are placed by view inheritance with """ <button name="toggle_active" position="before"> """ in another module/app
I'd like to override everything in this view record by creating and loading a new xml file in my custom module. My understanding is that I need to refer to the right record id to override it.
My xml code:
<?xml version="1.0" encoding="utf-8" ?>
<odoo>
<data>
<record id="purchase.view_product_template_purchase_buttons_from" model="ir.ui.view">
<field name="name">product.template.purchase.button.inherit</field>
<field name="model">product.template</field>
<field name="inherit_id" ref="product.product_template_only_form_view"/>
<field name="groups_id" eval="[(4, ref('purchase.group_purchase_user'))]"/>
<field name="arch" type="xml">
<button name="action_view_sales" position="after">
<button class="oe_stat_button" name="%(purchase.action_purchase_line_product_tree)d" type="action" icon="fa-shopping-cart">
<field string="Purchases" name="purchase_count" widget="statinfo"/>
</button>
</button>
</field>
</record>
</data>
</odoo>
With my code, the error shows "purchase_count" is not found in model.
What is the correct way of replacing everything in existing view?
Did You Taken Field "purchase_count" on .py File?.