Zum Inhalt springen
Menü
Sie müssen registriert sein, um mit der Community zu interagieren.
Diese Frage wurde gekennzeichnet



I,m trying to add field in sale order
this is code of my class:
from odoo import models , fields,api,_
class SaleOrder(models.Model):
_name='sale.order'
_inherit = 'sale.order'
warehouse_id=fields.Many2one("stock.warehouse")

and i inherit the view by this code and i added the field: 

<?xml version="1.0" encoding="utf-8"?>
<odoo>
<data>
<record id="view_sale_form_inherit" model="ir\.ui\.view\"\>
\ \ \ \ \ \ \ \ \ \ \ \ \<field\ name=\"name\"\>sale.order.inherit</field>
<field name="model">sale.order</field>
<field name="inherit_id" ref="sale.view_order_form"/>
<field name="arch" type="xml">
<xpath expr="//field[@name='sale_order_template_id']" position="after">
<field name="warehouse_id"/>
</xpath>
</field>
</record>
</data>
</odoo>


but the error occur:

Element '' cannot be located in parent view

View error context:
{'file': 'd:\\odoo16\\server\\odoo\\custom\\asmaa\\views\\sale_order.xml',
 'line': 2,
 'name': 'sale.order.inherit',
 'view': ir.ui.view(1622,),
 'view.model': 'sale.order',
 'view.parent': ir.ui.view(795,),
 'xmlid': 'view_sale_form_inherit'}



Avatar
Verwerfen
Beste Antwort

Hi,
The field sale_order_template_id is defined in view sale_management.sale_order_form_quote, not in sale.view_order_form

So you can modify your code by inheriting sale_management.sale_order_form_quote and define your field as below


Hope this will help you

Thanks

Avatar
Verwerfen
Beste Antwort

Hi,

because sale_order_template_id is presented in sale_management.sale_order_form_quote  view not in sale.view_order_form

Avatar
Verwerfen
Beste Antwort

Hi,

Try like below code.

class SaleOrder(models.Model):
_inherit = 'sale.order'
warehouse_id = fields.Many2one("stock.warehouse")

<?xml version="1.0"?>
<odoo>

    <record id="view_sale_order_form" model="ir.ui.view">
        <field name="name">view.sale.order.form</field>
        <field name="model">sale.order</field>
        <field name="inherit_id" ref="sale.view_order_form"/>
        <field name="arch" type="xml">
            <xpath expr="//field[@name='validity_date']" position="after">
                <field name="warehouse_id"/>

            </xpath>
        </field>
    </record>

</odoo>


Make sure that you give the sales module as it depends on your manifest file.

Regards

Avatar
Verwerfen
Verknüpfte Beiträge Antworten Ansichten Aktivität
3
Nov. 24
4309
2
Juli 23
3680
2
Juli 23
2056
0
Dez. 23
1262
1
Mai 23
3157