Code review comment for lp:~vauxoo/addons-vauxoo/purchase_supplier-dev-yzk

Revision history for this message
Jose Antonio Morales Ponce(vauxoo) - - http://www.vauxoo.com (josemoralesp) wrote :

El modulo estaba creando el registro en el modelo, pero no estaba actualizando el campo seller_ids en el producto, hay 2 formas de resolver este problema:

1) Para hacer link a relaciones one2many o many2many es necesario crear una lista de tupla iniciadas con 6,0 y en en segundo debe colocarse una lista de ids, a los cuales se hara el enlace del campo, quedaria de la siguiente manera

product_obj = self.pool.get(product.product)

product_obj.write(cr,uid,[product_id],{'seller_ids':[(6,0,[record_id])]}).

Donde record_id es el id del nuevo registro creado en product.spplierinfo.

2) La segunda manera es mucho mas corta y en cierto punto sigue las misma premisa, para hacer link en las relaciones, solo que en este caso no es necesario crear el registro anteriormente, para luego ese id ser linkeado al modelo que necesitemos. Si deceamos crear un registro y a su vez crear el link a este nuevo registro se puede realizar con una lista de tuplas iniciada con 0,0 y en el segundo campo colocamos el diccionario con los datos del nuevo registro. Queda de la siguiente manera.

product_obj.write(cr,uid,[product_id],{'seller_ids':[(0,0,{'name': partner_id, 'min_qty': 1.0, 'delay': 1, 'sequence': 10, 'product_id': product_id, 'company_id': company_id, 'product_uom': line.product_id.uom_id.id })])

De esta manera realizamos las do2 cosas en una sola linea, esa fue la manera en que se realizo la correccion, ya fue realizado el push a este branch y podra ser revisado.

Saludos.

« Back to merge proposal