Move features of account_invoice_overdue_filter in account_usability

Disable reconcile guessing in account_usability
This commit is contained in:
Alexis de Lattre
2015-08-09 18:43:46 +02:00
parent 215cb70cea
commit 44b3e74398
4 changed files with 49 additions and 0 deletions

View File

@@ -33,6 +33,8 @@ Account Invoice Overdue Filter
This module adds a filter *Overdue* in the invoice search view.
This module is deprecated and has been replaced by the module account_usability.
Please contact Alexis de Lattre from Akretion <alexis.delattre@akretion.com> for any help or question about this module.
""",
'author': 'Akretion',

View File

@@ -32,14 +32,23 @@ Account Usability
=================
The usability enhancements include:
* show the supplier invoice number in the tree view of supplier invoices
* add an *Overdue* filter on invoice search view (this feature was previously located in te module *account_invoice_overdue_filter*)
* Increase the default limit of 80 lines in account move and account move line view.
* Fast search on *Reconcile Ref* for account move line.
* disable reconciliation "guessing"
Together with this module, I recommend the use of the following modules:
* account_invoice_supplier_ref_unique (OCA project account-invoicing)
* account_move_line_no_default_search (OCA project account-financial-tools)
* invoice_fiscal_position_update (OCA project account-invoicing)
This module has been written by Alexis de Lattre from Akretion <alexis.delattre@akretion.com>.
""",
'author': 'Akretion',
'website': 'http://www.akretion.com',
'depends': ['account'],
'conflicts': ['account_invoice_overdue_filter'],
'data': ['account_view.xml'],
'installable': True,
}

View File

@@ -53,3 +53,29 @@ class AccountMoveLine(models.Model):
def _debit_onchange(self):
if self.debit and self.credit:
self.credit = 0
class AccountBankStatementLine(models.Model):
_inherit = 'account.bank.statement.line'
# Disable guessing for reconciliation
# because my experience with several customers shows that it is a problem
# in the following scenario : move line 'x' has been "guessed" by OpenERP
# to be reconciled with a statement line 'Y' at the end of the bank statement,
# but it is a mistake because it should be reconciled with statement line 'B'
# at the beginning of the bank statement
# When the user is on statement line 'B', he tries to select
# move line 'x', but it can't find it... because it is already "reserved"
# by the guess of OpenERP for statement line 'Y' ! To solve this problem, the
# user must go to statement line 'Y' and unselect move line 'x' and then come
# back on statement line 'B' and select move line 'A'... but non super-expert
# users can't do that because it is impossible to figure out that the fact that
# the user can't find move line 'x' is caused by this.
# Set search_reconciliation_proposition to False by default
def get_data_for_reconciliations(
self, cr, uid, ids, excluded_ids=None,
search_reconciliation_proposition=False, context=None):
return super(AccountBankStatementLine ,self).get_data_for_reconciliations(
cr, uid, ids, excluded_ids=excluded_ids,
search_reconciliation_proposition=search_reconciliation_proposition,
context=context)

View File

@@ -43,6 +43,18 @@
</field>
</record>
<record id="view_account_invoice_filter" model="ir.ui.view">
<field name="name">account_usability.invoice.search</field>
<field name="model">account.invoice</field>
<field name="inherit_id" ref="account.view_account_invoice_filter"/>
<field name="arch" type="xml">
<filter name="unpaid" position="after">
<filter name="overdue" string="Overdue"
domain="[('state', '=', 'open'), ('date_due', '&lt;', current_date)]"/>
</filter>
</field>
</record>
<!-- model account.move.line / Journal Items -->
<record id="account.action_account_moves_all_a" model="ir.actions.act_window">
<field name="limit">500</field>