summaryrefslogtreecommitdiff
path: root/addons/l10n_generic_coa
diff options
context:
space:
mode:
authorwan <wan@odoo.com>2019-08-29 15:03:08 +0000
committerwan <wan@odoo.com>2019-09-03 12:12:20 +0000
commitac1876762c287eb4dac041768718b9cb775a60c7 (patch)
tree5a37a4f9982eba7b8536a03cae0e58092cb76c92 /addons/l10n_generic_coa
parent3c5c7b4d81056a5dde788d4dd5a0008c77596918 (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__.py5
-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.xml25
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>