Eccomi di nuovo.
Ho fatto delle prove ma niente da fare.
Dovrei cambiare l'attributo on_change dei campi product_packaging e product_uom_qty.
Per product_uom_qty. non ho avuto nessun problema ma mi rimane difficile per product_packaging.
Ho fatto delle prove creandomi tale campo nel mio modulo e posizionandolo nella form per l'inserimento.
Li ho trovato due campi product_packaging uno sotto l'altro cosa che non dovrebbe accadere. Se faccio un position="replace" su quelcampo il server mi da errore dicendomi
Field(s) `arch` failed against a constraint: Invalid view definition
Error details:
Element '<field name="product_packaging">' cannot be located in parent view
in pratica non trova il field.
La difficoltà che ho trovato è l'orverride proprio di questo campo per che si trova nel modulo sale_stock e anch'esso fa l'override di sale.order.
come si vede nel file sale_stock_view.xml
<record id="view_order_form_inherit" model="ir.ui.view">
<field name="name">sale.order.form.sale.stock</field>
<field name="model">sale.order</field>
<field name="inherit_id" ref="sale.view_order_form"/>
<field name="arch" type="xml">
<data>
[......Contiene tutti xpath.....]
[ .... questo è xpath che dovrei modificare....]
<xpath expr="//page[@string='Order Lines']/field[@name='order_line']/form[@string='Sales Order Lines']/group/group/field[@name='tax_id']" position="before">
<field name="product_tmpl_id" invisible="1"/>
<field name="product_packaging" context="{'default_product_tmpl_id': product_tmpl_id, 'partner_id':parent.partner_id, 'quantity':product_uom_qty, 'pricelist':parent.pricelist_id, 'uom':product_uom, 'company_id': parent.company_id}" on_change="product_packaging_change(parent.pricelist_id, product_id, product_uom_qty, product_uom, parent.partner_id, product_packaging, True, context)" domain="[('product_tmpl_id','=',product_tmpl_id)]" groups="product.group_stock_packaging" />
</xpath>
</data>
</field>
</record>
mi sono creato un record nel mio modulo cercando di fare l'overrigth di tale campo ma il server continua a protestare.
<record id="sale_order_form_molino_packaging" model="ir.ui.view">
<field name="name">sale.order.form.molino.packaging</field>
<field name="model">sale_stock</field>
<field name="inherit_id" ref="sale_stock.view_order_form_inherit"/>
<field name="arch" type="xml">
<xpath expr="//page[@string='Order Lines']/field[@name='order_line']/form[@string='Sales Order Lines']/group/group/field[@name='product_packaging']" position="replace">
<field name="product_packaging" context="{'default_product_tmpl_id': product_tmpl_id, 'partner_id':parent.partner_id, 'quantity':product_uom_qty, 'pricelist':parent.pricelist_id, 'uom':product_uom, 'company_id': parent.company_id}" on_change="product_packaging_change(parent.pricelist_id, product_id, product_bom_qty, product_uom, parent.partner_id, product_packaging, True, context)" domain="[('product_tmpl_id','=',product_tmpl_id)]" groups="product.group_stock_packaging" />
</xpath>
</record>
Non ho proprio idea di come possa modificarlo.