Skip to content

Commit a5d35b5

Browse files
committed
[T-9457][ADD] l10n_es_aeat_sii_oca_manual_result
1 parent 3f006d0 commit a5d35b5

File tree

19 files changed

+1097
-0
lines changed

19 files changed

+1097
-0
lines changed
Lines changed: 98 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,98 @@
1+
.. image:: https://odoo-community.org/readme-banner-image
2+
:target: https://odoo-community.org/get-involved?utm_source=readme
3+
:alt: Odoo Community Association
4+
5+
==================================
6+
L10N ES AEAT SII OCA Manual Result
7+
==================================
8+
9+
..
10+
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
11+
!! This file is generated by oca-gen-addon-readme !!
12+
!! changes will be overwritten. !!
13+
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
14+
!! source digest: sha256:535f65e5fea84ea594dde39272263af98812430889fb4999ca29016eb80af9d6
15+
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
16+
17+
.. |badge1| image:: https://img.shields.io/badge/maturity-Beta-yellow.png
18+
:target: https://odoo-community.org/page/development-status
19+
:alt: Beta
20+
.. |badge2| image:: https://img.shields.io/badge/license-AGPL--3-blue.png
21+
:target: http://www.gnu.org/licenses/agpl-3.0-standalone.html
22+
:alt: License: AGPL-3
23+
.. |badge3| image:: https://img.shields.io/badge/github-sygel--technology%2Fsy--l10n--spain-lightgray.png?logo=github
24+
:target: https://github.com/sygel-technology/sy-l10n-spain/tree/17.0/l10n_es_aeat_sii_oca_manual_result
25+
:alt: sygel-technology/sy-l10n-spain
26+
27+
|badge1| |badge2| |badge3|
28+
29+
This module provides a wizard that allows you to edit some of the SII
30+
field values on the selected account move records.
31+
32+
The main purpose of this module is to allow users to manually fix these
33+
SII fields to resolve synchronization or other types of errors.
34+
35+
Users will only be able to edit the account move records that have the
36+
SII enabled.
37+
38+
**Table of contents**
39+
40+
.. contents::
41+
:local:
42+
43+
Configuration
44+
=============
45+
46+
To configure this module, you need to:
47+
48+
- Go to Settings / Users & Companies / Groups.
49+
- Search for the "Account Move SII Manual Result Wizard User" group.
50+
- Assign this group to the users who should have access to the wizard.
51+
52+
Usage
53+
=====
54+
55+
To use this module, you need to:
56+
57+
1. Go to Invoicing and select a list of invoices to edit.
58+
2. Click on "Action / Edit SII Result Values".
59+
3. Set the new values to set for the SII fields shown. You can replace
60+
the "Set" option for "Ignore" to not edit that field in the invoices.
61+
4. Review the list of invoices that will be edited. If any of the
62+
previously selected invoices cannot be edited, a warning will be
63+
shown.
64+
5. Click on "Accept". The selected invoices will be updated.
65+
66+
Bug Tracker
67+
===========
68+
69+
Bugs are tracked on `GitHub Issues <https://github.com/sygel-technology/sy-l10n-spain/issues>`_.
70+
In case of trouble, please check there if your issue has already been reported.
71+
If you spotted it first, help us to smash it by providing a detailed and welcomed
72+
`feedback <https://github.com/sygel-technology/sy-l10n-spain/issues/new?body=module:%20l10n_es_aeat_sii_oca_manual_result%0Aversion:%2017.0%0A%0A**Steps%20to%20reproduce**%0A-%20...%0A%0A**Current%20behavior**%0A%0A**Expected%20behavior**>`_.
73+
74+
Do not contact contributors directly about support or help with technical issues.
75+
76+
Credits
77+
=======
78+
79+
Authors
80+
-------
81+
82+
* Sygel
83+
84+
Contributors
85+
------------
86+
87+
- `Sygel <https://www.sygel.es>`__:
88+
89+
- Alberto Martínez
90+
- Valentin Vinagre
91+
- Harald Panten
92+
93+
Maintainers
94+
-----------
95+
96+
This module is part of the `sygel-technology/sy-l10n-spain <https://github.com/sygel-technology/sy-l10n-spain/tree/17.0/l10n_es_aeat_sii_oca_manual_result>`_ project on GitHub.
97+
98+
You are welcome to contribute.
Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,4 @@
1+
# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl).
2+
3+
from . import models
4+
from . import wizards
Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,22 @@
1+
# Copyright 2026 Alberto Martínez <alberto.martinez@sygel.es>
2+
# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl).
3+
{
4+
"name": "L10N ES AEAT SII OCA Manual Result",
5+
"summary": "Adds a wizard to edit Sii fields values on invoices",
6+
"version": "17.0.1.0.0",
7+
"category": "Accounting & Finance",
8+
"website": "https://github.com/sygel-technology/sy-l10n-spain",
9+
"author": "Sygel",
10+
"license": "AGPL-3",
11+
"application": False,
12+
"installable": True,
13+
"depends": [
14+
"l10n_es_aeat_sii_oca",
15+
],
16+
"data": [
17+
"security/res_groups.xml",
18+
"security/ir.model.access.csv",
19+
"views/account_move_views.xml",
20+
"wizards/account_move_manual_sii_result_wizard_views.xml",
21+
],
22+
}
Lines changed: 229 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,229 @@
1+
# Translation of Odoo Server.
2+
# This file contains the translation of the following modules:
3+
# * l10n_es_aeat_sii_oca_manual_result
4+
#
5+
msgid ""
6+
msgstr ""
7+
"Project-Id-Version: Odoo Server 17.0\n"
8+
"Report-Msgid-Bugs-To: \n"
9+
"POT-Creation-Date: 2026-04-01 11:59+0000\n"
10+
"PO-Revision-Date: 2026-04-01 14:07+0200\n"
11+
"Last-Translator: \n"
12+
"Language-Team: \n"
13+
"Language: es\n"
14+
"MIME-Version: 1.0\n"
15+
"Content-Type: text/plain; charset=UTF-8\n"
16+
"Content-Transfer-Encoding: 8bit\n"
17+
"Plural-Forms: \n"
18+
"X-Generator: Poedit 3.0.1\n"
19+
20+
#. module: l10n_es_aeat_sii_oca_manual_result
21+
#: model:res.groups,comment:l10n_es_aeat_sii_oca_manual_result.group_account_move_manual_sii_result_wizard
22+
msgid ""
23+
"\n"
24+
" The user will be able to use the account.move.sii.manual.result."
25+
"wizard\n"
26+
" "
27+
msgstr ""
28+
"\n"
29+
" El usuario podrá usar el account.move.sii.manual.result.wizard\n"
30+
" "
31+
32+
#. module: l10n_es_aeat_sii_oca_manual_result
33+
#: model:ir.model.fields,field_description:l10n_es_aeat_sii_oca_manual_result.field_account_move_manual_sii_result_wizard__aeat_send_error
34+
msgid "AEAT Send Error"
35+
msgstr "Error de envío a la AEAT"
36+
37+
#. module: l10n_es_aeat_sii_oca_manual_result
38+
#: model:ir.model.fields,field_description:l10n_es_aeat_sii_oca_manual_result.field_account_move_manual_sii_result_wizard__aeat_state
39+
msgid "AEAT send state"
40+
msgstr "Estado de envío a la AEAT"
41+
42+
#. module: l10n_es_aeat_sii_oca_manual_result
43+
#: model_terms:ir.ui.view,arch_db:l10n_es_aeat_sii_oca_manual_result.account_move_manual_sii_result_wizard_form
44+
msgid "Accept"
45+
msgstr "Aceptar"
46+
47+
#. module: l10n_es_aeat_sii_oca_manual_result
48+
#: model:ir.model.fields.selection,name:l10n_es_aeat_sii_oca_manual_result.selection__account_move_manual_sii_result_wizard__aeat_state__sent_w_errors
49+
msgid "Accepted with errors"
50+
msgstr "Aceptada con errores"
51+
52+
#. module: l10n_es_aeat_sii_oca_manual_result
53+
#: model:res.groups,name:l10n_es_aeat_sii_oca_manual_result.group_account_move_manual_sii_result_wizard
54+
msgid "Account Move SII Manual Result Wizard User"
55+
msgstr "Usuario del asistente de resultados manuales del SII"
56+
57+
#. module: l10n_es_aeat_sii_oca_manual_result
58+
#: model_terms:ir.ui.view,arch_db:l10n_es_aeat_sii_oca_manual_result.account_move_manual_sii_result_wizard_form
59+
msgid "Cancel"
60+
msgstr "Cancelar"
61+
62+
#. module: l10n_es_aeat_sii_oca_manual_result
63+
#: model:ir.model.fields.selection,name:l10n_es_aeat_sii_oca_manual_result.selection__account_move_manual_sii_result_wizard__aeat_state__cancelled
64+
msgid "Cancelled"
65+
msgstr "Cancelado"
66+
67+
#. module: l10n_es_aeat_sii_oca_manual_result
68+
#: model:ir.model.fields.selection,name:l10n_es_aeat_sii_oca_manual_result.selection__account_move_manual_sii_result_wizard__aeat_state__cancelled_modified
69+
msgid "Cancelled in SII but last modifications not sent"
70+
msgstr "Anulada en SII con modificaciones pendientes de comunicar"
71+
72+
#. module: l10n_es_aeat_sii_oca_manual_result
73+
#: model:ir.model.fields,field_description:l10n_es_aeat_sii_oca_manual_result.field_account_move_manual_sii_result_wizard__create_uid
74+
msgid "Created by"
75+
msgstr ""
76+
77+
#. module: l10n_es_aeat_sii_oca_manual_result
78+
#: model:ir.model.fields,field_description:l10n_es_aeat_sii_oca_manual_result.field_account_move_manual_sii_result_wizard__create_date
79+
msgid "Created on"
80+
msgstr ""
81+
82+
#. module: l10n_es_aeat_sii_oca_manual_result
83+
#: model:ir.model.fields,field_description:l10n_es_aeat_sii_oca_manual_result.field_account_move_manual_sii_result_wizard__display_name
84+
msgid "Display Name"
85+
msgstr ""
86+
87+
#. module: l10n_es_aeat_sii_oca_manual_result
88+
#: model:ir.actions.server,name:l10n_es_aeat_sii_oca_manual_result.account_move_manual_sii_result_wizard_server_action
89+
msgid "Edit SII Result Values"
90+
msgstr "Editar los valores resultantes del SII"
91+
92+
#. module: l10n_es_aeat_sii_oca_manual_result
93+
#. odoo-python
94+
#: code:addons/l10n_es_aeat_sii_oca_manual_result/models/account_move.py:0
95+
#, python-format
96+
msgid "Edit SII Result Values Wizard"
97+
msgstr "Asistente para editar los valores resultantes del SII"
98+
99+
#. module: l10n_es_aeat_sii_oca_manual_result
100+
#: model:ir.model.fields,field_description:l10n_es_aeat_sii_oca_manual_result.field_account_move_manual_sii_result_wizard__editable_move_ids
101+
msgid "Editable Move"
102+
msgstr "Movimientos editables"
103+
104+
#. module: l10n_es_aeat_sii_oca_manual_result
105+
#: model:ir.model.fields,field_description:l10n_es_aeat_sii_oca_manual_result.field_account_move_manual_sii_result_wizard__has_warn
106+
msgid "Has Warn"
107+
msgstr "Tiene aviso"
108+
109+
#. module: l10n_es_aeat_sii_oca_manual_result
110+
#: model:ir.model.fields,field_description:l10n_es_aeat_sii_oca_manual_result.field_account_move_manual_sii_result_wizard__id
111+
msgid "ID"
112+
msgstr ""
113+
114+
#. module: l10n_es_aeat_sii_oca_manual_result
115+
#: model:ir.model.fields.selection,name:l10n_es_aeat_sii_oca_manual_result.selection__account_move_manual_sii_result_wizard__set_aeat_send_error__ignore
116+
#: model:ir.model.fields.selection,name:l10n_es_aeat_sii_oca_manual_result.selection__account_move_manual_sii_result_wizard__set_aeat_send_failed__ignore
117+
#: model:ir.model.fields.selection,name:l10n_es_aeat_sii_oca_manual_result.selection__account_move_manual_sii_result_wizard__set_aeat_state__ignore
118+
#: model:ir.model.fields.selection,name:l10n_es_aeat_sii_oca_manual_result.selection__account_move_manual_sii_result_wizard__set_sii_csv__ignore
119+
msgid "Ignore"
120+
msgstr "Ignorar"
121+
122+
#. module: l10n_es_aeat_sii_oca_manual_result
123+
#: model:ir.model.fields,help:l10n_es_aeat_sii_oca_manual_result.field_account_move_manual_sii_result_wizard__aeat_send_failed
124+
msgid ""
125+
"Indicates that the last attempt to communicate this document to the SII has "
126+
"failed. See SII return for details"
127+
msgstr ""
128+
"Indica que ha fallado el último intento de comunicar este documento al SII. "
129+
"Véase la devolución del SII para más detalles"
130+
131+
#. module: l10n_es_aeat_sii_oca_manual_result
132+
#: model:ir.model.fields,help:l10n_es_aeat_sii_oca_manual_result.field_account_move_manual_sii_result_wizard__aeat_state
133+
msgid ""
134+
"Indicates the state of this document in relation with the presentation at "
135+
"the AEAT"
136+
msgstr ""
137+
"Indica el estado de este documento en relación con la presentación en la "
138+
"AEAT"
139+
140+
#. module: l10n_es_aeat_sii_oca_manual_result
141+
#: model:ir.model,name:l10n_es_aeat_sii_oca_manual_result.model_account_move
142+
msgid "Journal Entry"
143+
msgstr "Asiento contable"
144+
145+
#. module: l10n_es_aeat_sii_oca_manual_result
146+
#: model:ir.model.fields,field_description:l10n_es_aeat_sii_oca_manual_result.field_account_move_manual_sii_result_wizard__write_uid
147+
msgid "Last Updated by"
148+
msgstr ""
149+
150+
#. module: l10n_es_aeat_sii_oca_manual_result
151+
#: model:ir.model.fields,field_description:l10n_es_aeat_sii_oca_manual_result.field_account_move_manual_sii_result_wizard__write_date
152+
msgid "Last Updated on"
153+
msgstr ""
154+
155+
#. module: l10n_es_aeat_sii_oca_manual_result
156+
#: model_terms:ir.ui.view,arch_db:l10n_es_aeat_sii_oca_manual_result.account_move_manual_sii_result_wizard_form
157+
msgid "Moves"
158+
msgstr "Movimientos"
159+
160+
#. module: l10n_es_aeat_sii_oca_manual_result
161+
#. odoo-python
162+
#: code:addons/l10n_es_aeat_sii_oca_manual_result/models/account_move.py:0
163+
#, python-format
164+
msgid ""
165+
"None of the selected moves can be edited because they are not invoices subject to "
166+
"the SII"
167+
msgstr ""
168+
"Ninguno de los movimientos seleccionados se puede editar porque no son facturas "
169+
"sujetas al SII"
170+
171+
#. module: l10n_es_aeat_sii_oca_manual_result
172+
#: model:ir.model.fields.selection,name:l10n_es_aeat_sii_oca_manual_result.selection__account_move_manual_sii_result_wizard__aeat_state__not_sent
173+
msgid "Not sent"
174+
msgstr "No enviado"
175+
176+
#. module: l10n_es_aeat_sii_oca_manual_result
177+
#: model:ir.model.fields.selection,name:l10n_es_aeat_sii_oca_manual_result.selection__account_move_manual_sii_result_wizard__aeat_state__sent_modified
178+
msgid "Registered in SII but last modifications not sent"
179+
msgstr "Registro correcto en SII con modificaciones pendientes de comunicar"
180+
181+
#. module: l10n_es_aeat_sii_oca_manual_result
182+
#: model:ir.model.fields,field_description:l10n_es_aeat_sii_oca_manual_result.field_account_move_manual_sii_result_wizard__sii_csv
183+
msgid "SII CSV"
184+
msgstr "SII CSV"
185+
186+
#. module: l10n_es_aeat_sii_oca_manual_result
187+
#: model:ir.model.fields,field_description:l10n_es_aeat_sii_oca_manual_result.field_account_move_manual_sii_result_wizard__aeat_send_failed
188+
msgid "SII send failed"
189+
msgstr "Envío SII fallido"
190+
191+
#. module: l10n_es_aeat_sii_oca_manual_result
192+
#: model:ir.model.fields.selection,name:l10n_es_aeat_sii_oca_manual_result.selection__account_move_manual_sii_result_wizard__aeat_state__sent
193+
msgid "Sent"
194+
msgstr "Enviada"
195+
196+
#. module: l10n_es_aeat_sii_oca_manual_result
197+
#: model:ir.model.fields.selection,name:l10n_es_aeat_sii_oca_manual_result.selection__account_move_manual_sii_result_wizard__set_aeat_send_error__set
198+
#: model:ir.model.fields.selection,name:l10n_es_aeat_sii_oca_manual_result.selection__account_move_manual_sii_result_wizard__set_aeat_send_failed__set
199+
#: model:ir.model.fields.selection,name:l10n_es_aeat_sii_oca_manual_result.selection__account_move_manual_sii_result_wizard__set_aeat_state__set
200+
#: model:ir.model.fields.selection,name:l10n_es_aeat_sii_oca_manual_result.selection__account_move_manual_sii_result_wizard__set_sii_csv__set
201+
msgid "Set"
202+
msgstr "Establecer"
203+
204+
#. module: l10n_es_aeat_sii_oca_manual_result
205+
#. odoo-python
206+
#: code:addons/l10n_es_aeat_sii_oca_manual_result/wizards/account_move_manual_sii_result_wizard.py:0
207+
#, python-format
208+
msgid ""
209+
"The following moves cannot be edited because they are not invoices subject to the "
210+
"SII: %(moves)s"
211+
msgstr ""
212+
"Las siguientes facturas no se pueden editar porque no son facturas sujetas al SII: "
213+
"%(moves)s"
214+
215+
#. module: l10n_es_aeat_sii_oca_manual_result
216+
#: model:ir.model.fields,field_description:l10n_es_aeat_sii_oca_manual_result.field_account_move_manual_sii_result_wizard__warn
217+
#: model_terms:ir.ui.view,arch_db:l10n_es_aeat_sii_oca_manual_result.account_move_manual_sii_result_wizard_form
218+
msgid "Warn"
219+
msgstr "Aviso"
220+
221+
#. module: l10n_es_aeat_sii_oca_manual_result
222+
#: model_terms:ir.ui.view,arch_db:l10n_es_aeat_sii_oca_manual_result.account_move_manual_sii_result_wizard_form
223+
msgid "or"
224+
msgstr "o"
225+
226+
#. module: l10n_es_aeat_sii_oca_manual_result
227+
#: model:ir.model,name:l10n_es_aeat_sii_oca_manual_result.model_account_move_manual_sii_result_wizard
228+
msgid "Wizard to edit Sii state in moves"
229+
msgstr "Asistente para editar el estado del SII en las facturas"
Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl).
2+
3+
from . import account_move
Lines changed: 32 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,32 @@
1+
# Copyright 2026 Alberto Martínez <alberto.martinez@sygel.es>
2+
# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl).
3+
4+
from odoo import _, models
5+
from odoo.exceptions import UserError
6+
7+
8+
class AccountMove(models.Model):
9+
_inherit = "account.move"
10+
11+
def action_account_move_manual_sii_result_wizard(self):
12+
if not self.env[
13+
"account.move.manual.sii.result.wizard"
14+
].filter_editable_move_ids(self):
15+
raise UserError(
16+
_(
17+
"None of the selected moves can be edited "
18+
"because they are not invoices subject to the SII"
19+
)
20+
)
21+
22+
return {
23+
"name": _("Edit SII Result Values Wizard"),
24+
"type": "ir.actions.act_window",
25+
"view_type": "form",
26+
"view_mode": "form",
27+
"res_model": "account.move.manual.sii.result.wizard",
28+
"target": "new",
29+
"context": {
30+
"active_ids": self.ids,
31+
},
32+
}
Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
[build-system]
2+
requires = ["whool"]
3+
build-backend = "whool.buildapi"

0 commit comments

Comments
 (0)