25
25
class tr_barcode_settings(orm.TransientModel):
26
26
_inherit = 'tr.barcode.settings'
28
28
def _get_default_tracking_config_id(self, cr, uid, context=None):
29
29
config_obj = self.pool.get('tr.barcode.config')
30
30
md_obj = self.pool.get('ir.model.data')
31
31
model_id, res_id = md_obj.get_object_reference(cr, uid, 'stock', 'model_stock_tracking')
32
32
res = config_obj.search(cr, uid, [('res_model', '=', res_id)], limit=1, context=context)
33
33
return res and res[0] or False
36
'tracking_config_id': fields.many2one('tr.barcode.config', 'Picking Config'),
37
'tracking_model_id': fields.related('tracking_config_id', 'res_model', type='many2one', relation="ir.model", string="Model"),
38
'tracking_field_id': fields.related('tracking_config_id', 'field', type='many2one', relation="ir.model.fields", string="Field"),
39
'tracking_width': fields.related('tracking_config_id', 'width', type='integer', string="Width",
40
help="Leave Blank or 0(ZERO) for default size"),
41
'tracking_height': fields.related('tracking_config_id', 'height', type='integer', string="Height",
42
help="Leave Blank or 0(ZERO) for default size"),
43
'tracking_hr_form': fields.related('tracking_config_id', 'hr_form', type='boolean', string="Human Readable",
44
help="To generate Barcode In Human readable form"),
45
'tracking_barcode_type': fields.related('tracking_config_id', 'barcode_type', type='selection', selection=_get_code, string="Field"),
36
'tracking_config_id': fields.many2one('tr.barcode.config',
38
'tracking_model_id': fields.related('tracking_config_id', 'res_model',
42
'tracking_field_id': fields.related('tracking_config_id', 'field',
44
relation="ir.model.fields",
46
'tracking_width': fields.related('tracking_config_id', 'width',
49
help="Leave Blank or 0(ZERO) for default size"),
50
'tracking_height': fields.related('tracking_config_id', 'height',
53
help="Leave Blank or 0(ZERO) for default size"),
54
'tracking_hr_form': fields.related('tracking_config_id', 'hr_form',
56
string="Human Readable",
57
help="To generate Barcode In Human readable form"),
58
'tracking_barcode_type': fields.related('tracking_config_id', 'barcode_type',
49
64
'tracking_config_id': _get_default_tracking_config_id,
52
def onchange_tracking_config_id(self, cr, uid, ids, tracking_config_id, context=None):
67
def onchange_tracking_config_id(self, cr, uid, _ids, tracking_config_id, context=None):
54
69
if tracking_config_id:
55
70
tracking_config = self.pool.get('tr.barcode.config').browse(cr, uid, tracking_config_id, context=context)
57
'tracking_model_id': tracking_config.res_model and tracking_config.res_model.id or False,
58
'tracking_field_id': tracking_config.field and tracking_config.field.id or False,
72
'tracking_model_id': tracking_config.res_model.id if tracking_config.res_model else False,
73
'tracking_field_id': tracking_config.field.id if tracking_config.field else False,
59
74
'tracking_width': tracking_config.width or 0,
60
75
'tracking_height': tracking_config.height or 0,
61
76
'tracking_hr_form': tracking_config.hr_form or False,
62
77
'tracking_barcode_type': tracking_config.barcode_type or False,
64
79
return {'value': values}
66
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
b'\\ No newline at end of file'
81
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: