Merge lp:~txerpa-openerp/openerp-spain/7.0-l10n_es_aeat_modelo303 into lp:~openerp-spain-team/openerp-spain/7.0

Proposed by Pedro Manuel Baeza
Status: Rejected
Rejected by: Pedro Manuel Baeza
Proposed branch: lp:~txerpa-openerp/openerp-spain/7.0-l10n_es_aeat_modelo303
Merge into: lp:~openerp-spain-team/openerp-spain/7.0
Prerequisite: lp:~pedro.baeza/openerp-spain/7.0-l10n_es-refactorized
Diff against target: 4928 lines (+3118/-1369) (has conflicts)
20 files modified
l10n_es/taxes_data_pymes.xml (+236/-64)
l10n_es_aeat_mod303/__init__.py (+0/-19)
l10n_es_aeat_mod303/__openerp__.py (+0/-51)
l10n_es_aeat_mod303/i18n/es.po (+705/-0)
l10n_es_aeat_mod303/i18n/l10n_es_aeat_mod303.pot (+0/-522)
l10n_es_aeat_mod303/migrations/1.1/pre-migration.py (+0/-73)
l10n_es_aeat_mod303/mod303.py (+0/-218)
l10n_es_aeat_mod303/mod303_view.xml (+0/-112)
l10n_es_aeat_mod303/modelo303.py (+351/-0)
l10n_es_aeat_mod303/modelo303_casillas.xml (+967/-0)
l10n_es_aeat_mod303/modelo303_view.xml (+210/-0)
l10n_es_aeat_mod303/security/ir.model.access.csv (+0/-2)
l10n_es_aeat_mod303/static/src/img/icon_source.svg (+0/-99)
l10n_es_aeat_mod303/wizard/__init__.py (+0/-18)
l10n_es_aeat_mod303/wizard/export_mod303_to_boe.py (+0/-173)
l10n_es_aeat_mod303/wizard/export_mod303_to_boe.xml (+0/-18)
l10n_es_aeat_mod303/wizard/export_modelo303_to_boe.py (+125/-0)
l10n_es_aeat_mod303/wizard/export_modelo303_to_boe.xml (+18/-0)
l10n_es_aeat_mod303/wizard/wizard_chart_update.py (+444/-0)
l10n_es_aeat_mod303/wizard/wizard_chart_update_view.xml (+62/-0)
Conflict: can't delete l10n_es_aeat_mod303.moved because it is not empty.  Not deleting.
Conflict adding file l10n_es_aeat_mod303.  Moved existing file to l10n_es_aeat_mod303.moved.
Conflict because l10n_es_aeat_mod303.moved is not versioned, but has versioned children.  Versioned directory.
Conflict: can't delete l10n_es_aeat_mod303.moved/i18n because it is not empty.  Not deleting.
Conflict because l10n_es_aeat_mod303.moved/i18n is not versioned, but has versioned children.  Versioned directory.
Contents conflict in l10n_es_aeat_mod303.moved/i18n/gl.po
To merge this branch: bzr merge lp:~txerpa-openerp/openerp-spain/7.0-l10n_es_aeat_modelo303
Reviewer Review Type Date Requested Status
Pedro Manuel Baeza Needs Resubmitting
Ignacio Ibeas (www.acysos.com) Needs Fixing
Biel - txerpa.com Pending
Review via email: mp+216049@code.launchpad.net

This proposal supersedes a proposal from 2014-04-16.

Description of the change

Actualización al formato 2014 del modelo 303 de la AEAT. Los cambios han sido propuestos por Biel Massot de Txerpa.

Hilo de la conversación en el grupo openerp-spain:

https://groups.google.com/forum/#!searchin/openerp-spain/Modelo$20303$202014/openerp-spain/RMbfuOjt-To/5CpghE7FGdAJ

To post a comment you must log in.
Revision history for this message
Pedro Manuel Baeza (pedro.baeza) wrote :

Biel, ¿podrías por favor colocar tu módulo en la misma carpeta que estaba el antiguo (l10n_es_aeat_mod303) para así poder ver bien el diff?

Un saludo.

review: Needs Fixing
Revision history for this message
Biel - txerpa.com (txerpa) wrote :

Hola Pedro, muchas gracias por realizar este mp.

El nombre de l10n_es_aeat_modelo303 es para que no entre en conflicto con el anterior l10n_es_aeat_mod303 ya que son radicalmente diferentes. El nuevo 303 también depende de algunos cambios que hay en l10n_es y no tengo claro como procedéis en estos casos.

Pero no hay problema, cuando tenga un momento le cambio el nombre a l10n_es_aeat_mod303.

Aprovecho para agradecerte la labor que estas realizando.

Saludos

Revision history for this message
Ignacio Ibeas (www.acysos.com) (ignacio-acysos) wrote :

Hola,

No importa, debe hacerse con la misma carpeta no solo por ver el Diff, sino también para facilitar la actualización de versiones.

Saludos

review: Needs Fixing
450. By Biel - txerpa.com

l10n_es_aeat_modelo303 -> l10n_es_aeat_mod303

Revision history for this message
Pedro Manuel Baeza (pedro.baeza) wrote :

Buenas, Biel,

Ya he visto que has renombrado el módulo. Muchas gracias. Pero estoy viendo que hay que hacer cambios más profundos por dos cosas:

- Los modelos que has creado son independientes de los antiguos, provocando que se pierda todo el histórico anterior y que además hay tablas en la BD que se queden colgadas. Lo que habría que hacer es utilizar el mismo modelo base (l10n.es.aeat.mod303.report) y crear un script de migración para compatibilizar lo antiguo con lo nuevo.

- Los impuestos los has definido sobre el l10n_es antiguo, y de hecho tu modificación sólo cubre los impuestos de las PYMEs, no el resto. En la refactorización, ahora se comparten todos los impuestos, por lo que sólo es necesario definir una vez las cosas en todos sitios.

Lo que voy a hacer es incluir los nuevos impuestos que has definido tú en la refactorización de l10n_es y que desbloqueemos ya de una vez el MP. Te agradecería si pudieras poner tu revisión en el mismo.

Después de eso, trabajaré en una revisión de tu MP que solucione los problemas que he comentado, y cuando esté listo y revisado por vuestra, incluimos a la vez tu MP y el mío. ¿Te parece bien?

Un saludo.

Revision history for this message
Pedro Manuel Baeza (pedro.baeza) wrote :

El proyecto está hospedado ahora en https://github.com/OCA/l10n-spain.

Mueve por favor tu propuesta allí. Esta guía puede ayudarte: https://github.com/OCA/maintainers-tools/wiki/How-to-move-a-Merge-Proposal-to-GitHub

Un saludo.

review: Needs Resubmitting

Unmerged revisions

450. By Biel - txerpa.com

l10n_es_aeat_modelo303 -> l10n_es_aeat_mod303

449. By Biel - txerpa.com

[FIX] l10n_es_aeat_modelo303: arreglo bug con periodo inicial repetido

448. By Biel - txerpa.com

l10n_es_aeat_modelo303: arreglo bug con resultados negativos y con iban

447. By Biel - txerpa.com

l10n_es_aeat_modelo303: traducciones de nuevos terminos

446. By Biel - txerpa.com

l10n_es_aeat_modelo303: calculo en función de periodo inicial y final

445. By Biel - txerpa.com

l10n_es: Modificación iva servicios

444. By Biel - txerpa.com

l10n_es: Nuevos impuestos para retenciones alquileres

443. By Biel - txerpa.com

Nuevo l10n_es_aeat_modelo303

442. By Biel - txerpa.com

l10n_es: nuevo "IVA No Sujeto", IVA Para servicios y modificación sujeto pasivo para usar con l10n_es_aeat_modelo303

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
=== modified file 'l10n_es/taxes_data_pymes.xml'
--- l10n_es/taxes_data_pymes.xml 2013-09-10 20:35:37 +0000
+++ l10n_es/taxes_data_pymes.xml 2014-04-16 11:51:06 +0000
@@ -1595,8 +1595,186 @@
1595 <field eval="-1.0" name="ref_base_sign"/>1595 <field eval="-1.0" name="ref_base_sign"/>
1596 <field name="type_tax_use">sale</field>1596 <field name="type_tax_use">sale</field>
1597 </record>1597 </record>
15981598
1599 <!-- Inversión del sujeto pasivo -->1599 <!-- IVA No sujeto (Ventas) -->
1600 <record id="iva_pymes_no_sujeto" model="account.tax.template">
1601 <field name="chart_template_id" ref="l10nES_chart_template_pymes"/>
1602 <field name="name">IVA No Sujeto</field>
1603 <field name="description">IVA No Sujeto</field>
1604 <field name="amount" eval="0.00"/>
1605 <field name="type">percent</field>
1606 <field name="account_collected_id" ref="pgc_pymes_477000"/>
1607 <field name="account_paid_id" ref="pgc_pymes_477000"/>
1608 <field name="base_code_id" ref="base_pymes_extra_44"/>
1609 <field name="ref_base_code_id" ref="base_pymes_extra_44"/>
1610 <field name="child_depend" eval="0"/>
1611 <field name="base_sign" eval="1.0"/>
1612 <field name="tax_sign" eval="1.0"/>
1613 <field name="ref_base_sign" eval="-1.0"/>
1614 <field name="ref_tax_sign" eval="-1.0"/>
1615 <field name="type_tax_use">sale</field>
1616 </record>
1617
1618 <!-- IVA Intracomunitario Servicios -->
1619 <record id="iva_pymes_dev_base_intra_serv" model="account.tax.code.template">
1620 <field name="name">Base adquisiciones intracomunitarias de bienes y servicios</field>
1621 <field name="code">[Base Serv]</field>
1622 <field name="parent_id" ref="vat_code_chart_pymes_root"/>
1623 <field name="sign">1.0</field>
1624 </record>
1625 <record id="iva_pymes_dev_quota_intra_serv" model="account.tax.code.template">
1626 <field name="name">Quota adquisiciones intracomunitarias de bienes y servicios</field>
1627 <field name="code">[Quota Serv]</field>
1628 <field name="parent_id" ref="vat_code_chart_pymes_root"/>
1629 <field name="sign">1.0</field>
1630 </record>
1631
1632 <!-- IVA 4% Intracomunitario. Servicios -->
1633 <record id="iva_pymes_IC_compras_4_serv" model="account.tax.template">
1634 <field name="chart_template_id" ref="l10nES_chart_template_pymes"/>
1635 <field name="name">IVA 4% Intracomunitario. Servicios</field>
1636 <field name="description">IVA 4% Intracomunitario. Servicios</field>
1637 <field eval="1.00" name="amount"/>
1638 <field name="type">percent</field>
1639 <field eval="1" name="child_depend"/>
1640 <field name="type_tax_use">purchase</field>
1641 </record>
1642 <record id="iva_pymes_IC_compras_4_serv_1" model="account.tax.template">
1643 <field name="chart_template_id" ref="l10nES_chart_template_pymes"/>
1644 <field name="parent_id" ref="iva_pymes_IC_compras_4_serv"/>
1645 <field name="name">IVA 4% Intracomunitario. Servicios (1)</field>
1646 <field eval="0.04" name="amount"/>
1647 <field name="type">percent</field>
1648 <field name="account_paid_id" ref="pgc_pymes_472000"/>
1649 <field name="account_collected_id" ref="pgc_pymes_472000"/>
1650 <field name="base_code_id" ref="iva_pymes_ded_30_4"/>
1651 <field name="tax_code_id" ref="iva_pymes_ded_31_4"/>
1652 <field name="ref_base_code_id" ref="iva_pymes_ded_30_4"/>
1653 <field eval="-1.0" name="ref_base_sign"/>
1654 <field name="ref_tax_code_id" ref="iva_pymes_ded_31_4"/>
1655 <field eval="-1.0" name="ref_tax_sign"/>
1656 <field name="type_tax_use">purchase</field>
1657 </record>
1658 <record id="iva_pymes_IC_compras_4_serv_2" model="account.tax.template">
1659 <field name="chart_template_id" ref="l10nES_chart_template_pymes"/>
1660 <field name="parent_id" ref="iva_pymes_IC_compras_4_serv"/>
1661 <field name="name">IVA 4% Intracomunitario. Servicios (2)</field>
1662 <field eval="-0.04" name="amount"/>
1663 <field name="type">percent</field>
1664 <field name="account_paid_id" ref="pgc_pymes_477000"/>
1665 <field name="account_collected_id" ref="pgc_pymes_477000"/>
1666 <field name="base_code_id" ref="iva_pymes_dev_base_intra_serv"/>
1667 <field name="tax_code_id" ref="iva_pymes_dev_quota_intra_serv"/>
1668 <field eval="-1.0" name="tax_sign"/>
1669 <field name="ref_base_code_id" ref="iva_pymes_dev_base_intra_serv"/>
1670 <field eval="-1.0" name="ref_base_sign"/>
1671 <field name="ref_tax_code_id" ref="iva_pymes_dev_quota_intra_serv"/>
1672 <field eval="1.0" name="ref_tax_sign"/>
1673 <field name="type_tax_use">purchase</field>
1674 </record>
1675
1676 <!-- IVA 10% Intracomunitario. Servicios -->
1677 <record id="iva_pymes_IC_compras_10_serv" model="account.tax.template">
1678 <field name="chart_template_id" ref="l10nES_chart_template_pymes"/>
1679 <field name="name">IVA 10% Intracomunitario. Servicios</field>
1680 <field name="description">IVA 10% Intracomunitario. Servicios</field>
1681 <field eval="1.00" name="amount"/>
1682 <field name="type">percent</field>
1683 <field eval="1" name="child_depend"/>
1684 <field name="type_tax_use">purchase</field>
1685 </record>
1686 <record id="iva_pymes_IC_compras_10_serv_1" model="account.tax.template">
1687 <field name="chart_template_id" ref="l10nES_chart_template_pymes"/>
1688 <field name="parent_id" ref="iva_pymes_IC_compras_10_serv"/>
1689 <field name="name">IVA 10% Intracomunitario. Servicios (1)</field>
1690 <field eval="0.10" name="amount"/>
1691 <field name="type">percent</field>
1692 <field name="account_paid_id" ref="pgc_pymes_472000"/>
1693 <field name="account_collected_id" ref="pgc_pymes_472000"/>
1694 <field name="base_code_id" ref="iva_pymes_ded_30_10"/>
1695 <field name="tax_code_id" ref="iva_pymes_ded_31_10"/>
1696 <field name="ref_base_code_id" ref="iva_pymes_ded_30_10"/>
1697 <field eval="-1.0" name="ref_base_sign"/>
1698 <field name="ref_tax_code_id" ref="iva_pymes_ded_31_10"/>
1699 <field eval="-1.0" name="ref_tax_sign"/>
1700 <field name="type_tax_use">purchase</field>
1701 </record>
1702 <record id="iva_pymes_IC_compras_10_serv_2" model="account.tax.template">
1703 <field name="chart_template_id" ref="l10nES_chart_template_pymes"/>
1704 <field name="parent_id" ref="iva_pymes_IC_compras_10_serv"/>
1705 <field name="name">IVA 10% Intracomunitario. Servicios (2)</field>
1706 <field eval="-0.10" name="amount"/>
1707 <field name="type">percent</field>
1708 <field name="account_paid_id" ref="pgc_pymes_477000"/>
1709 <field name="account_collected_id" ref="pgc_pymes_477000"/>
1710 <field name="base_code_id" ref="iva_pymes_dev_base_intra_serv"/>
1711 <field name="tax_code_id" ref="iva_pymes_dev_quota_intra_serv"/>
1712 <field eval="-1.0" name="tax_sign"/>
1713 <field name="ref_base_code_id" ref="iva_pymes_dev_base_intra_serv"/>
1714 <field eval="-1.0" name="ref_base_sign"/>
1715 <field name="ref_tax_code_id" ref="iva_pymes_dev_quota_intra_serv"/>
1716 <field eval="1.0" name="ref_tax_sign"/>
1717 <field name="type_tax_use">purchase</field>
1718 </record>
1719
1720 <!-- IVA 21% Intracomunitario. Servicios -->
1721 <record id="iva_pymes_IC_compras_21_serv" model="account.tax.template">
1722 <field name="chart_template_id" ref="l10nES_chart_template_pymes"/>
1723 <field name="name">IVA 21% Intracomunitario. Servicios</field>
1724 <field name="description">IVA 21% Intracomunitario. Servicios</field>
1725 <field eval="1.00" name="amount"/>
1726 <field name="type">percent</field>
1727 <field eval="1" name="child_depend"/>
1728 <field name="type_tax_use">purchase</field>
1729 </record>
1730 <record id="iva_pymes_IC_compras_21_serv_1" model="account.tax.template">
1731 <field name="chart_template_id" ref="l10nES_chart_template_pymes"/>
1732 <field name="parent_id" ref="iva_pymes_IC_compras_21_serv"/>
1733 <field name="name">IVA 21% Intracomunitario. Servicios (1)</field>
1734 <field eval="0.21" name="amount"/>
1735 <field name="type">percent</field>
1736 <field name="account_paid_id" ref="pgc_pymes_472000"/>
1737 <field name="account_collected_id" ref="pgc_pymes_472000"/>
1738 <field name="base_code_id" ref="iva_pymes_ded_30_21"/>
1739 <field name="tax_code_id" ref="iva_pymes_ded_31_21"/>
1740 <field name="ref_base_code_id" ref="iva_pymes_ded_30_21"/>
1741 <field eval="-1.0" name="ref_base_sign"/>
1742 <field name="ref_tax_code_id" ref="iva_pymes_ded_31_21"/>
1743 <field eval="-1.0" name="ref_tax_sign"/>
1744 <field name="type_tax_use">purchase</field>
1745 </record>
1746 <record id="iva_pymes_IC_compras_21_serv_2" model="account.tax.template">
1747 <field name="chart_template_id" ref="l10nES_chart_template_pymes"/>
1748 <field name="parent_id" ref="iva_pymes_IC_compras_21_serv"/>
1749 <field name="name">IVA 21% Intracomunitario. Servicios (2)</field>
1750 <field eval="-0.21" name="amount"/>
1751 <field name="type">percent</field>
1752 <field name="account_paid_id" ref="pgc_pymes_477000"/>
1753 <field name="account_collected_id" ref="pgc_pymes_477000"/>
1754 <field name="base_code_id" ref="iva_pymes_dev_base_intra_serv"/>
1755 <field name="tax_code_id" ref="iva_pymes_dev_quota_intra_serv"/>
1756 <field eval="-1.0" name="tax_sign"/>
1757 <field name="ref_base_code_id" ref="iva_pymes_dev_base_intra_serv"/>
1758 <field eval="-1.0" name="ref_base_sign"/>
1759 <field name="ref_tax_code_id" ref="iva_pymes_dev_quota_intra_serv"/>
1760 <field eval="1.0" name="ref_tax_sign"/>
1761 <field name="type_tax_use">purchase</field>
1762 </record>
1763
1764 <!-- Inversión del sujeto pasivo -->
1765 <record id="iva_pymes_dev_base_isp" model="account.tax.code.template">
1766 <field name="name">Otras operaciones con inversión del sujeto pasivo. Base</field>
1767 <field name="code">[Base ISP]</field>
1768 <field name="parent_id" ref="vat_code_chart_pymes_root"/>
1769 <field name="sign">1.0</field>
1770 </record>
1771 <record id="iva_pymes_dev_quota_isp" model="account.tax.code.template">
1772 <field name="name">Otras operaciones con inversión del sujeto pasivo. Quota</field>
1773 <field name="code">[Quota ISP]</field>
1774 <field name="parent_id" ref="vat_code_chart_pymes_root"/>
1775 <field name="sign">1.0</field>
1776 </record>
1777
1600 <record id="iva_pymes_ISP_compras_16" model="account.tax.template">1778 <record id="iva_pymes_ISP_compras_16" model="account.tax.template">
1601 <field name="chart_template_id" ref="l10nES_chart_template_pymes"/>1779 <field name="chart_template_id" ref="l10nES_chart_template_pymes"/>
1602 <field name="name">IVA 16% Inversión del sujeto pasivo</field>1780 <field name="name">IVA 16% Inversión del sujeto pasivo</field>
@@ -1610,32 +1788,18 @@
1610 <field name="ref_tax_sign" eval="-1.0"/>1788 <field name="ref_tax_sign" eval="-1.0"/>
1611 <field name="type_tax_use">purchase</field>1789 <field name="type_tax_use">purchase</field>
1612 </record>1790 </record>
1613 <record id="iva_pymes_ISP_compras_16_1" model="account.tax.template">1791 <record id="iva_pymes_ISP_compras_16_2" model="account.tax.template">
1614 <field name="chart_template_id" ref="l10nES_chart_template_pymes"/>1792 <field name="chart_template_id" ref="l10nES_chart_template_pymes"/>
1615 <field name="name">IVA 16% Inversión del sujeto pasivo (1)</field>1793 <field name="name">IVA 16% Inversión del sujeto pasivo (1)</field>
1616 <field name="parent_id" ref="iva_pymes_ISP_compras_16"/>1794 <field name="parent_id" ref="iva_pymes_ISP_compras_16"/>
1617 <field name="amount" eval="0.00"/>
1618 <field name="type">percent</field>
1619 <field name="base_code_id" ref="base_pymes_extra_44"/>
1620 <field name="ref_base_code_id" ref="base_pymes_extra_44"/>
1621 <field name="base_sign" eval="1.0"/>
1622 <field name="tax_sign" eval="1.0"/>
1623 <field name="ref_base_sign" eval="-1.0"/>
1624 <field name="ref_tax_sign" eval="-1.0"/>
1625 <field name="type_tax_use">purchase</field>
1626 </record>
1627 <record id="iva_pymes_ISP_compras_16_2" model="account.tax.template">
1628 <field name="chart_template_id" ref="l10nES_chart_template_pymes"/>
1629 <field name="name">IVA 16% Inversión del sujeto pasivo (2)</field>
1630 <field name="parent_id" ref="iva_pymes_ISP_compras_16"/>
1631 <field name="amount" eval="-0.16"/>1795 <field name="amount" eval="-0.16"/>
1632 <field name="type">percent</field>1796 <field name="type">percent</field>
1633 <field name="account_collected_id" ref="pgc_pymes_477000"/>1797 <field name="account_collected_id" ref="pgc_pymes_477000"/>
1634 <field name="account_paid_id" ref="pgc_pymes_477000"/>1798 <field name="account_paid_id" ref="pgc_pymes_477000"/>
1635 <field name="base_code_id" ref="iva_pymes_dev_07"/>1799 <field name="base_code_id" ref="iva_pymes_dev_base_isp"/>
1636 <field name="tax_code_id" ref="iva_pymes_dev_09"/>1800 <field name="tax_code_id" ref="iva_pymes_dev_quota_isp"/>
1637 <field name="ref_base_code_id" ref="iva_pymes_dev_07"/>1801 <field name="ref_base_code_id" ref="iva_pymes_dev_base_isp"/>
1638 <field name="ref_tax_code_id" ref="iva_pymes_dev_09"/>1802 <field name="ref_tax_code_id" ref="iva_pymes_dev_quota_isp"/>
1639 <field name="tax_sign" eval="-1.0"/>1803 <field name="tax_sign" eval="-1.0"/>
1640 <field name="base_sign" eval="1.0"/>1804 <field name="base_sign" eval="1.0"/>
1641 <field name="ref_tax_sign" eval="1.0"/>1805 <field name="ref_tax_sign" eval="1.0"/>
@@ -1644,7 +1808,7 @@
1644 </record>1808 </record>
1645 <record id="iva_pymes_ISP_compras_16_3" model="account.tax.template">1809 <record id="iva_pymes_ISP_compras_16_3" model="account.tax.template">
1646 <field name="chart_template_id" ref="l10nES_chart_template_pymes"/>1810 <field name="chart_template_id" ref="l10nES_chart_template_pymes"/>
1647 <field name="name">IVA 16% Inversión del sujeto pasivo (3)</field>1811 <field name="name">IVA 16% Inversión del sujeto pasivo (2)</field>
1648 <field name="parent_id" ref="iva_pymes_ISP_compras_16"/>1812 <field name="parent_id" ref="iva_pymes_ISP_compras_16"/>
1649 <field name="amount" eval="0.16"/>1813 <field name="amount" eval="0.16"/>
1650 <field name="type">percent</field>1814 <field name="type">percent</field>
@@ -1674,32 +1838,18 @@
1674 <field name="ref_tax_sign" eval="-1.0"/>1838 <field name="ref_tax_sign" eval="-1.0"/>
1675 <field name="type_tax_use">purchase</field>1839 <field name="type_tax_use">purchase</field>
1676 </record>1840 </record>
1677 <record id="iva_pymes_ISP_compras_18_1" model="account.tax.template">1841 <record id="iva_pymes_ISP_compras_18_2" model="account.tax.template">
1678 <field name="chart_template_id" ref="l10nES_chart_template_pymes"/>1842 <field name="chart_template_id" ref="l10nES_chart_template_pymes"/>
1679 <field name="name">IVA 18% Inversión del sujeto pasivo (1)</field>1843 <field name="name">IVA 18% Inversión del sujeto pasivo (1)</field>
1680 <field name="parent_id" ref="iva_pymes_ISP_compras_18"/>1844 <field name="parent_id" ref="iva_pymes_ISP_compras_18"/>
1681 <field name="amount" eval="0.00"/>
1682 <field name="type">percent</field>
1683 <field name="base_code_id" ref="base_pymes_extra_44"/>
1684 <field name="ref_base_code_id" ref="base_pymes_extra_44"/>
1685 <field name="base_sign" eval="1.0"/>
1686 <field name="tax_sign" eval="1.0"/>
1687 <field name="ref_base_sign" eval="-1.0"/>
1688 <field name="ref_tax_sign" eval="-1.0"/>
1689 <field name="type_tax_use">purchase</field>
1690 </record>
1691 <record id="iva_pymes_ISP_compras_18_2" model="account.tax.template">
1692 <field name="chart_template_id" ref="l10nES_chart_template_pymes"/>
1693 <field name="name">IVA 18% Inversión del sujeto pasivo (2)</field>
1694 <field name="parent_id" ref="iva_pymes_ISP_compras_18"/>
1695 <field name="amount" eval="-0.18"/>1845 <field name="amount" eval="-0.18"/>
1696 <field name="type">percent</field>1846 <field name="type">percent</field>
1697 <field name="account_collected_id" ref="pgc_pymes_477000"/>1847 <field name="account_collected_id" ref="pgc_pymes_477000"/>
1698 <field name="account_paid_id" ref="pgc_pymes_477000"/>1848 <field name="account_paid_id" ref="pgc_pymes_477000"/>
1699 <field name="base_code_id" ref="iva_pymes_dev_07_18"/>1849 <field name="base_code_id" ref="iva_pymes_dev_base_isp"/>
1700 <field name="tax_code_id" ref="iva_pymes_dev_09_18"/>1850 <field name="tax_code_id" ref="iva_pymes_dev_quota_isp"/>
1701 <field name="ref_base_code_id" ref="iva_pymes_dev_07_18"/>1851 <field name="ref_base_code_id" ref="iva_pymes_dev_base_isp"/>
1702 <field name="ref_tax_code_id" ref="iva_pymes_dev_09_18"/>1852 <field name="ref_tax_code_id" ref="iva_pymes_dev_quota_isp"/>
1703 <field name="tax_sign" eval="-1.0"/>1853 <field name="tax_sign" eval="-1.0"/>
1704 <field name="base_sign" eval="1.0"/>1854 <field name="base_sign" eval="1.0"/>
1705 <field name="ref_tax_sign" eval="1.0"/>1855 <field name="ref_tax_sign" eval="1.0"/>
@@ -1708,7 +1858,7 @@
1708 </record>1858 </record>
1709 <record id="iva_pymes_ISP_compras_18_3" model="account.tax.template">1859 <record id="iva_pymes_ISP_compras_18_3" model="account.tax.template">
1710 <field name="chart_template_id" ref="l10nES_chart_template_pymes"/>1860 <field name="chart_template_id" ref="l10nES_chart_template_pymes"/>
1711 <field name="name">IVA 18% Inversión del sujeto pasivo (3)</field>1861 <field name="name">IVA 18% Inversión del sujeto pasivo (2)</field>
1712 <field name="parent_id" ref="iva_pymes_ISP_compras_18"/>1862 <field name="parent_id" ref="iva_pymes_ISP_compras_18"/>
1713 <field name="amount" eval="0.18"/>1863 <field name="amount" eval="0.18"/>
1714 <field name="type">percent</field>1864 <field name="type">percent</field>
@@ -1724,7 +1874,8 @@
1724 <field name="ref_base_sign" eval="-1.0"/>1874 <field name="ref_base_sign" eval="-1.0"/>
1725 <field name="type_tax_use">purchase</field>1875 <field name="type_tax_use">purchase</field>
1726 </record>1876 </record>
1727<record id="iva_pymes_ISP_compras_21" model="account.tax.template">1877
1878 <record id="iva_pymes_ISP_compras_21" model="account.tax.template">
1728 <field name="chart_template_id" ref="l10nES_chart_template_pymes"/>1879 <field name="chart_template_id" ref="l10nES_chart_template_pymes"/>
1729 <field name="name">IVA 21% Inversión del sujeto pasivo</field>1880 <field name="name">IVA 21% Inversión del sujeto pasivo</field>
1730 <field name="description">IVA 21% Inversión del sujeto pasivo</field>1881 <field name="description">IVA 21% Inversión del sujeto pasivo</field>
@@ -1737,32 +1888,18 @@
1737 <field name="ref_tax_sign" eval="-1.0"/>1888 <field name="ref_tax_sign" eval="-1.0"/>
1738 <field name="type_tax_use">purchase</field>1889 <field name="type_tax_use">purchase</field>
1739 </record>1890 </record>
1740 <record id="iva_pymes_ISP_compras_21_1" model="account.tax.template">1891 <record id="iva_pymes_ISP_compras_21_2" model="account.tax.template">
1741 <field name="chart_template_id" ref="l10nES_chart_template_pymes"/>1892 <field name="chart_template_id" ref="l10nES_chart_template_pymes"/>
1742 <field name="name">IVA 21% Inversión del sujeto pasivo (1)</field>1893 <field name="name">IVA 21% Inversión del sujeto pasivo (1)</field>
1743 <field name="parent_id" ref="iva_pymes_ISP_compras_21"/>1894 <field name="parent_id" ref="iva_pymes_ISP_compras_21"/>
1744 <field name="amount" eval="0.00"/>
1745 <field name="type">percent</field>
1746 <field name="base_code_id" ref="base_pymes_extra_44"/>
1747 <field name="ref_base_code_id" ref="base_pymes_extra_44"/>
1748 <field name="base_sign" eval="1.0"/>
1749 <field name="tax_sign" eval="1.0"/>
1750 <field name="ref_base_sign" eval="-1.0"/>
1751 <field name="ref_tax_sign" eval="-1.0"/>
1752 <field name="type_tax_use">purchase</field>
1753 </record>
1754 <record id="iva_pymes_ISP_compras_21_2" model="account.tax.template">
1755 <field name="chart_template_id" ref="l10nES_chart_template_pymes"/>
1756 <field name="name">IVA 21% Inversión del sujeto pasivo (2)</field>
1757 <field name="parent_id" ref="iva_pymes_ISP_compras_21"/>
1758 <field name="amount" eval="-0.21"/>1895 <field name="amount" eval="-0.21"/>
1759 <field name="type">percent</field>1896 <field name="type">percent</field>
1760 <field name="account_collected_id" ref="pgc_pymes_477000"/>1897 <field name="account_collected_id" ref="pgc_pymes_477000"/>
1761 <field name="account_paid_id" ref="pgc_pymes_477000"/>1898 <field name="account_paid_id" ref="pgc_pymes_477000"/>
1762 <field name="base_code_id" ref="iva_pymes_dev_07_21"/>1899 <field name="base_code_id" ref="iva_pymes_dev_base_isp"/>
1763 <field name="tax_code_id" ref="iva_pymes_dev_09_21"/>1900 <field name="tax_code_id" ref="iva_pymes_dev_quota_isp"/>
1764 <field name="ref_base_code_id" ref="iva_pymes_dev_07_21"/>1901 <field name="ref_base_code_id" ref="iva_pymes_dev_base_isp"/>
1765 <field name="ref_tax_code_id" ref="iva_pymes_dev_09_21"/>1902 <field name="ref_tax_code_id" ref="iva_pymes_dev_quota_isp"/>
1766 <field name="tax_sign" eval="-1.0"/>1903 <field name="tax_sign" eval="-1.0"/>
1767 <field name="base_sign" eval="1.0"/>1904 <field name="base_sign" eval="1.0"/>
1768 <field name="ref_tax_sign" eval="1.0"/>1905 <field name="ref_tax_sign" eval="1.0"/>
@@ -1771,7 +1908,7 @@
1771 </record>1908 </record>
1772 <record id="iva_pymes_ISP_compras_21_3" model="account.tax.template">1909 <record id="iva_pymes_ISP_compras_21_3" model="account.tax.template">
1773 <field name="chart_template_id" ref="l10nES_chart_template_pymes"/>1910 <field name="chart_template_id" ref="l10nES_chart_template_pymes"/>
1774 <field name="name">IVA 21% Inversión del sujeto pasivo (3)</field>1911 <field name="name">IVA 21% Inversión del sujeto pasivo (2)</field>
1775 <field name="parent_id" ref="iva_pymes_ISP_compras_21"/>1912 <field name="parent_id" ref="iva_pymes_ISP_compras_21"/>
1776 <field name="amount" eval="0.21"/>1913 <field name="amount" eval="0.21"/>
1777 <field name="type">percent</field>1914 <field name="type">percent</field>
@@ -1788,7 +1925,6 @@
1788 <field name="type_tax_use">purchase</field>1925 <field name="type_tax_use">purchase</field>
1789 </record>1926 </record>
17901927
1791
1792 <!-- IVA REPERCUTIDO-->1928 <!-- IVA REPERCUTIDO-->
1793 <record id="iva_pymes_rep_4" model="account.tax.template">1929 <record id="iva_pymes_rep_4" model="account.tax.template">
1794 <field name="chart_template_id" ref="l10nES_chart_template_pymes"/>1930 <field name="chart_template_id" ref="l10nES_chart_template_pymes"/>
@@ -3050,6 +3186,24 @@
3050 <field eval="-1.0" name="ref_base_sign"/>3186 <field eval="-1.0" name="ref_base_sign"/>
3051 <field name="type_tax_use">purchase</field>3187 <field name="type_tax_use">purchase</field>
3052 </record>3188 </record>
3189
3190 <record id="irpf_pymes_21_alquiler" model="account.tax.template">
3191 <field name="chart_template_id" ref="l10nES_chart_template_pymes"/>
3192 <field name="name">HP 21% RETENCIONES ALQUILER</field>
3193 <field eval="-0.21" name="amount"/>
3194 <field name="type">percent</field>
3195 <field name="account_collected_id" ref="pgc_pymes_475100"/>
3196 <field name="account_paid_id" ref="pgc_pymes_475100"/>
3197 <field name="base_code_id" ref="irpf_pymes_base_21"/>
3198 <field name="tax_code_id" ref="irpf_pymes_cuota_21"/>
3199 <field name="ref_base_code_id" ref="irpf_pymes_base_21"/>
3200 <field name="ref_tax_code_id" ref="irpf_pymes_cuota_21"/>
3201 <field eval="1.0" name="tax_sign"/>
3202 <field eval="1.0" name="base_sign"/>
3203 <field eval="-1.0" name="ref_tax_sign"/>
3204 <field eval="-1.0" name="ref_base_sign"/>
3205 <field name="type_tax_use">purchase</field>
3206 </record>
30533207
3054 <!-- RETENCIONES DE IRPF: Hacienda pública, retenciones a cuenta como clientes -->3208 <!-- RETENCIONES DE IRPF: Hacienda pública, retenciones a cuenta como clientes -->
30553209
@@ -3357,5 +3511,23 @@
3357 <field eval="-1.0" name="ref_base_sign"/>3511 <field eval="-1.0" name="ref_base_sign"/>
3358 <field name="type_tax_use">sale</field>3512 <field name="type_tax_use">sale</field>
3359 </record>3513 </record>
3514
3515 <record id="irpf_pymes_sale_21_alquiler" model="account.tax.template">
3516 <field name="chart_template_id" ref="l10nES_chart_template_pymes"/>
3517 <field name="name">HP 21% RETENCIONES A CUENTA ALQUILER</field>
3518 <field eval="-0.21" name="amount"/>
3519 <field name="type">percent</field>
3520 <field name="account_collected_id" ref="pgc_pymes_473000"/>
3521 <field name="account_paid_id" ref="pgc_pymes_473000"/>
3522 <field name="base_code_id" ref="irpf_pymes_base_sale_21"/>
3523 <field name="tax_code_id" ref="irpf_pymes_cuota_sale_21"/>
3524 <field name="ref_base_code_id" ref="irpf_pymes_base_sale_21"/>
3525 <field name="ref_tax_code_id" ref="irpf_pymes_cuota_sale_21"/>
3526 <field eval="1.0" name="tax_sign"/>
3527 <field eval="1.0" name="base_sign"/>
3528 <field eval="-1.0" name="ref_tax_sign"/>
3529 <field eval="-1.0" name="ref_base_sign"/>
3530 <field name="type_tax_use">sale</field>
3531 </record>
3360 </data>3532 </data>
3361</openerp>3533</openerp>
33623534
=== added directory 'l10n_es_aeat_mod303'
=== renamed directory 'l10n_es_aeat_mod303' => 'l10n_es_aeat_mod303.moved'
=== renamed file 'l10n_es_aeat_mod303/i18n/gl.po' => 'l10n_es_aeat_mod303.moved/i18n/gl.po.THIS'
=== added file 'l10n_es_aeat_mod303/__init__.py'
--- l10n_es_aeat_mod303/__init__.py 1970-01-01 00:00:00 +0000
+++ l10n_es_aeat_mod303/__init__.py 2014-04-16 11:51:06 +0000
@@ -0,0 +1,19 @@
1# -*- encoding: utf-8 -*-
2##############################################################################
3#
4# This program is free software: you can redistribute it and/or modify
5# it under the terms of the GNU General Public License as published by
6# the Free Software Foundation, either version 3 of the License, or
7# (at your option) any later version.
8#
9# This program is distributed in the hope that it will be useful,
10# but WITHOUT ANY WARRANTY; without even the implied warranty of
11# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12# GNU General Public License for more details.
13#
14# You should have received a copy of the GNU General Public License
15# along with this program. If not, see http://www.gnu.org/licenses/.
16#
17##############################################################################
18from . import wizard
19from . import modelo303
0\ No newline at end of file20\ No newline at end of file
121
=== removed file 'l10n_es_aeat_mod303/__init__.py'
--- l10n_es_aeat_mod303/__init__.py 2014-01-17 01:03:03 +0000
+++ l10n_es_aeat_mod303/__init__.py 1970-01-01 00:00:00 +0000
@@ -1,19 +0,0 @@
1# -*- encoding: utf-8 -*-
2##############################################################################
3#
4# This program is free software: you can redistribute it and/or modify
5# it under the terms of the GNU General Public License as published by
6# the Free Software Foundation, either version 3 of the License, or
7# (at your option) any later version.
8#
9# This program is distributed in the hope that it will be useful,
10# but WITHOUT ANY WARRANTY; without even the implied warranty of
11# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12# GNU General Public License for more details.
13#
14# You should have received a copy of the GNU General Public License
15# along with this program. If not, see http://www.gnu.org/licenses/.
16#
17##############################################################################
18from . import mod303
19from . import wizard
200
=== added file 'l10n_es_aeat_mod303/__openerp__.py'
--- l10n_es_aeat_mod303/__openerp__.py 1970-01-01 00:00:00 +0000
+++ l10n_es_aeat_mod303/__openerp__.py 2014-04-16 11:51:06 +0000
@@ -0,0 +1,54 @@
1# -*- encoding: utf-8 -*-
2##############################################################################
3#
4# Copyright (c) All rights reserved:
5# 2014 Txerpa (https://www.txerpa.com)
6# Biel Massot <biel.massot@txerpa.com>
7# Copyright del antiguo l10n_es_aeat_mod303 sobre el que esta realizado
8# este modulo
9# 2013 Guadaltech (http://www.guadaltech.es)
10# Alberto Martín Cortada
11# 2014 Serv. Tecnol. Avanzados (http://www.serviciosbaeza.com)
12# Pedro M. Baeza <pedro.baeza@serviciobaeza.com>
13#
14# This program is free software: you can redistribute it and/or modify
15# it under the terms of the GNU General Public License as published by
16# the Free Software Foundation, either version 3 of the License, or
17# (at your option) any later version.
18#
19# This program is distributed in the hope that it will be useful,
20# but WITHOUT ANY WARRANTY; without even the implied warranty of
21# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
22# GNU General Public License for more details.
23#
24# You should have received a copy of the GNU General Public License
25# along with this program. If not, see http://www.gnu.org/licenses/.
26#
27##############################################################################
28
29{
30 "name" : "Modelo 303 de la AEAT",
31 "version" : "0.1",
32 'author' : "Biel Massot <biel.massot@txerpa.com>",
33 "license" : "AGPL-3",
34 "website" : "https://www.txerpa.com",
35 "description": "Modelo 303 de la AEAT",
36 'contributors': [
37 'Biel Massot <biel.massot@txerpa.com>',
38 ],
39 'category' : "Localisation/Accounting",
40 "depends" : [
41 "account",
42 "l10n_es",
43 "l10n_es_aeat",
44 "account_chart_update"
45 ],
46 "data" : [
47 "wizard/export_modelo303_to_boe.xml",
48 "wizard/wizard_chart_update_view.xml",
49 "modelo303_view.xml",
50 "modelo303_casillas.xml",
51 "security/ir.model.access.csv",
52 ],
53 "installable" : True,
54}
055
=== removed file 'l10n_es_aeat_mod303/__openerp__.py'
--- l10n_es_aeat_mod303/__openerp__.py 2014-01-23 16:41:59 +0000
+++ l10n_es_aeat_mod303/__openerp__.py 1970-01-01 00:00:00 +0000
@@ -1,51 +0,0 @@
1# -*- encoding: utf-8 -*-
2##############################################################################
3#
4# OpenERP, Open Source Management Solution
5# Copyright (c) All rights reserved:
6# 2013 Guadaltech (http://www.guadaltech.es)
7# Alberto Martín Cortada
8# 2014 Serv. Tecnol. Avanzados (http://www.serviciosbaeza.com)
9# Pedro M. Baeza <pedro.baeza@serviciobaeza.com>
10#
11# This program is free software: you can redistribute it and/or modify
12# it under the terms of the GNU General Public License as published by
13# the Free Software Foundation, either version 3 of the License, or
14# (at your option) any later version.
15#
16# This program is distributed in the hope that it will be useful,
17# but WITHOUT ANY WARRANTY; without even the implied warranty of
18# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
19# GNU General Public License for more details.
20#
21# You should have received a copy of the GNU General Public License
22# along with this program. If not, see http://www.gnu.org/licenses/.
23#
24##############################################################################
25
26{
27 "name" : "AEAT modelo 303",
28 "version" : "1.1",
29 "author" : "GuadalTech",
30 "license" : "AGPL-3",
31 "website" : "http://www.guadaltech.es",
32 'contributors': ["Pedro M. Baeza <pedro.baeza@serviciosbaeza.com"],
33 "category" : "Localisation/Accounting",
34 "description" : """
35Módulo para la presentación del modelo 303 (IVA - Autodeclaración) de la
36Agencia Española de Administración Tributaria.
37
38Instrucciones del modelo: http://goo.gl/pgVbXH
39
40Incluye la exportación al formato BOE para su uso telemático.
41 """,
42 "depends" : [
43 "l10n_es_aeat",
44 ],
45 "data" : [
46 "wizard/export_mod303_to_boe.xml",
47 "mod303_view.xml",
48 "security/ir.model.access.csv",
49 ],
50 "installable" : True,
51}
520
=== added directory 'l10n_es_aeat_mod303/i18n'
=== added file 'l10n_es_aeat_mod303/i18n/es.po'
--- l10n_es_aeat_mod303/i18n/es.po 1970-01-01 00:00:00 +0000
+++ l10n_es_aeat_mod303/i18n/es.po 2014-04-16 11:51:06 +0000
@@ -0,0 +1,705 @@
1# Translation of OpenERP Server.
2# This file contains the translation of the following modules:
3# * l10n_es_aeat_modelo303
4#
5msgid ""
6msgstr ""
7"Project-Id-Version: OpenERP Server 7.0\n"
8"Report-Msgid-Bugs-To: \n"
9"POT-Creation-Date: 2014-03-20 14:43+0000\n"
10"PO-Revision-Date: 2014-03-20 14:43+0000\n"
11"Last-Translator: <>\n"
12"Language-Team: \n"
13"MIME-Version: 1.0\n"
14"Content-Type: text/plain; charset=UTF-8\n"
15"Content-Transfer-Encoding: \n"
16"Plural-Forms: \n"
17
18#. module: l10n_es_aeat_modelo303
19#: field:l10n.es.aeat.modelo303.report,sin_actividad:0
20msgid "Sin actividad"
21msgstr "Sin actividad"
22
23#. module: l10n_es_aeat_modelo303
24#: code:addons/l10n_es_aeat_modelo303/wizard/wizard_chart_update.py:205
25#, python-format
26msgid "The tax_codes_ids field is different.\n"
27""
28msgstr "El campo tax_codes_ids es diferente.\n"
29""
30
31#. module: l10n_es_aeat_modelo303
32#: model:ir.model,name:l10n_es_aeat_modelo303.model_wizard_update_charts_accounts_modelo303
33msgid "wizard.update.charts.accounts.modelo303"
34msgstr "wizard.update.charts.accounts.modelo303"
35
36#. module: l10n_es_aeat_modelo303
37#: sql_constraint:l10n.es.aeat.modelo303.valor.casilla:0
38msgid "Una casilla solo puede tener un valor"
39msgstr "Una casilla solo puede tener un valor"
40
41#. module: l10n_es_aeat_modelo303
42#: code:addons/l10n_es_aeat_modelo303/wizard/wizard_chart_update.py:199
43#, python-format
44msgid "The code field is different.\n"
45""
46msgstr "El campo Codigo es diferente.\n"
47""
48
49#. module: l10n_es_aeat_modelo303
50#: view:l10n.es.aeat.modelo303.report:0
51msgid "Declaración"
52msgstr "Declaración"
53
54#. module: l10n_es_aeat_modelo303
55#: field:l10n.es.aeat.modelo303.report,cuenta_devolucion_id:0
56msgid "CCC devolución"
57msgstr "CCC devolución"
58
59#. module: l10n_es_aeat_modelo303
60#: selection:wizard.update.charts.accounts.casilla,type:0
61#: selection:wizard.update.charts.accounts.modelo303,type:0
62msgid "New template"
63msgstr "Nueva plantilla"
64
65#. module: l10n_es_aeat_modelo303
66#: field:l10n.es.aeat.modelo303,name:0
67#: field:l10n.es.aeat.modelo303.casilla,name:0
68#: field:l10n.es.aeat.modelo303.casilla.template,name:0
69#: field:l10n.es.aeat.modelo303.template,name:0
70msgid "Nombre"
71msgstr "Nombre"
72
73#. module: l10n_es_aeat_modelo303
74#: code:addons/l10n_es_aeat_modelo303/wizard/wizard_chart_update.py:144
75#, python-format
76msgid "The date field is different.\n"
77""
78msgstr "El campo Fecha es diferente.\n"
79""
80
81#. module: l10n_es_aeat_modelo303
82#: selection:l10n.es.aeat.modelo303.report,period:0
83msgid "March"
84msgstr "Marzo"
85
86#. module: l10n_es_aeat_modelo303
87#: code:addons/l10n_es_aeat_modelo303/wizard/wizard_chart_update.py:208
88#, python-format
89msgid "The default_value field is different.\n"
90""
91msgstr "El campo \"Valor por defecto\" es diferente.\n"
92""
93
94#. module: l10n_es_aeat_modelo303
95#: view:l10n.es.aeat.modelo303.report:0
96msgid "Casillas"
97msgstr "Casillas"
98
99#. module: l10n_es_aeat_modelo303
100#: field:l10n.es.aeat.modelo303.report,company_id:0
101msgid "Company"
102msgstr "Compañia"
103
104#. module: l10n_es_aeat_modelo303
105#: field:wizard.update.charts.accounts,update_casilla:0
106msgid "Update Casillas AEAT and 303"
107msgstr "Actualizar Casillas AEAT y 303"
108
109#. module: l10n_es_aeat_modelo303
110#: selection:l10n.es.aeat.modelo303.report,type:0
111msgid "Substitutive"
112msgstr "Sustitutivo"
113
114#. module: l10n_es_aeat_modelo303
115#: field:l10n.es.aeat.modelo303.report,previous_number:0
116msgid "Previous declaration number"
117msgstr "Número de declaración anterior"
118
119#. module: l10n_es_aeat_modelo303
120#: field:l10n.es.aeat.modelo303.casilla,default_value:0
121#: field:l10n.es.aeat.modelo303.casilla.template,default_value:0
122msgid "Valor por defecto"
123msgstr "Valor por defecto"
124
125#. module: l10n_es_aeat_modelo303
126#: view:l10n.es.aeat.modelo303.report:0
127msgid "549"
128msgstr "549"
129
130#. module: l10n_es_aeat_modelo303
131#: model:ir.model,name:l10n_es_aeat_modelo303.model_l10n_es_aeat_modelo303
132msgid "AEAT modelo 303"
133msgstr "AEAT modelo 303"
134
135#. module: l10n_es_aeat_modelo303
136#: selection:l10n.es.aeat.modelo303.export_to_boe,state:0
137msgid "get"
138msgstr "get"
139
140#. module: l10n_es_aeat_modelo303
141#: field:wizard.update.charts.accounts.casilla,notes:0
142#: field:wizard.update.charts.accounts.modelo303,notes:0
143msgid "Notes"
144msgstr "Notas"
145
146#. module: l10n_es_aeat_modelo303
147#: field:l10n.es.aeat.modelo303.report,number:0
148msgid "Declaration number"
149msgstr "Número declaración"
150
151#. module: l10n_es_aeat_modelo303
152#: code:addons/l10n_es_aeat_modelo303/wizard/wizard_chart_update.py:352
153#, python-format
154msgid "Updated casillas %s.\n"
155""
156msgstr "Actualizadas %s casillas.\n"
157""
158
159#. module: l10n_es_aeat_modelo303
160#: field:wizard.update.charts.accounts,updated_modelos303:0
161msgid "Updated Modelos303"
162msgstr "Actualizado Modelos303"
163
164#. module: l10n_es_aeat_modelo303
165#: selection:l10n.es.aeat.modelo303.report,state:0
166msgid "Cancelled"
167msgstr "Cancelado"
168
169#. module: l10n_es_aeat_modelo303
170#: selection:l10n.es.aeat.modelo303.report,period:0
171msgid "July"
172msgstr "Julio"
173
174#. module: l10n_es_aeat_modelo303
175#: model:ir.model,name:l10n_es_aeat_modelo303.model_l10n_es_aeat_modelo303_report
176msgid "AEAT modelo 303 report"
177msgstr "Informe AEAT Modelo 303"
178
179#. module: l10n_es_aeat_modelo303
180#: model:ir.actions.act_window,name:l10n_es_aeat_modelo303.action_wizard_aeat_modelo303_export
181msgid "Export AEAT 303 BOE file"
182msgstr "Exportar archivo BOE AEAT 303"
183
184#. module: l10n_es_aeat_modelo303
185#: field:l10n.es.aeat.modelo303.report,period_start_id:0
186msgid "Period start"
187msgstr "Periodo inicial"
188
189#. module: l10n_es_aeat_modelo303
190#: code:addons/l10n_es_aeat_modelo303/wizard/wizard_chart_update.py:291
191#, python-format
192msgid "Updated modelos303 %s.\n"
193""
194msgstr "Actualizados %s modelos303.\n"
195""
196
197#. module: l10n_es_aeat_modelo303
198#: model:ir.model,name:l10n_es_aeat_modelo303.model_l10n_es_aeat_modelo303_valor_casilla
199msgid "AEAT modelo 303 valor casilla"
200msgstr "AEAT modelo 303 valor casilla"
201
202#. module: l10n_es_aeat_modelo303
203#: field:l10n.es.aeat.modelo303.report,company_partner_id:0
204msgid "Partner"
205msgstr "Empresa"
206
207#. module: l10n_es_aeat_modelo303
208#: field:l10n.es.aeat.modelo303,template:0
209#: field:l10n.es.aeat.modelo303.template,template:0
210msgid "Template"
211msgstr "Plantilla"
212
213#. module: l10n_es_aeat_modelo303
214#: view:wizard.update.charts.accounts:0
215msgid "Modelos 303"
216msgstr "Modelos 303"
217
218#. module: l10n_es_aeat_modelo303
219#: field:l10n.es.aeat.modelo303.report,destinatario_operaciones_cdc:0
220msgid "Destinatario de operaciones con criterio de caja"
221msgstr "Destinatario de operaciones con criterio de caja"
222
223#. module: l10n_es_aeat_modelo303
224#: field:l10n.es.aeat.modelo303.valor.casilla,valor:0
225msgid "Valor"
226msgstr "Valor"
227
228#. module: l10n_es_aeat_modelo303
229#: field:l10n.es.aeat.modelo303.report,state:0
230msgid "State"
231msgstr "Estado"
232
233#. module: l10n_es_aeat_modelo303
234#: selection:l10n.es.aeat.modelo303.report,period:0
235msgid "First quarter"
236msgstr "Primer trimestre"
237
238#. module: l10n_es_aeat_modelo303
239#: code:addons/l10n_es_aeat_modelo303/wizard/wizard_chart_update.py:202
240#, python-format
241msgid "The evaluate_as field is different.\n"
242""
243msgstr "El campo \"Evaluar como\" es diferente.\n"
244""
245
246#. module: l10n_es_aeat_modelo303
247#: model:ir.model,name:l10n_es_aeat_modelo303.model_l10n_es_aeat_modelo303_casilla
248msgid "Casillas AEAT modelo 303"
249msgstr "Casillas AEAT modelo 303"
250
251#. module: l10n_es_aeat_modelo303
252#: field:wizard.update.charts.accounts,updated_casillas:0
253msgid "Updated Casillas"
254msgstr "Actualizadas casillas"
255
256#. module: l10n_es_aeat_modelo303
257#: code:addons/l10n_es_aeat_modelo303/wizard/wizard_chart_update.py:356
258#, python-format
259msgid "Exception writing casilla %s: %s - %s.\n"
260""
261msgstr "Error escribiendo casilla %s: %s - %s.\n"
262""
263
264#. module: l10n_es_aeat_modelo303
265#: model:ir.model,name:l10n_es_aeat_modelo303.model_l10n_es_aeat_modelo303_template
266msgid "AEAT modelo 303 template"
267msgstr "AEAT modelo 303 template"
268
269#. module: l10n_es_aeat_modelo303
270#: field:wizard.update.charts.accounts,modelo303_ids:0
271msgid "Modelo303"
272msgstr "Modelo303"
273
274#. module: l10n_es_aeat_modelo303
275#: code:addons/l10n_es_aeat_modelo303/wizard/wizard_chart_update.py:361
276#, python-format
277msgid "Created or updated casilla %s.\n"
278""
279msgstr "Casillas creadas o actualizadas %s.\n"
280""
281
282#. module: l10n_es_aeat_modelo303
283#: view:wizard.update.charts.accounts:0
284msgid "Fiscal positions"
285msgstr "Posiciones fiscales"
286
287#. module: l10n_es_aeat_modelo303
288#: code:addons/l10n_es_aeat_modelo303/wizard/wizard_chart_update.py:295
289#, python-format
290msgid "Exception writing modelo303 %s: %s - %s.\n"
291""
292msgstr "Error escribiendo modelo303 %s: %s - %s.\n"
293""
294
295#. module: l10n_es_aeat_modelo303
296#: field:l10n.es.aeat.modelo303.report,support_type:0
297msgid "Support Type"
298msgstr "Tipo de soporte"
299
300#. module: l10n_es_aeat_modelo303
301#: field:l10n.es.aeat.modelo303.casilla,code:0
302#: field:l10n.es.aeat.modelo303.casilla.template,code:0
303#: field:l10n.es.aeat.modelo303.valor.casilla,casilla_id:0
304#: field:l10n.es.aeat.modelo303.valor.casilla,code:0
305#: field:wizard.update.charts.accounts,casilla_ids:0
306msgid "Casilla"
307msgstr "Casilla"
308
309#. module: l10n_es_aeat_modelo303
310#: field:l10n.es.aeat.modelo303.valor.casilla,report_id:0
311msgid "Report"
312msgstr "Informe"
313
314#. module: l10n_es_aeat_modelo303
315#: field:l10n.es.aeat.modelo303.report,complementaria:0
316msgid "Autoliquidación complementaria"
317msgstr "Autoliquidación complementaria"
318
319#. module: l10n_es_aeat_modelo303
320#: help:l10n.es.aeat.modelo303.report,devolucion_mensual:0
321msgid "Inscrito en el Registro de Devolución Mensual"
322msgstr "Inscrito en el Registro de Devolución Mensual"
323
324#. module: l10n_es_aeat_modelo303
325#: code:addons/l10n_es_aeat_modelo303/wizard/wizard_chart_update.py:147
326#, python-format
327msgid "The template field is different.\n"
328""
329msgstr "El campo Plantilla es diferente.\n"
330""
331
332#. module: l10n_es_aeat_modelo303
333#: field:l10n.es.aeat.modelo303.report,calculation_date:0
334msgid "Calculation date"
335msgstr "Fecha de cálculo"
336
337#. module: l10n_es_aeat_modelo303
338#: view:l10n.es.aeat.modelo303.report:0
339msgid "Calculate formulas"
340msgstr "Calcular fórmulas"
341
342#. module: l10n_es_aeat_modelo303
343#: code:addons/l10n_es_aeat_modelo303/modelo303.py:175
344#, python-format
345msgid "El periodo inicial debe ser inferior o igual periodo final."
346msgstr "El periodo inicial debe ser inferior o igual periodo final."
347
348#. module: l10n_es_aeat_modelo303
349#: model:ir.actions.act_window,help:l10n_es_aeat_modelo303.action_l10n_es_aeat_modelo303_casilla_template_tree
350#: model:ir.actions.act_window,help:l10n_es_aeat_modelo303.action_l10n_es_aeat_modelo303_casilla_tree
351msgid "Definición de las casillas AEAT"
352msgstr "Definición de las casillas AEAT"
353
354#. module: l10n_es_aeat_modelo303
355#: selection:l10n.es.aeat.modelo303.report,period:0
356msgid "September"
357msgstr "Septiembre"
358
359#. module: l10n_es_aeat_modelo303
360#: selection:l10n.es.aeat.modelo303.report,period:0
361msgid "December"
362msgstr "Diciembre"
363
364#. module: l10n_es_aeat_modelo303
365#: view:l10n.es.aeat.modelo303.valor.casilla:0
366msgid "Valor casilla"
367msgstr "Valor casilla"
368
369#. module: l10n_es_aeat_modelo303
370#: field:l10n.es.aeat.modelo303.casilla,evaluate_as:0
371#: field:l10n.es.aeat.modelo303.casilla.template,evaluate_as:0
372msgid "Evaluar como"
373msgstr "Evaluar como"
374
375#. module: l10n_es_aeat_modelo303
376#: model:ir.model,name:l10n_es_aeat_modelo303.model_wizard_update_charts_accounts_casilla
377msgid "wizard.update.charts.accounts.casilla"
378msgstr "wizard.update.charts.accounts.casilla"
379
380#. module: l10n_es_aeat_modelo303
381#: selection:l10n.es.aeat.modelo303.report,support_type:0
382msgid "DVD"
383msgstr "DVD"
384
385#. module: l10n_es_aeat_modelo303
386#: code:addons/l10n_es_aeat_modelo303/wizard/wizard_chart_update.py:300
387#, python-format
388msgid "Created or updated modelo303 %s.\n"
389""
390msgstr "Modelos 303 creados o actualizados %s.\n"
391""
392
393#. module: l10n_es_aeat_modelo303
394#: selection:l10n.es.aeat.modelo303.report,state:0
395msgid "Draft"
396msgstr "Borrador"
397
398#. module: l10n_es_aeat_modelo303
399#: field:l10n.es.aeat.modelo303.report,sujeto_a_cdc:0
400msgid "Sujeto a criterio de caja"
401msgstr "Sujeto a criterio de caja"
402
403#. module: l10n_es_aeat_modelo303
404#: selection:wizard.update.charts.accounts.casilla,type:0
405#: selection:wizard.update.charts.accounts.modelo303,type:0
406msgid "Updated template"
407msgstr "Plantilla actualizada"
408
409#. module: l10n_es_aeat_modelo303
410#: selection:l10n.es.aeat.modelo303.export_to_boe,state:0
411msgid "open"
412msgstr "open"
413
414#. module: l10n_es_aeat_modelo303
415#: selection:l10n.es.aeat.modelo303.report,period:0
416msgid "August"
417msgstr "Agosto"
418
419#. module: l10n_es_aeat_modelo303
420#: selection:l10n.es.aeat.modelo303.report,type:0
421msgid "Normal"
422msgstr "Normal"
423
424#. module: l10n_es_aeat_modelo303
425#: field:l10n.es.aeat.modelo303.casilla,tax_code_ids:0
426#: field:l10n.es.aeat.modelo303.casilla.template,tax_code_ids:0
427#: field:l10n.es.aeat.modelo303.export_to_boe,state:0
428msgid "unknown"
429msgstr "unknown"
430
431#. module: l10n_es_aeat_modelo303
432#: selection:l10n.es.aeat.modelo303.report,period:0
433msgid "June"
434msgstr "Junio"
435
436#. module: l10n_es_aeat_modelo303
437#: view:l10n.es.aeat.modelo303.report:0
438msgid "AEAT 303 reports"
439msgstr "Informes AEAT 303"
440
441#. module: l10n_es_aeat_modelo303
442#: selection:l10n.es.aeat.modelo303.report,period:0
443msgid "November"
444msgstr "Noviembre"
445
446#. module: l10n_es_aeat_modelo303
447#: field:l10n.es.aeat.modelo303,date:0
448#: field:l10n.es.aeat.modelo303.template,date:0
449msgid "Fecha entrada en vigor"
450msgstr "Fecha entrada en vigor"
451
452#. module: l10n_es_aeat_modelo303
453#: selection:l10n.es.aeat.modelo303.report,period:0
454msgid "October"
455msgstr "Octubre"
456
457#. module: l10n_es_aeat_modelo303
458#: selection:l10n.es.aeat.modelo303.report,period:0
459msgid "January"
460msgstr "Enero"
461
462#. module: l10n_es_aeat_modelo303
463#: selection:l10n.es.aeat.modelo303.report,state:0
464msgid "Processed"
465msgstr "Procesado"
466
467#. module: l10n_es_aeat_modelo303
468#: selection:l10n.es.aeat.modelo303.report,period:0
469msgid "Third quarter"
470msgstr "Tercer trimestre"
471
472#. module: l10n_es_aeat_modelo303
473#: code:addons/l10n_es_aeat_modelo303/wizard/wizard_chart_update.py:387
474#, python-format
475msgid "Error"
476msgstr "Error"
477
478#. module: l10n_es_aeat_modelo303
479#: model:ir.model,name:l10n_es_aeat_modelo303.model_l10n_es_aeat_modelo303_casilla_template
480msgid "Casillas AEAT modelo 303 template"
481msgstr "Plantilla Casillas AEAT modelo 303"
482
483#. module: l10n_es_aeat_modelo303
484#: field:l10n.es.aeat.modelo303.report,representative_vat:0
485msgid "L.R. VAT number"
486msgstr "CIF/NIF R.L."
487
488#. module: l10n_es_aeat_modelo303
489#: field:l10n.es.aeat.modelo303.report,period_end_id:0
490msgid "Period end"
491msgstr "Periodo final"
492
493#. module: l10n_es_aeat_modelo303
494#: field:l10n.es.aeat.modelo303.report,type:0
495msgid "Statement Type"
496msgstr "Tipo de instrucción"
497
498#. module: l10n_es_aeat_modelo303
499#: field:l10n.es.aeat.modelo303.report,period:0
500msgid "Period"
501msgstr "Periodo"
502
503#. module: l10n_es_aeat_modelo303
504#: field:l10n.es.aeat.modelo303.report,company_vat:0
505msgid "VAT number"
506msgstr "CIF/NIF"
507
508#. module: l10n_es_aeat_modelo303
509#: field:l10n.es.aeat.modelo303.report,fiscalyear_id:0
510msgid "Fiscal year"
511msgstr "Ejercicio"
512
513#. module: l10n_es_aeat_modelo303
514#: selection:l10n.es.aeat.modelo303.report,state:0
515msgid "Done"
516msgstr "Listo"
517
518#. module: l10n_es_aeat_modelo303
519#: model:ir.actions.act_window,name:l10n_es_aeat_modelo303.action_l10n_es_aeat_modelo303_casilla_template_tree
520msgid "Template Casillas AEAT"
521msgstr "Plantillas Casillas AEAT"
522
523#. module: l10n_es_aeat_modelo303
524#: model:ir.actions.act_window,name:l10n_es_aeat_modelo303.action_l10n_es_aeat_modelo303_report
525msgid "AEAT model 303"
526msgstr "Modelo AEAT 303"
527
528#. module: l10n_es_aeat_modelo303
529#: field:wizard.update.charts.accounts.modelo303,update_modelo303_id:0
530msgid "Modelo303 to update"
531msgstr "Modelo303 a actualizar"
532
533#. module: l10n_es_aeat_modelo303
534#: selection:l10n.es.aeat.modelo303.report,period:0
535msgid "Fourth quarter"
536msgstr "Cuarto trimestre"
537
538#. module: l10n_es_aeat_modelo303
539#: view:l10n.es.aeat.modelo303.casilla:0
540#: view:l10n.es.aeat.modelo303.casilla.template:0
541msgid "Definición de casillas AEAT"
542msgstr "Definición de casillas AEAT"
543
544#. module: l10n_es_aeat_modelo303
545#: code:addons/l10n_es_aeat_modelo303/modelo303.py:348
546#, python-format
547msgid "Inscrito en el Registro de devolución mensual (Art. 30 RIVA). No está permitido para periodos 1T,2T,3T o 4T."
548msgstr "Inscrito en el Registro de devolución mensual (Art. 30 RIVA). No está permitido para periodos 1T,2T,3T o 4T."
549
550#. module: l10n_es_aeat_modelo303
551#: field:l10n.es.aeat.modelo303.report,valor_casilla_ids:0
552msgid "Valores Casillas"
553msgstr "Valores Casillas"
554
555#. module: l10n_es_aeat_modelo303
556#: field:l10n.es.aeat.modelo303.report,devolucion_mensual:0
557msgid "Devolución Mensual"
558msgstr "Devolución Mensual"
559
560#. module: l10n_es_aeat_modelo303
561#: code:addons/l10n_es_aeat_modelo303/wizard/wizard_chart_update.py:387
562#, python-format
563msgid "One or more errors detected!\n"
564"\n"
565"%s"
566msgstr "Uno o mas errores detectados!\n"
567"\n"
568"%s"
569
570#. module: l10n_es_aeat_modelo303
571#: selection:l10n.es.aeat.modelo303.report,type:0
572msgid "Complementary"
573msgstr "Complementaria"
574
575#. module: l10n_es_aeat_modelo303
576#: selection:l10n.es.aeat.modelo303.report,period:0
577msgid "May"
578msgstr "Mayo"
579
580#. module: l10n_es_aeat_modelo303
581#: field:wizard.update.charts.accounts.casilla,type:0
582#: field:wizard.update.charts.accounts.modelo303,type:0
583msgid "Type"
584msgstr "Tipo"
585
586#. module: l10n_es_aeat_modelo303
587#: field:l10n.es.aeat.modelo303.report,cuenta_ingreso_id:0
588msgid "CCC Ingreso"
589msgstr "CCC Ingreso"
590
591#. module: l10n_es_aeat_modelo303
592#: field:l10n.es.aeat.modelo303.casilla,modelo303_id:0
593#: field:l10n.es.aeat.modelo303.casilla.template,modelo303_id:0
594#: field:l10n.es.aeat.modelo303.report,modelo303_id:0
595#: view:wizard.update.charts.accounts:0
596msgid "Modelo 303"
597msgstr "Modelo 303"
598
599#. module: l10n_es_aeat_modelo303
600#: help:l10n.es.aeat.modelo303.report,representative_vat:0
601msgid "Legal Representative VAT number."
602msgstr "CIF/NIF representante legal."
603
604#. module: l10n_es_aeat_modelo303
605#: field:l10n.es.aeat.modelo303.export_to_boe,name:0
606msgid "File name"
607msgstr "Nombre archivo"
608
609#. module: l10n_es_aeat_modelo303
610#: field:wizard.update.charts.accounts,new_casillas:0
611msgid "New Casillas"
612msgstr "Nuevas Casillas"
613
614#. module: l10n_es_aeat_modelo303
615#: field:wizard.update.charts.accounts,new_modelos303:0
616msgid "New Modelos303"
617msgstr "Nuevos Modelos 303"
618
619#. module: l10n_es_aeat_modelo303
620#: selection:l10n.es.aeat.modelo303.report,period:0
621msgid "February"
622msgstr "Febrero"
623
624#. module: l10n_es_aeat_modelo303
625#: field:wizard.update.charts.accounts.casilla,update_chart_wizard_id:0
626#: field:wizard.update.charts.accounts.modelo303,update_chart_wizard_id:0
627msgid "Update chart wizard"
628msgstr "Asistente de actualización"
629
630#. module: l10n_es_aeat_modelo303
631#: selection:l10n.es.aeat.modelo303.report,period:0
632msgid "April"
633msgstr "Abril"
634
635#. module: l10n_es_aeat_modelo303
636#: field:wizard.update.charts.accounts.casilla,update_casilla_id:0
637msgid "Casilla to update"
638msgstr "Casilla a actualizar"
639
640#. module: l10n_es_aeat_modelo303
641#: help:l10n.es.aeat.modelo303.report,sujeto_a_cdc:0
642msgid "¿Ha optado por el régimen especial del criterio de Caja (art. 163 undecies LIVA)?"
643msgstr "¿Ha optado por el régimen especial del criterio de Caja (art. 163 undecies LIVA)?"
644
645#. module: l10n_es_aeat_modelo303
646#: model:ir.actions.act_window,help:l10n_es_aeat_modelo303.action_l10n_es_aeat_modelo303_report
647msgid "Create and query AEAT Model 303 reports"
648msgstr "Crea y consulta declaración AEAT del modelo 303"
649
650#. module: l10n_es_aeat_modelo303
651#: selection:l10n.es.aeat.modelo303.report,support_type:0
652msgid "Telematics"
653msgstr "Telematico"
654
655#. module: l10n_es_aeat_modelo303
656#: model:ir.actions.act_window,name:l10n_es_aeat_modelo303.action_l10n_es_aeat_modelo303_casilla_tree
657#: model:ir.ui.menu,name:l10n_es_aeat_modelo303.menu_l10n_es_aeat_modelo303_casilla
658#: model:ir.ui.menu,name:l10n_es_aeat_modelo303.menu_l10n_es_aeat_modelo303_casilla_template
659#: view:l10n.es.aeat.modelo303.casilla:0
660#: view:l10n.es.aeat.modelo303.casilla.template:0
661#: view:wizard.update.charts.accounts:0
662msgid "Casillas AEAT"
663msgstr "Casillas AEAT"
664
665#. module: l10n_es_aeat_modelo303
666#: selection:l10n.es.aeat.modelo303.report,period:0
667msgid "Second quarter"
668msgstr "Segundo trimestre"
669
670#. module: l10n_es_aeat_modelo303
671#: model:ir.ui.menu,name:l10n_es_aeat_modelo303.menu_aeat_modelo303_report
672msgid "AEAT 303 model"
673msgstr "Declaración AEAT 303"
674
675#. module: l10n_es_aeat_modelo303
676#: model:ir.model,name:l10n_es_aeat_modelo303.model_l10n_es_aeat_modelo303_export_to_boe
677msgid "Export Report to BOE Format"
678msgstr "Exportar a formato BOE"
679
680#. module: l10n_es_aeat_modelo303
681#: help:l10n.es.aeat.modelo303.report,destinatario_operaciones_cdc:0
682msgid "¿Es destinatario de operaciones a las que se aplique el régimen especial del criterio de caja?"
683msgstr "¿Es destinatario de operaciones a las que se aplique el régimen especial del criterio de caja?"
684
685#. module: l10n_es_aeat_modelo303
686#: model:ir.model,name:l10n_es_aeat_modelo303.model_wizard_update_charts_accounts
687msgid "wizard.update.charts.accounts"
688msgstr "wizard.update.charts.accounts"
689
690#. module: l10n_es_aeat_modelo303
691#: field:wizard.update.charts.accounts.casilla,casilla_id:0
692#: field:wizard.update.charts.accounts.modelo303,modelo303_id:0
693msgid "Casillas template"
694msgstr "Plantilla de Casilla"
695
696#. module: l10n_es_aeat_modelo303
697#: field:l10n.es.aeat.modelo303.export_to_boe,data:0
698msgid "File"
699msgstr "Archivo"
700
701#. module: l10n_es_aeat_modelo303
702#: sql_constraint:l10n.es.aeat.modelo303.casilla:0
703#: sql_constraint:l10n.es.aeat.modelo303.casilla.template:0
704msgid "Las casillas deben ser unicas por modelo."
705msgstr "Las casillas deben ser unicas por modelo."
0706
=== removed file 'l10n_es_aeat_mod303/i18n/l10n_es_aeat_mod303.pot'
--- l10n_es_aeat_mod303/i18n/l10n_es_aeat_mod303.pot 2014-01-23 16:41:59 +0000
+++ l10n_es_aeat_mod303/i18n/l10n_es_aeat_mod303.pot 1970-01-01 00:00:00 +0000
@@ -1,522 +0,0 @@
1# Translation of OpenERP Server.
2# This file contains the translation of the following modules:
3# * l10n_es_aeat_mod303
4#
5msgid ""
6msgstr ""
7"Project-Id-Version: OpenERP Server 7.0\n"
8"Report-Msgid-Bugs-To: \n"
9"POT-Creation-Date: 2014-01-23 16:12+0000\n"
10"PO-Revision-Date: 2014-01-23 17:15+0100\n"
11"Last-Translator: Pedro Manuel Baeza <pedro.baeza@serviciosbaeza.com>\n"
12"Language-Team: \n"
13"MIME-Version: 1.0\n"
14"Content-Type: text/plain; charset=UTF-8\n"
15"Content-Transfer-Encoding: 8bit\n"
16"Plural-Forms: \n"
17
18#. module: l10n_es_aeat_mod303
19#: field:l10n.es.aeat.mod303.report,sin_actividad:0
20msgid "Sin actividad"
21msgstr ""
22
23#. module: l10n_es_aeat_mod303
24#: view:l10n.es.aeat.mod303.report:0
25msgid "Declaración"
26msgstr ""
27
28#. module: l10n_es_aeat_mod303
29#: help:l10n.es.aeat.mod303.report,diferencia:0
30msgid "( IVA devengado - IVA deducible )"
31msgstr ""
32
33#. module: l10n_es_aeat_mod303
34#: view:l10n.es.aeat.mod303.report:0
35msgid "Devolución"
36msgstr ""
37
38#. module: l10n_es_aeat_mod303
39#: model:ir.model,name:l10n_es_aeat_mod303.model_l10n_es_aeat_mod303_report
40msgid "AEAT 303 Report"
41msgstr ""
42
43#. module: l10n_es_aeat_mod303
44#: selection:l10n.es.aeat.mod303.report,period:0
45msgid "March"
46msgstr ""
47
48#. module: l10n_es_aeat_mod303
49#: field:l10n.es.aeat.mod303.report,company_id:0
50msgid "Company"
51msgstr ""
52
53#. module: l10n_es_aeat_mod303
54#: field:l10n.es.aeat.mod303.report,devolver:0
55msgid "Devolver"
56msgstr ""
57
58#. module: l10n_es_aeat_mod303
59#: code:addons/l10n_es_aeat_mod303/mod303.py:209
60#: code:addons/l10n_es_aeat_mod303/mod303.py:223
61#, python-format
62msgid "Seleccione una cuenta para ingresar el importe"
63msgstr ""
64
65#. module: l10n_es_aeat_mod303
66#: selection:l10n.es.aeat.mod303.report,type:0
67msgid "Substitutive"
68msgstr ""
69
70#. module: l10n_es_aeat_mod303
71#: field:l10n.es.aeat.mod303.report,previous_number:0
72msgid "Previous declaration number"
73msgstr ""
74
75#. module: l10n_es_aeat_mod303
76#: field:l10n.es.aeat.mod303.report,contact_name:0
77msgid "Full name"
78msgstr ""
79
80#. module: l10n_es_aeat_mod303
81#: code:addons/l10n_es_aeat_mod303/mod303.py:136
82#: code:addons/l10n_es_aeat_mod303/mod303.py:153
83#, python-format
84msgid "El periodo seleccionado no coincide con los periodos del ejercicio fiscal: "
85msgstr ""
86
87#. module: l10n_es_aeat_mod303
88#: selection:l10n.es.aeat.mod303.export_to_boe,state:0
89msgid "get"
90msgstr ""
91
92#. module: l10n_es_aeat_mod303
93#: field:l10n.es.aeat.mod303.export_to_boe,name:0
94msgid "File name"
95msgstr ""
96
97#. module: l10n_es_aeat_mod303
98#: field:l10n.es.aeat.mod303.report,number:0
99msgid "Declaration number"
100msgstr ""
101
102#. module: l10n_es_aeat_mod303
103#: field:l10n.es.aeat.mod303.report,previus_result:0
104msgid "A deducir"
105msgstr ""
106
107#. module: l10n_es_aeat_mod303
108#: selection:l10n.es.aeat.mod303.report,state:0
109msgid "Cancelled"
110msgstr ""
111
112#. module: l10n_es_aeat_mod303
113#: field:l10n.es.aeat.mod303.report,complementaria:0
114msgid "Autoliquidación complementaria"
115msgstr ""
116
117#. module: l10n_es_aeat_mod303
118#: model:ir.actions.act_window,name:l10n_es_aeat_mod303.action_wizard_aeat_mod303_export
119msgid "Export AEAT 303 BOE file"
120msgstr ""
121
122#. module: l10n_es_aeat_mod303
123#: code:addons/l10n_es_aeat_mod303/wizard/export_mod303_to_boe.py:126
124#: code:addons/l10n_es_aeat_mod303/wizard/export_mod303_to_boe.py:146
125#, python-format
126msgid "Warning"
127msgstr ""
128
129#. module: l10n_es_aeat_mod303
130#: view:l10n.es.aeat.mod303.report:0
131msgid "413"
132msgstr ""
133
134#. module: l10n_es_aeat_mod303
135#: field:l10n.es.aeat.mod303.report,company_partner_id:0
136msgid "Partner"
137msgstr ""
138
139#. module: l10n_es_aeat_mod303
140#: help:l10n.es.aeat.mod303.report,previus_result:0
141msgid "Resultado de la anterior o anteriores del mismo concepto, ejercicio y periodo"
142msgstr ""
143
144#. module: l10n_es_aeat_mod303
145#: selection:l10n.es.aeat.mod303.report,period:0
146msgid "February"
147msgstr ""
148
149#. module: l10n_es_aeat_mod303
150#: help:l10n.es.aeat.mod303.report,porcentaje_atribuible_estado:0
151msgid "Los sujetos pasivos que tributen conjuntamente a la Administración del Estado y a las Diputaciones Forales del País Vasco o a la Comunidad Foral de Navarra, consignarán en esta casilla el porcentaje del volumen de operaciones en territorio común. Los demás sujetos pasivos consignarán en esta casilla el 100%"
152msgstr ""
153
154#. module: l10n_es_aeat_mod303
155#: field:l10n.es.aeat.mod303.report,state:0
156msgid "State"
157msgstr ""
158
159#. module: l10n_es_aeat_mod303
160#: selection:l10n.es.aeat.mod303.report,period:0
161msgid "First quarter"
162msgstr ""
163
164#. module: l10n_es_aeat_mod303
165#: field:l10n.es.aeat.mod303.report,support_type:0
166msgid "Support Type"
167msgstr ""
168
169#. module: l10n_es_aeat_mod303
170#: code:addons/l10n_es_aeat_mod303/wizard/export_mod303_to_boe.py:193
171#, python-format
172msgid "%Y-%m-%d"
173msgstr ""
174
175#. module: l10n_es_aeat_mod303
176#: selection:l10n.es.aeat.mod303.report,period:0
177msgid "July"
178msgstr ""
179
180#. module: l10n_es_aeat_mod303
181#: code:addons/l10n_es_aeat_mod303/mod303.py:211
182#: code:addons/l10n_es_aeat_mod303/mod303.py:225
183#, python-format
184msgid "Seleccione una cuenta para realizar la devolución"
185msgstr ""
186
187#. module: l10n_es_aeat_mod303
188#: help:l10n.es.aeat.mod303.report,devolucion_mensual:0
189msgid "Inscrito en el Registro de Devolución Mensual"
190msgstr ""
191
192#. module: l10n_es_aeat_mod303
193#: code:addons/l10n_es_aeat_mod303/wizard/export_mod303_to_boe.py:127
194#, python-format
195msgid ""
196"CCC de devolución no válida \n"
197"%s"
198msgstr ""
199
200#. module: l10n_es_aeat_mod303
201#: field:l10n.es.aeat.mod303.report,calculation_date:0
202msgid "Calculation date"
203msgstr ""
204
205#. module: l10n_es_aeat_mod303
206#: field:l10n.es.aeat.mod303.report,cuenta_devolucion_id:0
207msgid "CCC devolución"
208msgstr ""
209
210#. module: l10n_es_aeat_mod303
211#: field:l10n.es.aeat.mod303.report,ingresar:0
212msgid "Ingresar"
213msgstr ""
214
215#. module: l10n_es_aeat_mod303
216#: code:addons/l10n_es_aeat_mod303/mod303.py:198
217#: code:addons/l10n_es_aeat_mod303/mod303.py:212
218#, python-format
219msgid "El valor añadido para la regularizacion anual no se ha tenido en cuenta por no ser un periodo de cierre (12 o 4T)"
220msgstr ""
221
222#. module: l10n_es_aeat_mod303
223#: selection:l10n.es.aeat.mod303.report,period:0
224msgid "September"
225msgstr ""
226
227#. module: l10n_es_aeat_mod303
228#: selection:l10n.es.aeat.mod303.report,period:0
229msgid "December"
230msgstr ""
231
232#. module: l10n_es_aeat_mod303
233#: view:l10n.es.aeat.mod303.report:0
234msgid "Compensación"
235msgstr ""
236
237#. module: l10n_es_aeat_mod303
238#: view:l10n.es.aeat.mod303.report:0
239msgid "Ingreso"
240msgstr ""
241
242#. module: l10n_es_aeat_mod303
243#: code:addons/l10n_es_aeat_mod303/wizard/export_mod303_to_boe.py:175
244#, python-format
245msgid "AEAT Model is necessary"
246msgstr ""
247
248#. module: l10n_es_aeat_mod303
249#: selection:l10n.es.aeat.mod303.report,support_type:0
250msgid "DVD"
251msgstr ""
252
253#. module: l10n_es_aeat_mod303
254#: selection:l10n.es.aeat.mod303.report,state:0
255msgid "Draft"
256msgstr ""
257
258#. module: l10n_es_aeat_mod303
259#: field:l10n.es.aeat.mod303.report,company_vat:0
260msgid "VAT number"
261msgstr ""
262
263#. module: l10n_es_aeat_mod303
264#: field:l10n.es.aeat.mod303.report,diferencia:0
265msgid "Diferencia"
266msgstr ""
267
268#. module: l10n_es_aeat_mod303
269#: help:l10n.es.aeat.mod303.report,cuota_compensar:0
270msgid "Cuota a compensar de periodos anteriores"
271msgstr ""
272
273#. module: l10n_es_aeat_mod303
274#: selection:l10n.es.aeat.mod303.export_to_boe,state:0
275msgid "open"
276msgstr ""
277
278#. module: l10n_es_aeat_mod303
279#: code:addons/l10n_es_aeat_mod303/wizard/export_mod303_to_boe.py:43
280#: code:addons/l10n_es_aeat_mod303/wizard/export_mod303_to_boe.py:44
281#, python-format
282msgid "The identification (1) and income (2) must be 72 characters long"
283msgstr ""
284
285#. module: l10n_es_aeat_mod303
286#: field:l10n.es.aeat.mod303.report,resultado_liquidacion:0
287msgid "Resultado liquidación"
288msgstr ""
289
290#. module: l10n_es_aeat_mod303
291#: selection:l10n.es.aeat.mod303.report,period:0
292msgid "August"
293msgstr ""
294
295#. module: l10n_es_aeat_mod303
296#: selection:l10n.es.aeat.mod303.report,type:0
297msgid "Normal"
298msgstr ""
299
300#. module: l10n_es_aeat_mod303
301#: field:l10n.es.aeat.mod303.export_to_boe,state:0
302msgid "unknown"
303msgstr ""
304
305#. module: l10n_es_aeat_mod303
306#: selection:l10n.es.aeat.mod303.report,period:0
307msgid "June"
308msgstr ""
309
310#. module: l10n_es_aeat_mod303
311#: code:addons/l10n_es_aeat_mod303/wizard/export_mod303_to_boe.py:115
312#, python-format
313msgid "The vat records must be 749 characters long and are %s"
314msgstr ""
315
316#. module: l10n_es_aeat_mod303
317#: view:l10n.es.aeat.mod303.report:0
318msgid "AEAT 303 reports"
319msgstr ""
320
321#. module: l10n_es_aeat_mod303
322#: selection:l10n.es.aeat.mod303.report,period:0
323msgid "November"
324msgstr ""
325
326#. module: l10n_es_aeat_mod303
327#: selection:l10n.es.aeat.mod303.report,period:0
328msgid "October"
329msgstr ""
330
331#. module: l10n_es_aeat_mod303
332#: selection:l10n.es.aeat.mod303.report,period:0
333msgid "January"
334msgstr ""
335
336#. module: l10n_es_aeat_mod303
337#: selection:l10n.es.aeat.mod303.report,state:0
338msgid "Processed"
339msgstr ""
340
341#. module: l10n_es_aeat_mod303
342#: selection:l10n.es.aeat.mod303.report,period:0
343msgid "Third quarter"
344msgstr ""
345
346#. module: l10n_es_aeat_mod303
347#: field:l10n.es.aeat.mod303.report,representative_vat:0
348msgid "L.R. VAT number"
349msgstr ""
350
351#. module: l10n_es_aeat_mod303
352#: field:l10n.es.aeat.mod303.report,compensar:0
353msgid "Compensar"
354msgstr ""
355
356#. module: l10n_es_aeat_mod303
357#: field:l10n.es.aeat.mod303.report,cuota_compensar:0
358msgid "Cuotas a compensar"
359msgstr ""
360
361#. module: l10n_es_aeat_mod303
362#: field:l10n.es.aeat.mod303.report,type:0
363msgid "Statement Type"
364msgstr ""
365
366#. module: l10n_es_aeat_mod303
367#: field:l10n.es.aeat.mod303.report,period:0
368msgid "Period"
369msgstr ""
370
371#. module: l10n_es_aeat_mod303
372#: field:l10n.es.aeat.mod303.report,atribuible_estado:0
373msgid "Atribuible a la Administración"
374msgstr ""
375
376#. module: l10n_es_aeat_mod303
377#: field:l10n.es.aeat.mod303.report,fiscalyear_id:0
378msgid "Fiscal year"
379msgstr ""
380
381#. module: l10n_es_aeat_mod303
382#: selection:l10n.es.aeat.mod303.report,state:0
383msgid "Done"
384msgstr ""
385
386#. module: l10n_es_aeat_mod303
387#: model:ir.actions.act_window,name:l10n_es_aeat_mod303.action_l10n_es_aeat_mod303_report
388msgid "AEAT model 303"
389msgstr ""
390
391#. module: l10n_es_aeat_mod303
392#: view:l10n.es.aeat.mod303.report:0
393msgid "Importe"
394msgstr ""
395
396#. module: l10n_es_aeat_mod303
397#: selection:l10n.es.aeat.mod303.report,period:0
398msgid "Fourth quarter"
399msgstr ""
400
401#. module: l10n_es_aeat_mod303
402#: field:l10n.es.aeat.mod303.report,devolucion_mensual:0
403msgid "Devolución Mensual"
404msgstr ""
405
406#. module: l10n_es_aeat_mod303
407#: code:addons/l10n_es_aeat_mod303/wizard/export_mod303_to_boe.py:171
408#: code:addons/l10n_es_aeat_mod303/wizard/export_mod303_to_boe.py:187
409#, python-format
410msgid "The 303 report must be 1353 characters long and are %s"
411msgstr ""
412
413#. module: l10n_es_aeat_mod303
414#: selection:l10n.es.aeat.mod303.report,type:0
415msgid "Complementary"
416msgstr ""
417
418#. module: l10n_es_aeat_mod303
419#: field:l10n.es.aeat.mod303.report,total_devengado:0
420msgid "IVA devengado"
421msgstr ""
422
423#. module: l10n_es_aeat_mod303
424#: field:l10n.es.aeat.mod303.report,cuenta_ingreso_id:0
425msgid "CCC Ingreso"
426msgstr ""
427
428#. module: l10n_es_aeat_mod303
429#: help:l10n.es.aeat.mod303.report,representative_vat:0
430msgid "Legal Representative VAT number."
431msgstr ""
432
433#. module: l10n_es_aeat_mod303
434#: view:l10n.es.aeat.mod303.report:0
435msgid "Complementaria"
436msgstr ""
437
438#. module: l10n_es_aeat_mod303
439#: view:l10n.es.aeat.mod303.report:0
440#: field:l10n.es.aeat.mod303.report,resultado_casilla_46:0
441msgid "Resultado"
442msgstr ""
443
444#. module: l10n_es_aeat_mod303
445#: code:addons/l10n_es_aeat_mod303/wizard/export_mod303_to_boe.py:192
446#, python-format
447msgid "%s_report_%s.txt"
448msgstr ""
449
450#. module: l10n_es_aeat_mod303
451#: help:l10n.es.aeat.mod303.report,regularizacion_anual:0
452msgid "En la última autoliquidación del año (la del período 4T o mes 12) se hará constar, con el signo que corresponda, el resultado de la regularización anual conforme disponen las Leyes por las que se aprueban el Concierto Económico entre el Estado y la Comunidad Autónoma del País Vasco y el Convenio Económico entre el Estado y la Comunidad Foral de Navarra."
453msgstr ""
454
455#. module: l10n_es_aeat_mod303
456#: field:l10n.es.aeat.mod303.report,total_deducir:0
457msgid "IVA a deducir"
458msgstr ""
459
460#. module: l10n_es_aeat_mod303
461#: selection:l10n.es.aeat.mod303.report,period:0
462msgid "April"
463msgstr ""
464
465#. module: l10n_es_aeat_mod303
466#: field:l10n.es.aeat.mod303.report,regularizacion_anual:0
467msgid "Regularización anual"
468msgstr ""
469
470#. module: l10n_es_aeat_mod303
471#: model:ir.actions.act_window,help:l10n_es_aeat_mod303.action_l10n_es_aeat_mod303_report
472msgid "Create and query AEAT Model 303 reports"
473msgstr ""
474
475#. module: l10n_es_aeat_mod303
476#: selection:l10n.es.aeat.mod303.report,support_type:0
477msgid "Telematics"
478msgstr ""
479
480#. module: l10n_es_aeat_mod303
481#: code:addons/l10n_es_aeat_mod303/wizard/export_mod303_to_boe.py:147
482#, python-format
483msgid "CCC de ingreso no válido %s"
484msgstr ""
485
486#. module: l10n_es_aeat_mod303
487#: selection:l10n.es.aeat.mod303.report,period:0
488msgid "Second quarter"
489msgstr ""
490
491#. module: l10n_es_aeat_mod303
492#: model:ir.ui.menu,name:l10n_es_aeat_mod303.menu_aeat_mod303_report
493msgid "AEAT 303 model"
494msgstr ""
495
496#. module: l10n_es_aeat_mod303
497#: model:ir.model,name:l10n_es_aeat_mod303.model_l10n_es_aeat_mod303_export_to_boe
498msgid "Export Report to BOE Format"
499msgstr ""
500
501#. module: l10n_es_aeat_mod303
502#: code:addons/l10n_es_aeat_mod303/mod303.py:213
503#: code:addons/l10n_es_aeat_mod303/mod303.py:227
504#, python-format
505msgid "No hay actividad en el periodo seleccionado. Marque la casilla correspondinte"
506msgstr ""
507
508#. module: l10n_es_aeat_mod303
509#: selection:l10n.es.aeat.mod303.report,period:0
510msgid "May"
511msgstr ""
512
513#. module: l10n_es_aeat_mod303
514#: field:l10n.es.aeat.mod303.export_to_boe,data:0
515msgid "File"
516msgstr ""
517
518#. module: l10n_es_aeat_mod303
519#: help:l10n.es.aeat.mod303.report,resultado_casilla_46:0
520msgid "Atribuible a la Administración [40] - Cuotas a compensar [41] + Regularización anual [45]"
521msgstr ""
522
5230
=== removed directory 'l10n_es_aeat_mod303/migrations'
=== removed directory 'l10n_es_aeat_mod303/migrations/1.1'
=== removed file 'l10n_es_aeat_mod303/migrations/1.1/pre-migration.py'
--- l10n_es_aeat_mod303/migrations/1.1/pre-migration.py 2014-01-23 16:41:59 +0000
+++ l10n_es_aeat_mod303/migrations/1.1/pre-migration.py 1970-01-01 00:00:00 +0000
@@ -1,73 +0,0 @@
1# -*- coding: utf-8 -*-
2##############################################################################
3#
4# This program is free software: you can redistribute it and/or modify
5# it under the terms of the GNU Affero General Public License as
6# published by the Free Software Foundation, either version 3 of the
7# License, or (at your option) any later version.
8#
9# This program is distributed in the hope that it will be useful,
10# but WITHOUT ANY WARRANTY; without even the implied warranty of
11# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12# GNU Affero General Public License for more details.
13#
14# You should have received a copy of the GNU Affero General Public License
15# along with this program. If not, see <http://www.gnu.org/licenses/>.
16#
17##############################################################################
18
19def migrate(cr, version):
20 if not version:
21 return
22 models = [
23 "workflow.transition",
24 "workflow.activity",
25 "workflow",
26 ]
27 models_dict = {
28 "workflow.transition": "wkf_transition",
29 "workflow.activity": "wkf_activity",
30 "workflow": "wkf",
31 }
32 # Delete workflow workitems
33 cr.execute("""DELETE FROM
34 wkf_workitem
35 WHERE
36 act_id
37 IN
38 (SELECT id FROM
39 wkf_activity
40 WHERE
41 wkf_id
42 IN
43 (SELECT id FROM wkf
44 WHERE wkf.osv='l10n.es.aeat.mod303.report'))
45 """)
46 # Delete workflow instances
47 cr.execute("""DELETE FROM
48 wkf_instance
49 WHERE
50 wkf_id
51 IN
52 (SELECT id FROM wkf
53 WHERE wkf.osv='l10n.es.aeat.mod303.report')
54 """)
55 # Delete rest of the data
56 for model in models:
57 cr.execute("""DELETE FROM
58 %(table)s
59 WHERE
60 id
61 IN
62 (SELECT res_id FROM ir_model_data AS imd
63 WHERE imd.module='l10n_es_aeat_mod303'
64 AND imd.model='%(model)s')
65 """ % ({'table': models_dict[model], 'model': model}))
66 # Delete XML IDs
67 cr.execute("""DELETE FROM
68 ir_model_data
69 WHERE
70 module='l10n_es_aeat_mod303'
71 AND
72 model IN %s
73 """, (tuple(models),))
740
=== removed file 'l10n_es_aeat_mod303/mod303.py'
--- l10n_es_aeat_mod303/mod303.py 2014-01-23 16:41:59 +0000
+++ l10n_es_aeat_mod303/mod303.py 1970-01-01 00:00:00 +0000
@@ -1,218 +0,0 @@
1# -*- encoding: utf-8 -*-
2##############################################################################
3#
4# This program is free software: you can redistribute it and/or modify
5# it under the terms of the GNU General Public License as published by
6# the Free Software Foundation, either version 3 of the License, or
7# (at your option) any later version.
8#
9# This program is distributed in the hope that it will be useful,
10# but WITHOUT ANY WARRANTY; without even the implied warranty of
11# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12# GNU General Public License for more details.
13#
14# You should have received a copy of the GNU General Public License
15# along with this program. If not, see http://www.gnu.org/licenses/.
16#
17##############################################################################
18from datetime import datetime
19from dateutil.relativedelta import relativedelta
20from openerp.osv import orm, fields
21from openerp.tools.translate import _
22from openerp.addons.account.report.account_tax_report import tax_report
23
24class l10n_es_aeat_mod303_report(orm.Model):
25 _inherit = "l10n.es.aeat.report"
26 _name = "l10n.es.aeat.mod303.report"
27 _description = "AEAT 303 Report"
28
29 _columns = {
30 'company_partner_id': fields.related('company_id', 'partner_id',
31 type='many2one', relation='res.partner', string='Partner',
32 store=True),
33 'period': fields.selection(
34 [('1T', 'First quarter'), ('2T', 'Second quarter'),
35 ('3T', 'Third quarter'), ('4T', 'Fourth quarter'),
36 ('01', 'January'), ('02', 'February'), ('03', 'March'),
37 ('04', 'April'), ('05', 'May'), ('06', 'June'),
38 ('07', 'July'), ('08', 'August'), ('09', 'September'),
39 ('10', 'October'), ('11', 'November'), ('12', 'December')],
40 'Period', states={'done':[('readonly',True)]}),
41 'devolucion_mensual': fields.boolean("Devolución Mensual",
42 help="Inscrito en el Registro de Devolución Mensual",
43 states={'done':[('readonly',True)]}),
44 'complementaria': fields.boolean("Autoliquidación complementaria",
45 states={'done':[('readonly',True)]}),
46 'contact_name': fields.char("Full name", size=40),
47 'total_devengado': fields.float("IVA devengado", readonly=True), # 21
48 'total_deducir': fields.float("IVA a deducir", readonly=True), # 37
49 'diferencia': fields.float("Diferencia", readonly=True,
50 help="( IVA devengado - IVA deducible )"), # 38
51 'porcentaje_atribuible_estado' : fields.float("%",
52 help="Los sujetos pasivos que tributen conjuntamente a la "
53 "Administración del Estado y a las Diputaciones Forales "
54 "del País Vasco o a la Comunidad Foral de Navarra, "
55 "consignarán en esta casilla el porcentaje del volumen "
56 "de operaciones en territorio común. Los demás sujetos "
57 "pasivos consignarán en esta casilla el 100%",
58 states={'done':[('readonly',True)]}), ## 39
59 'atribuible_estado': fields.float("Atribuible a la Administración",
60 readonly=True), ## 40
61 'cuota_compensar': fields.float("Cuotas a compensar",
62 help="Cuota a compensar de periodos anteriores",
63 states={'done':[('readonly',True)]}), ## 41
64 'regularizacion_anual': fields.float("Regularización anual",
65 help="En la última autoliquidación del año (la del período "
66 "4T o mes 12) se hará constar, con el signo que "
67 "corresponda, el resultado de la regularización anual "
68 "conforme disponen las Leyes por las que se aprueban el "
69 "Concierto Económico entre el Estado y la Comunidad "
70 "Autónoma del País Vasco y el Convenio Económico entre "
71 "el Estado y la Comunidad Foral de Navarra.""",
72 states={'done':[('readonly',True)]}), ## 45
73 'resultado_casilla_46': fields.float("Resultado",
74 help="Atribuible a la Administración [40] - Cuotas a compensar "
75 "[41] + Regularización anual [45]""", readonly=True), # 46
76 'previus_result': fields.float("A deducir",
77 help="Resultado de la anterior o anteriores del mismo "
78 "concepto, ejercicio y periodo",
79 states={'done':[('readonly',True)]}), # 47
80 'resultado_liquidacion': fields.float("Resultado liquidación",
81 readonly=True), # 48
82 'compensar': fields.float("Compensar",
83 states={'done':[('readonly',True)]}), # 49
84 "devolver": fields.float("Devolver",
85 states={'done':[('readonly',True)]}),
86 "ingresar": fields.float("Ingresar",
87 states={'done':[('readonly',True)]}),
88 'cuenta_devolucion_id': fields.many2one("res.partner.bank",
89 "CCC devolución", states={'done':[('readonly',True)]}),
90 'cuenta_ingreso_id': fields.many2one("res.partner.bank",
91 "CCC Ingreso", states={'done':[('readonly',True)]}),
92 'sin_actividad': fields.boolean("Sin actividad",
93 states={'done':[('readonly',True)]}),
94 }
95
96 _defaults = {
97 'number' : '303',
98 'porcentaje_atribuible_estado': 100,
99 'cuota_compensar' : 0,
100 }
101
102 def _get_period(self, cr, uid, ids, context=None):
103 period_obj = self.pool.get("account.period")
104 quarter_dict = {
105 "1T": 'first',
106 "2T": 'second',
107 "3T": 'third',
108 "4T": 'fourth',
109 }
110 account_period_id = []
111 for mod303 in self.browse(cr, uid, ids, context=context):
112 fecha_ini = False
113 fecha_fin = False
114 dec_year = mod303.fiscalyear_id.date_start.split('-')[0]
115 mod = mod303.period
116 if mod >= '01' and mod <= '12':
117 fecha_ini = datetime.strptime('%s-%s-01' %(dec_year, mod), '%Y-%m-%d')
118 fecha_fin = fecha_ini + relativedelta(months=+1, days=-1)
119 account_period_id = period_obj.search(cr, uid,
120 [('date_start', '=', fecha_ini),
121 ('date_stop', '=', fecha_fin)],
122 context=context)
123 elif mod in ('1T', '2T', '3T', '4T'):
124 month = ((int(mod[0]) - 1) * 3) + 1
125 fecha_ini = datetime.strptime('%s-%s-01' %(dec_year, month), '%Y-%m-%d')
126 fecha_fin = fecha_ini + relativedelta(months=3, days=-1)
127 account_period_id = period_obj.search(cr, uid,
128 [('date_start', '=', fecha_ini),
129 ('date_stop', '=', fecha_fin)],
130 context=context)
131 if not account_period_id:
132 account_period_id = period_obj.search(cr, uid,
133 [('quarter', '=', quarter_dict[mod])],
134 context=context)
135 if not account_period_id:
136 raise orm.except_orm(_('El periodo seleccionado no coincide '
137 'con los periodos del ejercicio fiscal: '), dec_year)
138 return account_period_id
139
140 def _get_report_lines(self, cr, uid, ids, context=None):
141 if isinstance(ids, list):
142 id = ids[0]
143 else:
144 id = ids
145 dict_code_values = {}
146 for i in range(1, 51):
147 dict_code_values["[%.2d]" %i] = 0
148 mod303 = self.browse(cr, uid, id, context=context)
149 generated_report = tax_report(cr, uid, "account.vat.declaration")
150 generated_report.period_ids = self._get_period(cr, uid, [mod303.id],
151 context=context)
152 generated_report.display_detail = False
153 try:
154 lines = generated_report._get_lines('invoices',
155 company_id=mod303.company_id.id)
156 except TypeError:
157 # Este error ocurre en la rama OCB, ya que se ha añadido en la
158 # revisión 9599 un nuevo parámetro posicional al método.
159 # Publicado como bug #1269965, pendiente de resolución, esto
160 # es un parche temporal
161 lines = generated_report._get_lines('invoices', False,
162 company_id=mod303.company_id.id)
163 ordered_lines = sorted(lines, key=lambda k: k['code'])
164 for code in dict_code_values.keys():
165 for line in ordered_lines:
166 if code == line["code"]:
167 dict_code_values[code] += line["tax_amount"]
168 return dict_code_values
169
170 def calculate(self, cr, uid, ids, context=None):
171 for mod303 in self.browse(cr, uid, ids, context=context):
172 report_lines = self._get_report_lines(cr, uid, mod303.id,
173 context=context)
174 regularizacion_anual = (mod303.regularizacion_anual if
175 (mod303.period == "4T" or
176 mod303.period == "12") else 0)
177 total_devengado = report_lines.get("[21]")
178 total_deducir = report_lines.get("[37]")
179 atribuible_estado = ((total_devengado - total_deducir) *
180 mod303.porcentaje_atribuible_estado / 100)
181 casilla_46 = (atribuible_estado - mod303.cuota_compensar +
182 regularizacion_anual)
183 previus_result = mod303.previus_result if mod303.complementaria else 0
184 resultado_liquidacion = casilla_46 - previus_result
185 vals = {
186 'total_devengado': total_devengado,
187 'total_deducir': total_deducir,
188 'diferencia': total_devengado - total_deducir,
189 'atribuible_estado': atribuible_estado,
190 'resultado_casilla_46': casilla_46,
191 'resultado_liquidacion': resultado_liquidacion,
192 'compensar': abs(resultado_liquidacion) if resultado_liquidacion < 0 and mod303.devolver == 0 else 0,
193 'ingresar': resultado_liquidacion if resultado_liquidacion > 0 else 0
194 }
195 if (mod303.regularizacion_anual > 0 and not
196 (mod303.period == "4T" and mod303.period == "12")):
197 self.log(cr, uid, mod303.id,
198 _("El valor añadido para la regularizacion anual no se ha "
199 "tenido en cuenta por no ser un periodo de cierre (12 o "
200 "4T)"), context=context)
201 self.write(cr, uid, mod303.id, vals, context=context)
202 return True
203
204 def button_confirm(self, cr, uid, ids, context=None):
205 """Check its records"""
206 msg = ""
207 for mod303 in self.browse(cr, uid, ids, context=context):
208 if mod303.ingresar > 0 and not mod303.cuenta_ingreso_id:
209 msg = _('Seleccione una cuenta para ingresar el importe')
210 if mod303.devolver > 0 and not mod303.cuenta_devolucion_id:
211 msg = _('Seleccione una cuenta para realizar la devolución')
212 if mod303.resultado_liquidacion == 0 and not mod303.sin_actividad:
213 msg = _("No hay actividad en el periodo seleccionado. "
214 "Marque la casilla correspondinte")
215 if msg:
216 raise orm.except_orm("", msg)
217 return super(l10n_es_aeat_mod303_report, self).button_confirm(cr, uid,
218 ids, context=context)
2190
=== removed file 'l10n_es_aeat_mod303/mod303_view.xml'
--- l10n_es_aeat_mod303/mod303_view.xml 2014-01-23 16:41:59 +0000
+++ l10n_es_aeat_mod303/mod303_view.xml 1970-01-01 00:00:00 +0000
@@ -1,112 +0,0 @@
1<?xml version="1.0" encoding="utf-8"?>
2<openerp>
3 <data>
4 <!-- Tree view -->
5 <record id="view_l10n_es_aeat_mod303_report_tree" model="ir.ui.view">
6 <field name="name">l10n_es.aeat.mod303.report.tree</field>
7 <field name="model">l10n.es.aeat.mod303.report</field>
8 <field name="inherit_id" ref="l10n_es_aeat.view_l10n_es_aeat_report_tree"/>
9 <field name="arch" type="xml">
10 <tree position="attributes">
11 <attribute name="string">AEAT 303 reports</attribute>=
12 </tree>
13 <field name="fiscalyear_id" position="after">
14 <field name="period"/>
15 <field name="total_devengado"/>
16 <field name="total_deducir"/>
17 <field name="porcentaje_atribuible_estado"/>
18 <field name="resultado_liquidacion"/>
19 </field>
20 </field>
21 </record>
22
23 <!-- Form view -->
24 <record id="view_l10n_es_aeat_mod303_report_form" model="ir.ui.view">
25 <field name="name">l10n_es.aeat.mod303.report.form</field>
26 <field name="model">l10n.es.aeat.mod303.report</field>
27 <field name="inherit_id" ref="l10n_es_aeat.view_l10n_es_aeat_report_form"/>
28 <field name="arch" type="xml">
29 <button name="%(l10n_es_aeat.action_wizard_aeat_export)d" position="attributes">
30 <attribute name="name">%(action_wizard_aeat_mod303_export)d</attribute>
31 </button>
32 <field name="fiscalyear_id" position="after">
33 <field name="period" required="True"/>
34 </field>
35 <field name="calculation_date" position="after">
36 <field name="devolucion_mensual"/>
37 <field name="complementaria"/>
38 <field name="sin_actividad"/>
39 </field>
40 <group string="Declaración" position="after">
41 <group string="Complementaria" attrs="{'invisible': [('complementaria', '=', False)]}" colspan="4">
42 <field name="previus_result"
43 attrs="{'required': [('complementaria', '=', True)]}" />
44 <field name="previous_number"
45 attrs="{'required': [('complementaria', '=', True)]}"/>
46 </group>
47 <group string="Resultado" colspan="4" col="6">
48 <group>
49 <field name="total_devengado"/>
50 <field name="total_deducir"/>
51 <field name="diferencia"/>
52 </group>
53 <group>
54 <field name="porcentaje_atribuible_estado"/>
55 <field name="atribuible_estado"/>
56 <field name="cuota_compensar"/>
57 </group>
58 <group>
59 <field name="regularizacion_anual"/>
60 <field name="resultado_casilla_46"/>
61 <field name="resultado_liquidacion"/>
62 </group>
63 </group>
64 <group attrs="{'invisible':[('resultado_liquidacion', '=', 0)]}">
65 <field name="company_partner_id" invisible="1"/>
66 <group colspan="6" col="6" attrs="{'invisible': ['|', ('resultado_liquidacion', '>', 0),('state', '=', 'draft')]}">
67 <group colspan="2" string="Compensación">
68 <field name="compensar" string="Importe"/>
69 </group>
70 <group string="Devolución" col="4">
71 <field name="devolver" colspan="2" string="Importe"/>
72 <field name="cuenta_devolucion_id" colspan="2" attrs="{'required': [('devolver', '>', 0)]}" domain="[('partner_id', '=', company_partner_id)]"/>
73 </group>
74 </group>
75 <group string="Ingreso" attrs="{'invisible': ['|', ('resultado_liquidacion', '&lt;', 0), ('state','=','draft')]}" col="4">
76 <field name="ingresar" string="Importe"/>
77 <field name="cuenta_ingreso_id" attrs="{'required': [('ingresar', '>', 0)]}" domain="[('partner_id', '=', company_partner_id)]"/>
78 </group>
79 </group>
80 </group>
81 </field>
82 </record>
83
84 <!-- Window action -->
85 <record id="action_l10n_es_aeat_mod303_report" model="ir.actions.act_window">
86 <field name="name">AEAT model 303</field>
87 <field name="res_model">l10n.es.aeat.mod303.report</field>
88 <field name="view_type">form</field>
89 <field name="view_mode">tree,form</field>
90 <field name="help">Create and query AEAT Model 303 reports</field>
91 </record>
92 <record model="ir.actions.act_window.view" id="action_l10n_es_aeat_mod303_report_tree">
93 <field name="sequence" eval="2"/>
94 <field name="view_mode">tree</field>
95 <field name="view_id" ref="view_l10n_es_aeat_mod303_report_tree"/>
96 <field name="act_window_id" ref="action_l10n_es_aeat_mod303_report"/>
97 </record>
98 <record model="ir.actions.act_window.view" id="action_l10n_es_aeat_mod303_report_form">
99 <field name="sequence" eval="3"/>
100 <field name="view_mode">form</field>
101 <field name="view_id" ref="view_l10n_es_aeat_mod303_report_form"/>
102 <field name="act_window_id" ref="action_l10n_es_aeat_mod303_report"/>
103 </record>
104
105 <!-- ### MENU ACCESS ### -->
106 <menuitem id="menu_aeat_mod303_report"
107 parent="l10n_es_aeat.menu_root_aeat"
108 action="action_l10n_es_aeat_mod303_report"
109 sequence="303"
110 name="AEAT 303 model"/>
111 </data>
112</openerp>
1130
=== added file 'l10n_es_aeat_mod303/modelo303.py'
--- l10n_es_aeat_mod303/modelo303.py 1970-01-01 00:00:00 +0000
+++ l10n_es_aeat_mod303/modelo303.py 2014-04-16 11:51:06 +0000
@@ -0,0 +1,351 @@
1# -*- encoding: utf-8 -*-
2##############################################################################
3#
4# This program is free software: you can redistribute it and/or modify
5# it under the terms of the GNU General Public License as published by
6# the Free Software Foundation, either version 3 of the License, or
7# (at your option) any later version.
8#
9# This program is distributed in the hope that it will be useful,
10# but WITHOUT ANY WARRANTY; without even the implied warranty of
11# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12# GNU General Public License for more details.
13#
14# You should have received a copy of the GNU General Public License
15# along with this program. If not, see http://www.gnu.org/licenses/.
16#
17##############################################################################
18from datetime import datetime
19import re
20from dateutil.relativedelta import relativedelta
21
22from openerp.osv import orm, fields
23from openerp.tools.translate import _
24from openerp.tools.safe_eval import safe_eval
25from openerp.addons.account.report.account_tax_report import tax_report
26
27
28###### 303 templates ######
29
30class l10n_es_aeat_modelo303_template(orm.Model):
31 _name = "l10n.es.aeat.modelo303.template"
32 _description = "AEAT modelo 303 template"
33
34 _columns = {
35 'name': fields.char('Nombre', size=256, required=True),
36 'date': fields.date("Fecha entrada en vigor"),
37 'template': fields.text('Template', readonly=True)
38 }
39
40l10n_es_aeat_modelo303_template()
41
42class l10n_es_aeat_modelo303_casilla_template(orm.Model):
43 _name = "l10n.es.aeat.modelo303.casilla.template"
44 _description = "Casillas AEAT modelo 303 template"
45
46 _columns = {
47 'modelo303_id': fields.many2one('l10n.es.aeat.modelo303.template', 'Modelo 303', required=True, select=True),
48 'name': fields.char('Nombre', size=256, required=True),
49 'code': fields.char('Casilla', size=16, required=True),
50 'tax_code_ids': fields.many2many('account.tax.code.template', 'rel_casilla_tax_codes_template', 'casilla_template_id', 'tax_code_template_id'),
51 'evaluate_as': fields.char("Evaluar como", 128, required=False),
52 'default_value': fields.float("Valor por defecto", required=False),
53 }
54
55 _defaults = {
56 'evaluate_as': '',
57 }
58
59 _sql_constraints = [('casillas_aeat_code_fiscalyear_unique', 'unique(code, modelo303_id)', 'Las casillas deben ser unicas por modelo.')]
60
61l10n_es_aeat_modelo303_casilla_template()
62
63###### 303 objects #######
64
65class l10n_es_aeat_modelo303(orm.Model):
66 _name = "l10n.es.aeat.modelo303"
67 _description = "AEAT modelo 303"
68
69 _columns = {
70 'name': fields.char('Nombre', size=256, required=True),
71 'date': fields.date("Fecha entrada en vigor"),
72 'template': fields.text('Template', readonly=True)
73 }
74
75l10n_es_aeat_modelo303()
76
77class l10n_es_aeat_modelo303_casilla(orm.Model):
78 _name = "l10n.es.aeat.modelo303.casilla"
79 _description = "Casillas AEAT modelo 303"
80
81 _columns = {
82 'modelo303_id': fields.many2one('l10n.es.aeat.modelo303', 'Modelo 303', required=True, select=True),
83 'name': fields.char('Nombre', size=256, required=True),
84 'code': fields.char('Casilla', size=16, required=True),
85 'tax_code_ids': fields.many2many('account.tax.code', 'rel_casilla_tax_codes', 'casilla_id', 'tax_code_id'),
86 'evaluate_as': fields.char("Evaluar como", 128, required=False),
87 'default_value': fields.float("Valor por defecto", required=False),
88 }
89
90 _defaults = {
91 'evaluate_as': '',
92 }
93
94 _sql_constraints = [('casillas_aeat_code_fiscalyear_unique', 'unique(code, modelo303_id)', 'Las casillas deben ser unicas por modelo.')]
95
96 def name_get(self, cr, uid, ids, context=None):
97 if isinstance(ids, (int, long)):
98 ids = [ids]
99 if not ids:
100 return []
101 if isinstance(ids, (int, long)):
102 ids = [ids]
103 reads = self.read(cr, uid, ids, ['name','code', 'evaluate_as'], context, load='_classic_write')
104 return [(x['id'], x['name'] + (x['evaluate_as'] and (" [" + x['evaluate_as'] + ']') or '')) \
105 for x in reads]
106
107 def get_dependency_codes(self, cr, uid, ids, context=None):
108 result = {}
109 casilla_code_re = re.compile("c([0-9a-zA-Z]+)")
110 for casilla in self.browse(cr, uid, ids, context):
111 dep_codes = []
112 if casilla.evaluate_as:
113 dep_codes = casilla_code_re.findall(casilla.evaluate_as)
114 result[casilla.id] = dep_codes
115 return result
116
117l10n_es_aeat_modelo303_casilla()
118
119class l10n_es_aeat_modelo303_valor_casilla(orm.Model):
120 _name = "l10n.es.aeat.modelo303.valor.casilla"
121 _description = "AEAT modelo 303 valor casilla"
122 _order = 'code asc'
123
124 _columns = {
125 'report_id': fields.many2one("l10n.es.aeat.modelo303.report", "Report", required=True),
126 'casilla_id': fields.many2one("l10n.es.aeat.modelo303.casilla", "Casilla", required=True), # 1-1
127 'code': fields.char('Casilla', size=16, required=True),
128 'valor': fields.float("Valor"),
129 }
130 _sql_constraints = [('aeat_modelo303_report_casilla_unique', 'unique(report_id, casilla_id)',
131 'Una casilla solo puede tener un valor')]
132
133l10n_es_aeat_modelo303_valor_casilla()
134
135
136class l10n_es_aeat_modelo303_report(orm.Model):
137 _inherit = "l10n.es.aeat.report"
138 _name = "l10n.es.aeat.modelo303.report"
139 _description = "AEAT modelo 303 report"
140
141 def _get_fiscalyear_id(self, cr, uid, context=None):
142 fiscalyear_obj = self.pool.get("account.fiscalyear")
143 today = datetime.today().date()
144 return fiscalyear_obj.search(cr, uid,
145 ['&', ('date_start', '<=', today),
146 ('date_stop', '>=', today)])[0] or False
147
148
149 def _get_modelo303_id(self, cr, uid, context=None):
150 modelo303_obj = self.pool.get("l10n.es.aeat.modelo303")
151 fiscalyear_obj = self.pool.get("account.fiscalyear")
152
153 mod303_id = None
154 mod303_date = None
155 fiscalyear_ids = self._get_fiscalyear_id(cr, uid, context)
156 if fiscalyear_ids:
157 fiscalyear = fiscalyear_obj.browse(cr, uid, fiscalyear_ids)
158 mod303_ids = modelo303_obj.search(cr, uid,
159 [('date', '<=', fiscalyear.date_start)])
160 if mod303_ids:
161 for m303 in modelo303_obj.browse(cr, uid, mod303_ids):
162 if not mod303_date or m303.date >= mod303_date:
163 mod303_id = m303.id
164 mod303_date = m303.date
165
166 return mod303_id or False
167
168 def _get_period(self, cr, uid, ids, context=None):
169 period_obj = self.pool.get("account.period")
170 account_period_id = []
171 for mod303 in self.browse(cr, uid, ids, context=context):
172 account_period_id.append(mod303.period_start_id.id)
173 if mod303.period_end_id:
174 if mod303.period_start_id.date_start > mod303.period_end_id.date_start:
175 raise orm.except_orm('', _('El periodo inicial debe ser inferior o igual periodo final.'))
176
177 if mod303.period_start_id.id <> mod303.period_end_id.id:
178 account_period_id.append(mod303.period_end_id.id)
179 account_period_id += period_obj.search(cr, uid,
180 [('date_start', '>', mod303.period_start_id.date_stop),
181 ('date_stop', '<', mod303.period_end_id.date_start),
182 ('id', 'not in', account_period_id),
183 ('special', '=', False),],
184 context=context)
185 return account_period_id
186
187 def _get_valores_casillas(self, cr, uid, ids, modelo303_id, default_values=None, context=None):
188 if default_values == None:
189 default_values = {}
190 casillas_obj = self.pool.get('l10n.es.aeat.modelo303.casilla')
191 tax_code_obj = self.pool.get('account.tax.code')
192 casillas = {}
193 periodos = self._get_period(cr, uid, ids, context)
194 casillas_ids = casillas_obj.search(cr, uid,
195 [('modelo303_id', '=', modelo303_id)],
196 context=context)
197
198 # Calculamos el valor de las casillas desde los impuestos
199 for c in casillas_obj.browse(cr, uid, casillas_ids):
200 if c.code in default_values:
201 casillas[c.code] = default_values[c.code]
202 else:
203 casillas[c.code] = 0.0
204 for tax_code in c.tax_code_ids:
205 for periodo in periodos:
206 ctx = {'period_id': periodo}
207 tax_code_period_sum = tax_code_obj._sum_period(cr, uid, [tax_code.id], '', {}, context=ctx)
208 casillas[c.code] += tax_code_period_sum[tax_code.id]
209
210 # Calculamos el valor de las casillas con formulas
211 for c in casillas_obj.browse(cr, uid, casillas_ids):
212 if c.evaluate_as:
213 self._calcular_casilla(cr, uid, modelo303_id, c.code, casillas, default_values, context)
214
215 return casillas
216
217 def _calcular_casilla(self, cr, uid, modelo303_id, code, valores_casillas, default_values=None, context=None):
218
219 if default_values == None:
220 default_values = {}
221
222 casillas_obj = self.pool.get('l10n.es.aeat.modelo303.casilla')
223 casillas_id = casillas_obj.search(cr, uid, [('modelo303_id', '=', modelo303_id),
224 ('code', '=', code)])
225 if not casillas_id:
226 valores_casillas[code] = 0.0
227 else:
228 casilla = casillas_obj.browse(cr, uid, casillas_id)[0]
229 if casilla and casilla.evaluate_as:
230 dep_codes = casillas_obj.get_dependency_codes(cr, uid, [casilla.id])[casilla.id]
231 for dep_code in dep_codes:
232 if dep_code not in valores_casillas or valores_casillas[dep_code] == 0 and dep_code != code:
233 self._calcular_casilla(cr, uid, modelo303_id, dep_code, valores_casillas, default_values, context)
234
235 if casilla.code in default_values:
236 valores_casillas[casilla.code] = default_values[casilla.code]
237 else:
238 eval_ctx = {}
239 for k, v in valores_casillas.iteritems():
240 eval_ctx['c%s' % k] = v
241 valores_casillas[casilla.code] = safe_eval(casilla.evaluate_as, eval_ctx)
242
243 _columns = {
244 'company_partner_id': fields.related('company_id', 'partner_id',
245 type='many2one', relation='res.partner', string='Partner',
246 store=True),
247 'period': fields.selection(
248 [('1T', 'First quarter'), ('2T', 'Second quarter'),
249 ('3T', 'Third quarter'), ('4T', 'Fourth quarter'),
250 ('01', 'January'), ('02', 'February'), ('03', 'March'),
251 ('04', 'April'), ('05', 'May'), ('06', 'June'),
252 ('07', 'July'), ('08', 'August'), ('09', 'September'),
253 ('10', 'October'), ('11', 'November'), ('12', 'December')],
254 'Period', states={'done':[('readonly',True)]}),
255 'period_start_id': fields.many2one("account.period", 'Period start', states={'done':[('readonly',True)]}),
256 'period_end_id': fields.many2one("account.period", 'Period end', states={'done':[('readonly',True)]}),
257 'devolucion_mensual': fields.boolean("Devolución Mensual",
258 help="Inscrito en el Registro de Devolución Mensual",
259 states={'done':[('readonly',True)]}),
260 'sujeto_a_cdc': fields.boolean("Sujeto a criterio de caja",
261 help="¿Ha optado por el régimen especial del criterio de Caja (art. 163 undecies LIVA)?",
262 states={'done':[('readonly',True)]}),
263 'destinatario_operaciones_cdc': fields.boolean("Destinatario de operaciones con criterio de caja",
264 help="¿Es destinatario de operaciones a las que se aplique el régimen especial del criterio de caja?",
265 states={'done':[('readonly',True)]}),
266 'complementaria': fields.boolean("Autoliquidación complementaria",
267 states={'done':[('readonly',True)]}),
268 'cuenta_devolucion_id': fields.many2one("res.partner.bank",
269 "CCC devolución", states={'done':[('readonly',True)]}),
270 'cuenta_ingreso_id': fields.many2one("res.partner.bank",
271 "CCC Ingreso", states={'done':[('readonly',True)]}),
272 'sin_actividad': fields.boolean("Sin actividad",
273 states={'done':[('readonly',True)]}),
274 'valor_casilla_ids': fields.one2many("l10n.es.aeat.modelo303.valor.casilla", "report_id", "Valores Casillas",
275 states={'done':[('readonly',True)]}), # 1-1
276 'modelo303_id': fields.many2one("l10n.es.aeat.modelo303", "Modelo 303",
277 states={'done':[('readonly',True)]}),
278 }
279
280 _defaults = {
281 'number' : '303',
282 'fiscalyear_id': _get_fiscalyear_id,
283 'modelo303_id': _get_modelo303_id
284 }
285
286
287 def calculate(self, cr, uid, ids, context=None):
288 casilla_obj = self.pool.get('l10n.es.aeat.modelo303.casilla')
289 valor_casilla_obj = self.pool.get('l10n.es.aeat.modelo303.valor.casilla')
290 for report303 in self.browse(cr, uid, ids, context=context):
291
292 # Eliminamos los valores anteriores
293 valor_casillas_ids = [valor_casilla.id for valor_casilla in report303.valor_casilla_ids]
294 if valor_casillas_ids:
295 valor_casilla_obj.unlink(cr, uid, valor_casillas_ids)
296
297 # Valores por defecto
298 default_values = {}
299 casilla_ids = casilla_obj.search(cr, uid, [('modelo303_id','=', report303.modelo303_id.id)])
300 for c in casilla_obj.browse(cr, uid, casilla_ids):
301 if c.default_value and not c.tax_code_ids and not c.evaluate_as:
302 default_values[c.code] = c.default_value
303
304 valores_casillas = self._get_valores_casillas(cr, uid, ids,
305 report303.modelo303_id.id,
306 default_values=default_values,
307 context=context)
308 for casilla_code in valores_casillas.keys():
309 casilla_ids = casilla_obj.search(cr, uid, # TODO: *1 optimizar esto...
310 [('code', '=', casilla_code),
311 ('modelo303_id','=',
312 report303.modelo303_id.id)])
313 if casilla_ids:
314 valor_casilla = {
315 'valor': valores_casillas[casilla_code],
316 'code': casilla_code,
317 'casilla_id': casilla_ids[0], # TODO: *1 optimizar esto...
318 'report_id': report303.id,
319 }
320 valor_casilla_obj.create(cr, uid, valor_casilla)
321 return True
322
323 def button_calculate_formulas(self, cr, uid, ids, context=None):
324 valor_casilla_obj = self.pool.get('l10n.es.aeat.modelo303.valor.casilla')
325 for report303 in self.browse(cr, uid, ids, context=context):
326
327 default_values = {}
328 for casilla_valor in report303.valor_casilla_ids:
329 if not casilla_valor.casilla_id.evaluate_as:
330 default_values[casilla_valor.code] = casilla_valor.valor
331 valores_casillas = self._get_valores_casillas(cr, uid, ids,
332 report303.modelo303_id.id,
333 default_values=default_values,
334 context=context)
335 for casilla_valor in report303.valor_casilla_ids:
336 if casilla_valor.casilla_id.evaluate_as:
337 value = {'valor': valores_casillas[casilla_valor.code]}
338 valor_casilla_obj.write(cr, uid, [casilla_valor.id], value)
339
340 return True
341
342 def button_confirm(self, cr, uid, ids, context=None):
343 """Check its records"""
344 msg = ""
345 for modelo303 in self.browse(cr, uid, ids, context=context):
346 if modelo303.devolucion_mensual and modelo303.period in ('1T', '2T', '3T', '4T'):
347 msg = _('Inscrito en el Registro de devolución mensual (Art. 30 RIVA). No está permitido para periodos 1T,2T,3T o 4T.')
348 if msg:
349 raise orm.except_orm("", msg)
350 return super(l10n_es_aeat_modelo303_report, self).button_confirm(cr, uid,
351 ids, context=context)
0352
=== added file 'l10n_es_aeat_mod303/modelo303_casillas.xml'
--- l10n_es_aeat_mod303/modelo303_casillas.xml 1970-01-01 00:00:00 +0000
+++ l10n_es_aeat_mod303/modelo303_casillas.xml 2014-04-16 11:51:06 +0000
@@ -0,0 +1,967 @@
1<?xml version="1.0" encoding="utf-8"?>
2<openerp>
3 <data noupdate="0">
4
5 <!-- Modelo 303 2013 -->
6 <record id="modelo_303_2013" model="l10n.es.aeat.modelo303.template">
7 <field name="name">Modelo 303 2013</field>
8 <field name="date">1900-01-01</field>
9 <!--
10 formato de linea csv:
11 longitud,num_decimanles o 0 si tipo = a,tipo_formato,valor a evaluar
12 a: alfanumerico
13 n: numerico
14 -->
15 <field name="template">
16 2,0,a,'&lt;T'
17 3,0,a,'303'
18 2,0,a,'01'
19 1,0,a,'&gt;'
20 1,0,a,' '
21 1,0,a,'I' if c48 >= 0 else 'C'
22 9,0,a,nif
23 30,0,a,razon_social
24 15,0,a,' ' * 15
25 1,0,a,devolucion_mensual
26 4,0,a,ejercicio
27 2,0,a,periodo
28 15,2,n,c01
29 3,2,n,c02
30 15,2,n,c03
31 15,2,n,c04
32 3,2,n,c05
33 15,2,n,c06
34 15,2,n,c07
35 3,2,n,c08
36 15,2,n,c09
37 15,2,n,c10
38 3,2,n,c11
39 15,2,n,c12
40 15,2,n,c13
41 3,2,n,c14
42 15,2,n,c15
43 15,2,n,c16
44 3,2,n,c17
45 15,2,n,c18
46 15,2,n,c19
47 15,2,n,c20
48 15,2,n,c21
49 15,2,n,c22
50 15,2,n,c23
51 15,2,n,c24
52 15,2,n,c25
53 15,2,n,c26
54 15,2,n,c27
55 15,2,n,c28
56 15,2,n,c29
57 15,2,n,c30
58 15,2,n,c31
59 15,2,n,c32
60 15,2,n,c33
61 15,2,n,c34
62 15,2,n,c35
63 15,2,n,c36
64 15,2,n,c37
65 15,2,n,c38
66 3,2,n,c39
67 15,2,n,c40
68 15,2,n,c41
69 15,2,n,c42
70 15,2,n,c43
71 15,2,n,c44
72 15,2,n,c45
73 15,2,n,c46
74 15,2,n,c47
75 15,2,n,c48
76 15,2,n,c49
77 1,0,a,sin_actividad
78 15,2,n,c50
79 4,0,n,cc_ingreso_entidad
80 4,0,n,cc_ingreso_oficina
81 2,0,n,cc_ingreso_dc
82 10,0,n,cc_ingreso_num
83 1,0,a,'0'
84 15,2,n,cI
85 4,0,n,cc_devolucion_entidad
86 4,0,n,cc_devolucion_oficina
87 2,0,n,cc_devolucion_dc
88 10,0,n,cc_devolucion_num
89 1,0,a,complementaria
90 13,0,a,numero_justificante
91 400,0,a,' '*400
92 16,0,a,localidad
93 2,0,a,dia
94 10,0,a,mes
95 4,0,a,any
96 9,0,a,'&lt;/T30301&gt;'
97 2,0,a,clrf
98 </field>
99 </record>
100
101 <!-- Casillas modelo 303 2013 -->
102 <!-- IVA DEVENGADO -->
103 <!-- 4% -->
104 <record id="modelo_303_2013_casilla_01" model="l10n.es.aeat.modelo303.casilla.template">
105 <field name="name">IVA devengado - Régimen general - Base imponible 4%</field>
106 <field name="code">01</field>
107 <field name="modelo303_id" ref="modelo_303_2013"/>
108 <field name="tax_code_ids" eval="[(6,0,[ref('l10n_es.iva_pymes_dev_01')])]"/>
109 </record>
110 <record id="modelo_303_2013_casilla_02" model="l10n.es.aeat.modelo303.casilla.template">
111 <field name="name">IVA devengado - Régimen general - Tipo 4%</field>
112 <field name="code">02</field>
113 <field name="modelo303_id" ref="modelo_303_2013"/>
114 <field name="evaluate_as">c03 / c01 * 100.0 if c01 else 0.0</field>
115 </record>
116 <record id="modelo_303_2013_casilla_03" model="l10n.es.aeat.modelo303.casilla.template">
117 <field name="name">IVA devengado - Régimen general - Cuota 4%</field>
118 <field name="code">03</field>
119 <field name="modelo303_id" ref="modelo_303_2013"/>
120 <field name="tax_code_ids" eval="[(6,0,[ref('l10n_es.iva_pymes_dev_03')])]"/>
121 </record>
122 <!-- 10% -->
123 <record id="modelo_303_2013_casilla_04" model="l10n.es.aeat.modelo303.casilla.template">
124 <field name="name">IVA devengado - Régimen general - Base imponible 10%</field>
125 <field name="code">04</field>
126 <field name="modelo303_id" ref="modelo_303_2013"/>
127 <field name="tax_code_ids" eval="[(6,0,[ref('l10n_es.iva_pymes_dev_04_10')])]"/>
128 </record>
129 <record id="modelo_303_2013_casilla_05" model="l10n.es.aeat.modelo303.casilla.template">
130 <field name="name">IVA devengado - Régimen general - Tipo 10%</field>
131 <field name="code">05</field>
132 <field name="modelo303_id" ref="modelo_303_2013"/>
133 <field name="evaluate_as">c06 / c04 * 100.0 if c04 else 0</field>
134 </record>
135 <record id="modelo_303_2013_casilla_06" model="l10n.es.aeat.modelo303.casilla.template">
136 <field name="name">IVA devengado - Régimen general - Cuota 10%</field>
137 <field name="code">06</field>
138 <field name="modelo303_id" ref="modelo_303_2013"/>
139 <field name="tax_code_ids" eval="[(6,0,[ref('l10n_es.iva_pymes_dev_06_10')])]"/>
140 </record>
141 <!-- 21% -->
142 <record id="modelo_303_2013_casilla_07" model="l10n.es.aeat.modelo303.casilla.template">
143 <field name="name">IVA devengado - Régimen general - Base imponible 21%</field>
144 <field name="code">07</field>
145 <field name="modelo303_id" ref="modelo_303_2013"/>
146 <field name="tax_code_ids" eval="[(6,0,[ref('l10n_es.iva_pymes_dev_07_21'), ref('l10n_es.iva_pymes_dev_base_isp'), ref('l10n_es.iva_pymes_dev_base_intra_serv')])]"/>
147 </record>
148 <record id="modelo_303_2013_casilla_08" model="l10n.es.aeat.modelo303.casilla.template">
149 <field name="name">IVA devengado - Régimen general - Tipo 21%</field>
150 <field name="code">08</field>
151 <field name="modelo303_id" ref="modelo_303_2013"/>
152 <field name="evaluate_as">c09 / c07 * 100.0 if c07 else 0.0</field>
153 </record>
154 <record id="modelo_303_2013_casilla_09" model="l10n.es.aeat.modelo303.casilla.template">
155 <field name="name">IVA devengado - Régimen general - Cuota 21%</field>
156 <field name="code">09</field>
157 <field name="modelo303_id" ref="modelo_303_2013"/>
158 <field name="tax_code_ids" eval="[(6,0,[ref('l10n_es.iva_pymes_dev_09_21'), ref('l10n_es.iva_pymes_dev_quota_isp'), ref('l10n_es.iva_pymes_dev_quota_intra_serv')])]"/>
159 </record>
160 <!-- RE 0.5% -->
161 <record id="modelo_303_2013_casilla_10" model="l10n.es.aeat.modelo303.casilla.template">
162 <field name="name">IVA devengado - Recargo de equivalencia - Base imponible 0.5%</field>
163 <field name="code">10</field>
164 <field name="modelo303_id" ref="modelo_303_2013"/>
165 <field name="tax_code_ids" eval="[(6,0,[ref('l10n_es.iva_pymes_dev_10')])]"/>
166 </record>
167 <record id="modelo_303_2013_casilla_11" model="l10n.es.aeat.modelo303.casilla.template">
168 <field name="name">IVA devengado - Recargo de equivalencia - Tipo 0.5%</field>
169 <field name="code">11</field>
170 <field name="modelo303_id" ref="modelo_303_2013"/>
171 <field name="evaluate_as">c12 / c10 * 100.0 if c10 else 0.0</field>
172 </record>
173 <record id="modelo_303_2013_casilla_12" model="l10n.es.aeat.modelo303.casilla.template">
174 <field name="name">IVA devengado - Recargo de equivalencia - Cuota 0.5%</field>
175 <field name="code">12</field>
176 <field name="modelo303_id" ref="modelo_303_2013"/>
177 <field name="tax_code_ids" eval="[(6,0,[ref('l10n_es.iva_pymes_dev_12')])]"/>
178 </record>
179 <!-- RE 1.4% -->
180 <record id="modelo_303_2013_casilla_13" model="l10n.es.aeat.modelo303.casilla.template">
181 <field name="name">IVA devengado - Recargo de equivalencia - Base imponible 1.4%</field>
182 <field name="code">13</field>
183 <field name="modelo303_id" ref="modelo_303_2013"/>
184 <field name="tax_code_ids" eval="[(6,0,[ref('l10n_es.iva_pymes_dev_13_14')])]"/>
185 </record>
186 <record id="modelo_303_2013_casilla_14" model="l10n.es.aeat.modelo303.casilla.template">
187 <field name="name">IVA devengado - Recargo de equivalencia - Tipo 1.4%</field>
188 <field name="code">14</field>
189 <field name="modelo303_id" ref="modelo_303_2013"/>
190 <field name="evaluate_as">c15 / c13 * 100.0 if c13 else 0.0</field>
191 </record>
192 <record id="modelo_303_2013_casilla_15" model="l10n.es.aeat.modelo303.casilla.template">
193 <field name="name">IVA devengado - Recargo de equivalencia - Cuota 1.4%</field>
194 <field name="code">15</field>
195 <field name="modelo303_id" ref="modelo_303_2013"/>
196 <field name="tax_code_ids" eval="[(6,0,[ref('l10n_es.iva_pymes_dev_15_14')])]"/>
197 </record>
198 <!-- RE 5.2% -->
199 <record id="modelo_303_2013_casilla_16" model="l10n.es.aeat.modelo303.casilla.template">
200 <field name="name">IVA devengado - Recargo de equivalencia - Base imponible 5.2%</field>
201 <field name="code">16</field>
202 <field name="modelo303_id" ref="modelo_303_2013"/>
203 <field name="tax_code_ids" eval="[(6,0,[ref('l10n_es.iva_pymes_dev_16_52')])]"/>
204 </record>
205 <record id="modelo_303_2013_casilla_17" model="l10n.es.aeat.modelo303.casilla.template">
206 <field name="name">IVA devengado - Recargo de equivalencia - Tipo 5.2%</field>
207 <field name="code">17</field>
208 <field name="modelo303_id" ref="modelo_303_2013"/>
209 <field name="evaluate_as">c18 / c16 * 100.0 if c16 else 0.0</field>
210 </record>
211 <record id="modelo_303_2013_casilla_18" model="l10n.es.aeat.modelo303.casilla.template">
212 <field name="name">IVA devengado - Recargo de equivalencia - Cuota 5.2%</field>
213 <field name="code">18</field>
214 <field name="modelo303_id" ref="modelo_303_2013"/>
215 <field name="tax_code_ids" eval="[(6,0,[ref('l10n_es.iva_pymes_dev_18_52')])]"/>
216 </record>
217
218 <record id="modelo_303_2013_casilla_19" model="l10n.es.aeat.modelo303.casilla.template">
219 <field name="name">IVA devengado - Adquisiciones intracomunitarias - Base imponible</field>
220 <field name="code">19</field>
221 <field name="modelo303_id" ref="modelo_303_2013"/>
222 <field name="tax_code_ids" eval="[(6,0,[ref('l10n_es.iva_pymes_dev_19')])]"/>
223 </record>
224
225 <record id="modelo_303_2013_casilla_20" model="l10n.es.aeat.modelo303.casilla.template">
226 <field name="name">IVA devengado - Adquisiciones intracomunitarias - Cuota</field>
227 <field name="code">20</field>
228 <field name="modelo303_id" ref="modelo_303_2013"/>
229 <field name="tax_code_ids" eval="[(6,0,[ref('l10n_es.iva_pymes_dev_20')])]"/>
230 </record>
231
232 <record id="modelo_303_2013_casilla_21" model="l10n.es.aeat.modelo303.casilla.template">
233 <field name="name">IVA devengado - Total cuota devengada</field>
234 <field name="code">21</field>
235 <field name="modelo303_id" ref="modelo_303_2013"/>
236 <field name="tax_code_ids" eval="[(6,0,[ref('l10n_es.iva_pymes_dev_21')])]"/>
237 </record>
238
239 <!-- IVA DEDUCIBLE -->
240 <record id="modelo_303_2013_casilla_22" model="l10n.es.aeat.modelo303.casilla.template">
241 <field name="name">IVA Deducible - Por cuotas soportadas en operaciones interiores corrientes. BI</field>
242 <field name="code">22</field>
243 <field name="modelo303_id" ref="modelo_303_2013"/>
244 <field name="tax_code_ids" eval="[(6,0,[ref('l10n_es.iva_pymes_ded_22')])]"/>
245 </record>
246 <record id="modelo_303_2013_casilla_23" model="l10n.es.aeat.modelo303.casilla.template">
247 <field name="name">IVA Deducible - Por cuotas soportadas en operaciones interiores corrientes. Cuota</field>
248 <field name="code">23</field>
249 <field name="modelo303_id" ref="modelo_303_2013"/>
250 <field name="tax_code_ids" eval="[(6,0,[ref('l10n_es.iva_pymes_ded_23')])]"/>
251 </record>
252
253 <record id="modelo_303_2013_casilla_24" model="l10n.es.aeat.modelo303.casilla.template">
254 <field name="name">IVA Deducible - Por cuotas soportadas en operaciones interiores con bienes de inversión. BI</field>
255 <field name="code">24</field>
256 <field name="modelo303_id" ref="modelo_303_2013"/>
257 <field name="tax_code_ids" eval="[(6,0,[ref('l10n_es.iva_pymes_ded_24')])]"/>
258 </record>
259 <record id="modelo_303_2013_casilla_25" model="l10n.es.aeat.modelo303.casilla.template">
260 <field name="name">IVA Deducible - Por cuotas soportadas en operaciones interiores con bienes de inversión. Cuota</field>
261 <field name="code">25</field>
262 <field name="modelo303_id" ref="modelo_303_2013"/>
263 <field name="tax_code_ids" eval="[(6,0,[ref('l10n_es.iva_pymes_ded_25')])]"/>
264 </record>
265
266 <record id="modelo_303_2013_casilla_26" model="l10n.es.aeat.modelo303.casilla.template">
267 <field name="name">IVA Deducible - Por cuotas satisfechas en las importaciones de bienes corrientes. BI</field>
268 <field name="code">26</field>
269 <field name="modelo303_id" ref="modelo_303_2013"/>
270 <field name="tax_code_ids" eval="[(6,0,[ref('l10n_es.iva_pymes_ded_26')])]"/>
271 </record>
272 <record id="modelo_303_2013_casilla_27" model="l10n.es.aeat.modelo303.casilla.template">
273 <field name="name">IVA Deducible - Por cuotas satisfechas en las importaciones de bienes corrientes. Cuota</field>
274 <field name="code">27</field>
275 <field name="modelo303_id" ref="modelo_303_2013"/>
276 <field name="tax_code_ids" eval="[(6,0,[ref('l10n_es.iva_pymes_ded_27')])]"/>
277 </record>
278
279 <record id="modelo_303_2013_casilla_28" model="l10n.es.aeat.modelo303.casilla.template">
280 <field name="name">IVA Deducible - Por cuotas satisfechas en las importaciones de bienes de inversión. BI</field>
281 <field name="code">28</field>
282 <field name="modelo303_id" ref="modelo_303_2013"/>
283 <field name="tax_code_ids" eval="[(6,0,[ref('l10n_es.iva_pymes_ded_28')])]"/>
284 </record>
285 <record id="modelo_303_2013_casilla_29" model="l10n.es.aeat.modelo303.casilla.template">
286 <field name="name">IVA Deducible - Por cuotas satisfechas en las importaciones de bienes de inversión. Cuota</field>
287 <field name="code">29</field>
288 <field name="modelo303_id" ref="modelo_303_2013"/>
289 <field name="tax_code_ids" eval="[(6,0,[ref('l10n_es.iva_pymes_ded_29')])]"/>
290 </record>
291
292 <record id="modelo_303_2013_casilla_30" model="l10n.es.aeat.modelo303.casilla.template">
293 <field name="name">IVA Deducible - En adquisiciones intracomunitarias de bienes corrientes. BI</field>
294 <field name="code">30</field>
295 <field name="modelo303_id" ref="modelo_303_2013"/>
296 <field name="tax_code_ids" eval="[(6,0,[ref('l10n_es.iva_pymes_ded_30')])]"/>
297 </record>
298 <record id="modelo_303_2013_casilla_31" model="l10n.es.aeat.modelo303.casilla.template">
299 <field name="name">IVA Deducible - En adquisiciones intracomunitarias de bienes corrientes. Cuota</field>
300 <field name="code">31</field>
301 <field name="modelo303_id" ref="modelo_303_2013"/>
302 <field name="tax_code_ids" eval="[(6,0,[ref('l10n_es.iva_pymes_ded_31')])]"/>
303 </record>
304
305 <record id="modelo_303_2013_casilla_32" model="l10n.es.aeat.modelo303.casilla.template">
306 <field name="name">IVA Deducible - En adquisiciones intracomunitarias de bienes de inversión. BI</field>
307 <field name="code">32</field>
308 <field name="modelo303_id" ref="modelo_303_2013"/>
309 <field name="tax_code_ids" eval="[(6,0,[ref('l10n_es.iva_pymes_ded_32')])]"/>
310 </record>
311 <record id="modelo_303_2013_casilla_33" model="l10n.es.aeat.modelo303.casilla.template">
312 <field name="name">IVA Deducible - En adquisiciones intracomunitarias de bienes de inversión. Cuota</field>
313 <field name="code">33</field>
314 <field name="modelo303_id" ref="modelo_303_2013"/>
315 <field name="tax_code_ids" eval="[(6,0,[ref('l10n_es.iva_pymes_ded_33')])]"/>
316 </record>
317
318 <record id="modelo_303_2013_casilla_34" model="l10n.es.aeat.modelo303.casilla.template">
319 <field name="name">IVA Deducible - Compensaciones Régimen Especial A.G.y P.</field>
320 <field name="code">34</field>
321 <field name="modelo303_id" ref="modelo_303_2013"/>
322 </record>
323 <record id="modelo_303_2013_casilla_35" model="l10n.es.aeat.modelo303.casilla.template">
324 <field name="name">IVA Deducible - Regularización inversiones</field>
325 <field name="code">35</field>
326 <field name="modelo303_id" ref="modelo_303_2013"/>
327 </record>
328 <record id="modelo_303_2013_casilla_36" model="l10n.es.aeat.modelo303.casilla.template">
329 <field name="name">IVA Deducible - Regularización por aplicación del porcentaje def.de prorrata</field>
330 <field name="code">36</field>
331 <field name="modelo303_id" ref="modelo_303_2013"/>
332 </record>
333
334 <record id="modelo_303_2013_casilla_37" model="l10n.es.aeat.modelo303.casilla.template">
335 <field name="name">Deducible - Total a deducir</field>
336 <field name="code">37</field>
337 <field name="modelo303_id" ref="modelo_303_2013"/>
338 <field name="evaluate_as">c23+c25+c27+c29+c31+c33+c34+c35+c36</field>
339 </record>
340
341 <record id="modelo_303_2013_casilla_38" model="l10n.es.aeat.modelo303.casilla.template">
342 <field name="name">Diferencia</field>
343 <field name="code">38</field>
344 <field name="modelo303_id" ref="modelo_303_2013"/>
345 <field name="evaluate_as">c21 - c37</field>
346 </record>
347
348 <record id="modelo_303_2013_casilla_39" model="l10n.es.aeat.modelo303.casilla.template">
349 <field name="name">Atribuible a la Administración del Estado - %</field>
350 <field name="code">39</field>
351 <field name="modelo303_id" ref="modelo_303_2013"/>
352 <field name="default_value">100</field>
353 </record>
354
355 <record id="modelo_303_2013_casilla_40" model="l10n.es.aeat.modelo303.casilla.template">
356 <field name="name">Atribuible a la Administración del Estado</field>
357 <field name="code">40</field>
358 <field name="modelo303_id" ref="modelo_303_2013"/>
359 <field name="evaluate_as">c38 * (c39 / 100.0)</field>
360 </record>
361
362 <record id="modelo_303_2013_casilla_41" model="l10n.es.aeat.modelo303.casilla.template">
363 <field name="name">Cuotas a compensar de periodos anteriores</field>
364 <field name="code">41</field>
365 <field name="modelo303_id" ref="modelo_303_2013"/>
366 </record>
367
368 <record id="modelo_303_2013_casilla_42" model="l10n.es.aeat.modelo303.casilla.template">
369 <field name="name">Entregas intracomunitarias</field>
370 <field name="code">42</field>
371 <field name="modelo303_id" ref="modelo_303_2013"/>
372 <field name="tax_code_ids" eval="[(6,0,[ref('l10n_es.base_pymes_intra_42')])]"/>
373 </record>
374
375 <record id="modelo_303_2013_casilla_43" model="l10n.es.aeat.modelo303.casilla.template">
376 <field name="name">Exportaciones y operaciones asimiladas</field>
377 <field name="code">43</field>
378 <field name="modelo303_id" ref="modelo_303_2013"/>
379 <field name="tax_code_ids" eval="[(6,0,[ref('l10n_es.base_pymes_extra_43')])]"/>
380 </record>
381
382 <record id="modelo_303_2013_casilla_44" model="l10n.es.aeat.modelo303.casilla.template">
383 <field name="name">Operaciones no sujetas o con inversión del sujeto pasivo. Derecho a deducción</field>
384 <field name="code">44</field>
385 <field name="modelo303_id" ref="modelo_303_2013"/>
386 <field name="tax_code_ids" eval="[(6,0,[ref('l10n_es.base_pymes_extra_44')])]"/>
387 </record>
388
389 <record id="modelo_303_2013_casilla_45" model="l10n.es.aeat.modelo303.casilla.template">
390 <field name="name">Exclusivamente tributación conjunta Estado y Diputaciones Forales</field>
391 <field name="code">45</field>
392 <field name="modelo303_id" ref="modelo_303_2013"/>
393 </record>
394
395 <record id="modelo_303_2013_casilla_46" model="l10n.es.aeat.modelo303.casilla.template">
396 <field name="name">Resultado</field>
397 <field name="code">46</field>
398 <field name="modelo303_id" ref="modelo_303_2013"/>
399 <field name="evaluate_as">c40-c41+c45</field>
400 </record>
401
402 <record id="modelo_303_2013_casilla_47" model="l10n.es.aeat.modelo303.casilla.template">
403 <field name="name">A deducir</field>
404 <field name="code">47</field>
405 <field name="modelo303_id" ref="modelo_303_2013"/>
406 </record>
407
408 <record id="modelo_303_2013_casilla_48" model="l10n.es.aeat.modelo303.casilla.template">
409 <field name="name">Resultado de la liquidación</field>
410 <field name="code">48</field>
411 <field name="modelo303_id" ref="modelo_303_2013"/>
412 <field name="evaluate_as">c46-c47</field>
413 </record>
414
415 <record id="modelo_303_2013_casilla_49" model="l10n.es.aeat.modelo303.casilla.template">
416 <field name="name">Compensación - Importe a compensar ( si resulta negativa [48])</field>
417 <field name="code">49</field>
418 <field name="modelo303_id" ref="modelo_303_2013"/>
419 <field name="evaluate_as">abs(c48) if c48 &lt; 0 else 0.0</field>
420 </record>
421
422 <record id="modelo_303_2013_casilla_50" model="l10n.es.aeat.modelo303.casilla.template">
423 <field name="name">Devolución - Importe</field>
424 <field name="code">50</field>
425 <field name="modelo303_id" ref="modelo_303_2013"/>
426 </record>
427
428 <!-- INGRESO - IMPORTE -->
429 <record id="modelo_303_2013_casilla_I" model="l10n.es.aeat.modelo303.casilla.template">
430 <field name="name">Ingreso - Importe</field>
431 <field name="code">I</field>
432 <field name="modelo303_id" ref="modelo_303_2013"/>
433 <field name="evaluate_as">c48 if c48 >= 0 else 0.0</field>
434 </record>
435
436 <!-- Modelo 303 2014 -->
437 <record id="modelo_303_2014" model="l10n.es.aeat.modelo303.template">
438 <field name="name">Modelo 303 2014</field>
439 <field name="date">2014-01-01</field>
440 <field name="template">
441
442 ; Pagina 0
443 2,0,a,'&lt;T'
444 3,0,a,'303'
445 1,0,a,'0'
446 4,0,a,ejercicio
447 2,0,a,periodo
448 5,0,a,'0000&gt;'
449 5,0,a,'&lt;AUX&gt;'
450 70,0,a,' '*70
451 4,0,a,'0001'
452 4,0,a,' '
453 9,0,a,nif
454 213,0,a,' '*213
455 6,0,a,'&lt;/AUX&gt;'
456 8,0,a,'&lt;VECTOR&gt;'
457 ; Una pagina uno y una pagina tres
458 17,0,a,'00100010030001FIN'
459 283,0,a,' '*283
460 9,0,a,'&lt;/VECTOR&gt;'
461
462 ; Pagina 1
463 2,0,a,'&lt;T'
464 3,0,a,'303'
465 2,0,a,'01'
466 1,0,a,'&gt;'
467 1,0,a,'I' if c71 >= 0 else 'C'
468 9,0,a,nif
469 30,0,a,razon_social
470 15,0,a,' '*15
471 1,0,a,devolucion_mensual
472 1,0,a,'2'
473 1,0,a,'2'
474 1,0,a,'2'
475 8,0,a,' '
476 1,0,a,' '
477 1,0,a,sujeto_a_cdc
478 1,0,a,destinatario_operaciones_cdc
479 1,0,a,'2'
480 1,0,a,'2'
481 4,0,a,ejercicio
482 2,0,a,periodo
483 15,2,n,c01
484 3,2,n,c02
485 15,2,n,c03
486 15,2,n,c04
487 3,2,n,c05
488 15,2,n,c06
489 15,2,n,c07
490 3,2,n,c08
491 15,2,n,c09
492 15,2,n,c10
493 15,2,n,c11
494 15,2,n,c12
495 15,2,n,c13
496 15,2,n,c14
497 15,2,n,c15
498 15,2,n,c16
499 3,2,n,c17
500 15,2,n,c18
501 15,2,n,c19
502 3,2,n,c20
503 15,2,n,c21
504 15,2,n,c22
505 3,2,n,c23
506 15,2,n,c24
507 15,2,n,c25
508 15,2,n,c26
509 15,2,n,c27
510 15,2,n,c28
511 15,2,n,c29
512 15,2,n,c30
513 15,2,n,c31
514 15,2,n,c32
515 15,2,n,c33
516 15,2,n,c34
517 15,2,n,c35
518 15,2,n,c36
519 15,2,n,c37
520 15,2,n,c38
521 15,2,n,c39
522 15,2,n,c40
523 15,2,n,c41
524 15,2,n,c42
525 15,2,n,c43
526 15,2,n,c44
527 15,2,n,c45
528 15,2,n,c46
529 93,0,a,' '
530 9,0,a,'&lt;/T30301&gt;'
531 2,0,a,clrf
532
533 ; Pagina 3
534 2,0,a,'&lt;T'
535 3,0,a,'303'
536 2,0,a,'03'
537 1,0,a,'&gt;'
538 15,2,n,c59
539 15,2,n,c60
540 15,2,n,c61
541 15,2,n,c64
542 3,2,n,c65
543 15,2,n,c66
544 15,2,n,c67
545 15,2,n,c68
546 15,2,n,c69
547 15,2,n,c70
548 15,2,n,c71
549 15,2,n,c62
550 15,2,n,c63
551 15,2,n,c74
552 15,2,n,c75
553 1,0,a,'X' if complementaria == '1' else ' '
554 13,0,a,numero_justificante
555 1,0,a,'X' if complementaria == '1' else ' '
556 34,0,a,cc_ingreso_iban
557 289,0,a,' '*289
558 9,0,a,'&lt;/T30303&gt;'
559 2,0,a,clrf
560
561 ; FIN Pagina 0
562 7,0,a,'&lt;/T3030'
563 4,0,a,ejercicio
564 2,0,a,periodo
565 5,0,a,'0000&gt;'
566 2,0,a,clrf
567 </field>
568 </record>
569
570 <!-- Casillas modelo 303 2014 -->
571 <!-- IVA DEVENGADO -->
572 <!-- 4% -->
573 <record id="modelo_303_2014_casilla_01" model="l10n.es.aeat.modelo303.casilla.template">
574 <field name="name">IVA devengado - Régimen general - Base imponible 4%</field>
575 <field name="code">01</field>
576 <field name="modelo303_id" ref="modelo_303_2014"/>
577 <field name="tax_code_ids" eval="[(6,0,[ref('l10n_es.iva_pymes_dev_01')])]"/>
578 </record>
579 <record id="modelo_303_2014_casilla_02" model="l10n.es.aeat.modelo303.casilla.template">
580 <field name="name">IVA devengado - Régimen general - Tipo 4%</field>
581 <field name="code">02</field>
582 <field name="modelo303_id" ref="modelo_303_2014"/>
583 <field name="evaluate_as">c03 / c01 * 100.0 if c01 else 0.0</field>
584 </record>
585 <record id="modelo_303_2014_casilla_03" model="l10n.es.aeat.modelo303.casilla.template">
586 <field name="name">IVA devengado - Régimen general - Cuota 4%</field>
587 <field name="code">03</field>
588 <field name="modelo303_id" ref="modelo_303_2014"/>
589 <field name="tax_code_ids" eval="[(6,0,[ref('l10n_es.iva_pymes_dev_03')])]"/>
590 </record>
591 <!-- 10% -->
592 <record id="modelo_303_2014_casilla_04" model="l10n.es.aeat.modelo303.casilla.template">
593 <field name="name">IVA devengado - Régimen general - Base imponible 10%</field>
594 <field name="code">04</field>
595 <field name="modelo303_id" ref="modelo_303_2014"/>
596 <field name="tax_code_ids" eval="[(6,0,[ref('l10n_es.iva_pymes_dev_04_10')])]"/>
597 </record>
598 <record id="modelo_303_2014_casilla_05" model="l10n.es.aeat.modelo303.casilla.template">
599 <field name="name">IVA devengado - Régimen general - Tipo 10%</field>
600 <field name="code">05</field>
601 <field name="modelo303_id" ref="modelo_303_2014"/>
602 <field name="evaluate_as">c06 / c04 * 100.0 if c04 else 0</field>
603 </record>
604 <record id="modelo_303_2014_casilla_06" model="l10n.es.aeat.modelo303.casilla.template">
605 <field name="name">IVA devengado - Régimen general - Cuota 10%</field>
606 <field name="code">06</field>
607 <field name="modelo303_id" ref="modelo_303_2014"/>
608 <field name="tax_code_ids" eval="[(6,0,[ref('l10n_es.iva_pymes_dev_06_10')])]"/>
609 </record>
610 <!-- 21% -->
611 <record id="modelo_303_2014_casilla_07" model="l10n.es.aeat.modelo303.casilla.template">
612 <field name="name">IVA devengado - Régimen general - Base imponible 21%</field>
613 <field name="code">07</field>
614 <field name="modelo303_id" ref="modelo_303_2014"/>
615 <field name="tax_code_ids" eval="[(6,0,[ref('l10n_es.iva_pymes_dev_07_21')])]"/>
616 </record>
617 <record id="modelo_303_2014_casilla_08" model="l10n.es.aeat.modelo303.casilla.template">
618 <field name="name">IVA devengado - Régimen general - Tipo 21%</field>
619 <field name="code">08</field>
620 <field name="modelo303_id" ref="modelo_303_2014"/>
621 <field name="evaluate_as">c09 / c07 * 100.0 if c07 else 0.0</field>
622 </record>
623 <record id="modelo_303_2014_casilla_09" model="l10n.es.aeat.modelo303.casilla.template">
624 <field name="name">IVA devengado - Régimen general - Cuota 21%</field>
625 <field name="code">09</field>
626 <field name="modelo303_id" ref="modelo_303_2014"/>
627 <field name="tax_code_ids" eval="[(6,0,[ref('l10n_es.iva_pymes_dev_09_21')])]"/>
628 </record>
629
630
631 <record id="modelo_303_2014_casilla_10" model="l10n.es.aeat.modelo303.casilla.template">
632 <field name="name">IVA Devengado - Adquisiciones intracomunitarias de bienes y servicios - Base imponible</field>
633 <field name="code">10</field>
634 <field name="modelo303_id" ref="modelo_303_2014"/>
635 <field name="tax_code_ids" eval="[(6,0,[ref('l10n_es.iva_pymes_dev_19'), ref('l10n_es.iva_pymes_dev_base_intra_serv')])]"/>
636 </record>
637 <record id="modelo_303_2014_casilla_11" model="l10n.es.aeat.modelo303.casilla.template">
638 <field name="name">IVA Devengado - Adquisiciones intracomunitarias de bienes y servicios - Cuota</field>
639 <field name="code">11</field>
640 <field name="modelo303_id" ref="modelo_303_2014"/>
641 <field name="tax_code_ids" eval="[(6,0,[ref('l10n_es.iva_pymes_dev_20'), ref('l10n_es.iva_pymes_dev_quota_intra_serv')])]"/>
642 </record>
643
644
645 <record id="modelo_303_2014_casilla_12" model="l10n.es.aeat.modelo303.casilla.template">
646 <field name="name">IVA Devengado - Otras operaciones con ISP (excepto. adq. intracom) - Base imponible</field>
647 <field name="code">12</field>
648 <field name="modelo303_id" ref="modelo_303_2014"/>
649 <field name="tax_code_ids" eval="[(6,0,[ref('l10n_es.iva_pymes_dev_base_isp')])]"/>
650 </record>
651 <record id="modelo_303_2014_casilla_13" model="l10n.es.aeat.modelo303.casilla.template">
652 <field name="name">IVA Devengado - Otras operaciones con ISP (excepto. adq. intracom) - Cuota</field>
653 <field name="code">13</field>
654 <field name="modelo303_id" ref="modelo_303_2014"/>
655 <field name="tax_code_ids" eval="[(6,0,[ref('l10n_es.iva_pymes_dev_quota_isp')])]"/>
656 </record>
657
658
659 <record id="modelo_303_2014_casilla_14" model="l10n.es.aeat.modelo303.casilla.template">
660 <field name="name">IVA Devengado - Modificación bases y cuotas- Base imponible</field>
661 <field name="code">14</field>
662 <field name="modelo303_id" ref="modelo_303_2014"/>
663 </record>
664 <record id="modelo_303_2014_casilla_15" model="l10n.es.aeat.modelo303.casilla.template">
665 <field name="name">IVA Devengado - Modificación bases y cuotas- Cuota</field>
666 <field name="code">15</field>
667 <field name="modelo303_id" ref="modelo_303_2014"/>
668 </record>
669
670 <!-- Recargo equivalencia 0.5% -->
671 <record id="modelo_303_2014_casilla_16" model="l10n.es.aeat.modelo303.casilla.template">
672 <field name="name">IVA devengado - Recargo de equivalencia - Base imponible 0.5%</field>
673 <field name="code">16</field>
674 <field name="modelo303_id" ref="modelo_303_2014"/>
675 <field name="tax_code_ids" eval="[(6,0,[ref('l10n_es.iva_pymes_dev_10')])]"/>
676 </record>
677 <record id="modelo_303_2014_casilla_17" model="l10n.es.aeat.modelo303.casilla.template">
678 <field name="name">IVA devengado - Recargo de equivalencia - Tipo 0.5%</field>
679 <field name="code">17</field>
680 <field name="modelo303_id" ref="modelo_303_2014"/>
681 <field name="evaluate_as">c18 / c16 * 100.0 if c16 else 0.0</field>
682 </record>
683 <record id="modelo_303_2014_casilla_18" model="l10n.es.aeat.modelo303.casilla.template">
684 <field name="name">IVA devengado - Recargo de equivalencia - Cuota 0.5%</field>
685 <field name="code">18</field>
686 <field name="modelo303_id" ref="modelo_303_2014"/>
687 <field name="tax_code_ids" eval="[(6,0,[ref('l10n_es.iva_pymes_dev_12')])]"/>
688 </record>
689 <!-- Recargo equivalencia 1.4% -->
690 <record id="modelo_303_2014_casilla_19" model="l10n.es.aeat.modelo303.casilla.template">
691 <field name="name">IVA devengado - Recargo de equivalencia - Base imponible 1.4%</field>
692 <field name="code">19</field>
693 <field name="modelo303_id" ref="modelo_303_2014"/>
694 <field name="tax_code_ids" eval="[(6,0,[ref('l10n_es.iva_pymes_dev_13_14')])]"/>
695 </record>
696 <record id="modelo_303_2014_casilla_20" model="l10n.es.aeat.modelo303.casilla.template">
697 <field name="name">IVA devengado - Recargo de equivalencia - Tipo 1.4%</field>
698 <field name="code">20</field>
699 <field name="modelo303_id" ref="modelo_303_2014"/>
700 <field name="evaluate_as">c21 / c19 * 100.0 if c19 else 0.0</field>
701 </record>
702 <record id="modelo_303_2014_casilla_21" model="l10n.es.aeat.modelo303.casilla.template">
703 <field name="name">IVA devengado - Recargo de equivalencia - Cuota 1.4%</field>
704 <field name="code">21</field>
705 <field name="modelo303_id" ref="modelo_303_2014"/>
706 <field name="tax_code_ids" eval="[(6,0,[ref('l10n_es.iva_pymes_dev_15_14')])]"/>
707 </record>
708 <!-- Recargo equivalencia 5.2% -->
709 <record id="modelo_303_2014_casilla_22" model="l10n.es.aeat.modelo303.casilla.template">
710 <field name="name">IVA devengado - Recargo de equivalencia - Base imponible 5.2%</field>
711 <field name="code">22</field>
712 <field name="modelo303_id" ref="modelo_303_2014"/>
713 <field name="tax_code_ids" eval="[(6,0,[ref('l10n_es.iva_pymes_dev_16_52')])]"/>
714 </record>
715 <record id="modelo_303_2014_casilla_23" model="l10n.es.aeat.modelo303.casilla.template">
716 <field name="name">IVA devengado - Recargo de equivalencia - Tipo 5.2%</field>
717 <field name="code">23</field>
718 <field name="modelo303_id" ref="modelo_303_2014"/>
719 <field name="evaluate_as">c24 / c22 * 100.0 if c22 else 0.0</field>
720 </record>
721 <record id="modelo_303_2014_casilla_24" model="l10n.es.aeat.modelo303.casilla.template">
722 <field name="name">IVA devengado - Recargo de equivalencia - Cuota 5.2%</field>
723 <field name="code">24</field>
724 <field name="modelo303_id" ref="modelo_303_2014"/>
725 <field name="tax_code_ids" eval="[(6,0,[ref('l10n_es.iva_pymes_dev_18_52')])]"/>
726 </record>
727
728 <record id="modelo_303_2014_casilla_25" model="l10n.es.aeat.modelo303.casilla.template">
729 <field name="name">IVA Devengado - Modificaciones bases y cuotas del recargo de equivalencia - Base imponible</field>
730 <field name="code">25</field>
731 <field name="modelo303_id" ref="modelo_303_2014"/>
732 </record>
733 <record id="modelo_303_2014_casilla_26" model="l10n.es.aeat.modelo303.casilla.template">
734 <field name="name">IVA Devengado - Modificaciones bases y cuotas del recargo de equivalencia - Imponible</field>
735 <field name="code">26</field>
736 <field name="modelo303_id" ref="modelo_303_2014"/>
737 </record>
738
739 <record id="modelo_303_2014_casilla_27" model="l10n.es.aeat.modelo303.casilla.template">
740 <field name="name">IVA Devengado - Total cuota devengada</field>
741 <field name="code">27</field>
742 <field name="modelo303_id" ref="modelo_303_2014"/>
743 <field name="evaluate_as">c03+c06+c09+c11+c13+c15+c18+c21+c24+c26</field>
744 </record>
745
746 <!-- IVA DEDUCIBLE -->
747 <record id="modelo_303_2014_casilla_28" model="l10n.es.aeat.modelo303.casilla.template">
748 <field name="name">IVA Deducible - Por cuotas soportadas en operaciones interiores corrientes - Base</field>
749 <field name="code">28</field>
750 <field name="modelo303_id" ref="modelo_303_2014"/>
751 <field name="tax_code_ids" eval="[(6,0,[ref('l10n_es.iva_pymes_ded_22')])]"/>
752 </record>
753 <record id="modelo_303_2014_casilla_29" model="l10n.es.aeat.modelo303.casilla.template">
754 <field name="name">IVA Deducible - Por cuotas soportadas en operaciones interiores corrientes - Cuota</field>
755 <field name="code">29</field>
756 <field name="modelo303_id" ref="modelo_303_2014"/>
757 <field name="tax_code_ids" eval="[(6,0,[ref('l10n_es.iva_pymes_ded_23')])]"/>
758 </record>
759
760 <record id="modelo_303_2014_casilla_30" model="l10n.es.aeat.modelo303.casilla.template">
761 <field name="name">IVA Deducible - Por cuotas soportadas en operaciones interiores con bienes de inversión - Base</field>
762 <field name="code">30</field>
763 <field name="modelo303_id" ref="modelo_303_2014"/>
764 <field name="tax_code_ids" eval="[(6,0,[ref('l10n_es.iva_pymes_ded_24')])]"/>
765 </record>
766 <record id="modelo_303_2014_casilla_31" model="l10n.es.aeat.modelo303.casilla.template">
767 <field name="name">IVA Deducible - Por cuotas soportadas en operaciones interiores con bienes de inversión - Cuota</field>
768 <field name="code">31</field>
769 <field name="modelo303_id" ref="modelo_303_2014"/>
770 <field name="tax_code_ids" eval="[(6,0,[ref('l10n_es.iva_pymes_ded_25')])]"/>
771 </record>
772
773 <record id="modelo_303_2014_casilla_32" model="l10n.es.aeat.modelo303.casilla.template">
774 <field name="name">IVA Deducible - Por cuotas soportadas en las importaciones de bienes corrientes - Base</field>
775 <field name="code">32</field>
776 <field name="modelo303_id" ref="modelo_303_2014"/>
777 <field name="tax_code_ids" eval="[(6,0,[ref('l10n_es.iva_pymes_ded_26')])]"/>
778 </record>
779 <record id="modelo_303_2014_casilla_33" model="l10n.es.aeat.modelo303.casilla.template">
780 <field name="name">IVA Deducible - Por cuotas soportadas en las importaciones de bienes corrientes - Cuota</field>
781 <field name="code">33</field>
782 <field name="modelo303_id" ref="modelo_303_2014"/>
783 <field name="tax_code_ids" eval="[(6,0,[ref('l10n_es.iva_pymes_ded_27')])]"/>
784 </record>
785
786 <record id="modelo_303_2014_casilla_34" model="l10n.es.aeat.modelo303.casilla.template">
787 <field name="name">IVA Deducible - Por cuotas soportadas en las importaciones de bienes de inversión - Base</field>
788 <field name="code">34</field>
789 <field name="modelo303_id" ref="modelo_303_2014"/>
790 <field name="tax_code_ids" eval="[(6,0,[ref('l10n_es.iva_pymes_ded_28')])]"/>
791 </record>
792 <record id="modelo_303_2014_casilla_35" model="l10n.es.aeat.modelo303.casilla.template">
793 <field name="name">IVA Deducible - Por cuotas soportadas en las importaciones de bienes de inversión - Cuota</field>
794 <field name="code">35</field>
795 <field name="modelo303_id" ref="modelo_303_2014"/>
796 <field name="tax_code_ids" eval="[(6,0,[ref('l10n_es.iva_pymes_ded_29')])]"/>
797 </record>
798
799 <record id="modelo_303_2014_casilla_36" model="l10n.es.aeat.modelo303.casilla.template">
800 <field name="name">IVA Deducible - En adquisiciones intracomunitarias de bienes y servicios corrientes - Base</field>
801 <field name="code">36</field>
802 <field name="modelo303_id" ref="modelo_303_2014"/>
803 <field name="tax_code_ids" eval="[(6,0,[ref('l10n_es.iva_pymes_ded_30')])]"/>
804 </record>
805 <record id="modelo_303_2014_casilla_37" model="l10n.es.aeat.modelo303.casilla.template">
806 <field name="name">IVA Deducible - En adquisiciones intracomunitarias de bienes y servicios corrientes - Cuota</field>
807 <field name="code">37</field>
808 <field name="modelo303_id" ref="modelo_303_2014"/>
809 <field name="tax_code_ids" eval="[(6,0,[ref('l10n_es.iva_pymes_ded_31')])]"/>
810 </record>
811
812 <record id="modelo_303_2014_casilla_38" model="l10n.es.aeat.modelo303.casilla.template">
813 <field name="name">IVA Deducible - En adquisiciones intracomunitarias de bienes de inversión - Base</field>
814 <field name="code">38</field>
815 <field name="modelo303_id" ref="modelo_303_2014"/>
816 <field name="tax_code_ids" eval="[(6,0,[ref('l10n_es.iva_pymes_ded_32')])]"/>
817 </record>
818 <record id="modelo_303_2014_casilla_39" model="l10n.es.aeat.modelo303.casilla.template">
819 <field name="name">IVA Deducible - En adquisiciones intracomunitarias de bienes de inversión - Cuota</field>
820 <field name="code">39</field>
821 <field name="modelo303_id" ref="modelo_303_2014"/>
822 <field name="tax_code_ids" eval="[(6,0,[ref('l10n_es.iva_pymes_ded_33')])]"/>
823 </record>
824
825 <record id="modelo_303_2014_casilla_40" model="l10n.es.aeat.modelo303.casilla.template">
826 <field name="name">IVA Deducible - Rectificación de deducciones - Base</field>
827 <field name="code">40</field>
828 <field name="modelo303_id" ref="modelo_303_2014"/>
829 </record>
830
831 <record id="modelo_303_2014_casilla_41" model="l10n.es.aeat.modelo303.casilla.template">
832 <field name="name">IVA Deducible - Rectificación de deducciones - Cuota</field>
833 <field name="code">41</field>
834 <field name="modelo303_id" ref="modelo_303_2014"/>
835 </record>
836
837 <record id="modelo_303_2014_casilla_42" model="l10n.es.aeat.modelo303.casilla.template">
838 <field name="name">IVA Deducible - Compensaciones Régimen Especial A.G. y P. - Cuota</field>
839 <field name="code">42</field>
840 <field name="modelo303_id" ref="modelo_303_2014"/>
841 </record>
842
843 <record id="modelo_303_2014_casilla_43" model="l10n.es.aeat.modelo303.casilla.template">
844 <field name="name">IVA Deducible - Regularización inversiones - Cuota</field>
845 <field name="code">43</field>
846 <field name="modelo303_id" ref="modelo_303_2014"/>
847 </record>
848
849 <record id="modelo_303_2014_casilla_44" model="l10n.es.aeat.modelo303.casilla.template">
850 <field name="name">Regimen General - IVA Deducible - Regularización por aplicación del porcentaje definitivo de prorrata - Cuota</field>
851 <field name="code">44</field>
852 <field name="modelo303_id" ref="modelo_303_2014"/>
853 </record>
854
855 <record id="modelo_303_2014_casilla_45" model="l10n.es.aeat.modelo303.casilla.template">
856 <field name="name">Total a deducir</field>
857 <field name="code">45</field>
858 <field name="modelo303_id" ref="modelo_303_2014"/>
859 <field name="evaluate_as">c29+c31+c33+c35+c37+c39+c41+c42+c43+c44</field>
860 </record>
861
862 <record id="modelo_303_2014_casilla_46" model="l10n.es.aeat.modelo303.casilla.template">
863 <field name="name">IVA Deducible - Resultado régimen general</field>
864 <field name="code">46</field>
865 <field name="modelo303_id" ref="modelo_303_2014"/>
866 <field name="evaluate_as">c27-c45</field>
867 </record>
868
869 <record id="modelo_303_2014_casilla_59" model="l10n.es.aeat.modelo303.casilla.template">
870 <field name="name">Información adicional - Entregas intracomunitarias de bienes y servicios</field>
871 <field name="code">59</field>
872 <field name="modelo303_id" ref="modelo_303_2014"/>
873 <field name="tax_code_ids" eval="[(6,0,[ref('l10n_es.base_pymes_intra_42')])]"/>
874 </record>
875
876 <record id="modelo_303_2014_casilla_60" model="l10n.es.aeat.modelo303.casilla.template">
877 <field name="name">Información adicional - Exportaciones y operaciones asimiladas</field>
878 <field name="code">60</field>
879 <field name="modelo303_id" ref="modelo_303_2014"/>
880 <field name="tax_code_ids" eval="[(6,0,[ref('l10n_es.base_pymes_extra_43')])]"/>
881 </record>
882
883 <record id="modelo_303_2014_casilla_61" model="l10n.es.aeat.modelo303.casilla.template">
884 <field name="name">Información adicional - Operaciones no sujetas o con inversión del sujeto pasivo que originan el derecho a deducción</field>
885 <field name="code">61</field>
886 <field name="modelo303_id" ref="modelo_303_2014"/>
887 <field name="tax_code_ids" eval="[(6,0,[ref('l10n_es.base_pymes_extra_44')])]"/>
888 </record>
889
890 <record id="modelo_303_2014_casilla_64" model="l10n.es.aeat.modelo303.casilla.template">
891 <field name="name">Resultado - Suma de resultados</field>
892 <field name="code">64</field>
893 <field name="modelo303_id" ref="modelo_303_2014"/>
894 <field name="evaluate_as">c46+c58</field>
895 </record>
896
897 <record id="modelo_303_2013_casilla_65" model="l10n.es.aeat.modelo303.casilla.template">
898 <field name="name">% Atribuible a la Administración del Estado</field>
899 <field name="code">65</field>
900 <field name="modelo303_id" ref="modelo_303_2014"/>
901 <field name="default_value">100</field>
902 </record>
903
904 <record id="modelo_303_2013_casilla_66" model="l10n.es.aeat.modelo303.casilla.template">
905 <field name="name">Atribuible a la Administración del Estado</field>
906 <field name="code">66</field>
907 <field name="modelo303_id" ref="modelo_303_2014"/>
908 <field name="evaluate_as">c64 * (c65 / 100.0)</field>
909 </record>
910
911 <record id="modelo_303_2013_casilla_67" model="l10n.es.aeat.modelo303.casilla.template">
912 <field name="name">Resultado - Cuotas a compensar de periodos anteriores</field>
913 <field name="code">67</field>
914 <field name="modelo303_id" ref="modelo_303_2014"/>
915 </record>
916
917 <record id="modelo_303_2013_casilla_68" model="l10n.es.aeat.modelo303.casilla.template">
918 <field name="name">Resultado - Exclusivamente para sujetos pasivos que tributan conjuntamente a la Administración del Estado y a las Diputaciones Forales Resultado de la regularización anual</field>
919 <field name="code">68</field>
920 <field name="modelo303_id" ref="modelo_303_2014"/>
921 </record>
922
923 <record id="modelo_303_2013_casilla_69" model="l10n.es.aeat.modelo303.casilla.template">
924 <field name="name">Resultado - Resultado</field>
925 <field name="code">69</field>
926 <field name="modelo303_id" ref="modelo_303_2014"/>
927 <field name="evaluate_as">c66-c67+c68</field>
928 </record>
929
930 <record id="modelo_303_2013_casilla_70" model="l10n.es.aeat.modelo303.casilla.template">
931 <field name="name">Resultado - A deducir</field>
932 <field name="code">70</field>
933 <field name="modelo303_id" ref="modelo_303_2014"/>
934 </record>
935
936 <record id="modelo_303_2013_casilla_71" model="l10n.es.aeat.modelo303.casilla.template">
937 <field name="name">Resultado - Resultado de la liquidación</field>
938 <field name="code">71</field>
939 <field name="modelo303_id" ref="modelo_303_2014"/>
940 <field name="evaluate_as">c69-c70</field>
941 </record>
942
943 <record id="modelo_303_2013_casilla_62" model="l10n.es.aeat.modelo303.casilla.template">
944 <field name="name">Información adicional - Importes devengados en período de liquidación según art. 75 LIVA. - Base Imponible</field>
945 <field name="code">62</field>
946 <field name="modelo303_id" ref="modelo_303_2014"/>
947 </record>
948
949 <record id="modelo_303_2013_casilla_63" model="l10n.es.aeat.modelo303.casilla.template">
950 <field name="name">Información adicional - Importes devengados en período de liquidación según art. 75 LIVA. - Cuota</field>
951 <field name="code">63</field>
952 <field name="modelo303_id" ref="modelo_303_2014"/>
953 </record>
954
955 <record id="modelo_303_2013_casilla_74" model="l10n.es.aeat.modelo303.casilla.template">
956 <field name="name">Información adicional - Cuotas de IVA soportados en operaciones que tributen por el régimen especial del criterio de caja. - Base Imponible</field>
957 <field name="code">74</field>
958 <field name="modelo303_id" ref="modelo_303_2014"/>
959 </record>
960
961 <record id="modelo_303_2013_casilla_75" model="l10n.es.aeat.modelo303.casilla.template">
962 <field name="name">Información adicional - Cuotas de IVA soportados en operaciones que tributen por el régimen especial del criterio de caja. - Cuota</field>
963 <field name="code">75</field>
964 <field name="modelo303_id" ref="modelo_303_2014"/>
965 </record>
966 </data>
967</openerp>
0968
=== added file 'l10n_es_aeat_mod303/modelo303_view.xml'
--- l10n_es_aeat_mod303/modelo303_view.xml 1970-01-01 00:00:00 +0000
+++ l10n_es_aeat_mod303/modelo303_view.xml 2014-04-16 11:51:06 +0000
@@ -0,0 +1,210 @@
1<?xml version="1.0" encoding="utf-8"?>
2<openerp>
3 <data noupdate="0">
4 <!-- Template 303 -->
5 <record id="view_l10n_es_aeat_modelo303_casilla_template_tree" model="ir.ui.view">
6 <field name="name">l10n.es.aeat.modelo303.casilla.template.tree</field>
7 <field name="model">l10n.es.aeat.modelo303.casilla.template</field>
8 <field name="arch" type="xml">
9 <tree string="Casillas AEAT">
10 <field name="modelo303_id"/>
11 <field name="code"/>
12 <field name="name"/>
13 <field name="evaluate_as"/>
14 <field name="default_value"/>
15 </tree>
16 </field>
17 </record>
18
19 <record id="view_l10n_es_aeat_modelo303_casilla_template_form" model="ir.ui.view">
20 <field name="name">l10n.es.aeat.modelo303.casilla.template.form</field>
21 <field name="model">l10n.es.aeat.modelo303.casilla.template</field>
22 <field name="arch" type="xml">
23 <form string="Definición de casillas AEAT" version="7.0">
24 <sheet>
25 <group colspan="4">
26 <group>
27 <field name="code" required="1"/>
28 <field name="modelo303_id" required="1"/>
29 <field name="default_value"/>
30 </group>
31 <group>
32 <field name="name" required="1"/>
33 <field name="evaluate_as"/>
34 </group>
35 </group>
36 <group>
37 <field name="tax_code_ids" nolabel="1" colspan="4"/>
38 </group>
39 </sheet>
40 </form>
41 </field>
42 </record>
43
44 <record id="action_l10n_es_aeat_modelo303_casilla_template_tree" model="ir.actions.act_window">
45 <field name="name">Template Casillas AEAT</field>
46 <field name="res_model">l10n.es.aeat.modelo303.casilla.template</field>
47 <field name="view_type">form</field>
48 <field name="view_mode">tree,form</field>
49 <field name="view_id" ref="view_l10n_es_aeat_modelo303_casilla_template_tree"/>
50 <field name="help">Definición de las casillas AEAT</field>
51 </record>
52
53 <menuitem id="menu_l10n_es_aeat_modelo303_casilla_template"
54 parent="account.account_template_folder"
55 action="action_l10n_es_aeat_modelo303_casilla_template_tree"
56 sequence="9999"
57 name="Casillas AEAT"/>
58
59 <!-- Casillas 303 -->
60 <record id="view_l10n_es_aeat_modelo303_casilla_tree" model="ir.ui.view">
61 <field name="name">l10n.es.aeat.modelo303.casilla.tree</field>
62 <field name="model">l10n.es.aeat.modelo303.casilla</field>
63 <field name="arch" type="xml">
64 <tree string="Casillas AEAT">
65 <field name="modelo303_id"/>
66 <field name="code"/>
67 <field name="name"/>
68 <field name="evaluate_as"/>
69 <field name="default_value"/>
70 </tree>
71 </field>
72 </record>
73
74 <record id="view_l10n_es_aeat_modelo303_casilla_form" model="ir.ui.view">
75 <field name="name">l10n.es.aeat.modelo303.casilla.form</field>
76 <field name="model">l10n.es.aeat.modelo303.casilla</field>
77 <field name="arch" type="xml">
78 <form string="Definición de casillas AEAT" version="7.0">
79 <sheet>
80 <group colspan="4">
81 <group>
82 <field name="code" required="1"/>
83 <field name="modelo303_id" required="1"/>
84 <field name="default_value"/>
85 </group>
86 <group>
87 <field name="name" required="1"/>
88 <field name="evaluate_as"/>
89 </group>
90 </group>
91 <group>
92 <field name="tax_code_ids" nolabel="1" colspan="4"/>
93 </group>
94 </sheet>
95 </form>
96 </field>
97 </record>
98
99 <record id="action_l10n_es_aeat_modelo303_casilla_tree" model="ir.actions.act_window">
100 <field name="name">Casillas AEAT</field>
101 <field name="res_model">l10n.es.aeat.modelo303.casilla</field>
102 <field name="view_type">form</field>
103 <field name="view_mode">tree,form</field>
104 <field name="view_id" ref="view_l10n_es_aeat_modelo303_casilla_tree"/>
105 <field name="help">Definición de las casillas AEAT</field>
106 </record>
107
108 <menuitem id="menu_l10n_es_aeat_modelo303_casilla"
109 parent="account.account_account_menu"
110 action="action_l10n_es_aeat_modelo303_casilla_tree"
111 sequence="9998"
112 name="Casillas AEAT"/>
113
114 <!-- Informe modelo 303 -->
115 <record id="view_l10n_es_aeat_modelo303_report_tree" model="ir.ui.view">
116 <field name="name">l10n_es.aeat.modelo303.report.tree</field>
117 <field name="model">l10n.es.aeat.modelo303.report</field>
118 <field name="inherit_id" ref="l10n_es_aeat.view_l10n_es_aeat_report_tree"/>
119 <field name="arch" type="xml">
120 <tree position="attributes">
121 <attribute name="string">AEAT 303 reports</attribute>
122 </tree>
123 <field name="fiscalyear_id" position="after">
124 <field name="period"/>
125 </field>
126 </field>
127 </record>
128
129 <record id="view_l10n_es_aeat_modelo303_report_form" model="ir.ui.view">
130 <field name="name">l10n_es.aeat.modelo303.report.form</field>
131 <field name="model">l10n.es.aeat.modelo303.report</field>
132 <field name="inherit_id" ref="l10n_es_aeat.view_l10n_es_aeat_report_form"/>
133 <field name="arch" type="xml">
134 <button name="%(l10n_es_aeat.action_wizard_aeat_export)d" position="attributes">
135 <attribute name="name">%(action_wizard_aeat_modelo303_export)d</attribute>
136 </button>
137 <button name="%(action_wizard_aeat_modelo303_export)d" position="after">
138 <button name="button_calculate_formulas" string="Calculate formulas" type="object" states="calculated" icon="gtk-execute"/>
139 </button>
140 <button name="button_recalculate" position="replace"/>
141 <field name="fiscalyear_id" position="after">
142 <field name="company_partner_id" invisible="1"/>
143 <field name="period" required="True"/>
144 <field name="period_start_id" domain="[('fiscalyear_id', '=', fiscalyear_id), ('special', '=', False)]" required="True"/>
145 <field name="period_end_id" domain="[('fiscalyear_id', '=', fiscalyear_id), ('special', '=', False)]" required="False"/>
146 <field name="modelo303_id" required="True"/>
147 <field name="cuenta_ingreso_id" domain="[('partner_id', '=', company_partner_id)]" required="False"/>
148 <field name="cuenta_devolucion_id" domain="[('partner_id', '=', company_partner_id)]" required="False"/>
149 </field>
150 <field name="calculation_date" position="after">
151 <field name="devolucion_mensual"/>
152 <field name="sujeto_a_cdc"/>
153 <field name="destinatario_operaciones_cdc"/>
154 <field name="complementaria"/>
155 <field name="previous_number" attrs="{'required': [('complementaria', '=', True)]}"/>
156 <field name="sin_actividad"/>
157 </field>
158 <group string="Declaración" position="after">
159 <group colspan="4">
160 <field name="valor_casilla_ids" nolabel="1">
161 <tree string="Casillas" editable="bottom">
162 <field name="code" readonly="1"/>
163 <field name="valor"/>
164 <field name="casilla_id" readonly="1"/>
165 </tree>
166 </field>
167 </group>
168 </group>
169 </field>
170 </record>
171
172 <record id="action_l10n_es_aeat_modelo303_report" model="ir.actions.act_window">
173 <field name="name">AEAT model 303</field>
174 <field name="res_model">l10n.es.aeat.modelo303.report</field>
175 <field name="view_type">form</field>
176 <field name="view_mode">tree,form</field>
177 <field name="help">Create and query AEAT Model 303 reports</field>
178 </record>
179 <record model="ir.actions.act_window.view" id="action_l10n_es_aeat_modelo303_report_tree">
180 <field name="sequence" eval="2"/>
181 <field name="view_mode">tree</field>
182 <field name="view_id" ref="view_l10n_es_aeat_modelo303_report_tree"/>
183 <field name="act_window_id" ref="action_l10n_es_aeat_modelo303_report"/>
184 </record>
185 <record model="ir.actions.act_window.view" id="action_l10n_es_aeat_modelo303_report_form">
186 <field name="sequence" eval="3"/>
187 <field name="view_mode">form</field>
188 <field name="view_id" ref="view_l10n_es_aeat_modelo303_report_form"/>
189 <field name="act_window_id" ref="action_l10n_es_aeat_modelo303_report"/>
190 </record>
191
192 <menuitem id="menu_aeat_modelo303_report"
193 parent="l10n_es_aeat.menu_root_aeat"
194 action="action_l10n_es_aeat_modelo303_report"
195 sequence="303"
196 name="AEAT 303 model"/>
197
198 <!-- Valor casilla -->
199 <record id="view_l10n_es_aeat_modelo303_valor_casilla_tree" model="ir.ui.view">
200 <field name="name">l10n_es.aeat.modelo303.valor.casilla.tree</field>
201 <field name="model">l10n.es.aeat.modelo303.valor.casilla</field>
202 <field name="arch" type="xml">
203 <tree string="Valor casilla">
204 <field name="casilla_id" context="{'fiscalyear_id':fiscalyear_id}"/>
205 <field name="valor"/>
206 </tree>
207 </field>
208 </record>
209 </data>
210</openerp>
0211
=== added directory 'l10n_es_aeat_mod303/security'
=== removed directory 'l10n_es_aeat_mod303/security'
=== added file 'l10n_es_aeat_mod303/security/ir.model.access.csv'
--- l10n_es_aeat_mod303/security/ir.model.access.csv 1970-01-01 00:00:00 +0000
+++ l10n_es_aeat_mod303/security/ir.model.access.csv 2014-04-16 11:51:06 +0000
@@ -0,0 +1,7 @@
1"id","name","model_id:id","group_id:id","perm_read","perm_write","perm_create","perm_unlink"
2"access_l10n_es_aeat_modelo303_report","l10n_es_aeat_modelo303 manager","model_l10n_es_aeat_modelo303_report","l10n_es_aeat.group_account_aeat",1,1,1,1
3"access_l10n_es_aeat_modelo303_template","access_l10n_es_aeat_modelo303_template","model_l10n_es_aeat_modelo303_template","l10n_es_aeat.group_account_aeat",1,1,1,1
4"access_l10n_es_aeat_modelo303_casilla_template","access_l10n_es_aeat_modelo303_casilla_template","model_l10n_es_aeat_modelo303_casilla_template","l10n_es_aeat.group_account_aeat",1,1,1,1
5"access_l10n_es_aeat_modelo303","access_l10n_es_aeat_modelo303","model_l10n_es_aeat_modelo303","l10n_es_aeat.group_account_aeat",1,1,1,1
6"access_l10n_es_aeat_modelo303_casilla","access_l10n_es_aeat_modelo303_casilla","model_l10n_es_aeat_modelo303_casilla","l10n_es_aeat.group_account_aeat",1,1,1,1
7"access_l10n_es_aeat_modelo303_valor_casilla","access_l10n_es_aeat_modelo303_valor_casilla","model_l10n_es_aeat_modelo303_valor_casilla","l10n_es_aeat.group_account_aeat",1,1,1,1
0\ No newline at end of file8\ No newline at end of file
19
=== removed file 'l10n_es_aeat_mod303/security/ir.model.access.csv'
--- l10n_es_aeat_mod303/security/ir.model.access.csv 2014-01-17 01:03:03 +0000
+++ l10n_es_aeat_mod303/security/ir.model.access.csv 1970-01-01 00:00:00 +0000
@@ -1,2 +0,0 @@
1"id","name","model_id:id","group_id:id","perm_read","perm_write","perm_create","perm_unlink"
2"access_l10n_es_aeat_mod303_manager","l10n_es_aeat_mod303 manager","model_l10n_es_aeat_mod303_report","l10n_es_aeat.group_account_aeat",1,1,1,1
30
=== added directory 'l10n_es_aeat_mod303/static'
=== removed directory 'l10n_es_aeat_mod303/static'
=== added directory 'l10n_es_aeat_mod303/static/src'
=== removed directory 'l10n_es_aeat_mod303/static/src'
=== added directory 'l10n_es_aeat_mod303/static/src/img'
=== removed directory 'l10n_es_aeat_mod303/static/src/img'
=== added file 'l10n_es_aeat_mod303/static/src/img/icon.png'
4Binary files l10n_es_aeat_mod303/static/src/img/icon.png 1970-01-01 00:00:00 +0000 and l10n_es_aeat_mod303/static/src/img/icon.png 2014-04-16 11:51:06 +0000 differ1Binary files l10n_es_aeat_mod303/static/src/img/icon.png 1970-01-01 00:00:00 +0000 and l10n_es_aeat_mod303/static/src/img/icon.png 2014-04-16 11:51:06 +0000 differ
=== removed file 'l10n_es_aeat_mod303/static/src/img/icon.png'
5Binary files l10n_es_aeat_mod303/static/src/img/icon.png 2014-01-17 01:03:03 +0000 and l10n_es_aeat_mod303/static/src/img/icon.png 1970-01-01 00:00:00 +0000 differ2Binary files l10n_es_aeat_mod303/static/src/img/icon.png 2014-01-17 01:03:03 +0000 and l10n_es_aeat_mod303/static/src/img/icon.png 1970-01-01 00:00:00 +0000 differ
=== added file 'l10n_es_aeat_mod303/static/src/img/icon_source.svg'
--- l10n_es_aeat_mod303/static/src/img/icon_source.svg 1970-01-01 00:00:00 +0000
+++ l10n_es_aeat_mod303/static/src/img/icon_source.svg 2014-04-16 11:51:06 +0000
@@ -0,0 +1,99 @@
1<?xml version="1.0" encoding="UTF-8" standalone="no"?>
2<!-- Created with Inkscape (http://www.inkscape.org/) -->
3
4<svg
5 xmlns:dc="http://purl.org/dc/elements/1.1/"
6 xmlns:cc="http://creativecommons.org/ns#"
7 xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
8 xmlns:svg="http://www.w3.org/2000/svg"
9 xmlns="http://www.w3.org/2000/svg"
10 xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
11 xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
12 id="svg2"
13 version="1.1"
14 inkscape:version="0.48.3.1 r9886"
15 width="128"
16 height="128"
17 sodipodi:docname="icon_source.svg"
18 inkscape:export-filename="icon.png"
19 inkscape:export-xdpi="90"
20 inkscape:export-ydpi="90">
21 <metadata
22 id="metadata8">
23 <rdf:RDF>
24 <cc:Work
25 rdf:about="">
26 <dc:format>image/svg+xml</dc:format>
27 <dc:type
28 rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
29 <dc:title></dc:title>
30 </cc:Work>
31 </rdf:RDF>
32 </metadata>
33 <defs
34 id="defs6" />
35 <sodipodi:namedview
36 pagecolor="#ffffff"
37 bordercolor="#666666"
38 borderopacity="1"
39 objecttolerance="10"
40 gridtolerance="10"
41 guidetolerance="10"
42 inkscape:pageopacity="0"
43 inkscape:pageshadow="2"
44 inkscape:window-width="1855"
45 inkscape:window-height="1176"
46 id="namedview4"
47 showgrid="false"
48 inkscape:zoom="9.2903224"
49 inkscape:cx="65.663825"
50 inkscape:cy="56.213195"
51 inkscape:window-x="65"
52 inkscape:window-y="24"
53 inkscape:window-maximized="1"
54 inkscape:current-layer="svg2"
55 fit-margin-top="0"
56 fit-margin-left="0"
57 fit-margin-right="0"
58 fit-margin-bottom="0" />
59 <g
60 id="g3003"
61 transform="translate(-0.07356158,0)">
62 <g
63 transform="translate(0,-3.31149)"
64 id="g2998">
65 <rect
66 style="color:#000000;fill:#0060b2;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:0.51812077;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"
67 id="rect2998"
68 width="51.523285"
69 height="118.80513"
70 x="13.910543"
71 y="3.8516259"
72 ry="0"
73 transform="matrix(1,0,0.51069126,0.85976417,0,0)" />
74 <path
75 style="fill:#ffd715;fill-opacity:1;stroke:none"
76 d="M 8.3819299,96.350865 C 15.28056,97.754835 21.012791,96.867186 27.616708,95.369146 62.09419,84.971119 95.837094,59.943837 111.39019,30.987651 c 3.18661,-6.108384 5.44624,-13.663422 7.03447,-20.85088 l 6.46605,10.776762 C 125.69568,40.01481 102.39016,63.273776 86.603152,76.12262 73.967981,86.300307 59.506348,95.700246 46.777865,100.17543 c -9.415431,3.18415 -23.576115,5.76306 -32.88781,5.87454 z"
77 id="path3000"
78 inkscape:connector-curvature="0"
79 sodipodi:nodetypes="ccccccccc" />
80 <path
81 style="fill:#db2f34;fill-opacity:1;stroke:none"
82 d="m 24.427332,35.162809 6.945024,10.297799 C 12.399362,62.416498 10.934918,76.019681 6.2265773,90.24404 L 0,79.467276 C 3.2831165,59.062301 13.253472,46.414525 24.427332,35.162809 z"
83 id="path3021"
84 inkscape:connector-curvature="0"
85 sodipodi:nodetypes="ccccc" />
86 </g>
87 </g>
88 <text
89 sodipodi:linespacing="125%"
90 id="text2988"
91 y="127.48399"
92 x="-1.5893271"
93 style="font-size:42.27203751px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;text-align:start;line-height:125%;letter-spacing:0px;word-spacing:0px;text-anchor:start;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold"
94 xml:space="preserve"><tspan
95 y="127.48399"
96 x="-1.5893271"
97 id="tspan2990"
98 sodipodi:role="line">303</tspan></text>
99</svg>
0100
=== removed file 'l10n_es_aeat_mod303/static/src/img/icon_source.svg'
--- l10n_es_aeat_mod303/static/src/img/icon_source.svg 2014-01-17 01:03:03 +0000
+++ l10n_es_aeat_mod303/static/src/img/icon_source.svg 1970-01-01 00:00:00 +0000
@@ -1,99 +0,0 @@
1<?xml version="1.0" encoding="UTF-8" standalone="no"?>
2<!-- Created with Inkscape (http://www.inkscape.org/) -->
3
4<svg
5 xmlns:dc="http://purl.org/dc/elements/1.1/"
6 xmlns:cc="http://creativecommons.org/ns#"
7 xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
8 xmlns:svg="http://www.w3.org/2000/svg"
9 xmlns="http://www.w3.org/2000/svg"
10 xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
11 xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
12 id="svg2"
13 version="1.1"
14 inkscape:version="0.48.3.1 r9886"
15 width="128"
16 height="128"
17 sodipodi:docname="icon_source.svg"
18 inkscape:export-filename="icon.png"
19 inkscape:export-xdpi="90"
20 inkscape:export-ydpi="90">
21 <metadata
22 id="metadata8">
23 <rdf:RDF>
24 <cc:Work
25 rdf:about="">
26 <dc:format>image/svg+xml</dc:format>
27 <dc:type
28 rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
29 <dc:title></dc:title>
30 </cc:Work>
31 </rdf:RDF>
32 </metadata>
33 <defs
34 id="defs6" />
35 <sodipodi:namedview
36 pagecolor="#ffffff"
37 bordercolor="#666666"
38 borderopacity="1"
39 objecttolerance="10"
40 gridtolerance="10"
41 guidetolerance="10"
42 inkscape:pageopacity="0"
43 inkscape:pageshadow="2"
44 inkscape:window-width="1855"
45 inkscape:window-height="1176"
46 id="namedview4"
47 showgrid="false"
48 inkscape:zoom="9.2903224"
49 inkscape:cx="65.663825"
50 inkscape:cy="56.213195"
51 inkscape:window-x="65"
52 inkscape:window-y="24"
53 inkscape:window-maximized="1"
54 inkscape:current-layer="svg2"
55 fit-margin-top="0"
56 fit-margin-left="0"
57 fit-margin-right="0"
58 fit-margin-bottom="0" />
59 <g
60 id="g3003"
61 transform="translate(-0.07356158,0)">
62 <g
63 transform="translate(0,-3.31149)"
64 id="g2998">
65 <rect
66 style="color:#000000;fill:#0060b2;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:0.51812077;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"
67 id="rect2998"
68 width="51.523285"
69 height="118.80513"
70 x="13.910543"
71 y="3.8516259"
72 ry="0"
73 transform="matrix(1,0,0.51069126,0.85976417,0,0)" />
74 <path
75 style="fill:#ffd715;fill-opacity:1;stroke:none"
76 d="M 8.3819299,96.350865 C 15.28056,97.754835 21.012791,96.867186 27.616708,95.369146 62.09419,84.971119 95.837094,59.943837 111.39019,30.987651 c 3.18661,-6.108384 5.44624,-13.663422 7.03447,-20.85088 l 6.46605,10.776762 C 125.69568,40.01481 102.39016,63.273776 86.603152,76.12262 73.967981,86.300307 59.506348,95.700246 46.777865,100.17543 c -9.415431,3.18415 -23.576115,5.76306 -32.88781,5.87454 z"
77 id="path3000"
78 inkscape:connector-curvature="0"
79 sodipodi:nodetypes="ccccccccc" />
80 <path
81 style="fill:#db2f34;fill-opacity:1;stroke:none"
82 d="m 24.427332,35.162809 6.945024,10.297799 C 12.399362,62.416498 10.934918,76.019681 6.2265773,90.24404 L 0,79.467276 C 3.2831165,59.062301 13.253472,46.414525 24.427332,35.162809 z"
83 id="path3021"
84 inkscape:connector-curvature="0"
85 sodipodi:nodetypes="ccccc" />
86 </g>
87 </g>
88 <text
89 sodipodi:linespacing="125%"
90 id="text2988"
91 y="127.48399"
92 x="-1.5893271"
93 style="font-size:42.27203751px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;text-align:start;line-height:125%;letter-spacing:0px;word-spacing:0px;text-anchor:start;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold"
94 xml:space="preserve"><tspan
95 y="127.48399"
96 x="-1.5893271"
97 id="tspan2990"
98 sodipodi:role="line">303</tspan></text>
99</svg>
1000
=== added directory 'l10n_es_aeat_mod303/wizard'
=== removed directory 'l10n_es_aeat_mod303/wizard'
=== added file 'l10n_es_aeat_mod303/wizard/__init__.py'
--- l10n_es_aeat_mod303/wizard/__init__.py 1970-01-01 00:00:00 +0000
+++ l10n_es_aeat_mod303/wizard/__init__.py 2014-04-16 11:51:06 +0000
@@ -0,0 +1,19 @@
1# -*- encoding: utf-8 -*-
2##############################################################################
3#
4# This program is free software: you can redistribute it and/or modify
5# it under the terms of the GNU General Public License as published by
6# the Free Software Foundation, either version 3 of the License, or
7# (at your option) any later version.
8#
9# This program is distributed in the hope that it will be useful,
10# but WITHOUT ANY WARRANTY; without even the implied warranty of
11# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12# GNU General Public License for more details.
13#
14# You should have received a copy of the GNU General Public License
15# along with this program. If not, see http://www.gnu.org/licenses/.
16#
17##############################################################################
18from . import export_modelo303_to_boe
19from . import wizard_chart_update
020
=== removed file 'l10n_es_aeat_mod303/wizard/__init__.py'
--- l10n_es_aeat_mod303/wizard/__init__.py 2014-01-17 01:03:03 +0000
+++ l10n_es_aeat_mod303/wizard/__init__.py 1970-01-01 00:00:00 +0000
@@ -1,18 +0,0 @@
1# -*- encoding: utf-8 -*-
2##############################################################################
3#
4# This program is free software: you can redistribute it and/or modify
5# it under the terms of the GNU General Public License as published by
6# the Free Software Foundation, either version 3 of the License, or
7# (at your option) any later version.
8#
9# This program is distributed in the hope that it will be useful,
10# but WITHOUT ANY WARRANTY; without even the implied warranty of
11# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12# GNU General Public License for more details.
13#
14# You should have received a copy of the GNU General Public License
15# along with this program. If not, see http://www.gnu.org/licenses/.
16#
17##############################################################################
18from . import export_mod303_to_boe
190
=== removed file 'l10n_es_aeat_mod303/wizard/export_mod303_to_boe.py'
--- l10n_es_aeat_mod303/wizard/export_mod303_to_boe.py 2014-01-31 18:51:14 +0000
+++ l10n_es_aeat_mod303/wizard/export_mod303_to_boe.py 1970-01-01 00:00:00 +0000
@@ -1,173 +0,0 @@
1# -*- encoding: utf-8 -*-
2##############################################################################
3#
4# This program is free software: you can redistribute it and/or modify
5# it under the terms of the GNU General Public License as published by
6# the Free Software Foundation, either version 3 of the License, or
7# (at your option) any later version.
8#
9# This program is distributed in the hope that it will be useful,
10# but WITHOUT ANY WARRANTY; without even the implied warranty of
11# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12# GNU General Public License for more details.
13#
14# You should have received a copy of the GNU General Public License
15# along with this program. If not, see http://www.gnu.org/licenses/.
16#
17##############################################################################
18from datetime import datetime
19from openerp.tools.translate import _
20from openerp.osv import orm
21import base64
22import time
23
24class l10n_es_aeat_mod303_export_to_boe(orm.TransientModel):
25 _inherit = "l10n.es.aeat.report.export_to_boe"
26 _name = 'l10n.es.aeat.mod303.export_to_boe'
27
28 def _get_formatted_declaration_record(self, cr, uid, report, context=None):
29 res = ''
30 ## cabecera
31 res += "<T30301> "
32 # Tipo de declaración - "Para impresión, cualquier caracter
33 # alfanumérico o 'N' si la autoliquidación se declara SIN ACTIVIDAD"
34 res += self._formatString("N" if report.sin_actividad else " ", 1)
35 # Identificación (1)
36 res += self._formatString(report.company_vat, 9) # NIF del declarante
37 res += self._formatString(report.company_id.name, 30) # Apellidos o razón social.
38 res += self._formatString("", 15) # Nombre
39 res += self._formatBoolean(report.devolucion_mensual, yes='1', no='2')
40 ## devengo (2)
41 res += self._formatNumber(report.fiscalyear_id.code, 4)
42 res += self._formatString(report.period, 2)
43 assert len(res) == 71, _("The identification (1) and income (2) must "
44 "be 72 characters long")
45 return res
46
47 def _get_formatted_main_record(self, cr, uid, report, context=None):
48 lines = report._get_report_lines(context=context)
49 res = ''
50 ## IVA devengado
51 # -- Regimen General y Recargo de Equivalencia - code_pair [1~18]
52 codes = [
53 ## Régimen general
54 ('[01]','[03]'),
55 ('[04]','[06]'),
56 ('[07]','[09]'),
57 ## Recargo de equivalencia
58 ('[10]','[12]'),
59 ('[13]','[15]'),
60 ('[16]','[18]'),
61 ]
62 for code_pair in codes:
63 base_imponible = lines.get(code_pair[0], 0)
64 cuota = lines.get(code_pair[1], 0)
65 tipo = cuota / base_imponible * 100 if base_imponible else 0
66 # base imponible X % -- codes [1, 4, 7, 10, 13, 16]
67 res += self._formatNumber(base_imponible, 15, 2)
68 # tipo % codes - [2, 5, 8, 11, 14, 17]
69 res += self._formatNumber(tipo, 3, 2)
70 # cuota X % -- codes [3, 6, 9, 12, 15, 18]
71 res += self._formatNumber(cuota, 15, 2)
72 # -- Adquisiciones Intracomunitarias - codes [19,20]
73 res += self._formatNumber(lines.get("[19]"), 15, 2) ## base imponible
74 res += self._formatNumber(lines.get("[20]"), 15, 2) ## cuota
75 # -- Total Cuota Devengada - code [21]
76 res += self._formatNumber(report.total_devengado, 15, 2) ## cuota
77 ## IVA deducible
78 # -- Por Cuotas soportadas ... - codes [22~25]
79 # -- Por Cuotas satisfechas en ... - codes [26~29]
80 # -- En adquisiciones intracomunitarias de bienes ... - codes [30~33]
81 for i in range(22, 34):
82 res += self._formatNumber(lines.get("[%s]" % i), 15, 2)
83 # --
84 # Compesaciones Regimen Especial AG y P
85 res += self._formatNumber(lines.get("[34]"), 15, 2)
86 # Regularización inversiones
87 res += self._formatNumber(lines.get("[35]"), 15, 2)
88 # Regularización inversiones por aplicación del porcentaje def de prorrata
89 res += self._formatNumber(lines.get("[36]"), 15, 2)
90 # -- Total a deducir
91 res += self._formatNumber(report.total_deducir, 15, 2)
92 # Diferencia [21] - [37]
93 res += self._formatNumber(report.diferencia, 15, 2)
94 # Atribuible a la administracion ...
95 # TODO: Navarra y País Vasco
96 res += self._formatNumber(report.porcentaje_atribuible_estado, 3, 2)
97 res += self._formatNumber(report.atribuible_estado, 15, 2)
98 res += self._formatNumber(report.cuota_compensar, 15, 2) ## [41]
99 # Entregas intracomunitarias
100 res += self._formatNumber(lines.get("[42]"), 15, 2)
101 # [42], Exportaciones y operaciones asimiladas
102 res += self._formatNumber(lines.get("[43]"), 15, 2)
103 # [43], Derecho a deucción [44]
104 res += self._formatNumber(lines.get("[44]"), 15, 2)
105 ## Estado y Comunidades Forales
106 res += self._formatNumber(report.regularizacion_anual, 15, 2)
107 res += self._formatNumber(report.resultado_casilla_46, 15, 2) ## [40] - [41]
108 ## A deducir - autoliquidación complementaria .... pedir campo
109 res += self._formatNumber(report.previus_result if report.complementaria else 0, 15, 2)
110 res += self._formatNumber(report.resultado_liquidacion, 15, 2) ## [48]
111 ## A compensar
112 res += self._formatNumber(report.compensar, 15, 2) ## [49]
113 ## Marca SIN ACTIVIDAD
114 res += self._formatBoolean( report.sin_actividad , yes='1', no='2') #
115 assert len(res) == 822 - 72, _("The vat records must be 749 characters long and are %s") % len(res)
116 return res
117
118 def _get_formatted_other_records(self, cr, uid, report, context=None):
119 res = ''
120 ## devolucion (6)
121 res += self._formatNumber(report.devolver, 15, 2) ## devolucion [50]
122 ccc = ""
123 if report.cuenta_devolucion_id and report.devolver:
124 ccc = report.cuenta_devolucion_id.acc_number.replace("-", "").replace(" ", "")
125 if not (len(ccc) == 20 and ccc.isdigit()):
126 raise orm.except_orm(_('Warning'),
127 _("CCC de devolución no válida \n%s") %ccc)
128 res += self._formatString(ccc,20) ## no hay devolución
129 """
130 ## ingreso (7)
131 859 1 Num Ingreso (7) - Forma de pago
132 860 17 N Ingreso (7) - Importe [I]
133 877 4 An Ingreso (7) - Código cuenta cliente - Entidad
134 881 4 An Ingreso (7) - Código cuenta cliente - Oficina
135 885 2 An Ingreso (7) - Código cuenta cliente - DC
136 887 10 An Ingreso (7) - Código cuenta cliente - Número de cuenta
137 """
138 # NO SE USA ??? Forma de Pago - "0" No consta, "1" Efectivo,
139 # "2" Adeudo en cuenta, "3" Domiciliación
140 res += self._formatString("0", 1)
141 res += self._formatNumber(report.ingresar, 15, 2) ## devolucion [50]
142 ccc = ""
143 if report.cuenta_ingreso_id and report.ingresar:
144 ccc = report.cuenta_ingreso_id.acc_number.replace("-", "").replace(" ", "")
145 if not (len(ccc) == 20 and ccc.isdigit()):
146 raise orm.except_orm(_('Warning'),
147 _("CCC de ingreso no válido %s") % ccc)
148 res += self._formatString(ccc,20) ## no hay devolución
149 # Complementaria (8) Indicador Autoliquidación complementaria
150 res += self._formatBoolean(report.complementaria, yes='1', no='0')
151 # Complementaria (8) - no justificante declaración anterior
152 res += self._formatString(report.previous_number if report.complementaria else "" , 13)
153 ## TODO -- hardcode por ahora
154 # Autorización conjunta
155 res += self._formatBoolean(False, yes='1', no=' ')
156 res += self._formatString(' ', 1) ## 77 autodeclaracion del concurso
157 res += ' '*398 ## campo reservado
158 # Localidad
159 res += self._formatString(report.company_id.partner_id.city, 16)
160 # TODO: Utilizar formato del servidor
161 date = datetime.strptime(report.calculation_date, "%Y-%m-%d %H:%M:%S")
162 res += self._formatString(date.strftime("%d"), 2) ## fecha: Dia
163 res += self._formatString(_(date.strftime("%B")), 10) ## fecha: Mes
164 res += self._formatString(date.strftime("%Y"), 4) ## fecha: Año
165 res += self._formatString("</T30301>", 9)
166 res += "\r\n".encode("ascii")
167 return res
168
169 def _do_global_checks(self, report, contents, context=None):
170 assert len(contents) == 1353, \
171 _("The 303 report must be 1353 characters long and are %s"
172 ) %len(contents)
173 return True
174\ No newline at end of file0\ No newline at end of file
1751
=== removed file 'l10n_es_aeat_mod303/wizard/export_mod303_to_boe.xml'
--- l10n_es_aeat_mod303/wizard/export_mod303_to_boe.xml 2014-01-23 16:41:59 +0000
+++ l10n_es_aeat_mod303/wizard/export_mod303_to_boe.xml 1970-01-01 00:00:00 +0000
@@ -1,18 +0,0 @@
1<?xml version="1.0" encoding="utf-8"?>
2<openerp>
3 <data>
4 <record model="ir.actions.act_window" id="action_wizard_aeat_mod303_export">
5 <field name="name">Export AEAT 303 BOE file</field>
6 <field name="type">ir.actions.act_window</field>
7 <field name="res_model">l10n.es.aeat.mod303.export_to_boe</field>
8 <field name="view_type">form</field>
9 <field name="view_mode">form</field>
10 <field name="target">new</field>
11 </record>
12 <record model="ir.actions.act_window.view" id="action_wizard_aeat_mod303_export_form">
13 <field name="act_window_id" ref="action_wizard_aeat_mod303_export"/>
14 <field name="view_mode">form</field>
15 <field name="view_id" ref="l10n_es_aeat.wizard_aeat_export"/>
16 </record>
17 </data>
18</openerp>
190
=== added file 'l10n_es_aeat_mod303/wizard/export_modelo303_to_boe.py'
--- l10n_es_aeat_mod303/wizard/export_modelo303_to_boe.py 1970-01-01 00:00:00 +0000
+++ l10n_es_aeat_mod303/wizard/export_modelo303_to_boe.py 2014-04-16 11:51:06 +0000
@@ -0,0 +1,125 @@
1# -*- encoding: utf-8 -*-
2##############################################################################
3#
4# This program is free software: you can redistribute it and/or modify
5# it under the terms of the GNU General Public License as published by
6# the Free Software Foundation, either version 3 of the License, or
7# (at your option) any later version.
8#
9# This program is distributed in the hope that it will be useful,
10# but WITHOUT ANY WARRANTY; without even the implied warranty of
11# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12# GNU General Public License for more details.
13#
14# You should have received a copy of the GNU General Public License
15# along with this program. If not, see http://www.gnu.org/licenses/.
16#
17##############################################################################
18from datetime import datetime
19import base64
20import time
21
22from openerp.tools.translate import _
23from openerp.osv import orm
24from openerp.tools.safe_eval import safe_eval
25
26
27class l10n_es_aeat_modelo303_export_to_boe(orm.TransientModel):
28 _inherit = "l10n.es.aeat.report.export_to_boe"
29 _name = 'l10n.es.aeat.modelo303.export_to_boe'
30
31 def _validate_template_line(self, template_line):
32 # TODO: Validar formato de las lineas de la plantilla del 303
33 return True
34
35 def _get_template_lines(self, report):
36 template_lines = []
37 template = report and report.modelo303_id and report.modelo303_id.template or ''
38 for line in template.strip().split("\n"):
39 line = line.strip()
40 if not line or line[0] == ';':
41 continue
42 parts = [v.strip() for v in line.split(',')]
43 tmpl_line = {"long": parts[0],
44 "longdec": parts[1],
45 "tipo_formato": parts[2],
46 "valor": parts[3]}
47 self._validate_template_line(tmpl_line)
48 template_lines.append(tmpl_line)
49 return template_lines
50
51 def _get_formatted_declaration_record(self, cr, uid, report, context=None):
52 return ''
53
54 def _get_formatted_main_record(self, cr, uid, report, context=None):
55 ccc_devolucion = ""
56 ccc_devolucion_iban = ""
57 if report.cuenta_devolucion_id:
58 ccc_devolucion = report.cuenta_devolucion_id.acc_number.replace("-", "").replace(" ", "")
59 if len(ccc_devolucion) > 20:
60 ccc_devolucion_iban = ccc_devolucion
61 ccc_devolucion = ccc_devolucion[-20:]
62 ccc_ingreso = ""
63 ccc_ingreso_iban = ""
64 if report.cuenta_ingreso_id:
65 ccc_ingreso = report.cuenta_ingreso_id.acc_number.replace("-", "").replace(" ", "")
66 if len(ccc_ingreso) > 20:
67 ccc_ingreso_iban = ccc_ingreso
68 ccc_ingreso = ccc_ingreso[-20:]
69
70 date = datetime.strptime(report.calculation_date, "%Y-%m-%d %H:%M:%S")
71 values = {
72 'nif': report.company_vat,
73 'razon_social': report.company_id.name,
74 'devolucion_mensual': self._formatBoolean(report.devolucion_mensual, yes='1', no='2'),
75 'ejercicio': report.fiscalyear_id.code,
76 'periodo': report.period,
77 'localidad': report.company_id.partner_id.city,
78 'dia': date.strftime("%d"),
79 'mes': _(date.strftime("%B")),
80 'any': date.strftime("%Y"),
81 'sin_actividad': self._formatBoolean(report.sin_actividad , yes='1', no='2'),
82 'cc_devolucion_entidad': ccc_devolucion[:4],
83 'cc_devolucion_oficina': ccc_devolucion[4:8],
84 'cc_devolucion_dc': ccc_devolucion[8:10],
85 'cc_devolucion_num':ccc_devolucion[10:],
86 'cc_devolucion_iban': ccc_devolucion_iban,
87 'cc_ingreso_entidad': ccc_ingreso[:4],
88 'cc_ingreso_oficina': ccc_ingreso[4:8],
89 'cc_ingreso_dc': ccc_ingreso[8:10],
90 'cc_ingreso_num':ccc_ingreso[10:],
91 'cc_ingreso_iban': ccc_ingreso_iban,
92 'complementaria': self._formatBoolean(report.complementaria, yes='1', no='2'),
93 'numero_justificante': report.previous_number,
94 'sujeto_a_cdc': self._formatBoolean(report.sujeto_a_cdc, yes='1', no='2'),
95 'destinatario_operaciones_cdc': self._formatBoolean(report.destinatario_operaciones_cdc, yes='1', no='2'),
96 'clrf': "\r\n".encode("ascii"),
97 }
98 casillas = {}
99 for i in range(1,201):
100 casillas["c%02d" % i] = 0
101 for valor_casilla in report.valor_casilla_ids:
102 casillas["c%s" % valor_casilla.casilla_id.code] = valor_casilla.valor
103
104 eval_ctx = casillas.copy()
105 eval_ctx.update(values)
106
107 res = ''
108 template_lines = self._get_template_lines(report)
109 for tmpl_line in template_lines:
110 valor = tmpl_line['valor']
111 valor = safe_eval(valor, eval_ctx)
112
113 is_neg = valor < 0
114 if tmpl_line['tipo_formato'] == 'n':
115 res += self._formatNumber(valor, int(tmpl_line['long']) - (is_neg and 1 or 0),
116 int(tmpl_line['longdec']),
117 include_sign=is_neg)
118 elif tmpl_line['tipo_formato'] == 'a':
119 res += self._formatString(valor, int(tmpl_line['long']))
120 else:
121 raise orm.except_orm("", "tipo_formato: \"%s\" debe ser uno de (a, n)")
122 return res
123
124 def _get_formatted_other_records(self, cr, uid, report, context=None):
125 return ''
0126
=== added file 'l10n_es_aeat_mod303/wizard/export_modelo303_to_boe.xml'
--- l10n_es_aeat_mod303/wizard/export_modelo303_to_boe.xml 1970-01-01 00:00:00 +0000
+++ l10n_es_aeat_mod303/wizard/export_modelo303_to_boe.xml 2014-04-16 11:51:06 +0000
@@ -0,0 +1,18 @@
1<?xml version="1.0" encoding="utf-8"?>
2<openerp>
3 <data>
4 <record model="ir.actions.act_window" id="action_wizard_aeat_modelo303_export">
5 <field name="name">Export AEAT 303 BOE file</field>
6 <field name="type">ir.actions.act_window</field>
7 <field name="res_model">l10n.es.aeat.modelo303.export_to_boe</field>
8 <field name="view_type">form</field>
9 <field name="view_mode">form</field>
10 <field name="target">new</field>
11 </record>
12 <record model="ir.actions.act_window.view" id="action_wizard_aeat_modelo303_export_form">
13 <field name="act_window_id" ref="action_wizard_aeat_modelo303_export"/>
14 <field name="view_mode">form</field>
15 <field name="view_id" ref="l10n_es_aeat.wizard_aeat_export"/>
16 </record>
17 </data>
18</openerp>
019
=== added file 'l10n_es_aeat_mod303/wizard/wizard_chart_update.py'
--- l10n_es_aeat_mod303/wizard/wizard_chart_update.py 1970-01-01 00:00:00 +0000
+++ l10n_es_aeat_mod303/wizard/wizard_chart_update.py 2014-04-16 11:51:06 +0000
@@ -0,0 +1,444 @@
1# -*- coding: utf-8 -*-
2##############################################################################
3#
4# Copyright (c) 2010 Zikzakmedia S.L. (http://www.zikzakmedia.com)
5# Copyright (c) 2010 Pexego Sistemas Informáticos S.L. (http://www.pexego.es)
6# @authors: Jordi Esteve (Zikzakmedia), Borja López Soilán (Pexego)
7# Copyright (c) 2014 Txerpa - Biel Massot (https://www.txerpa.com)
8#
9# This program is free software: you can redistribute it and/or modify
10# it under the terms of the GNU Affero General Public License as published
11# by the Free Software Foundation, either version 3 of the License, or
12# (at your option) any later version.
13#
14# This program is distributed in the hope that it will be useful,
15# but WITHOUT ANY WARRANTY; without even the implied warranty of
16# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
17# GNU Affero General Public License for more details.
18#
19# You should have received a copy of the GNU Affero General Public License
20# along with this program. If not, see <http://www.gnu.org/licenses/>.
21#
22##############################################################################
23from openerp.osv import fields, orm
24from openerp.tools.translate import _
25import logging
26
27class WizardLog:
28 """
29 *******************************************************************
30 Small helper class to store the messages and errors on the wizard.
31 *******************************************************************
32 """
33 def __init__(self):
34 self.messages = []
35 self.errors = []
36
37 def add(self, message, is_error=False):
38 """
39 Adds a message to the log.
40 """
41 logger = logging.getLogger("account_chart_update")
42 if is_error:
43 logger.warning(u"Log line: %s" % message)
44 self.errors.append(message)
45 else:
46 logger.debug(u"Log line: %s" % message)
47 self.messages.append(message)
48
49 def has_errors(self):
50 """
51 Returns whether errors where logged.
52 """
53 return self.errors
54
55 def __call__(self):
56 return "".join(self.messages)
57
58 def __str__(self):
59 return "".join(self.messages)
60
61 def get_errors_str(self):
62 return "".join(self.errors)
63
64class wizard_chart_update(orm.TransientModel):
65 _inherit = 'wizard.update.charts.accounts'
66
67 _columns = {
68 'update_casilla': fields.boolean('Update Casillas AEAT and 303'),
69 'casilla_ids': fields.one2many('wizard.update.charts.accounts.casilla', 'update_chart_wizard_id', 'Casilla', ondelete='cascade'),
70 'new_casillas': fields.integer('New Casillas', readonly=True),
71 'updated_casillas': fields.integer('Updated Casillas', readonly=True),
72 'modelo303_ids': fields.one2many('wizard.update.charts.accounts.modelo303', 'update_chart_wizard_id', 'Modelo303', ondelete='cascade'),
73 'new_modelos303': fields.integer('New Modelos303', readonly=True),
74 'updated_modelos303': fields.integer('Updated Modelos303', readonly=True),
75 }
76
77 _defaults = {
78 'update_casilla': True,
79 }
80
81 def _map_modelo303_template(self, cr, uid, wizard, modelo303_template_mapping, modelo303_template, context=None):
82 """
83 Adds a modelo303 template -> modelo303 id to the mapping.
84 """
85 if modelo303_template and not modelo303_template_mapping.get(modelo303_template.id):
86 modelos303 = self.pool.get('l10n.es.aeat.modelo303')
87 modelos303_ids = modelos303.search(cr, uid, [
88 ('name', '=', modelo303_template.name),
89 # ('company_id', '=', wizard.company_id.id) # TODO
90 ], context=context)
91 if modelos303_ids:
92 modelo303_template_mapping[modelo303_template.id] = modelos303_ids[0]
93
94 def _map_casilla_template(self, cr, uid, wizard, casilla_template_mapping, casilla_template, context=None):
95 """
96 Adds a casilla template -> casilla id to the mapping.
97 """
98 if casilla_template and not casilla_template_mapping.get(casilla_template.id):
99 casillas = self.pool.get('l10n.es.aeat.modelo303.casilla')
100 casilla_ids = casillas.search(cr, uid, [
101 ('name', '=', casilla_template.name),
102 ('modelo303_id.name', '=', casilla_template.modelo303_id.name)
103 # ('company_id', '=', wizard.company_id.id) # TODO
104 ], context=context)
105 if casilla_ids:
106 casilla_template_mapping[casilla_template.id] = casilla_ids[0]
107
108 def _find_modelos303(self, cr, uid, wizard, context=None):
109 """
110 Search for, and load, modelo303 templates to create/update.
111 """
112 new_modelos303 = 0
113 updated_modelos303 = 0
114 modelo303_template_mapping = {}
115
116 modelos303 = self.pool.get('l10n.es.aeat.modelo303')
117 m303_template = self.pool.get('l10n.es.aeat.modelo303.template')
118 wiz_modelos303 = self.pool.get('wizard.update.charts.accounts.modelo303')
119
120 # Remove previous taxes
121 wiz_modelos303.unlink(cr, uid, wiz_modelos303.search(cr, uid, []))
122 # Search for new / updated taxes
123 for modelo303_template in m303_template.browse(cr, uid, m303_template.search(cr, uid, [])):#wizard.chart_template_id.modelo303_template_ids:
124 # Ensure the tax template is on the map (search for the mapped tax
125 # id).
126 self._map_modelo303_template(
127 cr, uid, wizard, modelo303_template_mapping, modelo303_template, context)
128
129 modelo303_id = modelo303_template_mapping.get(modelo303_template.id)
130 if not modelo303_id:
131 new_modelos303 += 1
132 vals_wiz = {
133 'modelo303_id': modelo303_template.id,
134 'update_chart_wizard_id': wizard.id,
135 'type': 'new',
136 }
137 wiz_modelos303.create(cr, uid, vals_wiz, context)
138 elif wizard.update_casilla:
139 # Check the tax for changes.
140 modified = False
141 notes = ""
142 modelo303 = modelos303.browse(cr, uid, modelo303_id, context=context)
143 if modelo303.date != modelo303_template.date:
144 notes += _("The date field is different.\n")
145 modified = True
146 if modelo303.template != modelo303_template.template:
147 notes += _("The template field is different.\n")
148 modified = True
149
150 if modified:
151 # Tax to update.
152 updated_modelos303 += 1
153 wiz_modelos303.create(cr, uid, {
154 'modelo303_id': modelo303_template.id,
155 'update_chart_wizard_id': wizard.id,
156 'type': 'updated',
157 'update_modelo303_id': modelo303_id,
158 'notes': notes,
159 }, context)
160
161 return {'new': new_modelos303, 'updated': updated_modelos303, 'mapping': modelo303_template_mapping}
162
163 def _find_casillas(self, cr, uid, wizard, context=None):
164 """
165 Search for, and load, casillas templates to create/update.
166 """
167 new_casillas = 0
168 updated_casillas = 0
169 casilla_template_mapping = {}
170
171 casillas = self.pool.get('l10n.es.aeat.modelo303.casilla')
172 c_template = self.pool.get('l10n.es.aeat.modelo303.casilla.template')
173 wiz_casillas = self.pool.get('wizard.update.charts.accounts.casilla')
174
175 # Remove previous taxes
176 wiz_casillas.unlink(cr, uid, wiz_casillas.search(cr, uid, []))
177 # Search for new / updated taxes
178 for casilla_template in c_template.browse(cr, uid, c_template.search(cr, uid, [])):#wizard.chart_template_id.casilla_template_ids:
179 # Ensure the tax template is on the map (search for the mapped tax
180 # id).
181 self._map_casilla_template(
182 cr, uid, wizard, casilla_template_mapping, casilla_template, context)
183
184 casilla_id = casilla_template_mapping.get(casilla_template.id)
185 if not casilla_id:
186 new_casillas += 1
187 vals_wiz = {
188 'casilla_id': casilla_template.id,
189 'update_chart_wizard_id': wizard.id,
190 'type': 'new',
191 }
192 wiz_casillas.create(cr, uid, vals_wiz, context)
193 elif wizard.update_casilla:
194 # Check the tax for changes.
195 modified = False
196 notes = ""
197 casilla = casillas.browse(cr, uid, casilla_id, context=context)
198 if casilla.code != casilla_template.code:
199 notes += _("The code field is different.\n")
200 modified = True
201 if casilla.evaluate_as != casilla_template.evaluate_as:
202 notes += _("The evaluate_as field is different.\n")
203 modified = True
204 if casilla.tax_code_ids != casilla_template.tax_code_ids:
205 notes += _("The tax_codes_ids field is different.\n")
206 modified = True
207 if casilla.default_value != casilla_template.default_value:
208 notes += _("The default_value field is different.\n")
209 modified = True
210 # TODO: We could check other tax fields for changes...
211
212 if modified:
213 # Tax to update.
214 updated_casillas += 1
215 wiz_casillas.create(cr, uid, {
216 'casilla_id': casilla_template.id,
217 'update_chart_wizard_id': wizard.id,
218 'type': 'updated',
219 'update_casilla_id': casilla_id,
220 'notes': notes,
221 }, context)
222
223 return {'new': new_casillas, 'updated': updated_casillas, 'mapping': casilla_template_mapping}
224
225
226 def action_find_records(self, cr, uid, ids, context=None):
227 """
228 Searchs for records to update/create and shows them
229 """
230 rdo = super(wizard_chart_update, self).action_find_records(cr, uid, ids, context)
231 if context is None:
232 context = {}
233
234 wizard = self.browse(cr, uid, ids[0], context=context)
235
236 if wizard.lang:
237 context['lang'] = wizard.lang
238 elif context.get('lang'):
239 del context['lang']
240
241 # Search for, and load, the records to create/update.
242 m303_res = self._find_modelos303(cr, uid, wizard, context=context)
243 casillas_res = self._find_casillas(cr, uid, wizard, context=context)
244
245 # Write the results, and go to the next step.
246 self.write(cr, uid, [wizard.id], {
247 'state': 'ready',
248 'new_modelos303': m303_res.get('new', 0),
249 'new_casillas': casillas_res.get('new', 0),
250 'updated_modelos303': m303_res.get('updated', 0),
251 'updated_casillas': casillas_res.get('updated', 0),
252 }, context)
253
254 return rdo
255
256 def _update_modelos303(self, cr, uid, wizard, log, context=None):
257 """
258 Update modelos303 with modelos303 templates
259 """
260 modelos303 = self.pool.get('l10n.es.aeat.modelo303')
261
262 new_modelos303 = 0
263 updated_modelos303 = 0
264
265 for wiz_modelo303 in wizard.modelo303_ids:
266 modelo303_template = wiz_modelo303.modelo303_id
267 modelo303_id = None
268 modified = False
269 if wiz_modelo303.type == 'new':
270 # Create a new fiscal position
271 vals_modelo303 = {
272 # 'company_id': wizard.company_id.id, # TODO
273 'name': modelo303_template.name,
274 'date': modelo303_template.date,
275 'template': modelo303_template.template,
276 }
277 modelo303_id = modelos303.create(cr, uid, vals_modelo303)
278 new_modelos303 += 1
279 modified = True
280 elif wizard.update_casilla and wiz_modelo303.update_modelo303_id:
281 # Update the given fiscal position (remove the tax and account
282 # mappings, that will be regenerated later)
283 modelo303_id = wiz_modelo303.update_modelo303_id.id
284 vals_modelo303 = {
285 'name': modelo303_template.name,
286 'date': modelo303_template.date,
287 'template': modelo303_template.template,
288 }
289 try:
290 modelos303.write(cr, uid, [modelo303_id], vals_modelo303)
291 log.add(_("Updated modelos303 %s.\n") % modelo303_template.name)
292 updated_modelos303 += 1
293 modified = True
294 except orm.except_orm, ex:
295 log.add(_("Exception writing modelo303 %s: %s - %s.\n")
296 % (modelo303_template.name, ex.name, ex.value), True)
297 #else:
298 # modelo303_id = wiz_modelo303.update_modelo303_id and wiz_modelo303.update_modelo303_id.id
299
300 log.add(_("Created or updated modelo303 %s.\n")
301 % modelo303_template.name)
302 return {'new': new_modelos303, 'updated': updated_modelos303}
303
304 def _update_casillas(self, cr, uid, wizard, log, context=None):
305 """
306 Update casillas with casillas templates
307 """
308 tax_code = self.pool.get('account.tax.code')
309 casillas = self.pool.get('l10n.es.aeat.modelo303.casilla')
310 modelo303 = self.pool.get('l10n.es.aeat.modelo303')
311
312 new_casillas = 0
313 updated_casillas = 0
314
315 for wiz_casilla in wizard.casilla_ids:
316 casilla_template = wiz_casilla.casilla_id
317 casilla_id = None
318 modified = False
319 modelo303_ids = modelo303.search(cr, uid, [('name', '=', casilla_template.modelo303_id.name)])
320 tax_code_ids = []
321 if casilla_template.tax_code_ids:
322 tax_code_ids = tax_code.search(cr, uid, [('name', 'in', [tc.name for tc in casilla_template.tax_code_ids]), ('company_id', '=', wizard.company_id.id)])
323 if wiz_casilla.type == 'new':
324 # Create a new fiscal position
325 vals_casilla = {
326 # 'company_id': wizard.company_id.id, # TODO
327 'modelo303_id': modelo303_ids[0],
328 'name': casilla_template.name,
329 'code': casilla_template.code,
330 'tax_code_ids': [(6,0, tax_code_ids)],
331 'evaluate_as': casilla_template.evaluate_as,
332 'default_value': casilla_template.default_value
333 }
334 casilla_id = casillas.create(cr, uid, vals_casilla)
335 new_casillas += 1
336 modified = True
337 elif wizard.update_casilla and wiz_casilla.update_casilla_id:
338 # Update the given fiscal position (remove the tax and account
339 # mappings, that will be regenerated later)
340 casilla_id = wiz_casilla.update_casilla_id.id
341 vals_casilla = {
342 # 'company_id': wizard.company_id.id, # TODO
343 'modelo303_id': modelo303_ids[0],
344 'name': casilla_template.name,
345 'code': casilla_template.code,
346 'tax_code_ids': [(6,0, tax_code_ids)],
347 'evaluate_as': casilla_template.evaluate_as,
348 'default_value': casilla_template.default_value
349 }
350 try:
351 casillas.write(cr, uid, [casilla_id], vals_casilla)
352 log.add(_("Updated casillas %s.\n") % casilla_template.name)
353 updated_casillas += 1
354 modified = True
355 except orm.except_orm, ex:
356 log.add(_("Exception writing casilla %s: %s - %s.\n")
357 % (casilla_template.name, ex.name, ex.value), True)
358 #else:
359 # casilla_id = wiz_casilla.update_casilla_id and wiz_casilla.update_casilla_id.id
360
361 log.add(_("Created or updated casilla %s.\n")
362 % casilla_template.name)
363 return {'new': new_casillas, 'updated': updated_casillas}
364
365 def action_update_records(self, cr, uid, ids, context=None):
366 """
367 Action that creates/updates the selected elements.
368 """
369 rdo = super(wizard_chart_update, self).action_update_records(cr, uid, ids, context)
370 if context is None:
371 context = {}
372 wizard = self.browse(cr, uid, ids[0], context=context)
373
374 if wizard.lang:
375 context['lang'] = wizard.lang
376 elif context.get('lang'):
377 del context['lang']
378
379 log = WizardLog()
380
381 # Create or update the records.
382 m303_res = self._update_modelos303(cr, uid, wizard, log, context=context)
383 casillas_res = self._update_casillas(cr, uid, wizard, log, context=context)
384
385 # Check if errors where detected and wether we should stop.
386 if log.has_errors() and not wizard.continue_on_errors:
387 raise orm.except_orm(_('Error'), _(
388 "One or more errors detected!\n\n%s") % log.get_errors_str())
389
390 # Store the data and go to the next step.
391 self.write(cr, uid, [wizard.id], {
392 'new_modelos303': m303_res.get('new', 0),
393 'new_casillas': casillas_res.get('new', 0),
394 'updated_modelos303': m303_res.get('updated', 0),
395 'updated_casillas': casillas_res.get('updated', 0),
396 'log': log(),
397 }, context)
398
399 return rdo
400
401
402class wizard_update_charts_accounts_modelo303(orm.TransientModel):
403 """
404 **************************************************************************
405 Modelo 303 that needs to be updated (new or updated in the template).
406 **************************************************************************
407 """
408 _name = 'wizard.update.charts.accounts.modelo303'
409 _columns = {
410 'modelo303_id': fields.many2one('l10n.es.aeat.modelo303.template', 'Casillas template', required=True, ondelete='set null'),
411 'update_chart_wizard_id': fields.many2one('wizard.update.charts.accounts', 'Update chart wizard', required=True, ondelete='cascade'),
412 'type': fields.selection([
413 ('new', 'New template'),
414 ('updated', 'Updated template'),
415 ], 'Type'),
416 'update_modelo303_id': fields.many2one('l10n.es.aeat.modelo303', 'Modelo303 to update', required=False, ondelete='set null'),
417 'notes': fields.text('Notes'),
418 }
419 _defaults = {
420 }
421
422
423class wizard_update_charts_accounts_casilla(orm.TransientModel):
424 """
425 **************************************************************************
426 Casillas AEAT that needs to be updated (new or updated in the template).
427 **************************************************************************
428 """
429 _name = 'wizard.update.charts.accounts.casilla'
430 _columns = {
431 'casilla_id': fields.many2one('l10n.es.aeat.modelo303.casilla.template', 'Casillas template', required=True, ondelete='set null'),
432 'update_chart_wizard_id': fields.many2one('wizard.update.charts.accounts', 'Update chart wizard', required=True, ondelete='cascade'),
433 'type': fields.selection([
434 ('new', 'New template'),
435 ('updated', 'Updated template'),
436 ], 'Type'),
437 'update_casilla_id': fields.many2one('l10n.es.aeat.modelo303.casilla', 'Casilla to update', required=False, ondelete='set null'),
438 'notes': fields.text('Notes'),
439 }
440 _defaults = {
441 }
442
443
444# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
0445
=== added file 'l10n_es_aeat_mod303/wizard/wizard_chart_update_view.xml'
--- l10n_es_aeat_mod303/wizard/wizard_chart_update_view.xml 1970-01-01 00:00:00 +0000
+++ l10n_es_aeat_mod303/wizard/wizard_chart_update_view.xml 2014-04-16 11:51:06 +0000
@@ -0,0 +1,62 @@
1<?xml version="1.0" encoding="utf-8"?>
2<openerp>
3 <data>
4
5 <!-- Wizard for Multi Charts of Accounts -->
6
7 <record id="view_update_multi_chart_modelo303" model="ir.ui.view">
8 <field name="name">Update Chart of Accounts from a Chart Template</field>
9 <field name="model">wizard.update.charts.accounts</field>
10 <field name="inherit_id" ref="account_chart_update.view_update_multi_chart"/>
11 <field name="arch" type="xml">
12 <field name="update_account" position="after">
13 <field name="update_casilla" />
14 </field>
15 <page string="Fiscal positions" position="after">
16 <page string="Modelos 303">
17 <field name="modelo303_ids" nolabel="1">
18 <tree string="Modelo 303" colors="red:type=='updated'">
19 <field name="modelo303_id" />
20 <field name="update_modelo303_id" />
21 <field name="type" invisible="1" />
22 </tree>
23 <form string="Modelo 303" version="7.0">
24 <group>
25 <field name="modelo303_id" />
26 <field name="type" />
27 <field name="update_modelo303_id" />
28 <field name="notes" readonly="1" class="oe_inline" />
29 </group>
30 </form>
31 </field>
32 </page>
33 <page string="Casillas AEAT">
34 <field name="casilla_ids" nolabel="1">
35 <tree string="Casillas AEAT" colors="red:type=='updated'">
36 <field name="casilla_id" />
37 <field name="update_casilla_id" />
38 <field name="type" invisible="1" />
39 </tree>
40 <form string="Casillas AEAT" version="7.0">
41 <group>
42 <field name="casilla_id" />
43 <field name="type" />
44 <field name="update_casilla_id" />
45 <field name="notes" readonly="1" class="oe_inline" />
46 </group>
47 </form>
48 </field>
49 </page>
50 </page>
51 <field name="new_fps" position="after">
52 <field name="new_modelos303" />
53 <field name="new_casillas" />
54 </field>
55 <field name="updated_fps">
56 <field name="updated_modelos303" />
57 <field name="updated_casillas" />
58 </field>
59 </field>
60 </record>
61 </data>
62</openerp>