Please check this sample.
The model has a many2one field. This many2one is Calib_id. This is a connection with a two table.
csyscmeascalibrate >> csyscmeascalibraterow. You can use this way to see what you want, and filter the data if is it necessary.
Xml.:
<record model="ir.ui.view" id="csysc_measuringtoolcalibration_form_view">
<field name="name">csysc_measuringtoolcalibration.form</field>
<field name="model">csyscmeascalibrate</field>
<field name="type">form</field>
<field name="arch" type="xml">
<form string="Measuring Equipment Calibration Plan">
<group colspan="4" col="6">
<field name="name"/>
<field name="Title"/>
<field name="ISO_form_number"/>
<field name="type"/>
</group>
<notebook colspan="4">
<page string="Controlled Calibration points">
<field colspan="4" name="Calib_lines" nolabel="1" widget="one2many_list" mode="tree"/>
</page>
</notebook>
</form>
</field>
</record>
python
class csyscmeascalibraterow(osv.osv):
_name = "csyscmeascalibraterow"
_description = "calibration data sheet"
_columns = {
'name' : fields.char('Calibration point:',size=40, required = True, help='The name of the calibration point, like jig width or ring diameter...etc'),
'Calib_id':fields.many2one('csyscmeascalibrate','Parent Calibration', select=False, ondelete='cascade'),
'NomValue' : fields.float('Nominal Value:',size=40, required = False, help='Nominal measuring value: like 12.00'),
"Max_deviation" : fields.char('Max deviation:',size=40, required = False, help='Maximum deviation from nominal measuring value: like 12.00'),
}
csyscmeascalibraterow()
class csyscmeascalibrate(osv.osv):
_name = "csyscmeascalibrate"
_description = "calibration data sheet"
_columns = {
'name' : fields.char('Calibration Name:',size=40, required = True, help='The name of the calibration like Calipper 0-150...etc'),
'Title' : fields.char('Calibration title:',size=40, required = True, help='Title of the calibration point, like measuring series with jig...'),
'ISO_form_number' : fields.char('Iso Form Number:',size=40, required = False, help='The ISO system form number'),
'type': fields.many2one('csyscmtooltypes','Equipment type',required = True),
'Calibration_child_row_id': fields.many2one('csyscmeascalibrate','csyscmeascalibrate'),
'Calib_lines': fields.one2many('csyscmeascalibraterow', 'Calib_id', 'Calibration Plan id'),
}
csyscmeascalibrate()