diff --git a/account_banking/banking_import_transaction.py b/account_banking/banking_import_transaction.py index 3514ef47c..a110a3b9f 100644 --- a/account_banking/banking_import_transaction.py +++ b/account_banking/banking_import_transaction.py @@ -1213,7 +1213,7 @@ class banking_import_transaction(orm.Model): not(transaction.move_currency_amount is False)): res[transaction.id] = ( transaction.move_currency_amount - - transaction.transferred_amount + transaction.statement_line_id.amount ) return res diff --git a/account_banking/wizard/banking_transaction_wizard.py b/account_banking/wizard/banking_transaction_wizard.py index a45399181..2fac1fe3b 100644 --- a/account_banking/wizard/banking_transaction_wizard.py +++ b/account_banking/wizard/banking_transaction_wizard.py @@ -223,7 +223,7 @@ class banking_transaction_wizard(orm.TransientModel): if len(todo) > 0: statement_line_id = wiz.statement_line_id.split_off( - move_line.credit or move_line.debit)[0] + move_line.debit or -move_line.credit)[0] transaction_id = statement_line_obj.browse( cr, uid, @@ -287,7 +287,12 @@ class banking_transaction_wizard(orm.TransientModel): account_id = setting.default_debit_account_id and setting.default_debit_account_id.id statement_pool.write(cr, uid, wiz.statement_line_id.id, {'account_id':account_id}) - wiz.write({'partner_id': False}) + # Restore partner id from the bank account or else reset + partner_id = False + if (wiz.statement_line_id.partner_bank_id and + wiz.statement_line_id.partner_bank_id.partner_id): + partner_id = wiz.statement_line_id.partner_bank_id.partner_id.id + wiz.write({'partner_id': partner_id}) if wiz.statement_line_id: #delete splits causing an unsplit if this is a split