Nehal Panchal (Open ERP) has proposed merging
lp:~openerp-dev/openobject-addons/6.0-opw-6000-nep into
lp:openobject-addons/6.0.
Requested reviews:
Anup(OpenERP) (ach-openerp)
For more details, see:
https://code.launchpad.net/~openerp-dev/openobject-addons/6.0-opw-6000-nep/+merge/63110
Hello,
The price calculation based on the Unit Of Sale is corrected.
Thanks.
--
https://code.launchpad.net/~openerp-dev/openobject-addons/6.0-opw-6000-nep/+merge/63110
Your team OpenERP R&D Team is subscribed to branch
lp:~openerp-dev/openobject-addons/6.0-opw-6000-nep.
=== modified file 'sale/sale.py'
--- sale/sale.py 2011-05-17 11:44:45 +0000
+++ sale/sale.py 2011-06-01 12:41:14 +0000
@@ -821,7 +821,7 @@
context = {}
for line in self.browse(cr, uid, ids, context=context):
price = line.price_unit * (1 - (line.discount or 0.0) / 100.0)
- taxes = tax_obj.compute_all(cr, uid, line.tax_id, price, line.product_uom_qty, line.order_id.partner_invoice_id.id, line.product_id, line.order_id.partner_id)
+ taxes = tax_obj.compute_all(cr, uid, line.tax_id, price, line.product_uos_qty or line.product_uom_qty, line.order_id.partner_invoice_id.id, line.product_id, line.order_id.partner_id)
cur = line.order_id.pricelist_id.currency_id
res[line.id] = cur_obj.round(cr, uid, cur, taxes['total'])
return res
@@ -886,6 +886,26 @@
'price_unit': 0.0,
}
+ def uos_change(self, cr, uid, ids, product_uos, product_uos_qty=0, product_id=None):
+ product_obj = self.pool.get('product.product')
+ if not product_id:
+ return {'value': {'product_uom': product_uos,
+ 'product_uom_qty': product_uos_qty}, 'domain': {}}
+
+ product = product_obj.browse(cr, uid, product_id)
+ value = {
+ 'product_uom': product.uom_id.id,
+ }
+ # FIXME must depend on uos/uom of the product and not only of the coeff.
+ try:
+ value.update({
+ 'product_uom_qty': product_uos_qty / product.uos_coeff,
+ 'th_weight': product_uos_qty / product.uos_coeff * product.weight
+ })
+ except ZeroDivisionError:
+ pass
+ return {'value': value}
+
def invoice_line_create(self, cr, uid, ids, context=None):
if context is None:
context = {}
=== modified file 'sale/sale_view.xml'
--- sale/sale_view.xml 2011-05-20 09:49:07 +0000
+++ sale/sale_view.xml 2011-06-01 12:41:14 +0000
@@ -135,7 +135,7 @@
name="product_uom_qty"
on_change="product_id_change(parent.pricelist_id,product_id,product_uom_qty,product_uom,product_uos_qty,product_uos,name,parent.partner_id, 'lang' in context and context['lang'], False, parent.date_order, product_packaging, parent.fiscal_position, True)"
/>
- <field groups="product.group_uos" name="product_uos_qty"/>
+ <field groups="product.group_uos" name="product_uos_qty" on_change="uos_change(product_uos, product_uos_qty, product_id)"/>
<field groups="product.group_uos" name="product_uos"/>
<field name="product_uom"
on_change="product_uom_change(parent.pricelist_id,product_id,product_uom_qty,product_uom,product_uos_qty,product_uos,name,parent.partner_id, 'lang' in context and context['lang'], False, parent.date_order)"/>
_______________________________________________
Mailing list: https://launchpad.net/~openerp-dev-gtk
Post to : [email protected]
Unsubscribe : https://launchpad.net/~openerp-dev-gtk
More help : https://help.launchpad.net/ListHelp