Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[13.0][MIG] datev_export_xml : Migration to version 13.0 #137

Merged
merged 4 commits into from
May 13, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
289 changes: 289 additions & 0 deletions datev_export_xml/README.rst

Large diffs are not rendered by default.

10 changes: 10 additions & 0 deletions datev_export_xml/__init__.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
# Copyright (C) 2022-2023 initOS GmbH
# Copyright (C) 2019 sewisoft (sewisoft.de)
# Copyright (C) 2010-2023 big-consulting GmbH (www.openbig.de)
# Copyright (C) 2010 OpenGLOBE Grzegorz Grzelak (www.openglobe.pl)
# @author Guenter Selbert <[email protected]>
# @author Thorsten Vocks
# @author Grzegorz Grzelak
# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl).

from . import models
33 changes: 33 additions & 0 deletions datev_export_xml/__manifest__.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,33 @@
# Copyright (C) 2022-2023 initOS GmbH
# Copyright (C) 2019 sewisoft (sewisoft.de)
# Copyright (C) 2010-2023 big-consulting GmbH (www.openbig.de)
# Copyright (C) 2010 OpenGLOBE Grzegorz Grzelak (www.openglobe.pl)
# @author Guenter Selbert <[email protected]>
# @author Thorsten Vocks <[email protected]>
# @author Grzegorz Grzelak
# Copyright 2023 Tecnativa - Carolina Fernandez
# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl).

{
"name": "Datev Export XML",
"version": "13.0.1.0.0",
"category": "Accounting",
"license": "AGPL-3",
"author": "Guenter Selbert, Thorsten Vocks, Maciej Wichowski, Daniela Scarpa, "
"Maria Sparenberg, initOS GmbH, Odoo Community Association (OCA)",
"summary": "Export invoices and refunds as xml and pdf files zipped in DATEV format.",
"website": "https://github.com/OCA/l10n-germany",
"depends": ["datev_export"],
"data": [
"data/ir_cron_data.xml",
"security/groups.xml",
"security/ir.model.access.csv",
"security/security.xml",
"views/account_invoice_view.xml",
"views/datev_export_views.xml",
"views/res_config_settings_views.xml",
"views/templates.xml",
],
"demo": ["demo/export_data.xml"],
"installable": True,
}
14 changes: 14 additions & 0 deletions datev_export_xml/data/ir_cron_data.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
<?xml version="1.0" encoding="utf-8" ?>
<odoo noupdate="1">
<record model="ir.cron" id="cron_create_datev_export">
<field name='name'>DATEV XML: Create Export File</field>
<field name='interval_number'>5</field>
<field name='interval_type'>minutes</field>
<field name="numbercall">-1</field>
<field name="active" eval="True" />
<field name="doall" eval="False" />
<field name="state">code</field>
<field name="model_id" ref="model_datev_export_xml" />
<field name="code">model.cron_run_pending_export()</field>
</record>
</odoo>
274 changes: 274 additions & 0 deletions datev_export_xml/demo/export_data.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,274 @@
<?xml version="1.0" encoding="utf-8" ?>
<odoo>
<record id="base.main_company" model="res.company">
<field name="datev_client_number">1234</field>
<field name="datev_consultant_number">12345</field>
</record>

<!-- Company Datev Accounts -->
<record id="account_datev_rec" model="account.account">
<field name="name">Company Account Receivable</field>
<field name="code">69999</field>
<field name="reconcile" eval="True" />
<field name="user_type_id" ref="account.data_account_type_receivable" />
</record>
<record id="account_datev_pay" model="account.account">
<field name="name">Company Account Payable</field>
<field name="code">99999</field>
<field name="reconcile" eval="True" />
<field name="user_type_id" ref="account.data_account_type_payable" />
</record>

<record id="base.main_partner" model="res.partner">
<field name="property_account_receivable_id" ref="account_datev_rec" />
<field name="property_account_payable_id" ref="account_datev_pay" />
</record>

<!-- German Accounts -->
<record id="account_datev_rec_DE" model="account.account">
<field name="name">A-Customer Account DE</field>
<field name="code">10001</field>
<field name="reconcile" eval="True" />
<field name="user_type_id" ref="account.data_account_type_receivable" />
</record>
<record id="account_datev_pay_DE" model="account.account">
<field name="name">A-Vendor Account DE</field>
<field name="code">70001</field>
<field name="reconcile" eval="True" />
<field name="user_type_id" ref="account.data_account_type_payable" />
</record>
<!-- EU Accounts -->
<record id="account_datev_rec_EU" model="account.account">
<field name="name">A-Customer Account EU</field>
<field name="code">10002</field>
<field name="reconcile" eval="True" />
<field name="user_type_id" ref="account.data_account_type_receivable" />
</record>
<record id="account_datev_pay_EU" model="account.account">
<field name="name">A-Vendor Account EU</field>
<field name="code">70002</field>
<field name="reconcile" eval="True" />
<field name="user_type_id" ref="account.data_account_type_payable" />
</record>
<!-- Non-EU Accounts -->
<record id="account_datev_rec_NonEU" model="account.account">
<field name="name">A-Customer Account Non-EU</field>
<field name="code">10003</field>
<field name="reconcile" eval="True" />
<field name="user_type_id" ref="account.data_account_type_receivable" />
</record>
<record id="account_datev_pay_NonEU" model="account.account">
<field name="name">A-Vendor Account Non-EU</field>
<field name="code">70003</field>
<field name="reconcile" eval="True" />
<field name="user_type_id" ref="account.data_account_type_payable" />
</record>
<!-- Accounts Income and Expense -->
<record id="account_datev_income" model="account.account">
<field name="name">A-Income</field>
<field name="code">8401</field>
<field name="reconcile" eval="False" />
<field name="user_type_id" ref="account.data_account_type_revenue" />
</record>
<record id="account_datev_expense" model="account.account">
<field name="name">A-Expense</field>
<field name="code">3401</field>
<field name="reconcile" eval="False" />
<field name="user_type_id" ref="account.data_account_type_expenses" />
</record>


<!-- German Partners -->
<record id="customer_DE" model="res.partner">
<field name="name">A-Customer DE</field>
<field name="street">Straße 1</field>
<field name="zip">12345</field>
<field name="city">City</field>
<field name="country_id" ref="base.de" />
<field name="customer_rank" eval="1" />
<field name="supplier_rank" eval="0" />
<field name="property_account_receivable_id" ref="account_datev_rec_DE" />
<field name="property_account_payable_id" ref="account_datev_pay_DE" />
</record>
<record id="vendor_DE" model="res.partner">
<field name="name">A-Vendor DE</field>
<field name="street">Alle 9</field>
<field name="zip">54321</field>
<field name="city">Metropole</field>
<field name="country_id" ref="base.de" />
<field name="supplier_rank" eval="1" />
<field name="customer_rank" eval="0" />
<field name="property_account_receivable_id" ref="account_datev_rec_DE" />
<field name="property_account_payable_id" ref="account_datev_pay_DE" />
</record>

<!-- EU Partners -->
<record id="customer_EU" model="res.partner">
<field name="name">A-Customer EU</field>
<field name="street">Straße 1</field>
<field name="zip">12345</field>
<field name="city">City</field>
<field name="country_id" ref="base.fr" />
<field name="customer_rank" eval="1" />
<field name="supplier_rank" eval="0" />
<field name="property_account_receivable_id" ref="account_datev_rec_EU" />
<field name="property_account_payable_id" ref="account_datev_pay_EU" />
</record>
<record id="vendor_EU" model="res.partner">
<field name="name">A-Vendor EU</field>
<field name="street">Alle 9</field>
<field name="zip">54321</field>
<field name="city">Metropole</field>
<field name="country_id" ref="base.fr" />
<field name="supplier_rank" eval="1" />
<field name="customer_rank" eval="0" />
<field name="property_account_receivable_id" ref="account_datev_rec_EU" />
<field name="property_account_payable_id" ref="account_datev_pay_EU" />
</record>

<!-- Non-EU Partners -->
<record id="customer_NonEU" model="res.partner">
<field name="name">A-Customer Non-EU</field>
<field name="street">Straße 1</field>
<field name="zip">12345</field>
<field name="city">City</field>
<field name="country_id" ref="base.us" />
<field name="customer_rank" eval="1" />
<field name="supplier_rank" eval="0" />
<field name="property_account_receivable_id" ref="account_datev_rec_NonEU" />
<field name="property_account_payable_id" ref="account_datev_pay_NonEU" />
</record>
<record id="vendor_NonEU" model="res.partner">
<field name="name">A-Vendor Non-EU</field>
<field name="street">Alle 9</field>
<field name="zip">54321</field>
<field name="city">Metropole</field>
<field name="country_id" ref="base.us" />
<field name="supplier_rank" eval="1" />
<field name="customer_rank" eval="0" />
<field name="property_account_receivable_id" ref="account_datev_rec_NonEU" />
<field name="property_account_payable_id" ref="account_datev_pay_NonEU" />
</record>

<record id="analytic_account_datev_01" model="account.analytic.account">
<field name="name">A-IT</field>
<field name="code">990010</field>
</record>
<record id="analytic_account_datev_02" model="account.analytic.account">
<field name="name">A-Office</field>
<field name="code">990000</field>
</record>

<record id="product_datev_01" model="product.product">
<field name="name">A-IT-Consulting</field>
<field name="default_code">11-001</field>
<field name="type">service</field>
<field name="sale_ok" eval="True" />
<field name="categ_id" ref="product.product_category_all" />
<field name="list_price">120.00</field>
<field name="property_account_income_id" ref="account_datev_income" />
</record>
<record id="product_datev_02" model="product.product">
<field name="name">A-Office-Lease</field>
<field name="default_code">99-015</field>
<field name="type">service</field>
<field name="purchase_ok" eval="True" />
<field name="categ_id" ref="product.product_category_all" />
<field name="list_price">900.00</field>
<field name="property_account_income_id" ref="account_datev_expense" />
</record>

<!-- Demo Attachment pdf for IN Invoice -->
<record id="vendor_bill_attachment_DE" model="ir.attachment">
<field name="name">vendor_bill_attachment_DE.pdf</field>
<field name="type">binary</field>
<field
name="datas"
type="base64"
file="datev_export_xml/static/src/demo/vendor_bill_attachment.pdf"
/>
</record>
<record id="vendor_bill_attachment_EU" model="ir.attachment">
<field name="name">vendor_bill_attachment_EU.pdf</field>
<field name="type">binary</field>
<field
name="datas"
type="base64"
file="datev_export_xml/static/src/demo/vendor_bill_attachment.pdf"
/>
</record>
<record id="vendor_bill_attachment_NonEU" model="ir.attachment">
<field name="name">vendor_bill_attachment_NonEU.pdf</field>
<field name="type">binary</field>
<field
name="datas"
type="base64"
file="datev_export_xml/static/src/demo/vendor_bill_attachment.pdf"
/>
</record>
<!-- Demo Attachment pdf for IN Refund -->
<record id="bill_refund_attachment_DE" model="ir.attachment">
<field name="name">bill_refund_attachment_DE.pdf</field>
<field name="type">binary</field>
<field
name="datas"
type="base64"
file="datev_export_xml/static/src/demo/vendor_bill_attachment.pdf"
/>
</record>
<record id="bill_refund_attachment_EU" model="ir.attachment">
<field name="name">bill_refund_attachment_EU.pdf</field>
<field name="type">binary</field>
<field
name="datas"
type="base64"
file="datev_export_xml/static/src/demo/vendor_bill_attachment.pdf"
/>
</record>
<record id="bill_refund_attachment_NonEU" model="ir.attachment">
<field name="name">bill_refund_attachment_NonEU.pdf</field>
<field name="type">binary</field>
<field
name="datas"
type="base64"
file="datev_export_xml/static/src/demo/vendor_bill_attachment.pdf"
/>
</record>

<!-- Bank Data -->
<record id="customer_parent" model="res.partner">
<field name="name">A-Customer Parent</field>
<field name="street">Straße 1</field>
<field name="zip">12345</field>
<field name="city">Berlin</field>
<field name="country_id" ref="base.de" />
<field name="customer_rank" eval="1" />
<field name="supplier_rank" eval="0" />
<field name="property_account_receivable_id" ref="account_datev_rec_DE" />
<field name="property_account_payable_id" ref="account_datev_pay_DE" />
</record>

<record id="example_bank" model="res.bank">
<field name="name">Example Bank</field>
<field name="active" eval="True" />
<field name="bic">ALSWCH21XXX</field>
<field name="country" ref="base.ch" />
</record>

<record id="customer_child" model="res.partner">
<field name="name">A-Customer Child</field>
<field name="type">contact</field>
<field name="parent_id" ref="customer_parent" />
<field name="vat">BE0477472701</field>
<field name="country_id" ref="base.de" />
<field name="customer_rank" eval="1" />
<field name="supplier_rank" eval="0" />
</record>

<record id="datev_partner_bank_1" model="res.partner.bank">
<field name="acc_number">DE89370400440532013000</field>
<field name="partner_id" ref="customer_child" />
<field name="acc_type">bank</field>
<field name="bank_id" ref="example_bank" />
</record>
</odoo>
Loading
Loading