diff --git a/addons/l10n_it_edi/models/account_invoice.py b/addons/l10n_it_edi/models/account_invoice.py index e0354498b6e..af0a5698c83 100644 --- a/addons/l10n_it_edi/models/account_invoice.py +++ b/addons/l10n_it_edi/models/account_invoice.py @@ -480,34 +480,35 @@ class AccountMove(models.Model): amount_total_import)) # Bank account. <2.4.2.13> - elements = body_tree.xpath('.//DatiPagamento/DettaglioPagamento/IBAN') - if elements: - if invoice_form.partner_id and invoice_form.partner_id.commercial_partner_id: - bank = self.env['res.partner.bank'].search([ - ('acc_number', '=', elements[0].text), - ('partner_id.id', '=', invoice_form.partner_id.commercial_partner_id.id) - ]) - else: - bank = self.env['res.partner.bank'].search([('acc_number', '=', elements[0].text)]) - if bank: - invoice_form.partner_bank_id = bank - else: - message_to_log.append("%s
%s" % ( - _("Bank account not found, useful informations from XML file:"), - self._compose_multi_info_message( - body_tree, ['.//DatiPagamento//Beneficiario', - './/DatiPagamento//IstitutoFinanziario', - './/DatiPagamento//IBAN', - './/DatiPagamento//ABI', - './/DatiPagamento//CAB', - './/DatiPagamento//BIC', - './/DatiPagamento//ModalitaPagamento']))) - else: - elements = body_tree.xpath('.//DatiPagamento/DettaglioPagamento') + if invoice_form.type not in ('out_invoice', 'in_refund'): + elements = body_tree.xpath('.//DatiPagamento/DettaglioPagamento/IBAN') if elements: - message_to_log.append("%s
%s" % ( - _("Bank account not found, useful informations from XML file:"), - self._compose_info_message(body_tree, './/DatiPagamento'))) + if invoice_form.partner_id and invoice_form.partner_id.commercial_partner_id: + bank = self.env['res.partner.bank'].search([ + ('acc_number', '=', elements[0].text), + ('partner_id.id', '=', invoice_form.partner_id.commercial_partner_id.id) + ]) + else: + bank = self.env['res.partner.bank'].search([('acc_number', '=', elements[0].text)]) + if bank: + invoice_form.partner_bank_id = bank + else: + message_to_log.append("%s
%s" % ( + _("Bank account not found, useful informations from XML file:"), + self._compose_multi_info_message( + body_tree, ['.//DatiPagamento//Beneficiario', + './/DatiPagamento//IstitutoFinanziario', + './/DatiPagamento//IBAN', + './/DatiPagamento//ABI', + './/DatiPagamento//CAB', + './/DatiPagamento//BIC', + './/DatiPagamento//ModalitaPagamento']))) + else: + elements = body_tree.xpath('.//DatiPagamento/DettaglioPagamento') + if elements: + message_to_log.append("%s
%s" % ( + _("Bank account not found, useful informations from XML file:"), + self._compose_info_message(body_tree, './/DatiPagamento'))) # Invoice lines. <2.2.1> elements = body_tree.xpath('.//DettaglioLinee')