现在我的错误是这样的
File "/home/bellvantage/Documents/openerp-7.0/openerp-7/openerp/addons/bpl/bpl.py", line 119, in _max_reg_no
res = cr.fetchone()[0]
TypeError: 'NoneType' object has no attribute '__getitem__'
我有一个名为 bpl_worker 的表。我在 python 代码中调用了一个函数。
def _max_reg_no(self, cr, uid, context=None):
res = {}
cr.execute("""
select COALESCE(register_no, 'W00001') as reg_no
from bpl_worker
where id in
(select coalesce(max(id),0) from bpl_worker)
""")
rows = cr.fetchall()
if len(rows) == 0:
return 'W00001'
else:
res = rows[0]
emp_no = str(res)
emp_int = emp_no[1:6]
emp_no_int = int(emp_int)
result = 'W' + (str(emp_no_int + 1).zfill(4))
return result
如果表至少有一条记录,则其工作并返回记录。在初始级别无法获取 if null 消息的记录作为输出。请帮我解决这个问题
谢谢
现在我的表如果 null 问题正常。但是在我的记录返回为“W00001”之后,错误出现在以下点
res = cr.fetchone()[0]