diff --git a/addons/purchase/stock.py b/addons/purchase/stock.py index ccd7c56a190..bae6d1c53d0 100644 --- a/addons/purchase/stock.py +++ b/addons/purchase/stock.py @@ -146,6 +146,16 @@ class stock_partial_picking(osv.osv_memory): return {'cost': cost, 'currency': company_currency} return super(stock_partial_picking, self)._product_cost_for_average_update(cr, uid, move) + def _partial_move_for(self, cr, uid, move, context=None): + partial_move = super(stock_partial_picking, self)._partial_move_for(cr, uid, move, context=context) + if move.picking_id.purchase_id and move.purchase_line_id: + pur_currency = move.purchase_line_id.order_id.currency_id.id + partial_move.update({ + 'currency': pur_currency, + 'cost': move.purchase_line_id.price_unit + }) + return partial_move + def __get_help_text(self, cursor, user, picking_id, context=None): picking = self.pool.get('stock.picking').browse(cursor, user, picking_id, context=context) if picking.purchase_id: diff --git a/addons/web/static/src/js/search.js b/addons/web/static/src/js/search.js index 9f11fdf7412..6e2f3f8397f 100644 --- a/addons/web/static/src/js/search.js +++ b/addons/web/static/src/js/search.js @@ -1521,10 +1521,18 @@ instance.web.search.DateField = instance.web.search.Field.extend(/** @lends inst return instance.web.date_to_str(facetValue.get('value')); }, complete: function (needle) { + var d; try { - var d = instance.web.str_to_date(instance.web.parse_value(needle, {'widget': 'date'})); + var t = (this.attrs && this.attrs.type === 'datetime') ? 'datetime' : 'date'; + var v = instance.web.parse_value(needle, {'widget': t}); + if (t === 'datetime'){ + d = instance.web.str_to_datetime(v); + } + else{ + d = instance.web.str_to_date(v); + } } catch (e) { - return false; + // pass } if (!d) { return $.when(null); } var date_string = instance.web.format_value(d, this.attrs);