diff --git a/addons/procurement/procurement.py b/addons/procurement/procurement.py index aa37c26b48d..beedac5fe96 100644 --- a/addons/procurement/procurement.py +++ b/addons/procurement/procurement.py @@ -27,6 +27,8 @@ import openerp.addons.decimal_precision as dp from openerp.tools.translate import _ import openerp +PROCUREMENT_PRIORITIES = [('0', 'Not urgent'), ('1', 'Normal'), ('2', 'Urgent'), ('3', 'Very Urgent')] + class procurement_group(osv.osv): ''' The procurement group class is used to group products together @@ -113,7 +115,7 @@ class procurement_order(osv.osv): 'company_id': fields.many2one('res.company', 'Company', required=True), # These two fields are used for shceduling - 'priority': fields.selection([('0', 'Not urgent'), ('1', 'Normal'), ('2', 'Urgent'), ('3', 'Very Urgent')], 'Priority', required=True, select=True, track_visibility='onchange'), + 'priority': fields.selection(PROCUREMENT_PRIORITIES, 'Priority', required=True, select=True, track_visibility='onchange'), 'date_planned': fields.datetime('Scheduled Date', required=True, select=True, track_visibility='onchange'), 'group_id': fields.many2one('procurement.group', 'Procurement Group'), diff --git a/addons/stock/__openerp__.py b/addons/stock/__openerp__.py index 5e21055208c..6acc6a7bfd0 100644 --- a/addons/stock/__openerp__.py +++ b/addons/stock/__openerp__.py @@ -84,7 +84,9 @@ Dashboard / Reports for Warehouse Management will include: 'report/report_stock_view.xml', 'res_config_view.xml', 'views/report_package_barcode.xml', - 'views/report_stockpicking.xml', + 'views/report_lot_barcode.xml', + 'views/report_location_barcode.xml', + 'views/report_stockpicking.xml', 'views/report_stockinventory.xml', 'views/stock.xml', ], diff --git a/addons/stock/procurement.py b/addons/stock/procurement.py index 42a86a32db4..0a574579808 100644 --- a/addons/stock/procurement.py +++ b/addons/stock/procurement.py @@ -188,6 +188,7 @@ class procurement_order(osv.osv): 'date': newdate, 'date_expected': newdate, 'propagate': procurement.rule_id.propagate, + 'priority': procurement.priority, } return vals @@ -288,7 +289,7 @@ class procurement_order(osv.osv): self._procure_orderpoint_confirm(cr, SUPERUSER_ID, use_new_cursor=False, company_id=company.id, context=context) #Search all confirmed stock_moves and try to assign them - confirmed_ids = move_obj.search(cr, uid, [('state', '=', 'confirmed')], limit=None, order='picking_priority desc, date_expected asc', context=context) + confirmed_ids = move_obj.search(cr, uid, [('state', '=', 'confirmed')], limit=None, order='priority desc, date_expected asc', context=context) for x in xrange(0, len(confirmed_ids), 100): move_obj.action_assign(cr, uid, confirmed_ids[x:x + 100], context=context) if use_new_cursor: diff --git a/addons/stock/product.py b/addons/stock/product.py index 732ab25cd80..0cf7df5e836 100644 --- a/addons/stock/product.py +++ b/addons/stock/product.py @@ -168,9 +168,16 @@ class product_product(osv.osv): res.append(('id', 'in', ids)) return res + def _product_available_text(self, cr, uid, ids, field_names=None, arg=False, context=None): + res = {} + for product in self.browse(cr, uid, ids, context=context): + res[product.id] = str(product.qty_available) + _(" In Stock") + return res + _columns = { 'reception_count': fields.function(_stock_move_count, string="Reception", type='integer', multi='pickings'), 'delivery_count': fields.function(_stock_move_count, string="Delivery", type='integer', multi='pickings'), + 'qty_in_stock': fields.function(_product_available_text, type='char'), 'qty_available': fields.function(_product_available, multi='qty_available', type='float', digits_compute=dp.get_precision('Product Unit of Measure'), string='Quantity On Hand', diff --git a/addons/stock/product_view.xml b/addons/stock/product_view.xml index 103133d0ae0..b482f2aeab3 100644 --- a/addons/stock/product_view.xml +++ b/addons/stock/product_view.xml @@ -200,12 +200,17 @@ - +