diff --git a/addons/mrp/mrp.py b/addons/mrp/mrp.py
index 966572f772c..0234ee1c651 100644
--- a/addons/mrp/mrp.py
+++ b/addons/mrp/mrp.py
@@ -248,6 +248,21 @@ class mrp_bom(osv.osv):
return {'value': v}
return {}
+ def onchange_multi_level_bom(self, cr, uid, ids, multi_level_bom, context={}):
+ """ Changes multi_level_bom.
+ @param multi_level_bom: Changed multi_level_bom
+ @return: Dictionary of changed values
+ """
+ bom_ids = ids and ids[0]
+ bom = self.browse(cr, uid, bom_ids)
+ line_ids = bom and map(lambda x:x.id, bom.bom_lines)
+ if multi_level_bom:
+ self.write(cr, uid, line_ids, {'multi_level_bom': multi_level_bom})
+ return {'value': {'bom_lines': line_ids}}
+ else:
+ self.write(cr, uid, line_ids, {'multi_level_bom': multi_level_bom})
+ return {'value': {}}
+
def _bom_find(self, cr, uid, product_id, product_uom, properties=[]):
""" Finds BoM for particular product and product uom.
@param product_id: Selected product.
diff --git a/addons/mrp/mrp_view.xml b/addons/mrp/mrp_view.xml
index 02841b64b03..34328e152af 100644
--- a/addons/mrp/mrp_view.xml
+++ b/addons/mrp/mrp_view.xml
@@ -254,7 +254,7 @@
-
+
diff --git a/addons/stock/stock.py b/addons/stock/stock.py
index 27930c8a3e7..65115cf646f 100644
--- a/addons/stock/stock.py
+++ b/addons/stock/stock.py
@@ -470,7 +470,8 @@ class stock_picking(osv.osv):
def create(self, cr, user, vals, context=None):
if ('name' not in vals) or (vals.get('name')=='/'):
- vals['name'] = self.pool.get('ir.sequence').get(cr, user, 'stock.picking')
+ seq_obj_name = 'stock.picking.' + vals['type']
+ vals['name'] = self.pool.get('ir.sequence').get(cr, user, seq_obj_name)
type_list = {
'out':_('Packing List'),
'in':_('Reception'),
diff --git a/addons/stock/stock_view.xml b/addons/stock/stock_view.xml
index 5cb543b748e..753f3e17433 100644
--- a/addons/stock/stock_view.xml
+++ b/addons/stock/stock_view.xml
@@ -762,6 +762,7 @@
+
@@ -942,6 +943,7 @@
+