diff options
| author | Antony Lesuisse <al@openerp.com> | 2015-01-28 01:57:53 +0100 |
|---|---|---|
| committer | Antony Lesuisse <al@openerp.com> | 2015-01-28 01:57:53 +0100 |
| commit | a8edd217a0bfa01dd6ac76ce1cae012702f2d32e (patch) | |
| tree | 67aa43e749d751edbbdcb8444f5a83f4295c8f38 | |
| parent | a35e9858dcd96dc57d0558c4c3c0c16369f5dbc2 (diff) | |
[FIX] sale: product sold stat button
| -rw-r--r-- | addons/sale/sale.py | 14 |
1 files changed, 8 insertions, 6 deletions
diff --git a/addons/sale/sale.py b/addons/sale/sale.py index d1736a22cf0..4919e502aa5 100644 --- a/addons/sale/sale.py +++ b/addons/sale/sale.py @@ -1261,15 +1261,17 @@ class product_product(osv.Model): _inherit = 'product.product' def _sales_count(self, cr, uid, ids, field_name, arg, context=None): - SaleOrderLine = self.pool['sale.order.line'] - return { - product_id: SaleOrderLine.search_count(cr,uid, [('product_id', '=', product_id)], context=context) - for product_id in ids - } + domain = [ + ('state', 'in', ['waiting_date','progress','manual', 'shipping_except', 'invoice_except', 'done']), + ('product_id', 'in', ids), + ] + r = {} + for group in self.pool['sale.report'].read_group(cr, uid, domain, ['product_id','product_uom_qty'], ['product_id'], context=context): + r[group['product_id'][0]] = group['product_uom_qty'] + return r _columns = { 'sales_count': fields.function(_sales_count, string='# Sales', type='integer'), - } class product_template(osv.Model): |
