Configuration:
- Company Currency: MXN
- Tax 16%.
- Multicurrency, MXN and USD.
- Decimal precision: 4
- Currency Data:
MXN: rate 1.0
USD rates

| Database time | rate | Local time (Mexico) | 
| --- | --- | --- |
| 2016-09-09 00:00:01 | 0.054440 | 2016-09-08 17:00:01 |
| 2016-10-11 00:00:01 | 0.051815 | 2016-10-10 17:00:01 |

Steps to reproduce:

1. Create an invoice for 600 USD  + tax (16%) with date 09/09/16 (September 9, 2016) and when you validate in the journal entry is $12,784.7172 MXN.
3. Create a bank statement in MXN and add a line with date 11/10/16 (October 11, 2016) and amount $13,372.80 MXN.
4. When reconcile select the invoice and there is a difference ($588.0828 MXN) add a line with the difference and select an account for the difference. 
<img width="607" alt="captura de pantalla 2016-11-04 a la s 17 23 26" src="https://cloud.githubusercontent.com/assets/6758279/20025385/749605a2-a2b3-11e6-8b1a-4e9fbf1521ed.png">

**Note that the amount of difference is $588.08 in when you select the account**

5. Click on reconcile.

Expected behavior:
- Reconcile the invoice and create account move.

Current behavior:
- Raise an error  `Wrong credit or debit value in accounting entry !`

![captura de pantalla 2016-11-01 a la s 19 18 52](https://cloud.githubusercontent.com/assets/6758279/19913537/1c272866-a069-11e6-9b06-5851681c7fa5.png)

where_clause = ""
        where_clause_params = []
        tables = ''
        if domain:
            query = self._where_calc(domain)
            tables, where_clause, where_clause_params = query.get_sql()
        return tables, where_clause, where_clause_params
    @api.multi
    def open_reconcile_view(self):
        model, action_id = self.pool['ir.model.data'].get_object_reference(self._cr, self._uid, 'account', "action_account_moves_all_a")
        action = self.pool[model].read(self._cr, self._uid, action_id, context=self._context)
        ids = []
        for aml in self:
            if aml.account_id.reconcile:
                ids.extend([r.debit_move_id.id for r in aml.matched_debit_ids] if aml.credit > 0 else [r.credit_move_id.id for r in aml.matched_credit_ids])
                ids.append(aml.id)
        action['domain'] = [('id', 'in', ids)]
        return action
class AccountPartialReconcile(models.Model):
    _name = "account.partial.reconcile"
    _description = "Partial Reconcile"
    debit_move_id = fields.Many2one('account.move.line', index=True, required=True)
    credit_move_id = fields.Many2one('account.move.line', index=True, required=True)
    amount = fields.Monetary(currency_field='company_currency_id', help="Amount concerned by this matching. Assumed to be always positive")
    amount_currency = fields.Monetary(string="Amount in Currency")
    currency_id = fields.Many2one('res.currency', string='Currency')
    company_currency_id = fields.Many2one('res.currency', related='company_id.currency_id', readonly=True,
        help='Utility field to express amount currency')
    company_id = fields.Many2one('res.company', related='debit_move_id.company_id', store=True, string='Currency')
    def create_exchange_rate_entry(self, aml_to_fix, amount_diff, diff_in_currency, currency, move_date):