Перейти к содержимому
Меню
Чтобы взаимодействовать с сообществом, необходимо зарегистрироваться.
Этот вопрос был отмечен
1 Ответить
13505 Представления

Hi guys,

I've been trying a few things to add a new field into a Many2one through xpath but I'm not sure why its not working. My model code:

 class aa_test(models.Model):
    _inherit = 'sale.order'
    hoogte = fields.Integer()
    breedte = fields.Integer()
    aantal = fields.Integer()

My view (xml):

 <openerp>
    <data>
        <record id="sale.view_order_form_inherit" model="ir.ui.view">
            <field name="name">sale.order.form.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='order_line']" position="inside">
                    <field name="hoogte"/>
		</xpath>
	    </field>
        </record>
    </data>
</openerp>

en I change the position="inside" to position="before" I will see the field showing up before my One2many, when I put it on inside it wont be added to the One2many. I'm adding to the view under sales > Quotations to the One2many order_line. See this example image to see what I want.

Why is the before working but not the inside? Is my xpath expressions invalid?

Thanks,
Yenthe

Аватар
Отменить
Лучший ответ

Hello,

Please check again order_line is not a Many2one field. Its One2many field. This is the reason you cant use position=inside.

Try with this xpath I hope this will help you.

<xpath expr="//tree[@string='Sales Order Lines']/field[@name='name']" position="after">
    <field name="hoogte"/>
</xpath>

 Thanks.

Shamji.



Аватар
Отменить
Автор

Thanks Solanki, great answer! I've updated my question since I indeed named the field invalid. Another sidenode, I had to change my model from sale.order to sale.order.line, since its coming from that model! Thanks :)

Related Posts Ответы Просмотры Активность
4
дек. 23
18255
5
янв. 19
4910
0
сент. 17
3562
3
июн. 16
9141
1
июл. 25
2086