Remove inherit of sale.advance.payment.inv: no need to inherit
_prepare_invoice_values() because it calls _prepare_invoice() from the
sale.order object
Steps to reproduce the problem:
- Set a payment mode with fixed journal and set the journal with bank account A.
- Create a sales order and put bank account B.
- Create invoice.
- Bank account in invoice is A instead of B.
Into the normal process of the invoice creation from a sale order by odoo, the onchange_partner is called. In some case, this call will reset the specific payment_mode and/or partner_bank_id set on the sale_order.
To fix this issue, we must override the _finalize_invoices method, take a snapshot of these values before the call to super and restore these values if these are changed.
fixes#536
* Migration and enhancement of all modules involved in SEPA
* Remove duplicated files
* Check if payment mode is set in the propagation
* Clean files
* account_payment_sale_stock: Split for removing stock dependency on sale
* Remove old translations templates
* Reorder on folder structure
* Translation template files
* Translations to spanish
* Use sale_ok and purchase_ok instead of tweaking payment type
* Add sale_ok and purchase_ok filters in partner/sale/purchase form views
* Use widget=selection for payment_mode_id fields
* Update demo data
- account_payment_partner
- account_payment_sale
- account_payment_sale_stock
- account_payment_purchase
Filter the selection of invoices per payment type.
Add active field on payment.mode and payment.mode.type.
Add menu entry for Payment Types.
Without this fix, the partner_bank_id was being reset to False on change of 'company_id'
in the _onchange_purchase_auto_complete method in account.move in the following unit test:
def test_from_purchase_order_invoicing_bank
That's because in commit 9be9766535 we switched to
getting payment method from env.ref('account.account_payment_method_manual_out'), which has
bank_account_required == False by default, while before that we were creating payment method for
which we were explicitly setting bank_account_required as True
Also tag unit test as post_install