python - Error In hr_recruitment module in open erp 7 -


i vaibhav new in open erp 7 , got error while inheriting hr_recruitment module.

i override search method hr_recruitment filter out applications added job_code char field in hr_job , job_code_applicant in hr_applicant

my code :

def search(self, cr, uid, args, offset=0, limit=none, order=none, context=none, count=false):     ''' overriden search method'''     cur_obj=self.pool.get('hr.job')     cr.execute('select job_code hr_job ')     list = cr.fetchall()     ids =  [ i[0] in list]     cr.execute('select id hr_applicant job_code_applicant in %s', (tuple(set(ids)),))     list12 = cr.fetchall()     ids_applicant =  [ i[0] in list12 ]     return ids_applicant 

error is:

traceback (most recent call last):

file "/home/fabian/openerp-7.0-20130408-232357/openerp/netsvc.py", line 293, in dispatch_rpc result = exportservice.getservice(service_name).dispatch(method, params) file "/home/fabian/openerp-7.0-20130408-232357/openerp/service/web_services.py", line 626, in dispatch res = fn(db, uid, *params) file "/home/fabian/openerp-7.0-20130408-232357/openerp/osv/osv.py", line 188, in execute_kw return self.execute(db, uid, obj, method, *args, **kw or {}) file "/home/fabian/openerp-7.0-20130408-232357/openerp/osv/osv.py", line 131, in wrapper return f(self, dbname, *args, **kwargs) file "/home/fabian/openerp-7.0-20130408-232357/openerp/osv/osv.py", line 197, in execute res = self.execute_cr(cr, uid, obj, method, *args, **kw) file "/home/fabian/openerp-7.0-20130408-232357/openerp/osv/osv.py", line 185, in execute_cr return getattr(object, method)(cr, uid, *args, **kw) file "/home/fabian/openerp-7.0-20130408-232357/openerp/osv/orm.py", line 2697, in read_group d['__domain'] = [(groupby, '=', alldata[d['id']][groupby] or false)] + domain 

keyerror: 8

in code why not return super of search method instead of returning direclty ids?

like:

def search(self, cr, uid, args, offset=0, limit=none, order=none,                        context=none, count=false):     #''' overriden search method'''     cur_obj=self.pool.get('hr.job')     cr.execute('select job_code '\                  'from hr_job '\               )     list = cr.fetchall()     ids =  [ i[0] in list]     if ids:         args.append(('job_code_applicant', 'in', ids))      return super(hr_applicant, self).search(cr, uid, args, offset, limit, order, context, count) 

Comments