Sto creando un mio modulo.
All'interno del file .py ho creato due classi::
# -*- encoding: utf-8 -*-
from openerp import models, fields, api
from openerp.osv import osv
class miomodulo_contratto(models.Model):
_name = 'tbl_contratto'
_description = 'Classe per l\'inserimento in tbl_contratto'
scode = fields.Char('Codice Contratto', size=3, required=True)
sdescrizione = fields.Char('Descrizione Breve', size=40, required=True)
def controllo_scode_contratto(self, cr, uid, ids, scode_contratto, context=None):
if scode_contratto and not unicode.isdigit(
_sql_constraints = [
('scode',
'unique(scode_contratto)',
'Attenzione! Hai scelto un Codice già esistente.\n Per favore, inseriscine uno diverso.'),
('sdescrizione',
'unique(sdescrizione)',
'Attenzione! La Descrizione inserita è già stata utilizzata.\n Per favore, inseriscine una diversa.')
]
class miomodulo_responsabile(models.Model):
_name = 'tbl_responsabile'
_description = 'Classe per l\'inserimento in tbl_responsabile'
_inherits = {'tbl_contratto': 'id_tbl_contratto'}
id_tbl_contratto = fields.Many2one('tbl_contratto', 'Codice Contratto')
responsabile_contratto = fields.Char(string='Responsabile Contratto', size=100, help="Indica il responsabile del contratto", required=True)
Nel file .xml ho creato un bottone collegato ad un'azione che mi permette di aprire le due viste una dopo l'altra:
<?xml version="1.0" encoding="utf-8"?>
<openerp>
<data>
<record id="view_miomodulo_contratto_tree" model="ir.ui.view">
<field name="name">miomodulo.contratto.tree.view</field>
<field name="model">tbl_contratto</field>
<field name="arch" type="xml">
<tree string="miomodulo" export="false">
<field name="id"/>
<field name="scode"/>
<field name="sdescrizione"/>
</tree>
</field>
</record>
<record id="view_miomodulo_contratto_form" model="ir.ui.view">
<field name="name">miomodulo.contratto.form.view</field>
<field name="model">tbl_contratto</field>
<field name="arch" type="xml">
<form string="miomodulo" duplicate="false">
<header>
<button name="%(action_miomodulo_inserimento_responsabile)d" type="action" string="Submit" />
</header>
<sheet>
<group>
<field name="id" attrs="{'invisible': [('write_date', '=', False)]}" />
<field name="scode"/>
<field name="sdescrizione"/>
</group>
</sheet>
</form>
</field>
</record>
<record id="action_miomodulo_contratto" model="ir.actions.act_window">
<field name="name">Contratto</field>
<field name="res_model">tbl_contratto</field>
<field name="view_type">form</field>
<field name="view_mode">tree,form</field>
<field name="search_view_id" eval="False"/>
</record>
<menuitem action="action_miomodulo_contratto" id="menu_action_miomodulo_contratto" parent="mail.mail_feeds" sequence="140"/>
<record id="view_miomodulo_responsabile_tree" model="ir.ui.view">
<field name="name">miomodulo.responsabile.tree.view</field>
<field name="model">tbl_responsabile</field>
<field name="arch" type="xml">
<tree string="miomodulo" export="false">
<field name="id"/>
<field name="id_tbl_contratto"/>
<field name="responsabilei"/>
</tree>
</field>
</record>
<record id="view_miomodulo_responsabile_form" model="ir.ui.view">
<field name="name">miomodulo.responsabile.form.view</field>
<field name="model">tbl_responsabile</field>
<field name="arch" type="xml">
<form string="miomodulo" duplicate="false">
<group>
<field name="id" attrs="{'invisible': [('write_date', '=', False)]}" />
<field name="id_tbl_contratto"/>
<field name="responsabile"/>
</group>
</form>
</field>
</record>
<record id="action_miomodulo_inserimento_responsabile" model="ir.actions.act_window">
<field name="name">Inserimento.Responsabile</field>
<field name="res_model">tbl_responsabile</field>
<field name="view_type">form</field>
<field name="view_mode">tree,form</field>
<field name="view_id" ref="view_miomodulo_responsabile_form"></field>
</record>
</data>
</openerp>
Ciò che vorrei fare è, quando clicco sul bottone, di passare l'id ti tbl_contratto al secondo form.
Sapreste farmi un esempio di come fare?
Grazie!