diff options
| author | Olivier Colson <oco@odoo.com> | 2019-04-19 10:06:07 +0000 |
|---|---|---|
| committer | Olivier Colson <oco@odoo.com> | 2019-05-10 11:52:58 +0000 |
| commit | 3936d655c4bfd845b6ead724cecdc8e7c62816eb (patch) | |
| tree | 402e137e0fa09b06c1b237ab6a346670dea480c2 /addons/l10n_vn | |
| parent | 574295df57d8da78ca6109f277a5a2332bf38101 (diff) | |
[IMP] account, l10n_*: v13 taxes
- Add repartition lines on taxes
- Link account tags directly to account.move.line; remove the tag_ids field from account.tag
- Add a new report engine dedicated to tax reports, directly generating account tags. It is called as an alternate mode of generic tax report, with a dedicated "Use tax grids" toggle.
>> The biggest change lies in the way the new tax report computes its values.
Everything is now aggregated directly using the tags set on the account move lines. Thanks to that,
modifying the configuration of a tax today will not impact the report for the previous periods anymore.
This is a big improvement, as it means the report will keep on reflecting the values that were submitted
to the state before, whatever the configuration change.
- Add an audit char field to account.move.line telling with tax grids are impacted by the line, with the corresponding amount
- Modify the behavior of cash basis taxes: the cash basis account is now used as the transition account, while the regular account given in tax declaration is used to store the final entry (it was the opposite before)
- Modify every l10n_* module in order to keep them consistent with these changes
closes odoo/odoo#32833
Signed-off-by: Quentin De Paoli (qdp) <qdp@openerp.com>
Diffstat (limited to 'addons/l10n_vn')
| -rw-r--r-- | addons/l10n_vn/__manifest__.py | 1 | ||||
| -rw-r--r-- | addons/l10n_vn/data/account_tax_data.xml | 243 | ||||
| -rw-r--r-- | addons/l10n_vn/data/account_tax_report_data.xml | 138 |
3 files changed, 291 insertions, 91 deletions
diff --git a/addons/l10n_vn/__manifest__.py b/addons/l10n_vn/__manifest__.py index 5fdcddae3f2..ca3ee4f0023 100644 --- a/addons/l10n_vn/__manifest__.py +++ b/addons/l10n_vn/__manifest__.py @@ -29,6 +29,7 @@ with Chart of account under Circular No. 200/2014/TT-BTC 'data/account.account.template.csv', 'data/l10n_vn_chart_post_data.xml', 'data/account_data.xml', + 'data/account_tax_report_data.xml', 'data/account_tax_data.xml', 'data/account_chart_template_data.xml', ], diff --git a/addons/l10n_vn/data/account_tax_data.xml b/addons/l10n_vn/data/account_tax_data.xml index 0ac0602a008..134cb99d16b 100644 --- a/addons/l10n_vn/data/account_tax_data.xml +++ b/addons/l10n_vn/data/account_tax_data.xml @@ -1,79 +1,6 @@ <?xml version="1.0" encoding="utf-8"?> <odoo> <!-- Tax Definitions --> - <record id="tag_vn_01" model="account.account.tag"> - <field name="name">HHDV mua vào</field> - <field name="applicability">taxes</field> - </record> - <record id="tag_vn_02" model="account.account.tag"> - <field name="name">Thuế GTGT HHDV mua vào</field> - <field name="applicability">taxes</field> - </record> - <record id="tag_vn_03" model="account.account.tag"> - <field name="name">Thuế GTGT HHDV mua vào chịu thuế 0%</field> - <field name="applicability">taxes</field> - </record> - <record id="tag_vn_04" model="account.account.tag"> - <field name="name">Thuế GTGT HHDV mua vào chịu thuế 5%</field> - <field name="applicability">taxes</field> - </record> - <record id="tag_vn_05" model="account.account.tag"> - <field name="name">Thuế GTGT HHDV mua vào chịu thuế 10%</field> - <field name="applicability">taxes</field> - </record> - <record id="tag_vn_06" model="account.account.tag"> - <field name="name">Giá trị HHDV mua vào</field> - <field name="applicability">taxes</field> - </record> - <record id="tag_vn_07" model="account.account.tag"> - <field name="name">Giá trị HHDV mua vào chịu thuế 0%</field> - <field name="applicability">taxes</field> - </record> - <record id="tag_vn_08" model="account.account.tag"> - <field name="name">Giá trị HHDV mua vào chịu thuế 5%</field> - <field name="applicability">taxes</field> - </record> - <record id="tag_vn_09" model="account.account.tag"> - <field name="name">Giá trị HHDV mua vào chịu thuế 10%</field> - <field name="applicability">taxes</field> - </record> - <record id="tag_vn_10" model="account.account.tag"> - <field name="name">HHDV bán ra</field> - <field name="applicability">taxes</field> - </record> - <record id="tag_vn_11" model="account.account.tag"> - <field name="name">Thuế GTGT HHDV bán ra</field> - <field name="applicability">taxes</field> - </record> - <record id="tag_vn_12" model="account.account.tag"> - <field name="name">Thuế GTGT HHDV bán ra chịu thuế 0%</field> - <field name="applicability">taxes</field> - </record> - <record id="tag_vn_13" model="account.account.tag"> - <field name="name">Thuế GTGT HHDV bán ra chịu thuế 5%</field> - <field name="applicability">taxes</field> - </record> - <record id="tag_vn_14" model="account.account.tag"> - <field name="name">Thuế GTGT HHDV bán ra chịu thuế 10%</field> - <field name="applicability">taxes</field> - </record> - <record id="tag_vn_15" model="account.account.tag"> - <field name="name">Giá trị HHDV bán ra</field> - <field name="applicability">taxes</field> - </record> - <record id="tag_vn_16" model="account.account.tag"> - <field name="name">Giá trị HHDV bán ra chịu thuế 0%</field> - <field name="applicability">taxes</field> - </record> - <record id="tag_vn_17" model="account.account.tag"> - <field name="name">Giá trị HHDV bán ra chịu thuế 5%</field> - <field name="applicability">taxes</field> - </record> - <record id="tag_vn_18" model="account.account.tag"> - <field name="name">Giá trị HHDV bán ra chịu thuế 10%</field> - <field name="applicability">taxes</field> - </record> - <!-- for purchase --> <record id="tax_purchase_vat10" model="account.tax.template"> <field name="chart_template_id" ref="vn_template"/> @@ -81,11 +8,34 @@ <field name="description">Thuế GTGT được khấu trừ 10%</field> <field name="amount" eval="10"/> <field name="amount_type">percent</field> - <field name="account_id" ref="chart1331"/> - <field name="refund_account_id" ref="chart1331"/> <field name="type_tax_use">purchase</field> - <field name="tag_ids" eval="[(6,0,[ref('tag_vn_09'),ref('tag_vn_05')])]"/> <field name="tax_group_id" ref="tax_group_10"/> + <field name="invoice_repartition_line_ids" eval="[(5, 0, 0), + (0,0, { + 'factor_percent': 100, + 'repartition_type': 'base', + 'minus_report_line_ids': [ref('account_tax_report_line_03_02_01_vn')], + }), + (0,0, { + 'factor_percent': 100, + 'repartition_type': 'tax', + 'account_id': ref('chart1331'), + 'minus_report_line_ids': [ref('account_tax_report_line_03_01_01_vn')], + }), + ]"/> + <field name="refund_repartition_line_ids" eval="[(5, 0, 0), + (0,0, { + 'factor_percent': 100, + 'repartition_type': 'base', + 'plus_report_line_ids': [ref('account_tax_report_line_03_02_01_vn')], + }), + (0,0, { + 'factor_percent': 100, + 'repartition_type': 'tax', + 'account_id': ref('chart1331'), + 'plus_report_line_ids': [ref('account_tax_report_line_03_01_01_vn')], + }), + ]"/> </record> <record id="tax_purchase_vat5" model="account.tax.template"> <field name="chart_template_id" ref="vn_template"/> @@ -93,11 +43,34 @@ <field name="description">Thuế GTGT được khấu trừ 5%</field> <field name="amount" eval="5"/> <field name="amount_type">percent</field> - <field name="account_id" ref="chart1331"/> - <field name="refund_account_id" ref="chart1331"/> <field name="type_tax_use">purchase</field> - <field name="tag_ids" eval="[(6,0,[ref('tag_vn_08'),ref('tag_vn_04')])]"/> <field name="tax_group_id" ref="tax_group_5"/> + <field name="invoice_repartition_line_ids" eval="[(5, 0, 0), + (0,0, { + 'factor_percent': 100, + 'repartition_type': 'base', + 'minus_report_line_ids': [ref('account_tax_report_line_02_02_01_vn')], + }), + (0,0, { + 'factor_percent': 100, + 'repartition_type': 'tax', + 'account_id': ref('chart1331'), + 'minus_report_line_ids': [ref('account_tax_report_line_02_01_01_vn')], + }), + ]"/> + <field name="refund_repartition_line_ids" eval="[(5, 0, 0), + (0,0, { + 'factor_percent': 100, + 'repartition_type': 'base', + 'plus_report_line_ids': [ref('account_tax_report_line_02_02_01_vn')], + }), + (0,0, { + 'factor_percent': 100, + 'repartition_type': 'tax', + 'account_id': ref('chart1331'), + 'plus_report_line_ids': [ref('account_tax_report_line_02_01_01_vn')], + }), + ]"/> </record> <record id="tax_purchase_vat0" model="account.tax.template"> <field name="chart_template_id" ref="vn_template"/> @@ -105,11 +78,32 @@ <field name="description">Thuế GTGT được khấu trừ 0%</field> <field name="amount" eval="0"/> <field name="amount_type">percent</field> - <field name="account_id" ref="chart1331"/> - <field name="refund_account_id" ref="chart1331"/> <field name="type_tax_use">purchase</field> - <field name="tag_ids" eval="[(6,0,[ref('tag_vn_07')])]"/> <field name="tax_group_id" ref="tax_group_0"/> + <field name="invoice_repartition_line_ids" eval="[(5, 0, 0), + (0,0, { + 'factor_percent': 100, + 'repartition_type': 'base', + 'minus_report_line_ids': [ref('account_tax_report_line_01_02_01_vn')], + }), + (0,0, { + 'factor_percent': 100, + 'repartition_type': 'tax', + 'account_id': ref('chart1331'), + }), + ]"/> + <field name="refund_repartition_line_ids" eval="[(5, 0, 0), + (0,0, { + 'factor_percent': 100, + 'repartition_type': 'base', + 'plus_report_line_ids': [ref('account_tax_report_line_01_02_01_vn')], + }), + (0,0, { + 'factor_percent': 100, + 'repartition_type': 'tax', + 'account_id': ref('chart1331'), + }), + ]"/> </record> <!-- for sale --> @@ -119,11 +113,34 @@ <field name="description">Thuế GTGT phải nộp 10%</field> <field name="amount" eval="10"/> <field name="amount_type">percent</field> - <field name="account_id" ref="chart33311"/> - <field name="refund_account_id" ref="chart33311"/> <field name="type_tax_use">sale</field> - <field name="tag_ids" eval="[(6,0,[ref('tag_vn_18'),ref('tag_vn_14')])]"/> <field name="tax_group_id" ref="tax_group_10"/> + <field name="invoice_repartition_line_ids" eval="[(5, 0, 0), + (0,0, { + 'factor_percent': 100, + 'repartition_type': 'base', + 'plus_report_line_ids': [ref('account_tax_report_line_03_02_02_vn')], + }), + (0,0, { + 'factor_percent': 100, + 'repartition_type': 'tax', + 'account_id': ref('chart33311'), + 'plus_report_line_ids': [ref('account_tax_report_line_03_01_02_vn')], + }), + ]"/> + <field name="refund_repartition_line_ids" eval="[(5, 0, 0), + (0,0, { + 'factor_percent': 100, + 'repartition_type': 'base', + 'minus_report_line_ids': [ref('account_tax_report_line_03_02_02_vn')], + }), + (0,0, { + 'factor_percent': 100, + 'repartition_type': 'tax', + 'account_id': ref('chart33311'), + 'minus_report_line_ids': [ref('account_tax_report_line_03_01_02_vn')], + }), + ]"/> </record> <record id="tax_sale_vat5" model="account.tax.template"> <field name="chart_template_id" ref="vn_template"/> @@ -131,11 +148,34 @@ <field name="description">Thuế GTGT phải nộp 5%</field> <field name="amount" eval="5"/> <field name="amount_type">percent</field> - <field name="account_id" ref="chart33311"/> - <field name="refund_account_id" ref="chart33311"/> <field name="type_tax_use">sale</field> - <field name="tag_ids" eval="[(6,0,[ref('tag_vn_17'),ref('tag_vn_13')])]"/> <field name="tax_group_id" ref="tax_group_5"/> + <field name="invoice_repartition_line_ids" eval="[(5, 0, 0), + (0,0, { + 'factor_percent': 100, + 'repartition_type': 'base', + 'plus_report_line_ids': [ref('account_tax_report_line_02_02_02_vn')], + }), + (0,0, { + 'factor_percent': 100, + 'repartition_type': 'tax', + 'account_id': ref('chart33311'), + 'plus_report_line_ids': [ref('account_tax_report_line_02_01_02_vn')], + }), + ]"/> + <field name="refund_repartition_line_ids" eval="[(5, 0, 0), + (0,0, { + 'factor_percent': 100, + 'repartition_type': 'base', + 'minus_report_line_ids': [ref('account_tax_report_line_02_02_02_vn')], + }), + (0,0, { + 'factor_percent': 100, + 'repartition_type': 'tax', + 'account_id': ref('chart33311'), + 'minus_report_line_ids': [ref('account_tax_report_line_02_01_02_vn')], + }), + ]"/> </record> <record id="tax_sale_vat0" model="account.tax.template"> <field name="chart_template_id" ref="vn_template"/> @@ -143,10 +183,31 @@ <field name="description">Thuế GTGT phải nộp 0%</field> <field name="amount" eval="0"/> <field name="amount_type">percent</field> - <field name="account_id" ref="chart33311"/> - <field name="refund_account_id" ref="chart33311"/> <field name="type_tax_use">sale</field> - <field name="tag_ids" eval="[(6,0,[ref('tag_vn_16')])]"/> <field name="tax_group_id" ref="tax_group_0"/> + <field name="invoice_repartition_line_ids" eval="[(5, 0, 0), + (0,0, { + 'factor_percent': 100, + 'repartition_type': 'base', + 'plus_report_line_ids': [ref('account_tax_report_line_01_02_02_vn')], + }), + (0,0, { + 'factor_percent': 100, + 'repartition_type': 'tax', + 'account_id': ref('chart33311'), + }), + ]"/> + <field name="refund_repartition_line_ids" eval="[(5, 0, 0), + (0,0, { + 'factor_percent': 100, + 'repartition_type': 'base', + 'minus_report_line_ids': [ref('account_tax_report_line_01_02_02_vn')], + }), + (0,0, { + 'factor_percent': 100, + 'repartition_type': 'tax', + 'account_id': ref('chart33311'), + }), + ]"/> </record> </odoo> diff --git a/addons/l10n_vn/data/account_tax_report_data.xml b/addons/l10n_vn/data/account_tax_report_data.xml new file mode 100644 index 00000000000..c57acf4ec00 --- /dev/null +++ b/addons/l10n_vn/data/account_tax_report_data.xml @@ -0,0 +1,138 @@ +<?xml version="1.0" encoding="utf-8"?> +<odoo> + <record id="account_tax_report_line_01_vn" model="account.tax.report.line"> + <field name="name">HHDV mua vào</field> + <field name="sequence" eval="1"/> + <field name="country_id" ref="base.vn"/> + </record> + + <record id="account_tax_report_line_01_01_vn" model="account.tax.report.line"> + <field name="name">Thuế GTGT HHDV mua vào</field> + <field name="sequence" eval="1"/> + <field name="parent_id" ref="account_tax_report_line_01_vn"/> + <field name="country_id" ref="base.vn"/> + </record> + + <record id="account_tax_report_line_01_01_01_vn" model="account.tax.report.line"> + <field name="name">Thuế GTGT HHDV mua vào chịu thuế 0%</field> + <field name="tag_name">Thuế GTGT HHDV mua vào chịu thuế 0%</field> + <field name="sequence" eval="1"/> + <field name="parent_id" ref="account_tax_report_line_01_01_vn"/> + <field name="country_id" ref="base.vn"/> + </record> + + <record id="account_tax_report_line_02_01_01_vn" model="account.tax.report.line"> + <field name="name">Thuế GTGT HHDV mua vào chịu thuế 5%</field> + <field name="tag_name">Thuế GTGT HHDV mua vào chịu thuế 5%</field> + <field name="sequence" eval="2"/> + <field name="parent_id" ref="account_tax_report_line_01_01_vn"/> + <field name="country_id" ref="base.vn"/> + </record> + + <record id="account_tax_report_line_03_01_01_vn" model="account.tax.report.line"> + <field name="name">Thuế GTGT HHDV mua vào chịu thuế 10%</field> + <field name="tag_name">Thuế GTGT HHDV mua vào chịu thuế 10%</field> + <field name="sequence" eval="3"/> + <field name="parent_id" ref="account_tax_report_line_01_01_vn"/> + <field name="country_id" ref="base.vn"/> + </record> + + <record id="account_tax_report_line_02_01_vn" model="account.tax.report.line"> + <field name="name">Giá trị HHDV mua vào</field> + <field name="sequence" eval="2"/> + <field name="parent_id" ref="account_tax_report_line_01_vn"/> + <field name="country_id" ref="base.vn"/> + </record> + + <record id="account_tax_report_line_01_02_01_vn" model="account.tax.report.line"> + <field name="name">Giá trị HHDV mua vào chịu thuế 0%</field> + <field name="tag_name">Giá trị HHDV mua vào chịu thuế 0%</field> + <field name="sequence" eval="1"/> + <field name="parent_id" ref="account_tax_report_line_02_01_vn"/> + <field name="country_id" ref="base.vn"/> + </record> + + <record id="account_tax_report_line_02_02_01_vn" model="account.tax.report.line"> + <field name="name">Giá trị HHDV mua vào chịu thuế 5%</field> + <field name="tag_name">Giá trị HHDV mua vào chịu thuế 5%</field> + <field name="sequence" eval="2"/> + <field name="parent_id" ref="account_tax_report_line_02_01_vn"/> + <field name="country_id" ref="base.vn"/> + </record> + + <record id="account_tax_report_line_03_02_01_vn" model="account.tax.report.line"> + <field name="name">Giá trị HHDV mua vào chịu thuế 10%</field> + <field name="tag_name">Giá trị HHDV mua vào chịu thuế 10%</field> + <field name="sequence" eval="3"/> + <field name="parent_id" ref="account_tax_report_line_02_01_vn"/> + <field name="country_id" ref="base.vn"/> + </record> + + <record id="account_tax_report_line_02_vn" model="account.tax.report.line"> + <field name="name">HHDV bán ra</field> + <field name="sequence" eval="2"/> + <field name="country_id" ref="base.vn"/> + </record> + + <record id="account_tax_report_line_01_02_vn" model="account.tax.report.line"> + <field name="name">Thuế GTGT HHDV bán ra</field> + <field name="sequence" eval="1"/> + <field name="parent_id" ref="account_tax_report_line_02_vn"/> + <field name="country_id" ref="base.vn"/> + </record> + + <record id="account_tax_report_line_01_01_02_vn" model="account.tax.report.line"> + <field name="name">Thuế GTGT HHDV bán ra chịu thuế 0%</field> + <field name="tag_name">Thuế GTGT HHDV bán ra chịu thuế 0%</field> + <field name="sequence" eval="1"/> + <field name="parent_id" ref="account_tax_report_line_01_02_vn"/> + <field name="country_id" ref="base.vn"/> + </record> + + <record id="account_tax_report_line_02_01_02_vn" model="account.tax.report.line"> + <field name="name">Thuế GTGT HHDV bán ra chịu thuế 5%</field> + <field name="tag_name">Thuế GTGT HHDV bán ra chịu thuế 5%</field> + <field name="sequence" eval="2"/> + <field name="parent_id" ref="account_tax_report_line_01_02_vn"/> + <field name="country_id" ref="base.vn"/> + </record> + + <record id="account_tax_report_line_03_01_02_vn" model="account.tax.report.line"> + <field name="name">Thuế GTGT HHDV bán ra chịu thuế 10%</field> + <field name="tag_name">Thuế GTGT HHDV bán ra chịu thuế 10%</field> + <field name="sequence" eval="3"/> + <field name="parent_id" ref="account_tax_report_line_01_02_vn"/> + <field name="country_id" ref="base.vn"/> + </record> + + <record id="account_tax_report_line_02_02_vn" model="account.tax.report.line"> + <field name="name">Giá trị HHDV bán ra</field> + <field name="sequence" eval="2"/> + <field name="country_id" ref="base.vn"/> + <field name="parent_id" ref="account_tax_report_line_02_vn"/> + </record> + + <record id="account_tax_report_line_01_02_02_vn" model="account.tax.report.line"> + <field name="name">Giá trị HHDV bán ra chịu thuế 0%</field> + <field name="tag_name">Giá trị HHDV bán ra chịu thuế 0%</field> + <field name="sequence" eval="1"/> + <field name="parent_id" ref="account_tax_report_line_02_02_vn"/> + <field name="country_id" ref="base.vn"/> + </record> + + <record id="account_tax_report_line_02_02_02_vn" model="account.tax.report.line"> + <field name="name">Giá trị HHDV bán ra chịu thuế 5%</field> + <field name="tag_name">Giá trị HHDV bán ra chịu thuế 5%</field> + <field name="sequence" eval="2"/> + <field name="parent_id" ref="account_tax_report_line_02_02_vn"/> + <field name="country_id" ref="base.vn"/> + </record> + + <record id="account_tax_report_line_03_02_02_vn" model="account.tax.report.line"> + <field name="name">Giá trị HHDV bán ra chịu thuế 10%</field> + <field name="tag_name">Giá trị HHDV bán ra chịu thuế 10%</field> + <field name="sequence" eval="3"/> + <field name="parent_id" ref="account_tax_report_line_02_02_vn"/> + <field name="country_id" ref="base.vn"/> + </record> +</odoo> |
