[6.x+trunk] context passing in product_id_change on sale.order

Bug #1010032 reported by Niels Huylebroeck
4
Affects Status Importance Assigned to Milestone
Odoo Addons (MOVED TO GITHUB)
In Progress
Low
OpenERP R&D Addons Team 2
6.0
New
Undecided
Unassigned
6.1
Fix Committed
Undecided
Unassigned

Bug Description

http://bazaar.launchpad.net/~openerp/openobject-addons/6.1/view/head:/sale/sale.py#L1203

For custom code this makes it very hard and impractical to extend functions and use context to do this.

Personally I'm involved in some code that changes how uom conversions are done depending on the product, I was passing 'product_id' in the context but the method product_id_change throws out the entire context to replace it with something containing only 'lang' and 'partner_id' ignoring any other context key/value pairs that could've been in context.

Also note how many methods are called without passing context along:

http://bazaar.launchpad.net/~openerp/openobject-addons/6.1/view/head:/sale/sale.py#L1219
http://bazaar.launchpad.net/~openerp/openobject-addons/6.1/view/head:/sale/sale.py#L1224
http://bazaar.launchpad.net/~openerp/openobject-addons/6.1/view/head:/sale/sale.py#L1234
http://bazaar.launchpad.net/~openerp/openobject-addons/6.1/view/head:/sale/sale.py#L1262

This one is even better, it calls the pricelist with a custom context which is nothing related with the original context.
http://bazaar.launchpad.net/~openerp/openobject-addons/6.1/view/head:/sale/sale.py#L1288

I can't see how much trouble adding context to these calls would create?
But I can tell you it would make for excellent extensibility if you would pass the context around consistently.

Related branches

Revision history for this message
Amit Parik (amit-parik) wrote :

Hello Niels,

First look your branch looks fine, as well as I agreed that this all places context problem will occurs at the time of custom code.

You are providing a branch for 6.1, that's better if you will provide a branch for trunk. Curretly I am setting this as a "Fix Committed" our core team will review of your branch.

Thank you!

Changed in openobject-addons:
assignee: nobody → OpenERP R&D Addons Team 2 (openerp-dev-addons2)
importance: Undecided → Low
status: New → Fix Committed
Revision history for this message
Niels Huylebroeck (red15) wrote :

I'm not sure if providing this for trunk is still relevant ? Won't 7.0 replace all the onchange functions anyway ?

security vulnerability: no → yes
security vulnerability: yes → no
Changed in openobject-addons:
status: Fix Committed → In Progress
Revision history for this message
Niels Huylebroeck (red15) wrote :

Partial fix was included while fixing another bug that we reported, linked it to this bug report.

Revision history for this message
Niels Huylebroeck (red15) wrote :

Marked 6.1 branch as fixed, still no progress on 6.0 branch

To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.