That can be done certainly. Now speaking about "1 line patch", at the time that regression was made by OpenERP SA, there was a 250 lines patch that was able to fix that instead of the 2500 lines patch applied by OpenERP SA. It's in the RS-OCB branches where this problem doesn't occur (still including OpenERP SA 2500 lines patch for easier compatibility). And that one was exactly anticipated in the outrageous slides some claimed I was retracting from: you can read point #4 at slide 7 of http://www.slideshare.net/RaphalValyi/open-erp-v7-contacts-issue
But now that the mess is done, yes, why not add a one line patch to the 2500 lines crappy patch. Other similar will follow for years... Cheers On Wed, Oct 30, 2013 at 3:32 PM, Olivier Dony (OpenERP) < [email protected]> wrote: > Hi Alexis, > > Thanks for reporting. The configuration you describe is a bit unusual > because there is little reason to mark a contact as a supplier in most > cases. Nevertheless if users do it, then perhaps they actually meant to > have that contact always appear as the supplier for a given product. And > in that case, they should probably be able to select that supplier on > the product form, so the system will automatically select it when a > draft PO is created for a procurement. > > Based on the above, the fix I would suggest is to correct the supplier > matching in purchase.order.line.onchange_product_id() so that it will > allow matching any supplier that belongs to the same "commercial entity" > (comparing `.commercial_partner_id.id` of both partners, instead of > `id`) . This should be a one-line patch and would give maximum > flexibility to the users. The first match would be found in the order in > which they defined the suppliers. What do you think? > > ** Changed in: openobject-addons > Importance: Undecided => Low > > ** Changed in: openobject-addons > Status: New => Confirmed > > ** Changed in: openobject-addons > Milestone: None => 7.0 > > ** Changed in: openobject-addons > Assignee: (unassigned) => OpenERP R&D Addons Team 2 > (openerp-dev-addons2) > > -- > You received this bug notification because you are subscribed to OpenERP > Addons. > https://bugs.launchpad.net/bugs/1246116 > > Title: > issue with supplier reference and price in purchase order > > Status in OpenERP Addons (modules): > Confirmed > > Bug description: > Here is the scenario to reproduce the problem on an up-to-date OpenERP > v7.0 : > 1. create a new DB with demo data > 2. install the "purchase" module > 3. Add yourself to the "Purchase pricelist" group > 4. Edit the contact "Phillipp Miller" from "Mediapole" and set > "supplier" = True > 5. Edit the "default purchase pricelist" and, in the first rule, set > "Based on" = "Supplier prices on the product form" > 6. Edit the product "USB Adapter" : in the procurement tab, open the > supplier info with supplier "Mediapole" and set : > - Supplier Product Name : Super USB3 Adapter > - Supplier Product Name SUSB3 > - add a price rule : Quantity = 1, Price = 42.0 > 7. Create a new purchase order with partner = Philipp Miller (from > Mediapole). Add a product line and choose product "USB Adapter" : > - the description is set to "[ADPT] USB Adapter" -> that's a bug, the > description should be "[SUSB3] Super USB3 Adapter" > - the price is set to 0.0 -> that's a bug, the price should be 42.0. > > Cause of the bug : > if you look at the code of purchase/purchase.py line 949, in the > function onchange_product_id(), and the code of product/product.py line 624 > in the function name_get(), you see that OpenERP looks for an exact match > between partner_id of the purchase order and the 'name' field (M2O on > res.partner) of product.supplierinfo. This is bad because our beloved > OpenERP users may select a contact instead of a company in either a > purchase order or a product.supplierinfo (nothing prevents them from doing > so). The problem is the same for the supplier price. > > I propose the following solution to fix the problem : > - in product.supplierinfo, you can only select a partner with > "is_company" = True > - in the function onchange_product_id of the purchase.order.line, it > should jump to the parent of the partner_id if it exists before querying > the price and the description. > I have implemented the solution in a small module "purchase_fix_partner" > that you can find in the branch lp:~akretion-team/+junk/addons-no-fluff-70 ( > https://code.launchpad.net/~akretion-team/+junk/addons-no-fluff-70) > > To manage notifications about this bug go to: > https://bugs.launchpad.net/openobject-addons/+bug/1246116/+subscriptions > -- 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/1246116 Title: issue with supplier reference and price in purchase order Status in OpenERP Addons (modules): Confirmed Bug description: Here is the scenario to reproduce the problem on an up-to-date OpenERP v7.0 : 1. create a new DB with demo data 2. install the "purchase" module 3. Add yourself to the "Purchase pricelist" group 4. Edit the contact "Phillipp Miller" from "Mediapole" and set "supplier" = True 5. Edit the "default purchase pricelist" and, in the first rule, set "Based on" = "Supplier prices on the product form" 6. Edit the product "USB Adapter" : in the procurement tab, open the supplier info with supplier "Mediapole" and set : - Supplier Product Name : Super USB3 Adapter - Supplier Product Name SUSB3 - add a price rule : Quantity = 1, Price = 42.0 7. Create a new purchase order with partner = Philipp Miller (from Mediapole). Add a product line and choose product "USB Adapter" : - the description is set to "[ADPT] USB Adapter" -> that's a bug, the description should be "[SUSB3] Super USB3 Adapter" - the price is set to 0.0 -> that's a bug, the price should be 42.0. Cause of the bug : if you look at the code of purchase/purchase.py line 949, in the function onchange_product_id(), and the code of product/product.py line 624 in the function name_get(), you see that OpenERP looks for an exact match between partner_id of the purchase order and the 'name' field (M2O on res.partner) of product.supplierinfo. This is bad because our beloved OpenERP users may select a contact instead of a company in either a purchase order or a product.supplierinfo (nothing prevents them from doing so). The problem is the same for the supplier price. I propose the following solution to fix the problem : - in product.supplierinfo, you can only select a partner with "is_company" = True - in the function onchange_product_id of the purchase.order.line, it should jump to the parent of the partner_id if it exists before querying the price and the description. I have implemented the solution in a small module "purchase_fix_partner" that you can find in the branch lp:~akretion-team/+junk/addons-no-fluff-70 (https://code.launchpad.net/~akretion-team/+junk/addons-no-fluff-70) To manage notifications about this bug go to: https://bugs.launchpad.net/openobject-addons/+bug/1246116/+subscriptions _______________________________________________ Mailing list: https://launchpad.net/~openerp-india Post to : [email protected] Unsubscribe : https://launchpad.net/~openerp-india More help : https://help.launchpad.net/ListHelp

