OpenERP 6.1.1中明细帐查询问题
-
使用明细帐查询功能时出现如下错误提示:
Client Traceback (most recent call last):
File "C:\Program Files\OpenERP 6.1-1\server\openerp\addons\web\common\http.py", line 180, in dispatch
File "C:\Program Files\OpenERP 6.1-1\server\openerp\addons\web\controllers\main.py", line 1161, in load
File "C:\Program Files\OpenERP 6.1-1\server\openerp\addons\web\controllers\main.py", line 1043, in fields_view_get
File "C:\Program Files\OpenERP 6.1-1\server\openerp\addons\web\common\openerplib\main.py", line 250, in proxy
File "C:\Program Files\OpenERP 6.1-1\server\openerp\addons\web\common\openerplib\main.py", line 117, in proxy
File "C:\Program Files\OpenERP 6.1-1\server\openerp\addons\web\common\http.py", line 611, in send
Server Traceback (most recent call last):
File "C:\Program Files\OpenERP 6.1-1\server\openerp\addons\web\common\http.py", line 592, in send
File "C:\Program Files\OpenERP 6.1-1\server.\openerp\netsvc.py", line 360, in dispatch_rpc
File "C:\Program Files\OpenERP 6.1-1\server.\openerp\service\web_services.py", line 572, in dispatch
File "C:\Program Files\OpenERP 6.1-1\server.\openerp\osv\osv.py", line 167, in execute_kw
File "C:\Program Files\OpenERP 6.1-1\server.\openerp\osv\osv.py", line 121, in wrapper
File "C:\Program Files\OpenERP 6.1-1\server.\openerp\osv\osv.py", line 176, in execute
File "C:\Program Files\OpenERP 6.1-1\server.\openerp\osv\osv.py", line 164, in execute_cr
File "C:\Program Files\OpenERP 6.1-1\server\openerp\addons\account\account_move_line.py", line 967, in fields_view_get
File "C:\Program Files\OpenERP 6.1-1\server.\openerp\osv\orm.py", line 2149, in fields_view_get
File "C:\Program Files\OpenERP 6.1-1\server.\openerp\osv\orm.py", line 1789, in __view_look_dom_arch
File "C:\Program Files\OpenERP 6.1-1\server.\openerp\osv\orm.py", line 1695, in __view_look_dom
File "C:\Program Files\OpenERP 6.1-1\server\openerp\addons\account\account_move_line.py", line 930, in view_header_get
File "C:\Program Files\OpenERP 6.1-1\server.\openerp\sql_db.py", line 152, in wrapper
File "C:\Program Files\OpenERP 6.1-1\server.\openerp\sql_db.py", line 212, in execute
DataError: 錯誤: 無效的 integer 輸入語法: "04/2012"
LINE 1: SELECT code FROM account_period WHERE id = '04/2012'
跟踪发现为OE6.1.1中的一个BUG ,代码如下:
account_move_line.py,line 207
if type(period_id) == str :
ids = period_obj.search(cr, uid, [('name', 'ilike', period_id)])
context.update({
'period_id': ids[0]
})
如上if语句中,如果type(period_id)返回一个unicode字符,则不会执行if语句里面的代码了,最后就会出上如上错误提示窗口.将if语句if type(period_id) == str :修改为if type(period_id) == str or type(period_id) == unicode:就可以了,我的运行环境为服务器windows2003,客户端vista,postgresql 9.1,浏览器为firefox10.0.3 -
赞, 为贴子加上一些 Tags 就更好了..
推荐:<br />....<br /> if isinstance(period_id, (str,unicode)) :<br /> ids = period_obj.search(cr, uid, [('name', 'ilike', period_id)])<br /> context.update({<br /> 'period_id': ids[0]<br /> })<br />....<br />