summaryrefslogtreecommitdiff
path: root/addons/l10n_generic_coa/demo
diff options
context:
space:
mode:
authorstephanchrst <stephanchrst@gmail.com>2022-05-10 21:51:50 +0700
committerstephanchrst <stephanchrst@gmail.com>2022-05-10 21:51:50 +0700
commit3751379f1e9a4c215fb6eb898b4ccc67659b9ace (patch)
treea44932296ef4a9b71d5f010906253d8c53727726 /addons/l10n_generic_coa/demo
parent0a15094050bfde69a06d6eff798e9a8ddf2b8c21 (diff)
initial commit 2
Diffstat (limited to 'addons/l10n_generic_coa/demo')
-rw-r--r--addons/l10n_generic_coa/demo/account_bank_statement_demo.xml129
-rw-r--r--addons/l10n_generic_coa/demo/account_invoice_demo.xml208
-rw-r--r--addons/l10n_generic_coa/demo/account_reconcile_model.xml34
3 files changed, 371 insertions, 0 deletions
diff --git a/addons/l10n_generic_coa/demo/account_bank_statement_demo.xml b/addons/l10n_generic_coa/demo/account_bank_statement_demo.xml
new file mode 100644
index 00000000..73c061cd
--- /dev/null
+++ b/addons/l10n_generic_coa/demo/account_bank_statement_demo.xml
@@ -0,0 +1,129 @@
+<?xml version="1.0" encoding="utf-8"?>
+<odoo>
+ <data noupdate="1">
+ <record id="demo_bank_statement_1" model="account.bank.statement">
+ <field name="journal_id" model="account.journal" search="[
+ ('type', '=', 'bank'),
+ ('company_id', '=', obj().env.company.id)]"/>
+ <field name="date" eval="time.strftime('%Y')+'-01-01'"/>
+ <field name="balance_end_real">9944.87</field>
+ <field name="balance_start">5103.0</field>
+ </record>
+
+ <record id="demo_bank_statement_line_1" model="account.bank.statement.line">
+ <field name="ref"></field>
+ <field name="statement_id" ref="l10n_generic_coa.demo_bank_statement_1"/>
+ <field name="sequence">1</field>
+ <field name="payment_ref" eval="'INV/%s/00002 and INV/%s/00003' % (time.strftime('%Y'), time.strftime('%Y'))"/>
+ <field name="journal_id" model="account.journal" search="[
+ ('type', '=', 'bank'),
+ ('company_id', '=', obj().env.company.id)]"/>
+ <field name="amount">1275.0</field>
+ <field name="date" eval="time.strftime('%Y')+'-01-01'"/>
+ <field name="partner_id" ref="base.res_partner_2"/>
+ </record>
+
+ <record id="demo_bank_statement_line_2" model="account.bank.statement.line">
+ <field name="ref"></field>
+ <field name="statement_id" ref="l10n_generic_coa.demo_bank_statement_1"/>
+ <field name="sequence">2</field>
+ <field name="payment_ref">Bank fees</field>
+ <field name="journal_id" model="account.journal" search="[
+ ('type', '=', 'bank'),
+ ('company_id', '=', obj().env.company.id)]"/>
+ <field name="amount">-32.58</field>
+ <field name="date" eval="time.strftime('%Y')+'-01-01'"/>
+ </record>
+
+ <record id="demo_bank_statement_line_3" model="account.bank.statement.line">
+ <field name="ref"></field>
+ <field name="statement_id" ref="l10n_generic_coa.demo_bank_statement_1"/>
+ <field name="sequence">3</field>
+ <field name="payment_ref">Prepayment</field>
+ <field name="journal_id" model="account.journal" search="[
+ ('type', '=', 'bank'),
+ ('company_id', '=', obj().env.company.id)]"/>
+ <field name="amount">650.0</field>
+ <field name="date" eval="time.strftime('%Y')+'-01-01'"/>
+ <field name="partner_id" ref="base.res_partner_12"/>
+ </record>
+
+ <record id="demo_bank_statement_line_4" model="account.bank.statement.line">
+ <field name="ref"></field>
+ <field name="statement_id" ref="l10n_generic_coa.demo_bank_statement_1"/>
+ <field name="sequence">4</field>
+ <field name="payment_ref" eval="'First 2000 $ of invoice %s/00001' % time.strftime('%Y')"/>
+ <field name="journal_id" model="account.journal" search="[
+ ('type', '=', 'bank'),
+ ('company_id', '=', obj().env.company.id)]"/>
+ <field name="amount">2000.0</field>
+ <field name="date" eval="time.strftime('%Y')+'-01-01'"/>
+ <field name="partner_id" ref="base.res_partner_12"/>
+ </record>
+
+ <record id="demo_bank_statement_line_5" model="account.bank.statement.line">
+ <field name="ref"></field>
+ <field name="statement_id" ref="l10n_generic_coa.demo_bank_statement_1"/>
+ <field name="sequence">5</field>
+ <field name="payment_ref">Last Year Interests</field>
+ <field name="journal_id" model="account.journal" search="[
+ ('type', '=', 'bank'),
+ ('company_id', '=', obj().env.company.id)]"/>
+ <field name="amount">102.78</field>
+ <field name="date" eval="time.strftime('%Y')+'-01-01'"/>
+ </record>
+
+ <record id="demo_bank_statement_line_6" model="account.bank.statement.line">
+ <field name="ref"></field>
+ <field name="statement_id" ref="l10n_generic_coa.demo_bank_statement_1"/>
+ <field name="sequence">1</field>
+ <field name="payment_ref" eval="'INV/'+time.strftime('%Y')+'/00002'"/>
+ <field name="journal_id" model="account.journal" search="[
+ ('type', '=', 'bank'),
+ ('company_id', '=', obj().env.company.id)]"/>
+ <field name="amount">750.0</field>
+ <field name="date" eval="time.strftime('%Y')+'-01-01'"/>
+ <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="payment_ref">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>
+
+ <!-- Also create a pdf attachment in chatter -->
+
+ <record id="ir_attachment_bank_statement_1" model="ir.attachment">
+ <field name="type">binary</field>
+ <field name="datas" type="base64" file="l10n_generic_coa/static/src/demo/bank_statement_yourcompany_1.pdf"/>
+ <field name="name">bank_statement_yourcompany_demo.pdf</field>
+ <field name="res_model">account.bank.statement</field>
+ <field name="res_id" ref="demo_bank_statement_1"/>
+ </record>
+
+ <record id="demo_bank_statement_1" model="account.bank.statement">
+ <field name="message_main_attachment_id" ref="ir_attachment_bank_statement_1"/>
+ </record>
+
+ <record id="mail_message_bank_statement_1" model="mail.message">
+ <field name="model">account.bank.statement</field>
+ <field name="res_id" ref="l10n_generic_coa.demo_bank_statement_1"/>
+ <field name="body">Bank statement attachment</field>
+ <field name="message_type">comment</field>
+ <field name="author_id" ref="base.partner_demo"/>
+ <field name="attachment_ids" eval="[(6, 0, [ref('ir_attachment_bank_statement_1')])]"/>
+ </record>
+
+ <function model="account.bank.statement" name="button_post">
+ <value eval="[ref('demo_bank_statement_1')]"/>
+ </function>
+ </data>
+</odoo>
diff --git a/addons/l10n_generic_coa/demo/account_invoice_demo.xml b/addons/l10n_generic_coa/demo/account_invoice_demo.xml
new file mode 100644
index 00000000..6cccfa14
--- /dev/null
+++ b/addons/l10n_generic_coa/demo/account_invoice_demo.xml
@@ -0,0 +1,208 @@
+<?xml version="1.0" encoding="utf-8"?>
+<odoo>
+ <data noupdate="1">
+ <!-- ==== Invoice Demo 1 with attachment ==== -->
+ <record id="demo_invoice_1" model="account.move">
+ <field name="move_type">out_invoice</field>
+ <field name="partner_id" ref="base.res_partner_12"/>
+ <field name="invoice_user_id" ref="base.user_demo"/>
+ <field name="invoice_payment_term_id" ref="account.account_payment_term_end_following_month"/>
+ <field name="invoice_date" eval="time.strftime('%Y-%m')+'-01'"/>
+ <field name="invoice_line_ids" eval="[
+ (0, 0, {'product_id': ref('product.consu_delivery_02'), 'quantity': 5}),
+ (0, 0, {'product_id': ref('product.consu_delivery_03'), 'quantity': 5}),
+ ]"/>
+ </record>
+
+ <!-- ==== Invoice Demo 2 ==== -->
+ <record id="demo_invoice_2" model="account.move">
+ <field name="move_type">out_invoice</field>
+ <field name="partner_id" ref="base.res_partner_2"/>
+ <field name="invoice_user_id" eval="False"/>
+ <field name="invoice_date" eval="time.strftime('%Y-%m')+'-08'"/>
+ <field name="invoice_line_ids" eval="[
+ (0, 0, {'product_id': ref('product.consu_delivery_03'), 'quantity': 5}),
+ (0, 0, {'product_id': ref('product.consu_delivery_01'), 'quantity': 20}),
+ ]"/>
+ </record>
+
+ <!-- ==== Invoice Demo 3 ==== -->
+ <record id="demo_invoice_3" model="account.move">
+ <field name="move_type">out_invoice</field>
+ <field name="partner_id" ref="base.res_partner_2"/>
+ <field name="invoice_user_id" eval="False"/>
+ <field name="invoice_date" eval="time.strftime('%Y-%m')+'-08'"/>
+ <field name="invoice_line_ids" eval="[
+ (0, 0, {'product_id': ref('product.consu_delivery_01'), 'quantity': 5}),
+ (0, 0, {'product_id': ref('product.consu_delivery_03'), 'quantity': 5}),
+ ]"/>
+ </record>
+
+ <!-- ==== Invoice Demo 4 - Create an invoice that will generate a followup ==== -->
+ <record id="demo_invoice_followup" model="account.move">
+ <field name="move_type">out_invoice</field>
+ <field name="partner_id" ref="base.res_partner_2"/>
+ <field name="invoice_user_id" ref="base.user_demo"/>
+ <field name="invoice_payment_term_id" ref="account.account_payment_term_immediate"/>
+
+ <field name="invoice_date" eval="(datetime.today() + timedelta(days=-15)).strftime('%Y-%m-%d')"/>
+ <field name="invoice_line_ids" eval="[
+ (0, 0, {'product_id': ref('product.consu_delivery_02'), 'quantity': 5}),
+ (0, 0, {'product_id': ref('product.consu_delivery_03'), 'quantity': 5}),
+ ]"/>
+ </record>
+
+ <!-- ==== Invoice Demo 5 - Draft Vendor Bill ==== -->
+ <record id="demo_invoice_5" model="account.move">
+ <field name="move_type">in_invoice</field>
+ <field name="partner_id" ref="base.res_partner_12"/>
+ <field name="invoice_user_id" ref="base.user_demo"/>
+ <field name="invoice_payment_term_id" ref="account.account_payment_term_end_following_month"/>
+ <field name="invoice_date" eval="time.strftime('%Y-%m')+'-01'"/>
+ <field name="invoice_line_ids" eval="[
+ (0, 0, {'product_id': ref('product.product_delivery_01'), 'price_unit': 10.0, 'quantity': 1}),
+ (0, 0, {'product_id': ref('product.product_order_01'), 'price_unit': 4.0, 'quantity': 5}),
+ ]"/>
+ </record>
+
+ <!-- ==== Invoice Demo 6 - Draft Vendor Bill for OCR ==== -->
+
+ <record id="demo_invoice_extract" model="account.move" context="{'default_move_type': 'in_invoice'}">
+ <field name="move_type">in_invoice</field>
+ <field name="invoice_user_id" ref="base.user_demo"/>
+ </record>
+
+ <!-- ==== Invoice Demo 7 - Posted vendor bill ==== -->
+ <record id="demo_invoice_equipment_purchase" model="account.move">
+ <field name="move_type">in_invoice</field>
+ <field name="ref">INV/2018/0057</field>
+ <field name="partner_id" ref="base.res_partner_12"/>
+ <field name="invoice_user_id" eval="False"/>
+ <field name="invoice_date">2018-09-17</field>
+ <field name="invoice_line_ids" eval="[
+ (0, 0, {'name': 'Redeem Reference Number: PO02529', 'quantity': 1, 'price_unit': 541.10})
+ ]"/>
+ </record>
+
+ <!-- ==== Post invoices ==== -->
+ <!-- Ensure every detail related to the partner is set (fiscal position, payment terms, bank,...)-->
+ <function model="account.move" name="_onchange_partner_id">
+ <value eval="[ref('demo_invoice_1')]"/>
+ </function>
+ <function model="account.move" name="_onchange_partner_id">
+ <value eval="[ref('demo_invoice_2')]"/>
+ </function>
+ <function model="account.move" name="_onchange_partner_id">
+ <value eval="[ref('demo_invoice_3')]"/>
+ </function>
+ <function model="account.move" name="_onchange_partner_id">
+ <value eval="[ref('demo_invoice_equipment_purchase')]"/>
+ </function>
+
+ <!-- Ensure the lines are consistent with the products (taxes, price, name) -->
+ <!-- check_move_validity=False because the dynamic lines are computed after, it is checked later at the post function -->
+ <function model="account.move.line" name="_onchange_product_id" context="{'check_move_validity': False}">
+ <value model="account.move.line" eval="obj().search([('move_id', 'in', [
+ ref('demo_invoice_1'), ref('demo_invoice_2'), ref('demo_invoice_3'),
+ ref('demo_invoice_followup'), ref('demo_invoice_equipment_purchase'),
+ ])]).ids"/>
+ </function>
+
+ <!-- Recompute the taxes and receivable lines after the onchange executed above -->
+ <function model="account.move" name="_recompute_dynamic_lines" context="{'check_move_validity': False}">
+ <value eval="[
+ ref('demo_invoice_1'), ref('demo_invoice_2'), ref('demo_invoice_3'),
+ ref('demo_invoice_followup'), ref('demo_invoice_equipment_purchase'),
+ ]"/>
+ <value name="recompute_all_taxes" eval="True"/>
+ <value name="recompute_tax_base_amount" eval="True"/>
+ </function>
+
+ <function model="account.move" name="action_post">
+ <value eval="[
+ ref('demo_invoice_1'), ref('demo_invoice_2'), ref('demo_invoice_3'),
+ ref('demo_invoice_followup'), ref('demo_invoice_equipment_purchase'),
+ ]"/>
+ </function>
+
+ <!-- ==== Create attachments for posted invoices ==== -->
+ <record id="ir_attachment_in_invoice_1" model="ir.attachment">
+ <field name="type">binary</field>
+ <field name="datas" type="base64" file="l10n_generic_coa/static/src/demo/in_invoice_yourcompany_demo_1.pdf"/>
+ <field name="name">in_invoice_yourcompany_demo.pdf</field>
+ <field name="res_model">account.move</field>
+ <field name="res_id" ref="demo_invoice_extract"/>
+ </record>
+
+ <record id="demo_invoice_extract" model="account.move">
+ <field name="message_main_attachment_id" ref="ir_attachment_in_invoice_1"/>
+ </record>
+
+ <record id="mail_message_in_invoice_1" model="mail.message">
+ <field name="model">account.move</field>
+ <field name="res_id" ref="l10n_generic_coa.demo_invoice_extract"/>
+ <field name="body">Vendor Bill attachment</field>
+ <field name="message_type">comment</field>
+ <field name="author_id" ref="base.partner_demo"/>
+ <field name="attachment_ids" eval="[(6, 0, [ref('ir_attachment_in_invoice_1')])]"/>
+ </record>
+
+ <record id="ir_attachment_in_invoice_2" model="ir.attachment">
+ <field name="type">binary</field>
+ <field name="datas" type="base64" file="l10n_generic_coa/static/src/demo/in_invoice_yourcompany_demo_2.pdf"/>
+ <field name="name">in_invoice_yourcompany_demo.pdf</field>
+ <field name="res_model">account.move</field>
+ <field name="res_id" ref="demo_invoice_equipment_purchase"/>
+ </record>
+
+ <record id="demo_invoice_equipment_purchase" model="account.move">
+ <field name="message_main_attachment_id" ref="ir_attachment_in_invoice_2"/>
+ </record>
+
+ <record id="mail_message_in_invoice_2" model="mail.message">
+ <field name="model">account.move</field>
+ <field name="res_id" ref="l10n_generic_coa.demo_invoice_equipment_purchase"/>
+ <field name="body">Vendor Bill attachment</field>
+ <field name="message_type">comment</field>
+ <field name="author_id" ref="base.partner_demo"/>
+ <field name="attachment_ids" eval="[(6, 0, [ref('ir_attachment_in_invoice_2')])]"/>
+ </record>
+
+ <record id="invoice_activity_1" model="mail.activity">
+ <field name="res_id" ref="l10n_generic_coa.demo_invoice_3"/>
+ <field name="res_model_id" ref="account.model_account_move"/>
+ <field name="activity_type_id" ref="mail.mail_activity_data_todo"/>
+ <field name="date_deadline" eval="(DateTime.today() + relativedelta(days=5)).strftime('%Y-%m-%d %H:%M')"/>
+ <field name="summary">Follow-up on payment</field>
+ <field name="create_uid" ref="base.user_admin"/>
+ <field name="user_id" ref="base.user_admin"/>
+ </record>
+ <record id="invoice_activity_2" model="mail.activity">
+ <field name="res_id" ref="l10n_generic_coa.demo_invoice_2"/>
+ <field name="res_model_id" ref="account.model_account_move"/>
+ <field name="activity_type_id" ref="mail.mail_activity_data_call"/>
+ <field name="date_deadline" eval="DateTime.today().strftime('%Y-%m-%d %H:%M')"/>
+ <field name="create_uid" ref="base.user_admin"/>
+ <field name="user_id" ref="base.user_admin"/>
+ </record>
+ <record id="invoice_activity_3" model="mail.activity">
+ <field name="res_id" ref="l10n_generic_coa.demo_invoice_1"/>
+ <field name="res_model_id" ref="account.model_account_move"/>
+ <field name="activity_type_id" ref="mail.mail_activity_data_todo"/>
+ <field name="date_deadline" eval="(DateTime.today() + relativedelta(days=5)).strftime('%Y-%m-%d %H:%M')"/>
+ <field name="summary">Include upsell</field>
+ <field name="create_uid" ref="base.user_admin"/>
+ <field name="user_id" ref="base.user_admin"/>
+ </record>
+ <record id="invoice_activity_4" model="mail.activity">
+ <field name="res_id" ref="l10n_generic_coa.demo_invoice_extract"/>
+ <field name="res_model_id" ref="account.model_account_move"/>
+ <field name="activity_type_id" ref="mail.mail_activity_data_todo"/>
+ <field name="date_deadline" eval="(DateTime.today() + relativedelta(days=5)).strftime('%Y-%m-%d %H:%M')"/>
+ <field name="summary">Update address</field>
+ <field name="create_uid" ref="base.user_admin"/>
+ <field name="user_id" ref="base.user_admin"/>
+ </record>
+
+ </data>
+</odoo>
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 00000000..5934fdd0
--- /dev/null
+++ b/addons/l10n_generic_coa/demo/account_reconcile_model.xml
@@ -0,0 +1,34 @@
+<?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="decimal_separator">,</field>
+ </record>
+
+ <record id="reconcile_from_label_line1" model="account.reconcile.model.line">
+ <field name="model_id" ref="l10n_generic_coa.reconcile_from_label"/>
+ <field name="sequence">1</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_string">BRT: ([\d,]+)</field>
+ </record>
+
+ <record id="reconcile_from_label_line2" model="account.reconcile.model.line">
+ <field name="model_id" ref="l10n_generic_coa.reconcile_from_label"/>
+ <field name="sequence">2</field>
+ <field name="label">Bank Fees</field>
+ <field name="account_id" model="account.account"
+ search="[('user_type_id', '=', ref('account.data_account_type_direct_costs')),
+ ('company_id', '=', obj().env.company.id)]"/>
+ <field name="amount_type">percentage</field>
+ <field name="amount_string">100</field>
+ </record>
+ </data>
+</odoo>