Reputation: 319
In my case +1 sequence number shows when I open the form. But when I save the record, it incremented again by 1. That means my sequence numbers now look like this:
Is it an issue with openerp or am I missing something in my code?
'register_no': fields.char('Register No', size=32, help='Register No', readonly=True), # employer wise ,estate wise
'employer_no': fields.char('Employer No', type='char', readonly=True),
_defaults = {
'register_no': lambda obj, cr, uid, context: '/',
'employer_no': lambda obj, cr, uid, context: '/',
}
You can have a look on my code here
i commented
def create(self, cr, uid, values, context=None):
values['register_no'] = self.pool.get('ir.sequence').get(cr, uid, 'bpl.worker')
values['employer_no'] = self.pool.get('ir.sequence').get(cr, uid, 'bpl.employer')
return super(bpl_worker_registration, self).create(cr, uid, values, context=context)
Upvotes: 0
Views: 870
Reputation: 3207
You have called two times ir.sequence method, one from create
def create(self, cr, uid, values, context=None):
values['register_no'] = self.pool.get('ir.sequence').get(cr, uid, 'bpl.worker') values['employer_no'] = self.pool.get('ir.sequence').get(cr, uid, 'bpl.employer') return super(bpl_worker_registration, self).create(cr, uid, values, context=context)
and second from default
_defaults = {
'register_no': lambda obj, cr, uid, context: obj.pool.get('ir.sequence').get(cr, uid, 'bpl.worker'), 'employer_no': lambda obj, cr, uid, context: obj.pool.get('ir.sequence').get(cr, uid, 'bpl.employer'), }
It does not make any sense to call two time. make call only from _default or from create method
Upvotes: 1