In the following case I have written **def onchange_insp(self, cr, uid, ids, folionum,context=None)** function but at **inspec_type** in **'feedback.tree'** is not working properly.
from openerp.osv import fields, osv
from openerp import api
import logging
class feedback_form(osv.Model):
_name = 'feedback.form'
_columns = {
'company_id111': fields.many2one('res.company', 'Substation', required=True),
'folionum' : fields.many2one('calendar.event','Maintenance ID',),
'folio_number' : fields.many2one('asset.asset','Folio number',),
# this field is filtering properly
'inspec_type' : fields.many2one('asset1.inspection','Inspection Type',),
'frequency' : fields.char('Frequency'),
'shutdown' : fields.char('Shut Down'),
#'insp_msr1' : fields.many2one('results.measure','Result',),
'insp_rslt' : fields.one2many('feedback.tree','insp_rsltts','Inspection Result',),
}
def onchange_insp(self, cr, uid, ids, folionum,context=None):
dids = []
res = {}
for record in self.pool.get('calendar.event').browse(cr, uid, folionum, context=context):
dids = [x.id for x in record.inspection_name]
dids1 = []
for record in self.pool.get('calendar.event').browse(cr, uid, folionum, context=context):
dids1 = [x.id for x in record.folio_num1]
res.update({'inspec_type':[('id','in',dids)]})
res.update({'folio_number':[('id','in',dids1)]})
return {'domain':res}
feedback_form()
class feedback_tree(osv.Model):
_name = 'feedback.tree'
_columns = {
**# How to do this for this field please reply me soon**
'inspec_type' : fields.many2one('asset1.inspection','Inspection Type',),
'valuess' : fields.char('Values/Results'),
'insp_rsltts': fields.many2one('feedback.form','Result Id'),
'insp_msr1' : fields.many2one('results.measure','Result',),
}
def onchange_measure(self, cr, uid, ids, inspec_type, context=None):
dids = []
for record in self.pool.get('asset1.inspection').browse(cr, uid, inspec_type, context=context):
dids = [x.id for x in record.msr_insp]
return {'domain':{'insp_msr1':[('id','in',dids)]}}
feedback_tree()