diff --git a/addons/account/account_invoice_view.xml b/addons/account/account_invoice_view.xml
index 84cfc3e5ab0..ba4cc199fbf 100644
--- a/addons/account/account_invoice_view.xml
+++ b/addons/account/account_invoice_view.xml
@@ -254,7 +254,7 @@
-
+
diff --git a/addons/account/account_move_line.py b/addons/account/account_move_line.py
index aea184c7d2c..9d8d849c5b9 100644
--- a/addons/account/account_move_line.py
+++ b/addons/account/account_move_line.py
@@ -740,7 +740,11 @@ class account_move_line(osv.osv):
args.append(('partner_id', '=', partner[0]))
return super(account_move_line, self).search(cr, uid, args, offset, limit, order, context, count)
- def list_partners_to_reconcile(self, cr, uid, context=None):
+ def list_partners_to_reconcile(self, cr, uid, context=None, filter_domain=False):
+ line_ids = []
+ if filter_domain:
+ line_ids = self.search(cr, uid, filter_domain, context=context)
+ where_clause = filter_domain and "AND l.id = ANY(%s)" or ""
cr.execute(
"""SELECT partner_id FROM (
SELECT l.partner_id, p.last_reconciliation_date, SUM(l.debit) AS debit, SUM(l.credit) AS credit, MAX(l.create_date) AS max_date
@@ -750,10 +754,12 @@ class account_move_line(osv.osv):
WHERE a.reconcile IS TRUE
AND l.reconcile_id IS NULL
AND l.state <> 'draft'
+ %s
GROUP BY l.partner_id, p.last_reconciliation_date
) AS s
WHERE debit > 0 AND credit > 0 AND (last_reconciliation_date IS NULL OR max_date > last_reconciliation_date)
- ORDER BY last_reconciliation_date""")
+ ORDER BY last_reconciliation_date"""
+ % where_clause, (line_ids,))
ids = [x[0] for x in cr.fetchall()]
if not ids:
return []
diff --git a/addons/account/static/src/js/account_move_reconciliation.js b/addons/account/static/src/js/account_move_reconciliation.js
index cbc0abc4f4d..1629a16f5b3 100644
--- a/addons/account/static/src/js/account_move_reconciliation.js
+++ b/addons/account/static/src/js/account_move_reconciliation.js
@@ -49,7 +49,7 @@ openerp.account = function (instance) {
this.last_group_by = group_by;
this.old_search = _.bind(this._super, this);
var mod = new instance.web.Model("account.move.line", context, domain);
- return mod.call("list_partners_to_reconcile", []).then(function(result) {
+ return mod.call("list_partners_to_reconcile", [context, domain]).then(function(result) {
var current = self.current_partner !== null ? self.partners[self.current_partner][0] : null;
self.partners = result;
var index = _.find(_.range(self.partners.length), function(el) {
diff --git a/addons/mrp_repair/mrp_repair_view.xml b/addons/mrp_repair/mrp_repair_view.xml
index 4762076df5b..9cc6858e2ec 100644
--- a/addons/mrp_repair/mrp_repair_view.xml
+++ b/addons/mrp_repair/mrp_repair_view.xml
@@ -164,6 +164,7 @@
+
diff --git a/addons/stock/stock.py b/addons/stock/stock.py
index 96f1e4de84c..e88e11ec012 100644
--- a/addons/stock/stock.py
+++ b/addons/stock/stock.py
@@ -2051,17 +2051,20 @@ class stock_move(osv.osv):
for todo in moves_by_type.values():
ptype = todo[0][1][5] and todo[0][1][5] or location_obj.picking_type_get(cr, uid, todo[0][0].location_dest_id, todo[0][1][0])
if picking:
+ # Need to check name of old picking because it always considers picking as "OUT" when created from Sales Order
+ old_ptype = location_obj.picking_type_get(cr, uid, picking.move_lines[0].location_id, picking.move_lines[0].location_dest_id)
+ if old_ptype != picking.type:
+ if old_ptype == 'internal':
+ old_pick_name = seq_obj.get(cr, uid, 'stock.picking')
+ else:
+ old_pick_name = seq_obj.get(cr, uid, 'stock.picking.' + old_ptype)
+ self.pool.get('stock.picking').write(cr, uid, [picking.id], {'name': old_pick_name, 'type': old_ptype}, context=context)
# name of new picking according to its type
if ptype == 'internal':
new_pick_name = seq_obj.get(cr, uid,'stock.picking')
else :
new_pick_name = seq_obj.get(cr, uid, 'stock.picking.' + ptype)
pickid = self._create_chained_picking(cr, uid, new_pick_name, picking, ptype, todo, context=context)
- # Need to check name of old picking because it always considers picking as "OUT" when created from Sales Order
- old_ptype = location_obj.picking_type_get(cr, uid, picking.move_lines[0].location_id, picking.move_lines[0].location_dest_id)
- if old_ptype != picking.type:
- old_pick_name = seq_obj.get(cr, uid, 'stock.picking.' + old_ptype)
- self.pool.get('stock.picking').write(cr, uid, [picking.id], {'name': old_pick_name, 'type': old_ptype}, context=context)
else:
pickid = False
for move, (loc, dummy, delay, dummy, company_id, ptype, invoice_state) in todo:
diff --git a/addons/web/static/src/js/formats.js b/addons/web/static/src/js/formats.js
index 7831d2ba868..d2d824782a8 100644
--- a/addons/web/static/src/js/formats.js
+++ b/addons/web/static/src/js/formats.js
@@ -238,10 +238,6 @@ instance.web.parse_value = function (value, descriptor, value_if_empty) {
throw new Error(_.str.sprintf(_t("'%s' is not a correct integer"), value));
return tmp;
case 'float':
- tmp = Number(value);
- if (!isNaN(tmp))
- return tmp;
-
var tmp2 = value;
do {
tmp = tmp2;