← Back to team overview

c2c-oerpscenario team mailing list archive

[Bug 740202] Re: passing int to write method of stock.move gives "Field '0' does not exist in object 'browse_record(stock.move, ..."

 

Hello Lorenzo and Davide,

What I want say is always pass list, Our argument explain its self that this is not a single value. 'ids' always fill with list not any other value.
There are so many places where we are defining write method and It is not necessary that we need to include the list and single value fixes condition.

I am not consider this as a bug, This is programmer mistake so It should
be improve in calling side code not in main code.

Thanks.

** Changed in: openobject-addons
       Status: New => Invalid

-- 
You received this bug notification because you are a member of C2C
OERPScenario, which is subscribed to the OpenERP Project Group.
https://bugs.launchpad.net/bugs/740202

Title:
  passing int to write method of stock.move gives "Field '0' does not
  exist in object 'browse_record(stock.move,..."

Status in OpenERP Modules (addons):
  Invalid

Bug description:
  - Call the write method of stock.move passing ids as INT (instead of LIST) with user != admin
  - Get
    File "server/bin/addons/stock/stock.py", line 1616, in write
      for move in self.browse(cr, uid, ids, context=context):
    File "server/bin/osv/orm.py", line 189, in __getitem__
      name, self))
  KeyError: "Field '0' does not exist in object 'browse_record(stock.move, 422)'"

  Suggested FIX:
  After line 1614 ( http://bazaar.launchpad.net/~openerp/openobject-addons/trunk/view/4567/stock/stock.py#L1611 ) add

              if isinstance(ids, (int, long)):
                  ids = [ids]



References