Salve a tutti,
Vorrei che nella vista sale.view_order_form sia visibile un campo da me creato con le informazioni riguardanti il cliente scelto, similmente a quanto accade con il campo già esistente Termini di Pagamento (payment_term_id).
Ho creato il campo fido_field e l'ho reso visibile nella vista base.view_partner_form
partner.py
class ResPartner(models.Model):
_inherit = 'res.partner'
fido_field = fields.Integer(string='Fido associato')
partner_view.xml
<odoo>
<record id="view_category_property_form" model="ir.ui.view">
<field name="name">partner.fido.limit.form.inherit</field>
<field name="model">res.partner</field>
<field name="inherit_id" ref="base.view_partner_form"/>
<field name="arch" type="xml">
<xpath expr="//field[@name='vat']" position="after">
<field name='fido_field'/>
</xpath>
</field>
</record>
</odoo>
Ho quindi creato il campo relazionale fido_sale_field e l'ho reso disponibile nella vista sale.view_order_form
sale.py
class SaleOrder(models.Model):
_inherit = "sale.order"
fido_sale_field = fields.Many2one('res.partner', 'fido_field')
sale_view.xml
<odoo>
<data>
<record id="view_order_form_inherit" model="ir.ui.view">
<field name="name">view.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='partner_id']" position="after">
<field name='fido_sale_field'/>
</xpath>
</field>
</record>
</data>
</odoo>
Quello che vorrei dunque accadesse è che nella vista di creazione del preventivo, dopo aver selezionato un cliente dalla lista dei clienti, si caricasse in automatico il valore di fido_field in fido_sale_field.
Dopo aver visionato il codice sale.py del modulo base 'sale' penso sia necessario utilizzare le seguenti api:
@api.onchange('partner_id')
def onchange_partner_id(self):
e
@api.multi
def _prepare_invoice(self):
Purtroppo seguendo il codice già presente e la documentazione non sono riuscito in nessun modo. Qualcuno ha un suggerimento da darmi?
Sapreste inoltre dirmi se è necessario indicare la relazione in entrambi i campi fido_field e fido_sale_field
Vi ringrazio anticipatamente.