openerp-india team mailing list archive
-
openerp-india team
-
Mailing list archive
-
Message #25158
[Bug 1197469] Re: Error in return of account_voucher function
[Expired for OpenERP Addons because there has been no activity for 60
days.]
** Changed in: openobject-addons
Status: Incomplete => Expired
--
You received this bug notification because you are a member of OpenERP
Indian Team, which is subscribed to OpenERP Addons.
https://bugs.launchpad.net/bugs/1197469
Title:
Error in return of account_voucher function
Status in OpenERP Addons (modules):
Expired
Bug description:
Move_ID True
Number d-01630223632233003511/2013/6055/1
[2013-07-03 11:42:08,999][20130701diana] ERROR:db.cursor:Programming error: operator does not exist: integer = boolean
LINE 1: ...='DP 369852',write_uid=1,write_date=now() where id IN (true)
^
HINT: No operator matches the given name and argument type(s). You might need to add explicit type casts.
, in query update account_move set "ref"=%s,write_uid=%s,write_date=now() where id IN %s
[2013-07-03 11:42:08,999][20130701diana] ERROR:web-services:Uncaught exception
Traceback (most recent call last):
File "/home/jmoreno/instancia/6.0/server/bin/osv/osv.py", line 122, in wrapper
return f(self, dbname, *args, **kwargs)
File "/home/jmoreno/instancia/6.0/server/bin/osv/osv.py", line 176, in execute
res = self.execute_cr(cr, uid, obj, method, *args, **kw)
File "/home/jmoreno/instancia/6.0/server/bin/osv/osv.py", line 167, in execute_cr
return getattr(object, method)(cr, uid, *args, **kw)
File "/home/jmoreno/instancia/6.0/modules/sisb_banking/model/account_bank_statement.py", line 121, in button_confirm_bank
uid, ids, context=context)
File "/home/jmoreno/instancia/6.0/modules/account/account_bank_statement.py", line 355, in button_confirm_bank
self.create_move_from_st_line(cr, uid, st_line.id, company_currency_id, st_line_number, context)
File "/home/jmoreno/instancia/6.0/modules/sisb_banking/model/account_bank_statement.py", line 45, in create_move_from_st_line
res = account_move_obj.write(cr, uid, mov_id, {'ref': st_line.name,}, context=context)
File "/home/jmoreno/instancia/6.0/modules/account/account.py", line 1257, in write
result = super(osv.osv, self).write(cr, uid, ids, vals, c)
File "/home/jmoreno/instancia/6.0/server/bin/osv/orm.py", line 3443, in write
'where id IN %s', upd1 + [sub_ids])
File "/home/jmoreno/instancia/6.0/server/bin/sql_db.py", line 78, in wrapper
return f(self, *args, **kwargs)
File "/home/jmoreno/instancia/6.0/server/bin/sql_db.py", line 131, in execute
res = self._obj.execute(query, params)
ProgrammingError: operator does not exist: integer = boolean
LINE 1: ...='DP 369852',write_uid=1,write_date=now() where id IN (true)
^
HINT: No operator matches the given name and argument type(s). You might need to add explicit type casts.
[2013-07-03 11:42:09,002][20130701diana] DEBUG:web-services:netrpc: rpc-dispatching exception
Traceback (most recent call last):
File "/home/jmoreno/instancia/6.0/server/bin/service/netrpc_server.py", line 70, in run
result = self.dispatch(msg[0], msg[1], msg[2:])
File "/home/jmoreno/instancia/6.0/server/bin/netsvc.py", line 499, in dispatch
raise OpenERPDispatcherException(e, tb_s)
OpenERPDispatcherException
the function to run in account_voucher this overwriting the return
value to a boolean should return an integer, as well was defined in
the original function.
Original Inherit Fuction:
def create_move_from_st_line(self, cr, uid, st_line_id, company_currency_id, next_number, context=None):
voucher_obj = self.pool.get('account.voucher')
wf_service = netsvc.LocalService("workflow")
move_line_obj = self.pool.get('account.move.line')
bank_st_line_obj = self.pool.get('account.bank.statement.line')
st_line = bank_st_line_obj.browse(cr, uid, st_line_id, context=context)
if st_line.voucher_id:
voucher_obj.write(cr, uid, [st_line.voucher_id.id],
{'number': next_number,
'date': st_line.date,
'period_id': st_line.statement_id.period_id.id},
context=context)
if st_line.voucher_id.state == 'cancel':
voucher_obj.action_cancel_draft(cr, uid, [st_line.voucher_id.id], context=context)
wf_service.trg_validate(uid, 'account.voucher', st_line.voucher_id.id, 'proforma_voucher', cr)
v = voucher_obj.browse(cr, uid, st_line.voucher_id.id, context=context)
bank_st_line_obj.write(cr, uid, [st_line_id], {
'move_ids': [(4, v.move_id.id, False)]
})
return move_line_obj.write(cr, uid, [x.id for x in v.move_ids], {'statement_id': st_line.statement_id.id}, context=context)
return super(account_bank_statement, self).create_move_from_st_line(cr, uid, st_line.id, company_currency_id, next_number, context=context)
Proposal for the correction function:
def create_move_from_st_line(self, cr, uid, st_line_id, company_currency_id, next_number, context=None):
voucher_obj = self.pool.get('account.voucher')
wf_service = netsvc.LocalService("workflow")
move_line_obj = self.pool.get('account.move.line')
bank_st_line_obj = self.pool.get('account.bank.statement.line')
st_line = bank_st_line_obj.browse(cr, uid, st_line_id, context=context)
if st_line.voucher_id:
voucher_obj.write(cr, uid, [st_line.voucher_id.id],
{'number': next_number,
'date': st_line.date,
'period_id': st_line.statement_id.period_id.id},
context=context)
if st_line.voucher_id.state == 'cancel':
voucher_obj.action_cancel_draft(cr, uid, [st_line.voucher_id.id], context=context)
wf_service.trg_validate(uid, 'account.voucher', st_line.voucher_id.id, 'proforma_voucher', cr)
v = voucher_obj.browse(cr, uid, st_line.voucher_id.id, context=context)
bank_st_line_obj.write(cr, uid, [st_line_id], {
'move_ids': [(4, v.move_id.id, False)]
})
move_line_obj.write(cr, uid, [x.id for x in v.move_ids], {'statement_id': st_line.statement_id.id}, context=context)
return super(account_bank_statement, self).create_move_from_st_line(cr, uid, st_line.id, company_currency_id, next_number, context=context)
To manage notifications about this bug go to:
https://bugs.launchpad.net/openobject-addons/+bug/1197469/+subscriptions