diff --git a/wizards/__pycache__/bank_reconcile_wizard.cpython-312.pyc b/wizards/__pycache__/bank_reconcile_wizard.cpython-312.pyc index a87a9ca..53ee78d 100644 Binary files a/wizards/__pycache__/bank_reconcile_wizard.cpython-312.pyc and b/wizards/__pycache__/bank_reconcile_wizard.cpython-312.pyc differ diff --git a/wizards/bank_reconcile_wizard.py b/wizards/bank_reconcile_wizard.py index 8a18d6c..7a7a030 100644 --- a/wizards/bank_reconcile_wizard.py +++ b/wizards/bank_reconcile_wizard.py @@ -40,6 +40,11 @@ class BankReconcileWizard(models.TransientModel): if not self.journal_entry_line_id: raise UserError("Please select a journal entry line to reconcile.") + # Check if any of the selected bank lines are already reconciled + for bank_line in self.bank_line_ids: + if bank_line.move_id and 'Reconciliation:' in bank_line.move_id.ref: + raise UserError(f"Bank statement line '{bank_line.ref}' has already been reconciled and cannot be reconciled again.") + # Process each selected bank line individually for bank_line in self.bank_line_ids: self._reconcile_single_line(bank_line, self.journal_entry_line_id)