diff options
| author | wan <wan@odoo.com> | 2019-08-29 15:03:08 +0000 |
|---|---|---|
| committer | wan <wan@odoo.com> | 2019-09-03 12:12:20 +0000 |
| commit | ac1876762c287eb4dac041768718b9cb775a60c7 (patch) | |
| tree | 5a37a4f9982eba7b8536a03cae0e58092cb76c92 /addons/l10n_generic_coa | |
| parent | 3c5c7b4d81056a5dde788d4dd5a0008c77596918 (diff) | |
[IMP] account: allow to reconcile taking amount from the label of the statement line
Task 2039772
Add a new amount matching mode by taking the amount from the label, based on a regex. The regex must contain a capture group. If multiple groups are matched, there will be an error.
Also add a 'remaining' option for the second line, that puts the remaining amount of the statement in the second line.
closes odoo/odoo#35143
Signed-off-by: Quentin De Paoli (qdp) <qdp@openerp.com>
Diffstat (limited to 'addons/l10n_generic_coa')
| -rw-r--r-- | addons/l10n_generic_coa/__manifest__.py | 5 | ||||
| -rw-r--r-- | addons/l10n_generic_coa/demo/account_bank_statement_demo.xml (renamed from addons/l10n_generic_coa/data/account_bank_statement_demo.xml) | 13 | ||||
| -rw-r--r-- | addons/l10n_generic_coa/demo/account_invoice_demo.xml (renamed from addons/l10n_generic_coa/data/account_invoice_demo.xml) | 0 | ||||
| -rw-r--r-- | addons/l10n_generic_coa/demo/account_reconcile_model.xml | 25 |
4 files changed, 41 insertions, 2 deletions
diff --git a/addons/l10n_generic_coa/__manifest__.py b/addons/l10n_generic_coa/__manifest__.py index aea7f2e1302..a2f8237d375 100644 --- a/addons/l10n_generic_coa/__manifest__.py +++ b/addons/l10n_generic_coa/__manifest__.py @@ -23,8 +23,9 @@ Install some generic chart of accounts. 'data/account_chart_template_data.xml', ], 'demo': [ - 'data/account_bank_statement_demo.xml', - 'data/account_invoice_demo.xml', + 'demo/account_bank_statement_demo.xml', + 'demo/account_invoice_demo.xml', + 'demo/account_reconcile_model.xml', ], 'uninstall_hook': 'uninstall_hook', } diff --git a/addons/l10n_generic_coa/data/account_bank_statement_demo.xml b/addons/l10n_generic_coa/demo/account_bank_statement_demo.xml index 7a6b85df6fa..abd4efc2d00 100644 --- a/addons/l10n_generic_coa/data/account_bank_statement_demo.xml +++ b/addons/l10n_generic_coa/demo/account_bank_statement_demo.xml @@ -91,6 +91,19 @@ <field name="partner_id" ref="base.res_partner_2"/> </record> + <record id="demo_bank_statement_line_7" model="account.bank.statement.line"> + <field name="ref"></field> + <field name="statement_id" ref="l10n_generic_coa.demo_bank_statement_1"/> + <field name="sequence">7</field> + <field name="name">R:9772938 10/07 AX 9415116318 T:5 BRT: 100,00€ C/ croip</field> + <field name="journal_id" model="account.journal" search="[ + ('type', '=', 'bank'), + ('company_id', '=', obj().env.company.id)]"/> + <field name="amount">96.67</field> + <field name="date" eval="time.strftime('%Y')+'-01-01'"/> + <field name="partner_id" ref="base.res_partner_2"/> + </record> + <function model="account.bank.statement.line" name="fast_counterpart_creation"> <value eval="[ref('demo_bank_statement_line_5')]"/> </function> diff --git a/addons/l10n_generic_coa/data/account_invoice_demo.xml b/addons/l10n_generic_coa/demo/account_invoice_demo.xml index 5a41ec2060c..5a41ec2060c 100644 --- a/addons/l10n_generic_coa/data/account_invoice_demo.xml +++ b/addons/l10n_generic_coa/demo/account_invoice_demo.xml diff --git a/addons/l10n_generic_coa/demo/account_reconcile_model.xml b/addons/l10n_generic_coa/demo/account_reconcile_model.xml new file mode 100644 index 00000000000..3be9c3a1bde --- /dev/null +++ b/addons/l10n_generic_coa/demo/account_reconcile_model.xml @@ -0,0 +1,25 @@ +<?xml version="1.0" encoding="utf-8"?> +<odoo> + <data noupdate="0"> + <record id="reconcile_from_label" model="account.reconcile.model"> + <field name="name">Line with Bank Fees</field> + <field name="rule_type">writeoff_suggestion</field> + <field name="match_label">contains</field> + <field name="match_label_param">BRT</field> + <field name="label">Due amount</field> + <field name="account_id" model="account.account" + search="[('user_type_id', '=', ref('account.data_account_type_revenue')), + ('company_id', '=', obj().env.company.id)]"/> + <field name="amount_type">regex</field> + <field name="amount_from_label_regex">BRT: ([\d,]+)</field> + <field name="decimal_separator">,</field> + <field name="has_second_line" eval="True"/> + <field name="second_label">Bank Fees</field> + <field name="second_account_id" model="account.account" + search="[('user_type_id', '=', ref('account.data_account_type_direct_costs')), + ('company_id', '=', obj().env.company.id)]"/> + <field name="second_amount_type">percentage</field> + <field name="second_amount">100</field> + </record> + </data> +</odoo> |
