Hi, I make sequence when press button 'regis' , but it's not work.
i don't know mean the error .
this is code in .py :
class hs_aplikan(osv.osv):
_name = 'hs.aplikan'
def process_regis(self, cr, uid, ids, context=None):
self.write(cr, uid, ids,{'state':'regis'})
def regis(self, cr, uid, vals, context=None):
obj = self.pool.get('gelombang.pendaftaran').browse(cr, uid, vals['tahun_akademik_id']).name.name.tahun
seq_name = 'D{0}'.format(obj_s)
seq = self.pool.get('ir.sequence')
ids = seq.search(cr, uid, [('name','=',seq_name)])
if not ids:
prefix = seq_name
ids = seq.create(cr, uid, {
'name':seq_name,
'prefix': prefix,
'padding': 4,
'implementation': 'no_gap',
})
vals['name'] = seq.get_id(cr,uid,ids)
res = super(hs_aplikan, self).create(cr, uid, vals, context=context)
self.process_regis(cr, uid, [res])
return res
_columns = {
'state': fields.selection([('aplikan','Aplikan'),('regis','Regis')],'Status', readonly=True),
'name': fields.char('No Aplikan'),
'no_regis': fields.char('No Regis'),
}
this is code in .xml :
<header>
<button name="regis" string="Regis" type="object" icon="gtk-apply" attrs="{'invisible':[('state','!=','aplikan')]}" />
</header>
when i press button 'regis' , error like this :
2015-04-06 00:08:01,348 2643 ERROR Db_0 openerp.http: Exception during JSON request handling.
Traceback (most recent call last):
File "/home/heru/odoo/openerp-8.0/openerp/http.py", line 499, in _handle_exception
return super(JsonRequest, self)._handle_exception(exception)
File "/home/heru/odoo/openerp-8.0/openerp/http.py", line 516, in dispatch
result = self._call_function(**self.params)
File "/home/heru/odoo/openerp-8.0/openerp/http.py", line 282, in _call_function
return checked_call(self.db, *args, **kwargs)
File "/home/heru/odoo/openerp-8.0/openerp/service/model.py", line 113, in wrapper
return f(dbname, *args, **kwargs)
File "/home/heru/odoo/openerp-8.0/openerp/http.py", line 279, in checked_call
return self.endpoint(*a, **kw)
File "/home/heru/odoo/openerp-8.0/openerp/http.py", line 732, in __call__
return self.method(*args, **kw)
File "/home/heru/odoo/openerp-8.0/openerp/http.py", line 375, in response_wrap
response = f(*args, **kw)
File "/home/heru/odoo/addons/Campus/web/controllers/main.py", line 948, in call_button
action = self._call_kw(model, method, args, {})
File "/home/heru/odoo/addons/Campus/web/controllers/main.py", line 936, in _call_kw
return getattr(request.registry.get(model), method)(request.cr, request.uid, *args, **kwargs)
File "/home/heru/odoo/openerp-8.0/openerp/api.py", line 237, in wrapper
return old_api(self, *args, **kwargs)
File "/home/heru/odoo/addons/Campus/hs_proses_pmb/hs_aplikan.py", line 34, in daftar
obj_s = obj.browse(cr, uid, vals['tahun_akademik_id']).name.name.tahun
TypeError: list indices must be integers, not str
i don't know mean the error.
if you know, please give me solution.
<sorry for my english language is bad>
thanks in advance.