Merge lp:~acysos-team/openerp-spain/openerp-spain-6.0-mod303 into lp:~openerp-spain-team/openerp-spain/6.0
- openerp-spain-6.0-mod303
- Merge into 6.0
Proposed by
Ignacio Ibeas (www.acysos.com)
Status: | Merged |
---|---|
Approved by: | Ignacio Ibeas (www.acysos.com) |
Approved revision: | 349 |
Merged at revision: | 351 |
Proposed branch: | lp:~acysos-team/openerp-spain/openerp-spain-6.0-mod303 |
Merge into: | lp:~openerp-spain-team/openerp-spain/6.0 |
Diff against target: |
2018 lines (+1963/-0) 10 files modified
l10n_es_aeat_mod303/__init__.py (+26/-0) l10n_es_aeat_mod303/__openerp__.py (+52/-0) l10n_es_aeat_mod303/i18n/es.po (+555/-0) l10n_es_aeat_mod303/i18n/l10n_es_aeat_mod303.pot (+535/-0) l10n_es_aeat_mod303/mod303.py (+245/-0) l10n_es_aeat_mod303/mod303_view.xml (+164/-0) l10n_es_aeat_mod303/mod303_workflow.xml (+72/-0) l10n_es_aeat_mod303/security/ir.model.access.csv (+6/-0) l10n_es_aeat_mod303/wizard/__init__.py (+26/-0) l10n_es_aeat_mod303/wizard/export_mod303_to_boe.py (+282/-0) |
To merge this branch: | bzr merge lp:~acysos-team/openerp-spain/openerp-spain-6.0-mod303 |
Related bugs: |
Reviewer | Review Type | Date Requested | Status |
---|---|---|---|
Pedro Manuel Baeza | code review | Approve | |
Review via email: mp+190428@code.launchpad.net |
Commit message
Description of the change
Downgrade del AEAT Modelo 303.
To post a comment you must log in.
Revision history for this message
Pedro Manuel Baeza (pedro.baeza) wrote : | # |
review:
Approve
(code review)
Preview Diff
[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
1 | === added directory 'l10n_es_aeat_mod303' |
2 | === added file 'l10n_es_aeat_mod303/__init__.py' |
3 | --- l10n_es_aeat_mod303/__init__.py 1970-01-01 00:00:00 +0000 |
4 | +++ l10n_es_aeat_mod303/__init__.py 2013-10-10 17:06:51 +0000 |
5 | @@ -0,0 +1,26 @@ |
6 | +# -*- encoding: utf-8 -*- |
7 | +############################################################################## |
8 | +# |
9 | +# OpenERP, Open Source Management Solution |
10 | +# Copyright (C) 2012 Guadaltech. All Rights Reserved |
11 | +# Author: Isaac De la Barrera |
12 | +# |
13 | +# This program is free software: you can redistribute it and/or modify |
14 | +# it under the terms of the GNU General Public License as published by |
15 | +# the Free Software Foundation, either version 3 of the License, or |
16 | +# (at your option) any later version. |
17 | +# |
18 | +# This program is distributed in the hope that it will be useful, |
19 | +# but WITHOUT ANY WARRANTY; without even the implied warranty of |
20 | +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
21 | +# GNU General Public License for more details. |
22 | +# |
23 | +# You should have received a copy of the GNU General Public License |
24 | +# along with this program. If not, see http://www.gnu.org/licenses/. |
25 | +# |
26 | +############################################################################## |
27 | + |
28 | +import mod303 |
29 | +import wizard |
30 | + |
31 | +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: |
32 | \ No newline at end of file |
33 | |
34 | === added file 'l10n_es_aeat_mod303/__openerp__.py' |
35 | --- l10n_es_aeat_mod303/__openerp__.py 1970-01-01 00:00:00 +0000 |
36 | +++ l10n_es_aeat_mod303/__openerp__.py 2013-10-10 17:06:51 +0000 |
37 | @@ -0,0 +1,52 @@ |
38 | +# -*- encoding: utf-8 -*- |
39 | +############################################################################## |
40 | +# |
41 | +# OpenERP, Open Source Management Solution |
42 | +# Copyright (C) 2013 Guadaltech. All Rights Reserved |
43 | +# Author: Alberto Martín Cortada |
44 | +# |
45 | +# This program is free software: you can redistribute it and/or modify |
46 | +# it under the terms of the GNU General Public License as published by |
47 | +# the Free Software Foundation, either version 3 of the License, or |
48 | +# (at your option) any later version. |
49 | +# |
50 | +# This program is distributed in the hope that it will be useful, |
51 | +# but WITHOUT ANY WARRANTY; without even the implied warranty of |
52 | +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
53 | +# GNU General Public License for more details. |
54 | +# |
55 | +# You should have received a copy of the GNU General Public License |
56 | +# along with this program. If not, see http://www.gnu.org/licenses/. |
57 | +# |
58 | +############################################################################## |
59 | + |
60 | +{ |
61 | + "name" : "AEAT Model 303", |
62 | + "version" : "1.0", |
63 | + "author" : "GuadalTech", |
64 | + "license" : "AGPL-3", |
65 | + "website" : "http://www.guadaltech.es", |
66 | + "category" : "Localisation/Accounting", |
67 | + "description" : |
68 | + |
69 | + """ |
70 | +Módulo para la presentación del modelo 303. Exportación a formato AEAT. |
71 | + |
72 | + """, |
73 | + |
74 | + "init_xml" : [], |
75 | + "depends" : [ |
76 | + "l10n_es_aeat","l10n_es_aeat_mod347" |
77 | + ], |
78 | + "update_xml" : [ |
79 | + "mod303_view.xml", |
80 | + "mod303_workflow.xml", |
81 | + "security/ir.model.access.csv", |
82 | + |
83 | + ], |
84 | + "demo_xml" : [], |
85 | + "test" : [], |
86 | + "installable" : True, |
87 | + "active" : False, |
88 | +} |
89 | +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: |
90 | |
91 | === added directory 'l10n_es_aeat_mod303/i18n' |
92 | === added file 'l10n_es_aeat_mod303/i18n/es.po' |
93 | --- l10n_es_aeat_mod303/i18n/es.po 1970-01-01 00:00:00 +0000 |
94 | +++ l10n_es_aeat_mod303/i18n/es.po 2013-10-10 17:06:51 +0000 |
95 | @@ -0,0 +1,555 @@ |
96 | +# Translation of OpenERP Server. |
97 | +# This file contains the translation of the following modules: |
98 | +# * l10n_es_aeat_mod303 |
99 | +# |
100 | +msgid "" |
101 | +msgstr "" |
102 | +"Project-Id-Version: OpenERP Server 6.1-20120617-233256\n" |
103 | +"Report-Msgid-Bugs-To: \n" |
104 | +"POT-Creation-Date: 2013-03-18 10:22+0000\n" |
105 | +"PO-Revision-Date: 2013-03-18 10:22+0000\n" |
106 | +"Last-Translator: <>\n" |
107 | +"Language-Team: \n" |
108 | +"MIME-Version: 1.0\n" |
109 | +"Content-Type: text/plain; charset=UTF-8\n" |
110 | +"Content-Transfer-Encoding: \n" |
111 | +"Plural-Forms: \n" |
112 | + |
113 | +#. module: l10n_es_aeat_mod303 |
114 | +#: view:l10n.es.aeat.mod303.report:0 |
115 | +msgid "Confirmed models" |
116 | +msgstr "Modelos confirmados" |
117 | + |
118 | +#. module: l10n_es_aeat_mod303 |
119 | +#: code:addons/l10n_es_aeat_mod303/wizard/export_mod303_to_boe.py:267 |
120 | +#, python-format |
121 | +msgid "The 303 report must be 1353 characters long and are %s" |
122 | +msgstr "La declaración del modelo 303 debe tener 1353 caracteres, y actuamente son %s" |
123 | + |
124 | +#. module: l10n_es_aeat_mod303 |
125 | +#: view:l10n.es.aeat.mod303.report:0 |
126 | +msgid "AEAT 303 Reports" |
127 | +msgstr "Declaraciones AEAT 303" |
128 | + |
129 | +#. module: l10n_es_aeat_mod303 |
130 | +#: field:l10n.es.aeat.mod303.report,representative_vat:0 |
131 | +msgid "L.R. VAT number" |
132 | +msgstr "L.R. VAT number" |
133 | + |
134 | +#. module: l10n_es_aeat_mod303 |
135 | +#: view:l10n.es.aeat.mod303.report:0 |
136 | +msgid "Devolución" |
137 | +msgstr "Devolución" |
138 | + |
139 | +#. module: l10n_es_aeat_mod303 |
140 | +#: model:ir.model,name:l10n_es_aeat_mod303.model_l10n_es_aeat_mod303_report |
141 | +#: view:l10n.es.aeat.mod303.report:0 |
142 | +msgid "AEAT 303 Report" |
143 | +msgstr "Declaración AEAT 303" |
144 | + |
145 | +#. module: l10n_es_aeat_mod303 |
146 | +#: selection:l10n.es.aeat.mod303.report,period:0 |
147 | +msgid "March" |
148 | +msgstr "Marzo" |
149 | + |
150 | +#. module: l10n_es_aeat_mod303 |
151 | +#: view:l10n.es.aeat.mod303.report:0 |
152 | +#: field:l10n.es.aeat.mod303.report,company_id:0 |
153 | +msgid "Company" |
154 | +msgstr "Company" |
155 | + |
156 | +#. module: l10n_es_aeat_mod303 |
157 | +#: field:l10n.es.aeat.mod303.report,devolver:0 |
158 | +msgid "Devolver" |
159 | +msgstr "Devolver" |
160 | + |
161 | +#. module: l10n_es_aeat_mod303 |
162 | +#: code:addons/l10n_es_aeat_mod303/mod303.py:227 |
163 | +#, python-format |
164 | +msgid "Seleccione una cuenta para ingresar el importe" |
165 | +msgstr "Seleccione una cuenta para ingresar el importe" |
166 | + |
167 | +#. module: l10n_es_aeat_mod303 |
168 | +#: selection:l10n.es.aeat.mod303.report,type:0 |
169 | +msgid "Substitutive" |
170 | +msgstr "Substitutive" |
171 | + |
172 | +#. module: l10n_es_aeat_mod303 |
173 | +#: help:l10n.es.aeat.mod303.report,regularizacion_anual:0 |
174 | +msgid "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." |
175 | +msgstr "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." |
176 | + |
177 | +#. module: l10n_es_aeat_mod303 |
178 | +#: model:ir.actions.act_window,help:l10n_es_aeat_mod303.action_l10n_es_aeat_mod303_report |
179 | +msgid "Create and query AEAT Model 303 Reports" |
180 | +msgstr "Permite crear y consultar las declaraciones sobre el modelo AEAT 303" |
181 | + |
182 | +#. module: l10n_es_aeat_mod303 |
183 | +#: field:l10n.es.aeat.mod303.report,cuota_compensar:0 |
184 | +msgid "Cuotas a Compensar" |
185 | +msgstr "Cuotas a Compensar" |
186 | + |
187 | +#. module: l10n_es_aeat_mod303 |
188 | +#: code:addons/l10n_es_aeat_mod303/mod303.py:153 |
189 | +#, python-format |
190 | +msgid "El periodo seleccionado no coincide con los periodos del año fiscal:" |
191 | +msgstr "El periodo seleccionado no coincide con los periodos del año fiscal:" |
192 | + |
193 | +#. module: l10n_es_aeat_mod303 |
194 | +#: view:l10n.es.aeat.mod303.report:0 |
195 | +msgid "Cancelled" |
196 | +msgstr "Cancelado" |
197 | + |
198 | +#. module: l10n_es_aeat_mod303 |
199 | +#: field:l10n.es.aeat.mod303.report,complementaria:0 |
200 | +#: help:l10n.es.aeat.mod303.report,complementaria:0 |
201 | +msgid "Autoliquidación Complementaria" |
202 | +msgstr "Autoliquidación Complementaria" |
203 | + |
204 | +#. module: l10n_es_aeat_mod303 |
205 | +#: field:l10n.es.aeat.mod303.report,company_vat:0 |
206 | +msgid "VAT number" |
207 | +msgstr "CIF/DNI" |
208 | + |
209 | +#. module: l10n_es_aeat_mod303 |
210 | +#: help:l10n.es.aeat.mod303.report,resultado_casilla_46:0 |
211 | +msgid "Atribuible a la admistracion [40] - Cuotas a compensar [41] + Regularización Anual [45]" |
212 | +msgstr "Atribuible a la admistracion [40] - Cuotas a compensar [41] + Regularización Anual [45]" |
213 | + |
214 | +#. module: l10n_es_aeat_mod303 |
215 | +#: field:l10n.es.aeat.mod303.report,previus_result:0 |
216 | +msgid "A Deducir" |
217 | +msgstr "A Deducir" |
218 | + |
219 | +#. module: l10n_es_aeat_mod303 |
220 | +#: code:addons/l10n_es_aeat_mod303/wizard/export_mod303_to_boe.py:182 |
221 | +#: code:addons/l10n_es_aeat_mod303/wizard/export_mod303_to_boe.py:204 |
222 | +#, python-format |
223 | +msgid "Warning" |
224 | +msgstr "Warning" |
225 | + |
226 | +#. module: l10n_es_aeat_mod303 |
227 | +#: help:l10n.es.aeat.mod303.report,previus_result:0 |
228 | +msgid "Resultado de la anterior o anteriores del mismo concepto, ejercicio y periodo" |
229 | +msgstr "Resultado de la anterior o anteriores del mismo concepto, ejercicio y periodo" |
230 | + |
231 | +#. module: l10n_es_aeat_mod303 |
232 | +#: view:l10n.es.aeat.mod303.report:0 |
233 | +msgid "Confirm" |
234 | +msgstr "Confirmar" |
235 | + |
236 | +#. module: l10n_es_aeat_mod303 |
237 | +#: help:l10n.es.aeat.mod303.report,porcentaje_atribuible_estado:0 |
238 | +msgid "Los sujetos pasivos que tributen conjuntamente a la Administración del Estado y a las Diputaciones Forales del País Vasco o a la ComunidadForal 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%" |
239 | +msgstr "Los sujetos pasivos que tributen conjuntamente a la Administración del Estado y a las Diputaciones Forales del País Vasco o a la ComunidadForal 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%" |
240 | + |
241 | +#. module: l10n_es_aeat_mod303 |
242 | +#: view:l10n.es.aeat.mod303.report:0 |
243 | +msgid "Cancelled models" |
244 | +msgstr "Modelos cancelados" |
245 | + |
246 | +#. module: l10n_es_aeat_mod303 |
247 | +#: field:l10n.es.aeat.mod303.report,state:0 |
248 | +msgid "State" |
249 | +msgstr "Estado" |
250 | + |
251 | +#. module: l10n_es_aeat_mod303 |
252 | +#: selection:l10n.es.aeat.mod303.report,period:0 |
253 | +msgid "First quarter" |
254 | +msgstr "1er Trimestre" |
255 | + |
256 | +#. module: l10n_es_aeat_mod303 |
257 | +#: model:ir.actions.act_window,name:l10n_es_aeat_mod303.action_l10n_es_aeat_mod303_report |
258 | +msgid "AEAT Model 303" |
259 | +msgstr "Modelo AEAT 303" |
260 | + |
261 | +#. module: l10n_es_aeat_mod303 |
262 | +#: view:l10n.es.aeat.mod303.report:0 |
263 | +msgid "AEAT 303" |
264 | +msgstr "AEAT 303" |
265 | + |
266 | +#. module: l10n_es_aeat_mod303 |
267 | +#: code:addons/l10n_es_aeat_mod303/mod303.py:231 |
268 | +#, python-format |
269 | +msgid "No hay actividad en el periodo seleccionado, marque la casilla correspondinte" |
270 | +msgstr "No hay actividad en el periodo seleccionado, marque la casilla correspondinte" |
271 | + |
272 | +#. module: l10n_es_aeat_mod303 |
273 | +#: model:ir.ui.menu,name:l10n_es_aeat_mod303.menu_aeat_mod303_report |
274 | +msgid "AEAT 303 Model" |
275 | +msgstr "Modelo AEAT 303" |
276 | + |
277 | +#. module: l10n_es_aeat_mod303 |
278 | +#: field:l10n.es.aeat.mod303.report,support_type:0 |
279 | +msgid "Support Type" |
280 | +msgstr "Tipo de Soporte" |
281 | + |
282 | +#. module: l10n_es_aeat_mod303 |
283 | +#: code:addons/l10n_es_aeat_mod303/wizard/export_mod303_to_boe.py:274 |
284 | +#, python-format |
285 | +msgid "%Y-%m-%d" |
286 | +msgstr "%Y-%m-%d" |
287 | + |
288 | +#. module: l10n_es_aeat_mod303 |
289 | +#: view:l10n.es.aeat.mod303.report:0 |
290 | +msgid "Export to BOE" |
291 | +msgstr "Exportar a formato BOE" |
292 | + |
293 | +#. module: l10n_es_aeat_mod303 |
294 | +#: selection:l10n.es.aeat.mod303.report,period:0 |
295 | +msgid "July" |
296 | +msgstr "Julio" |
297 | + |
298 | +#. module: l10n_es_aeat_mod303 |
299 | +#: code:addons/l10n_es_aeat_mod303/mod303.py:229 |
300 | +#, python-format |
301 | +msgid "Seleccione una cuenta para realizar la devolución" |
302 | +msgstr "Seleccione una cuenta para realizar la devolución" |
303 | + |
304 | +#. module: l10n_es_aeat_mod303 |
305 | +#: help:l10n.es.aeat.mod303.report,devolucion_mensual:0 |
306 | +msgid "Inscrito en el Registro de Devolución Mensual" |
307 | +msgstr "Inscrito en el Registro de Devolución Mensual" |
308 | + |
309 | +#. module: l10n_es_aeat_mod303 |
310 | +#: code:addons/l10n_es_aeat_mod303/wizard/export_mod303_to_boe.py:182 |
311 | +#, python-format |
312 | +msgid "CCC de devolución no válida \n" |
313 | +"%s" |
314 | +msgstr "CCC de devolución no válida \n" |
315 | +"%s" |
316 | + |
317 | +#. module: l10n_es_aeat_mod303 |
318 | +#: field:l10n.es.aeat.mod303.report,calculation_date:0 |
319 | +msgid "Calculation date" |
320 | +msgstr "Fecha de cálculo" |
321 | + |
322 | +#. module: l10n_es_aeat_mod303 |
323 | +#: field:l10n.es.aeat.mod303.report,contact_name:0 |
324 | +msgid "Full Name" |
325 | +msgstr "Nombre Completo" |
326 | + |
327 | +#. module: l10n_es_aeat_mod303 |
328 | +#: view:l10n.es.aeat.mod303.report:0 |
329 | +msgid "Declaracion" |
330 | +msgstr "Declaracion" |
331 | + |
332 | +#. module: l10n_es_aeat_mod303 |
333 | +#: field:l10n.es.aeat.mod303.report,ingresar:0 |
334 | +msgid "Ingresar" |
335 | +msgstr "Ingresar" |
336 | + |
337 | +#. module: l10n_es_aeat_mod303 |
338 | +#: view:l10n.es.aeat.mod303.report:0 |
339 | +msgid "Draft models" |
340 | +msgstr "Modelos borrador" |
341 | + |
342 | +#. module: l10n_es_aeat_mod303 |
343 | +#: selection:l10n.es.aeat.mod303.report,period:0 |
344 | +msgid "September" |
345 | +msgstr "Septiembre" |
346 | + |
347 | +#. module: l10n_es_aeat_mod303 |
348 | +#: selection:l10n.es.aeat.mod303.report,period:0 |
349 | +msgid "December" |
350 | +msgstr "Diciembre" |
351 | + |
352 | +#. module: l10n_es_aeat_mod303 |
353 | +#: field:l10n.es.aeat.mod303.report,number:0 |
354 | +msgid "Declaration Number" |
355 | +msgstr "Número Declaración" |
356 | + |
357 | +#. module: l10n_es_aeat_mod303 |
358 | +#: field:l10n.es.aeat.mod303.report,total_deducir:0 |
359 | +msgid "IVA a Deducir" |
360 | +msgstr "IVA a Deducir" |
361 | + |
362 | +#. module: l10n_es_aeat_mod303 |
363 | +#: selection:l10n.es.aeat.mod303.report,state:0 |
364 | +msgid "Canceled" |
365 | +msgstr "Cancelado" |
366 | + |
367 | +#. module: l10n_es_aeat_mod303 |
368 | +#: field:l10n.es.aeat.mod303.report,regularizacion_anual:0 |
369 | +msgid "Regularización Anual" |
370 | +msgstr "Regularización Anual" |
371 | + |
372 | +#. module: l10n_es_aeat_mod303 |
373 | +#: view:l10n.es.aeat.mod303.report:0 |
374 | +msgid "Ingreso" |
375 | +msgstr "Ingreso" |
376 | + |
377 | +#. module: l10n_es_aeat_mod303 |
378 | +#: view:l10n.es.aeat.mod303.report:0 |
379 | +msgid "Calculate" |
380 | +msgstr "Calcular" |
381 | + |
382 | +#. module: l10n_es_aeat_mod303 |
383 | +#: code:addons/l10n_es_aeat_mod303/wizard/export_mod303_to_boe.py:250 |
384 | +#, python-format |
385 | +msgid "AEAT Model is necessary" |
386 | +msgstr "Es necesario el modelo AEAT" |
387 | + |
388 | +#. module: l10n_es_aeat_mod303 |
389 | +#: selection:l10n.es.aeat.mod303.report,support_type:0 |
390 | +msgid "DVD" |
391 | +msgstr "DVD" |
392 | + |
393 | +#. module: l10n_es_aeat_mod303 |
394 | +#: view:l10n.es.aeat.mod303.report:0 |
395 | +msgid "In process" |
396 | +msgstr "En proceso" |
397 | + |
398 | +#. module: l10n_es_aeat_mod303 |
399 | +#: code:addons/l10n_es_aeat_mod303/mod303.py:214 |
400 | +#, python-format |
401 | +msgid "El valor añadido para la regularizacion anual no se ha tendio en cuenta por no ser un periodo de cierre (12 o 4T)" |
402 | +msgstr "El valor añadido para la regularizacion anual no se ha tendio en cuenta por no ser un periodo de cierre (12 o 4T)" |
403 | + |
404 | +#. module: l10n_es_aeat_mod303 |
405 | +#: view:l10n.es.aeat.mod303.report:0 |
406 | +#: selection:l10n.es.aeat.mod303.report,state:0 |
407 | +msgid "Draft" |
408 | +msgstr "Borrador" |
409 | + |
410 | +#. module: l10n_es_aeat_mod303 |
411 | +#: field:l10n.es.aeat.mod303.report,diferencia:0 |
412 | +msgid "Diferencia" |
413 | +msgstr "Diferencia" |
414 | + |
415 | +#. module: l10n_es_aeat_mod303 |
416 | +#: help:l10n.es.aeat.mod303.report,cuota_compensar:0 |
417 | +msgid "Cuota a compensar de periodos anteriores" |
418 | +msgstr "Cuota a compensar de periodos anteriores" |
419 | + |
420 | +#. module: l10n_es_aeat_mod303 |
421 | +#: code:addons/l10n_es_aeat_mod303/wizard/export_mod303_to_boe.py:73 |
422 | +#, python-format |
423 | +msgid "The identification (1) and income (2) must be 72 characters long" |
424 | +msgstr "The identification (1) and income (2) must be 72 characters long" |
425 | + |
426 | +#. module: l10n_es_aeat_mod303 |
427 | +#: field:l10n.es.aeat.mod303.report,sin_actividad:0 |
428 | +msgid "Sin Actividad" |
429 | +msgstr "Sin Actividad" |
430 | + |
431 | +#. module: l10n_es_aeat_mod303 |
432 | +#: selection:l10n.es.aeat.mod303.report,period:0 |
433 | +msgid "August" |
434 | +msgstr "Agosto" |
435 | + |
436 | +#. module: l10n_es_aeat_mod303 |
437 | +#: selection:l10n.es.aeat.mod303.report,type:0 |
438 | +msgid "Normal" |
439 | +msgstr "Normal" |
440 | + |
441 | +#. module: l10n_es_aeat_mod303 |
442 | +#: selection:l10n.es.aeat.mod303.report,state:0 |
443 | +msgid "Processing" |
444 | +msgstr "Procesando" |
445 | + |
446 | +#. module: l10n_es_aeat_mod303 |
447 | +#: selection:l10n.es.aeat.mod303.report,period:0 |
448 | +msgid "June" |
449 | +msgstr "Junio" |
450 | + |
451 | +#. module: l10n_es_aeat_mod303 |
452 | +#: code:addons/l10n_es_aeat_mod303/wizard/export_mod303_to_boe.py:167 |
453 | +#, python-format |
454 | +msgid "The vat records must be 749 characters long and are %s" |
455 | +msgstr "The vat records must be 749 characters long and are %s" |
456 | + |
457 | +#. module: l10n_es_aeat_mod303 |
458 | +#: field:l10n.es.aeat.mod303.report,atribuible_estado:0 |
459 | +msgid "Atribuible a la Administracion" |
460 | +msgstr "Atribuible a la Administracion" |
461 | + |
462 | +#. module: l10n_es_aeat_mod303 |
463 | +#: selection:l10n.es.aeat.mod303.report,period:0 |
464 | +msgid "November" |
465 | +msgstr "Noviembre" |
466 | + |
467 | +#. module: l10n_es_aeat_mod303 |
468 | +#: field:l10n.es.aeat.mod303.report,resultado_liquidacion:0 |
469 | +msgid "Resultado Liquidación" |
470 | +msgstr "Resultado Liquidación" |
471 | + |
472 | +#. module: l10n_es_aeat_mod303 |
473 | +#: field:l10n.es.aeat.mod303.report,devolucion_mensual:0 |
474 | +msgid "Devolución Mensual" |
475 | +msgstr "Devolución Mensual" |
476 | + |
477 | +#. module: l10n_es_aeat_mod303 |
478 | +#: selection:l10n.es.aeat.mod303.report,period:0 |
479 | +msgid "January" |
480 | +msgstr "Enero" |
481 | + |
482 | +#. module: l10n_es_aeat_mod303 |
483 | +#: selection:l10n.es.aeat.mod303.report,state:0 |
484 | +msgid "Processed" |
485 | +msgstr "Procesado" |
486 | + |
487 | +#. module: l10n_es_aeat_mod303 |
488 | +#: selection:l10n.es.aeat.mod303.report,period:0 |
489 | +msgid "Third quarter" |
490 | +msgstr "3er Trimestre" |
491 | + |
492 | +#. module: l10n_es_aeat_mod303 |
493 | +#: help:l10n.es.aeat.mod303.report,diferencia:0 |
494 | +msgid "( IVA devengado - IVA deducible )" |
495 | +msgstr "( IVA devengado - IVA deducible )" |
496 | + |
497 | +#. module: l10n_es_aeat_mod303 |
498 | +#: field:l10n.es.aeat.mod303.report,compensar:0 |
499 | +msgid "Compensar" |
500 | +msgstr "Compensar" |
501 | + |
502 | +#. module: l10n_es_aeat_mod303 |
503 | +#: field:l10n.es.aeat.mod303.report,period:0 |
504 | +msgid "Periodo" |
505 | +msgstr "Periodo" |
506 | + |
507 | +#. module: l10n_es_aeat_mod303 |
508 | +#: field:l10n.es.aeat.mod303.report,type:0 |
509 | +msgid "Statement Type" |
510 | +msgstr "Tipo de Declaración" |
511 | + |
512 | +#. module: l10n_es_aeat_mod303 |
513 | +#: view:l10n.es.aeat.mod303.report:0 |
514 | +msgid "General" |
515 | +msgstr "General" |
516 | + |
517 | +#. module: l10n_es_aeat_mod303 |
518 | +#: view:l10n.es.aeat.mod303.report:0 |
519 | +msgid "In process models" |
520 | +msgstr "Modelos en Proceso" |
521 | + |
522 | +#. module: l10n_es_aeat_mod303 |
523 | +#: view:l10n.es.aeat.mod303.report:0 |
524 | +#: selection:l10n.es.aeat.mod303.report,state:0 |
525 | +msgid "Done" |
526 | +msgstr "Realizada" |
527 | + |
528 | +#. module: l10n_es_aeat_mod303 |
529 | +#: view:l10n.es.aeat.mod303.report:0 |
530 | +msgid "Cancel" |
531 | +msgstr "Cancelar" |
532 | + |
533 | +#. module: l10n_es_aeat_mod303 |
534 | +#: view:l10n.es.aeat.mod303.report:0 |
535 | +msgid "Recalculate" |
536 | +msgstr "Recalcular" |
537 | + |
538 | +#. module: l10n_es_aeat_mod303 |
539 | +#: view:l10n.es.aeat.mod303.report:0 |
540 | +msgid "Importe" |
541 | +msgstr "Importe" |
542 | + |
543 | +#. module: l10n_es_aeat_mod303 |
544 | +#: selection:l10n.es.aeat.mod303.report,period:0 |
545 | +msgid "Fourth quarter" |
546 | +msgstr "4to Trimestre" |
547 | + |
548 | +#. module: l10n_es_aeat_mod303 |
549 | +#: view:l10n.es.aeat.mod303.report:0 |
550 | +msgid "Compensación" |
551 | +msgstr "Compensación" |
552 | + |
553 | +#. module: l10n_es_aeat_mod303 |
554 | +#: selection:l10n.es.aeat.mod303.report,period:0 |
555 | +msgid "October" |
556 | +msgstr "Octubre" |
557 | + |
558 | +#. module: l10n_es_aeat_mod303 |
559 | +#: field:l10n.es.aeat.mod303.report,porcentaje_atribuible_estado:0 |
560 | +msgid "%" |
561 | +msgstr "%" |
562 | + |
563 | +#. module: l10n_es_aeat_mod303 |
564 | +#: selection:l10n.es.aeat.mod303.report,type:0 |
565 | +msgid "Complementary" |
566 | +msgstr "Complementary" |
567 | + |
568 | +#. module: l10n_es_aeat_mod303 |
569 | +#: selection:l10n.es.aeat.mod303.report,period:0 |
570 | +msgid "May" |
571 | +msgstr "Mayo" |
572 | + |
573 | +#. module: l10n_es_aeat_mod303 |
574 | +#: field:l10n.es.aeat.mod303.report,cuenta_ingreso_id:0 |
575 | +msgid "CCC Ingreso" |
576 | +msgstr "CCC Ingreso" |
577 | + |
578 | +#. module: l10n_es_aeat_mod303 |
579 | +#: help:l10n.es.aeat.mod303.report,representative_vat:0 |
580 | +msgid "Legal Representative VAT number." |
581 | +msgstr "Legal Representative VAT number." |
582 | + |
583 | +#. module: l10n_es_aeat_mod303 |
584 | +#: field:l10n.es.aeat.mod303.report,previous_number:0 |
585 | +msgid "Previous Declaration Number" |
586 | +msgstr "Número Declaración anterior" |
587 | + |
588 | +#. module: l10n_es_aeat_mod303 |
589 | +#: selection:l10n.es.aeat.mod303.report,period:0 |
590 | +msgid "February" |
591 | +msgstr "Febrero" |
592 | + |
593 | +#. module: l10n_es_aeat_mod303 |
594 | +#: view:l10n.es.aeat.mod303.report:0 |
595 | +msgid "Complementaria" |
596 | +msgstr "Complementaria" |
597 | + |
598 | +#. module: l10n_es_aeat_mod303 |
599 | +#: view:l10n.es.aeat.mod303.report:0 |
600 | +#: field:l10n.es.aeat.mod303.report,resultado_casilla_46:0 |
601 | +msgid "Resultado" |
602 | +msgstr "Resultado" |
603 | + |
604 | +#. module: l10n_es_aeat_mod303 |
605 | +#: field:l10n.es.aeat.mod303.report,total_devengado:0 |
606 | +msgid "IVA Devengado" |
607 | +msgstr "IVA Devengado" |
608 | + |
609 | +#. module: l10n_es_aeat_mod303 |
610 | +#: selection:l10n.es.aeat.mod303.report,period:0 |
611 | +msgid "April" |
612 | +msgstr "Abril" |
613 | + |
614 | +#. module: l10n_es_aeat_mod303 |
615 | +#: view:l10n.es.aeat.mod303.report:0 |
616 | +#: field:l10n.es.aeat.mod303.report,fiscalyear_id:0 |
617 | +msgid "Fiscal Year" |
618 | +msgstr "Año Fiscal" |
619 | + |
620 | +#. module: l10n_es_aeat_mod303 |
621 | +#: field:l10n.es.aeat.mod303.report,cuenta_devolucion_id:0 |
622 | +msgid "CCC Devolución" |
623 | +msgstr "CCC Devolución" |
624 | + |
625 | +#. module: l10n_es_aeat_mod303 |
626 | +#: selection:l10n.es.aeat.mod303.report,support_type:0 |
627 | +msgid "Telematics" |
628 | +msgstr "Telematics" |
629 | + |
630 | +#. module: l10n_es_aeat_mod303 |
631 | +#: model:ir.model,name:l10n_es_aeat_mod303.model_l10n_es_aeat_mod303_export_to_boe |
632 | +msgid "Export AEAT Model 303 to BOE format" |
633 | +msgstr "Exportar el modelo AEAT 303 a formato BOE" |
634 | + |
635 | +#. module: l10n_es_aeat_mod303 |
636 | +#: code:addons/l10n_es_aeat_mod303/wizard/export_mod303_to_boe.py:204 |
637 | +#, python-format |
638 | +msgid "CCC de ingreso no válido %s" |
639 | +msgstr "CCC de ingreso no válido %s" |
640 | + |
641 | +#. module: l10n_es_aeat_mod303 |
642 | +#: selection:l10n.es.aeat.mod303.report,period:0 |
643 | +msgid "Second quarter" |
644 | +msgstr "2do Trimestre" |
645 | + |
646 | +#. module: l10n_es_aeat_mod303 |
647 | +#: code:addons/l10n_es_aeat_mod303/wizard/export_mod303_to_boe.py:274 |
648 | +#, python-format |
649 | +msgid "%s_report_%s.txt" |
650 | +msgstr "%s_report_%s.txt" |
651 | |
652 | === added file 'l10n_es_aeat_mod303/i18n/l10n_es_aeat_mod303.pot' |
653 | --- l10n_es_aeat_mod303/i18n/l10n_es_aeat_mod303.pot 1970-01-01 00:00:00 +0000 |
654 | +++ l10n_es_aeat_mod303/i18n/l10n_es_aeat_mod303.pot 2013-10-10 17:06:51 +0000 |
655 | @@ -0,0 +1,535 @@ |
656 | +# Translation of OpenERP Server. |
657 | +# This file contains the translation of the following modules: |
658 | +# * l10n_es_aeat_mod303 |
659 | +# |
660 | +msgid "" |
661 | +msgstr "" |
662 | +"Project-Id-Version: OpenERP Server 6.0.3\n" |
663 | +"Report-Msgid-Bugs-To: support@openerp.com\n" |
664 | +"POT-Creation-Date: 2013-10-10 17:03+0000\n" |
665 | +"PO-Revision-Date: 2013-10-10 17:03+0000\n" |
666 | +"Last-Translator: <>\n" |
667 | +"Language-Team: \n" |
668 | +"MIME-Version: 1.0\n" |
669 | +"Content-Type: text/plain; charset=UTF-8\n" |
670 | +"Content-Transfer-Encoding: \n" |
671 | +"Plural-Forms: \n" |
672 | + |
673 | +#. module: l10n_es_aeat_mod303 |
674 | +#: code:addons/l10n_es_aeat_mod303/wizard/export_mod303_to_boe.py:266 |
675 | +#, python-format |
676 | +msgid "The 303 report must be 1353 characters long and are %s" |
677 | +msgstr "" |
678 | + |
679 | +#. module: l10n_es_aeat_mod303 |
680 | +#: view:l10n.es.aeat.mod303.report:0 |
681 | +msgid "AEAT 303 Reports" |
682 | +msgstr "" |
683 | + |
684 | +#. module: l10n_es_aeat_mod303 |
685 | +#: field:l10n.es.aeat.mod303.report,representative_vat:0 |
686 | +msgid "L.R. VAT number" |
687 | +msgstr "" |
688 | + |
689 | +#. module: l10n_es_aeat_mod303 |
690 | +#: view:l10n.es.aeat.mod303.report:0 |
691 | +msgid "Devolución" |
692 | +msgstr "" |
693 | + |
694 | +#. module: l10n_es_aeat_mod303 |
695 | +#: model:ir.model,name:l10n_es_aeat_mod303.model_l10n_es_aeat_mod303_report |
696 | +#: view:l10n.es.aeat.mod303.report:0 |
697 | +msgid "AEAT 303 Report" |
698 | +msgstr "" |
699 | + |
700 | +#. module: l10n_es_aeat_mod303 |
701 | +#: selection:l10n.es.aeat.mod303.report,period:0 |
702 | +msgid "March" |
703 | +msgstr "" |
704 | + |
705 | +#. module: l10n_es_aeat_mod303 |
706 | +#: view:l10n.es.aeat.mod303.report:0 |
707 | +#: field:l10n.es.aeat.mod303.report,company_id:0 |
708 | +msgid "Company" |
709 | +msgstr "" |
710 | + |
711 | +#. module: l10n_es_aeat_mod303 |
712 | +#: field:l10n.es.aeat.mod303.report,devolver:0 |
713 | +msgid "Devolver" |
714 | +msgstr "" |
715 | + |
716 | +#. module: l10n_es_aeat_mod303 |
717 | +#: code:addons/l10n_es_aeat_mod303/mod303.py:225 |
718 | +#, python-format |
719 | +msgid "Seleccione una cuenta para ingresar el importe" |
720 | +msgstr "" |
721 | + |
722 | +#. module: l10n_es_aeat_mod303 |
723 | +#: selection:l10n.es.aeat.mod303.report,type:0 |
724 | +msgid "Substitutive" |
725 | +msgstr "" |
726 | + |
727 | +#. module: l10n_es_aeat_mod303 |
728 | +#: help:l10n.es.aeat.mod303.report,regularizacion_anual:0 |
729 | +msgid "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." |
730 | +msgstr "" |
731 | + |
732 | +#. module: l10n_es_aeat_mod303 |
733 | +#: model:ir.actions.act_window,help:l10n_es_aeat_mod303.action_l10n_es_aeat_mod303_report |
734 | +msgid "Create and query AEAT Model 303 Reports" |
735 | +msgstr "" |
736 | + |
737 | +#. module: l10n_es_aeat_mod303 |
738 | +#: field:l10n.es.aeat.mod303.report,cuota_compensar:0 |
739 | +msgid "Cuotas a Compensar" |
740 | +msgstr "" |
741 | + |
742 | +#. module: l10n_es_aeat_mod303 |
743 | +#: code:addons/l10n_es_aeat_mod303/mod303.py:153 |
744 | +#, python-format |
745 | +msgid "El periodo seleccionado no coincide con los periodos del año fiscal:" |
746 | +msgstr "" |
747 | + |
748 | +#. module: l10n_es_aeat_mod303 |
749 | +#: view:l10n.es.aeat.mod303.report:0 |
750 | +msgid "Cancelled" |
751 | +msgstr "" |
752 | + |
753 | +#. module: l10n_es_aeat_mod303 |
754 | +#: field:l10n.es.aeat.mod303.report,complementaria:0 |
755 | +#: help:l10n.es.aeat.mod303.report,complementaria:0 |
756 | +msgid "Autoliquidación Complementaria" |
757 | +msgstr "" |
758 | + |
759 | +#. module: l10n_es_aeat_mod303 |
760 | +#: field:l10n.es.aeat.mod303.report,company_vat:0 |
761 | +msgid "VAT number" |
762 | +msgstr "" |
763 | + |
764 | +#. module: l10n_es_aeat_mod303 |
765 | +#: help:l10n.es.aeat.mod303.report,resultado_casilla_46:0 |
766 | +msgid "Atribuible a la admistracion [40] - Cuotas a compensar [41] + Regularización Anual [45]" |
767 | +msgstr "" |
768 | + |
769 | +#. module: l10n_es_aeat_mod303 |
770 | +#: field:l10n.es.aeat.mod303.report,previus_result:0 |
771 | +msgid "A Deducir" |
772 | +msgstr "" |
773 | + |
774 | +#. module: l10n_es_aeat_mod303 |
775 | +#: code:addons/l10n_es_aeat_mod303/wizard/export_mod303_to_boe.py:181 |
776 | +#: code:addons/l10n_es_aeat_mod303/wizard/export_mod303_to_boe.py:203 |
777 | +#, python-format |
778 | +msgid "Warning" |
779 | +msgstr "" |
780 | + |
781 | +#. module: l10n_es_aeat_mod303 |
782 | +#: help:l10n.es.aeat.mod303.report,previus_result:0 |
783 | +msgid "Resultado de la anterior o anteriores del mismo concepto, ejercicio y periodo" |
784 | +msgstr "" |
785 | + |
786 | +#. module: l10n_es_aeat_mod303 |
787 | +#: view:l10n.es.aeat.mod303.report:0 |
788 | +msgid "Confirm" |
789 | +msgstr "" |
790 | + |
791 | +#. module: l10n_es_aeat_mod303 |
792 | +#: help:l10n.es.aeat.mod303.report,porcentaje_atribuible_estado:0 |
793 | +msgid "Los sujetos pasivos que tributen conjuntamente a la Administración del Estado y a las Diputaciones Forales del País Vasco o a la ComunidadForal 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%" |
794 | +msgstr "" |
795 | + |
796 | +#. module: l10n_es_aeat_mod303 |
797 | +#: selection:l10n.es.aeat.mod303.report,period:0 |
798 | +msgid "February" |
799 | +msgstr "" |
800 | + |
801 | +#. module: l10n_es_aeat_mod303 |
802 | +#: field:l10n.es.aeat.mod303.report,state:0 |
803 | +msgid "State" |
804 | +msgstr "" |
805 | + |
806 | +#. module: l10n_es_aeat_mod303 |
807 | +#: selection:l10n.es.aeat.mod303.report,period:0 |
808 | +msgid "First quarter" |
809 | +msgstr "" |
810 | + |
811 | +#. module: l10n_es_aeat_mod303 |
812 | +#: model:ir.actions.act_window,name:l10n_es_aeat_mod303.action_l10n_es_aeat_mod303_report |
813 | +msgid "AEAT Model 303" |
814 | +msgstr "" |
815 | + |
816 | +#. module: l10n_es_aeat_mod303 |
817 | +#: view:l10n.es.aeat.mod303.report:0 |
818 | +msgid "AEAT 303" |
819 | +msgstr "" |
820 | + |
821 | +#. module: l10n_es_aeat_mod303 |
822 | +#: code:addons/l10n_es_aeat_mod303/mod303.py:229 |
823 | +#, python-format |
824 | +msgid "No hay actividad en el periodo seleccionado, marque la casilla correspondinte" |
825 | +msgstr "" |
826 | + |
827 | +#. module: l10n_es_aeat_mod303 |
828 | +#: model:ir.ui.menu,name:l10n_es_aeat_mod303.menu_aeat_mod303_report |
829 | +msgid "AEAT 303 Model" |
830 | +msgstr "" |
831 | + |
832 | +#. module: l10n_es_aeat_mod303 |
833 | +#: field:l10n.es.aeat.mod303.report,support_type:0 |
834 | +msgid "Support Type" |
835 | +msgstr "" |
836 | + |
837 | +#. module: l10n_es_aeat_mod303 |
838 | +#: code:addons/l10n_es_aeat_mod303/wizard/export_mod303_to_boe.py:273 |
839 | +#, python-format |
840 | +msgid "%Y-%m-%d" |
841 | +msgstr "" |
842 | + |
843 | +#. module: l10n_es_aeat_mod303 |
844 | +#: view:l10n.es.aeat.mod303.report:0 |
845 | +msgid "Export to BOE" |
846 | +msgstr "" |
847 | + |
848 | +#. module: l10n_es_aeat_mod303 |
849 | +#: selection:l10n.es.aeat.mod303.report,period:0 |
850 | +msgid "July" |
851 | +msgstr "" |
852 | + |
853 | +#. module: l10n_es_aeat_mod303 |
854 | +#: code:addons/l10n_es_aeat_mod303/mod303.py:227 |
855 | +#, python-format |
856 | +msgid "Seleccione una cuenta para realizar la devolución" |
857 | +msgstr "" |
858 | + |
859 | +#. module: l10n_es_aeat_mod303 |
860 | +#: help:l10n.es.aeat.mod303.report,devolucion_mensual:0 |
861 | +msgid "Inscrito en el Registro de Devolución Mensual" |
862 | +msgstr "" |
863 | + |
864 | +#. module: l10n_es_aeat_mod303 |
865 | +#: code:addons/l10n_es_aeat_mod303/wizard/export_mod303_to_boe.py:181 |
866 | +#, python-format |
867 | +msgid "CCC de devolución no válida \n" |
868 | +"%s" |
869 | +msgstr "" |
870 | + |
871 | +#. module: l10n_es_aeat_mod303 |
872 | +#: field:l10n.es.aeat.mod303.report,calculation_date:0 |
873 | +msgid "Calculation date" |
874 | +msgstr "" |
875 | + |
876 | +#. module: l10n_es_aeat_mod303 |
877 | +#: field:l10n.es.aeat.mod303.report,contact_name:0 |
878 | +msgid "Full Name" |
879 | +msgstr "" |
880 | + |
881 | +#. module: l10n_es_aeat_mod303 |
882 | +#: view:l10n.es.aeat.mod303.report:0 |
883 | +msgid "Declaracion" |
884 | +msgstr "" |
885 | + |
886 | +#. module: l10n_es_aeat_mod303 |
887 | +#: field:l10n.es.aeat.mod303.report,ingresar:0 |
888 | +msgid "Ingresar" |
889 | +msgstr "" |
890 | + |
891 | +#. module: l10n_es_aeat_mod303 |
892 | +#: selection:l10n.es.aeat.mod303.report,period:0 |
893 | +msgid "September" |
894 | +msgstr "" |
895 | + |
896 | +#. module: l10n_es_aeat_mod303 |
897 | +#: selection:l10n.es.aeat.mod303.report,period:0 |
898 | +msgid "December" |
899 | +msgstr "" |
900 | + |
901 | +#. module: l10n_es_aeat_mod303 |
902 | +#: field:l10n.es.aeat.mod303.report,number:0 |
903 | +msgid "Declaration Number" |
904 | +msgstr "" |
905 | + |
906 | +#. module: l10n_es_aeat_mod303 |
907 | +#: field:l10n.es.aeat.mod303.report,total_deducir:0 |
908 | +msgid "IVA a Deducir" |
909 | +msgstr "" |
910 | + |
911 | +#. module: l10n_es_aeat_mod303 |
912 | +#: selection:l10n.es.aeat.mod303.report,state:0 |
913 | +msgid "Canceled" |
914 | +msgstr "" |
915 | + |
916 | +#. module: l10n_es_aeat_mod303 |
917 | +#: field:l10n.es.aeat.mod303.report,regularizacion_anual:0 |
918 | +msgid "Regularización Anual" |
919 | +msgstr "" |
920 | + |
921 | +#. module: l10n_es_aeat_mod303 |
922 | +#: view:l10n.es.aeat.mod303.report:0 |
923 | +msgid "Ingreso" |
924 | +msgstr "" |
925 | + |
926 | +#. module: l10n_es_aeat_mod303 |
927 | +#: view:l10n.es.aeat.mod303.report:0 |
928 | +msgid "Calculate" |
929 | +msgstr "" |
930 | + |
931 | +#. module: l10n_es_aeat_mod303 |
932 | +#: code:addons/l10n_es_aeat_mod303/wizard/export_mod303_to_boe.py:249 |
933 | +#, python-format |
934 | +msgid "AEAT Model is necessary" |
935 | +msgstr "" |
936 | + |
937 | +#. module: l10n_es_aeat_mod303 |
938 | +#: selection:l10n.es.aeat.mod303.report,support_type:0 |
939 | +msgid "DVD" |
940 | +msgstr "" |
941 | + |
942 | +#. module: l10n_es_aeat_mod303 |
943 | +#: view:l10n.es.aeat.mod303.report:0 |
944 | +msgid "In process" |
945 | +msgstr "" |
946 | + |
947 | +#. module: l10n_es_aeat_mod303 |
948 | +#: code:addons/l10n_es_aeat_mod303/mod303.py:212 |
949 | +#, python-format |
950 | +msgid "El valor añadido para la regularizacion anual no se ha tendio en cuenta por no ser un periodo de cierre (12 o 4T)" |
951 | +msgstr "" |
952 | + |
953 | +#. module: l10n_es_aeat_mod303 |
954 | +#: view:l10n.es.aeat.mod303.report:0 |
955 | +#: selection:l10n.es.aeat.mod303.report,state:0 |
956 | +msgid "Draft" |
957 | +msgstr "" |
958 | + |
959 | +#. module: l10n_es_aeat_mod303 |
960 | +#: field:l10n.es.aeat.mod303.report,diferencia:0 |
961 | +msgid "Diferencia" |
962 | +msgstr "" |
963 | + |
964 | +#. module: l10n_es_aeat_mod303 |
965 | +#: help:l10n.es.aeat.mod303.report,cuota_compensar:0 |
966 | +msgid "Cuota a compensar de periodos anteriores" |
967 | +msgstr "" |
968 | + |
969 | +#. module: l10n_es_aeat_mod303 |
970 | +#: code:addons/l10n_es_aeat_mod303/wizard/export_mod303_to_boe.py:74 |
971 | +#, python-format |
972 | +msgid "The identification (1) and income (2) must be 72 characters long" |
973 | +msgstr "" |
974 | + |
975 | +#. module: l10n_es_aeat_mod303 |
976 | +#: field:l10n.es.aeat.mod303.report,sin_actividad:0 |
977 | +msgid "Sin Actividad" |
978 | +msgstr "" |
979 | + |
980 | +#. module: l10n_es_aeat_mod303 |
981 | +#: selection:l10n.es.aeat.mod303.report,period:0 |
982 | +msgid "August" |
983 | +msgstr "" |
984 | + |
985 | +#. module: l10n_es_aeat_mod303 |
986 | +#: selection:l10n.es.aeat.mod303.report,type:0 |
987 | +msgid "Normal" |
988 | +msgstr "" |
989 | + |
990 | +#. module: l10n_es_aeat_mod303 |
991 | +#: selection:l10n.es.aeat.mod303.report,state:0 |
992 | +msgid "Processing" |
993 | +msgstr "" |
994 | + |
995 | +#. module: l10n_es_aeat_mod303 |
996 | +#: selection:l10n.es.aeat.mod303.report,period:0 |
997 | +msgid "June" |
998 | +msgstr "" |
999 | + |
1000 | +#. module: l10n_es_aeat_mod303 |
1001 | +#: code:addons/l10n_es_aeat_mod303/wizard/export_mod303_to_boe.py:166 |
1002 | +#, python-format |
1003 | +msgid "The vat records must be 749 characters long and are %s" |
1004 | +msgstr "" |
1005 | + |
1006 | +#. module: l10n_es_aeat_mod303 |
1007 | +#: field:l10n.es.aeat.mod303.report,atribuible_estado:0 |
1008 | +msgid "Atribuible a la Administracion" |
1009 | +msgstr "" |
1010 | + |
1011 | +#. module: l10n_es_aeat_mod303 |
1012 | +#: selection:l10n.es.aeat.mod303.report,period:0 |
1013 | +msgid "November" |
1014 | +msgstr "" |
1015 | + |
1016 | +#. module: l10n_es_aeat_mod303 |
1017 | +#: field:l10n.es.aeat.mod303.report,resultado_liquidacion:0 |
1018 | +msgid "Resultado Liquidación" |
1019 | +msgstr "" |
1020 | + |
1021 | +#. module: l10n_es_aeat_mod303 |
1022 | +#: field:l10n.es.aeat.mod303.report,devolucion_mensual:0 |
1023 | +msgid "Devolución Mensual" |
1024 | +msgstr "" |
1025 | + |
1026 | +#. module: l10n_es_aeat_mod303 |
1027 | +#: selection:l10n.es.aeat.mod303.report,period:0 |
1028 | +msgid "January" |
1029 | +msgstr "" |
1030 | + |
1031 | +#. module: l10n_es_aeat_mod303 |
1032 | +#: selection:l10n.es.aeat.mod303.report,state:0 |
1033 | +msgid "Processed" |
1034 | +msgstr "" |
1035 | + |
1036 | +#. module: l10n_es_aeat_mod303 |
1037 | +#: selection:l10n.es.aeat.mod303.report,period:0 |
1038 | +msgid "Third quarter" |
1039 | +msgstr "" |
1040 | + |
1041 | +#. module: l10n_es_aeat_mod303 |
1042 | +#: help:l10n.es.aeat.mod303.report,diferencia:0 |
1043 | +msgid "( IVA devengado - IVA deducible )" |
1044 | +msgstr "" |
1045 | + |
1046 | +#. module: l10n_es_aeat_mod303 |
1047 | +#: field:l10n.es.aeat.mod303.report,compensar:0 |
1048 | +msgid "Compensar" |
1049 | +msgstr "" |
1050 | + |
1051 | +#. module: l10n_es_aeat_mod303 |
1052 | +#: field:l10n.es.aeat.mod303.report,period:0 |
1053 | +msgid "Periodo" |
1054 | +msgstr "" |
1055 | + |
1056 | +#. module: l10n_es_aeat_mod303 |
1057 | +#: field:l10n.es.aeat.mod303.report,type:0 |
1058 | +msgid "Statement Type" |
1059 | +msgstr "" |
1060 | + |
1061 | +#. module: l10n_es_aeat_mod303 |
1062 | +#: view:l10n.es.aeat.mod303.report:0 |
1063 | +msgid "General" |
1064 | +msgstr "" |
1065 | + |
1066 | +#. module: l10n_es_aeat_mod303 |
1067 | +#: view:l10n.es.aeat.mod303.report:0 |
1068 | +#: selection:l10n.es.aeat.mod303.report,state:0 |
1069 | +msgid "Done" |
1070 | +msgstr "" |
1071 | + |
1072 | +#. module: l10n_es_aeat_mod303 |
1073 | +#: view:l10n.es.aeat.mod303.report:0 |
1074 | +msgid "Cancel" |
1075 | +msgstr "" |
1076 | + |
1077 | +#. module: l10n_es_aeat_mod303 |
1078 | +#: view:l10n.es.aeat.mod303.report:0 |
1079 | +msgid "Recalculate" |
1080 | +msgstr "" |
1081 | + |
1082 | +#. module: l10n_es_aeat_mod303 |
1083 | +#: view:l10n.es.aeat.mod303.report:0 |
1084 | +msgid "Importe" |
1085 | +msgstr "" |
1086 | + |
1087 | +#. module: l10n_es_aeat_mod303 |
1088 | +#: selection:l10n.es.aeat.mod303.report,period:0 |
1089 | +msgid "Fourth quarter" |
1090 | +msgstr "" |
1091 | + |
1092 | +#. module: l10n_es_aeat_mod303 |
1093 | +#: view:l10n.es.aeat.mod303.report:0 |
1094 | +msgid "Compensación" |
1095 | +msgstr "" |
1096 | + |
1097 | +#. module: l10n_es_aeat_mod303 |
1098 | +#: selection:l10n.es.aeat.mod303.report,period:0 |
1099 | +msgid "October" |
1100 | +msgstr "" |
1101 | + |
1102 | +#. module: l10n_es_aeat_mod303 |
1103 | +#: field:l10n.es.aeat.mod303.report,porcentaje_atribuible_estado:0 |
1104 | +msgid "%" |
1105 | +msgstr "" |
1106 | + |
1107 | +#. module: l10n_es_aeat_mod303 |
1108 | +#: selection:l10n.es.aeat.mod303.report,type:0 |
1109 | +msgid "Complementary" |
1110 | +msgstr "" |
1111 | + |
1112 | +#. module: l10n_es_aeat_mod303 |
1113 | +#: selection:l10n.es.aeat.mod303.report,period:0 |
1114 | +msgid "May" |
1115 | +msgstr "" |
1116 | + |
1117 | +#. module: l10n_es_aeat_mod303 |
1118 | +#: field:l10n.es.aeat.mod303.report,cuenta_ingreso_id:0 |
1119 | +msgid "CCC Ingreso" |
1120 | +msgstr "" |
1121 | + |
1122 | +#. module: l10n_es_aeat_mod303 |
1123 | +#: help:l10n.es.aeat.mod303.report,representative_vat:0 |
1124 | +msgid "Legal Representative VAT number." |
1125 | +msgstr "" |
1126 | + |
1127 | +#. module: l10n_es_aeat_mod303 |
1128 | +#: field:l10n.es.aeat.mod303.report,previous_number:0 |
1129 | +msgid "Previous Declaration Number" |
1130 | +msgstr "" |
1131 | + |
1132 | +#. module: l10n_es_aeat_mod303 |
1133 | +#: view:l10n.es.aeat.mod303.report:0 |
1134 | +msgid "Complementaria" |
1135 | +msgstr "" |
1136 | + |
1137 | +#. module: l10n_es_aeat_mod303 |
1138 | +#: view:l10n.es.aeat.mod303.report:0 |
1139 | +#: field:l10n.es.aeat.mod303.report,resultado_casilla_46:0 |
1140 | +msgid "Resultado" |
1141 | +msgstr "" |
1142 | + |
1143 | +#. module: l10n_es_aeat_mod303 |
1144 | +#: field:l10n.es.aeat.mod303.report,total_devengado:0 |
1145 | +msgid "IVA Devengado" |
1146 | +msgstr "" |
1147 | + |
1148 | +#. module: l10n_es_aeat_mod303 |
1149 | +#: selection:l10n.es.aeat.mod303.report,period:0 |
1150 | +msgid "April" |
1151 | +msgstr "" |
1152 | + |
1153 | +#. module: l10n_es_aeat_mod303 |
1154 | +#: view:l10n.es.aeat.mod303.report:0 |
1155 | +#: field:l10n.es.aeat.mod303.report,fiscalyear_id:0 |
1156 | +msgid "Fiscal Year" |
1157 | +msgstr "" |
1158 | + |
1159 | +#. module: l10n_es_aeat_mod303 |
1160 | +#: field:l10n.es.aeat.mod303.report,cuenta_devolucion_id:0 |
1161 | +msgid "CCC Devolución" |
1162 | +msgstr "" |
1163 | + |
1164 | +#. module: l10n_es_aeat_mod303 |
1165 | +#: selection:l10n.es.aeat.mod303.report,support_type:0 |
1166 | +msgid "Telematics" |
1167 | +msgstr "" |
1168 | + |
1169 | +#. module: l10n_es_aeat_mod303 |
1170 | +#: model:ir.model,name:l10n_es_aeat_mod303.model_l10n_es_aeat_mod303_export_to_boe |
1171 | +msgid "Export AEAT Model 303 to BOE format" |
1172 | +msgstr "" |
1173 | + |
1174 | +#. module: l10n_es_aeat_mod303 |
1175 | +#: code:addons/l10n_es_aeat_mod303/wizard/export_mod303_to_boe.py:203 |
1176 | +#, python-format |
1177 | +msgid "CCC de ingreso no válido %s" |
1178 | +msgstr "" |
1179 | + |
1180 | +#. module: l10n_es_aeat_mod303 |
1181 | +#: selection:l10n.es.aeat.mod303.report,period:0 |
1182 | +msgid "Second quarter" |
1183 | +msgstr "" |
1184 | + |
1185 | +#. module: l10n_es_aeat_mod303 |
1186 | +#: code:addons/l10n_es_aeat_mod303/wizard/export_mod303_to_boe.py:273 |
1187 | +#, python-format |
1188 | +msgid "%s_report_%s.txt" |
1189 | +msgstr "" |
1190 | + |
1191 | |
1192 | === added file 'l10n_es_aeat_mod303/mod303.py' |
1193 | --- l10n_es_aeat_mod303/mod303.py 1970-01-01 00:00:00 +0000 |
1194 | +++ l10n_es_aeat_mod303/mod303.py 2013-10-10 17:06:51 +0000 |
1195 | @@ -0,0 +1,245 @@ |
1196 | +# -*- encoding: utf-8 -*- |
1197 | +############################################################################## |
1198 | +# |
1199 | +# OpenERP, Open Source Management Solution |
1200 | +# Copyright (C) 2013 Guadaltech. All Rights Reserved |
1201 | +# Author: Alberto Martín Cortada |
1202 | +# |
1203 | +# This program is free software: you can redistribute it and/or modify |
1204 | +# it under the terms of the GNU General Public License as published by |
1205 | +# the Free Software Foundation, either version 3 of the License, or |
1206 | +# (at your option) any later version. |
1207 | +# |
1208 | +# This program is distributed in the hope that it will be useful, |
1209 | +# but WITHOUT ANY WARRANTY; without even the implied warranty of |
1210 | +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
1211 | +# GNU General Public License for more details. |
1212 | +# |
1213 | +# You should have received a copy of the GNU General Public License |
1214 | +# along with this program. If not, see http://www.gnu.org/licenses/. |
1215 | +# |
1216 | +############################################################################## |
1217 | + |
1218 | + |
1219 | +import re |
1220 | +import time |
1221 | +from datetime import datetime |
1222 | +from dateutil.relativedelta import relativedelta |
1223 | + |
1224 | + |
1225 | +from osv import osv, fields |
1226 | +from tools.translate import _ |
1227 | +from account.report.account_tax_report import tax_report |
1228 | + |
1229 | + |
1230 | +class l10n_es_aeat_mod303_report(osv.osv): |
1231 | + |
1232 | + _inherit = "l10n.es.aeat.report" |
1233 | + _name = "l10n.es.aeat.mod303.report" |
1234 | + _description = "AEAT 303 Report" |
1235 | + _rec_name = "number" |
1236 | + |
1237 | + def button_calculate(self, cr, uid, ids, context=None): |
1238 | + if not context: |
1239 | + context = {} |
1240 | + |
1241 | + self.action_confirm(cr, uid, ids, context) |
1242 | + |
1243 | + return True |
1244 | + |
1245 | + def button_recalculate(self, cr, uid, ids, context=None): |
1246 | + if context is None: |
1247 | + context = {} |
1248 | + |
1249 | + self.action_confirm(cr, uid, ids, context) |
1250 | + |
1251 | + return True |
1252 | + |
1253 | + def button_export(self, cr, uid, ids, context=None): |
1254 | + if context is None: |
1255 | + context = {} |
1256 | + |
1257 | + export_obj = self.pool.get("l10n.es.aeat.mod303.export_to_boe") |
1258 | + export_obj._export_boe_file(cr, uid, ids, self.browse(cr, uid, ids and ids[0]),'303') |
1259 | + |
1260 | + return True |
1261 | + |
1262 | + |
1263 | + _columns = { |
1264 | + |
1265 | + 'period': fields.selection([ |
1266 | + ('1T','First quarter'),('2T','Second quarter'),('3T','Third quarter'), |
1267 | + ('4T','Fourth quarter'),('01','January'),('02','February'),('03','March'),('04','April'), |
1268 | + ('05','May'),('06','June'),('07','July'),('08','August'),('09','September'),('10','October'), |
1269 | + ('11','November'),('12','December') |
1270 | + ], 'Periodo',states={'done':[('readonly',True)]}), |
1271 | + 'devolucion_mensual' : fields.boolean("Devolución Mensual",help="Inscrito en el Registro de Devolución Mensual",states={'done':[('readonly',True)]}), |
1272 | + 'complementaria' : fields.boolean("Autoliquidación Complementaria",help="Autoliquidación Complementaria",states={'done':[('readonly',True)]}), |
1273 | + 'contact_name': fields.char("Full Name", size=40), |
1274 | + 'total_devengado' : fields.float("IVA Devengado",readonly=True), ## 21 |
1275 | + 'total_deducir' : fields.float("IVA a Deducir",readonly=True), ## 37 |
1276 | + 'diferencia' : fields.float("Diferencia",readonly=True,help="( IVA devengado - IVA deducible )"), ## 38 |
1277 | + 'porcentaje_atribuible_estado' : fields.float("%", help="""Los sujetos pasivos que tributen conjuntamente a la Administración del Estado y a las Diputaciones Forales del País Vasco o a la ComunidadForal 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%""",states={'done':[('readonly',True)]}), ## 39 |
1278 | + 'atribuible_estado' : fields.float("Atribuible a la Administracion",readonly=True), ## 40 |
1279 | + 'cuota_compensar' : fields.float("Cuotas a Compensar",help="Cuota a compensar de periodos anteriores",states={'done':[('readonly',True)]}), ## 41 |
1280 | + 'regularizacion_anual' : fields.float("Regularización Anual",help="""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.""",states={'done':[('readonly',True)]}), ## 45 |
1281 | + 'resultado_casilla_46' : fields.float("Resultado",help="""Atribuible a la admistracion [40] - Cuotas a compensar [41] + Regularización Anual [45]""",readonly=True), ## 46 |
1282 | + |
1283 | + 'previus_result' : fields.float("A Deducir",help="Resultado de la anterior o anteriores del mismo concepto, ejercicio y periodo",states={'done':[('readonly',True)]}), ## 47 |
1284 | + 'resultado_liquidacion' : fields.float("Resultado Liquidación",readonly=True), ## 48 |
1285 | + |
1286 | + 'compensar' : fields.float("Compensar",states={'done':[('readonly',True)]}), ## 49 |
1287 | + |
1288 | + "devolver" : fields.float("Devolver",states={'done':[('readonly',True)]}), |
1289 | + "ingresar" : fields.float("Ingresar",states={'done':[('readonly',True)]}), |
1290 | + |
1291 | + 'cuenta_devolucion_id' : fields.many2one("res.partner.bank","CCC Devolución",states={'done':[('readonly',True)]}), |
1292 | + 'cuenta_ingreso_id' : fields.many2one("res.partner.bank","CCC Ingreso",states={'done':[('readonly',True)]}), |
1293 | + |
1294 | + 'sin_actividad' : fields.boolean("Sin Actividad",states={'done':[('readonly',True)]}), |
1295 | + |
1296 | + |
1297 | +# 'type': fields.selection([ |
1298 | +# ('C','Solicitud de compensación'), |
1299 | +# ('D','Devolución'), |
1300 | +# ('G','CC Tributaria-Ingreso'), |
1301 | +# ('I','Ingreso'), |
1302 | +# ('N','Sin Actividad'), |
1303 | +# ('V','CC Tributaria-Devolución'), |
1304 | +# ('U','Domicilación de CCC'),], 'Statement Type', |
1305 | +# required=True), |
1306 | + |
1307 | + } |
1308 | + _defaults = { |
1309 | + 'number' : lambda *a: '303', |
1310 | + 'porcentaje_atribuible_estado': lambda *a: 100, |
1311 | + 'cuota_compensar' : lambda *a: 0 |
1312 | + } |
1313 | + |
1314 | + |
1315 | + def _get_period(self,cr,uid,ids,context=None): |
1316 | + |
1317 | + period_obj = self.pool.get("account.period") |
1318 | + quarter_dict = {"1T" : 'first', |
1319 | + "2T" : 'second', |
1320 | + "3T" : 'third', |
1321 | + "4T" : 'fourth', |
1322 | + } |
1323 | + account_period_id = [] |
1324 | + |
1325 | + for mod303 in self.browse(cr, uid, ids, context): |
1326 | + |
1327 | + fecha_ini = False |
1328 | + fecha_fin = False |
1329 | + |
1330 | + dec_year = mod303.fiscalyear_id.date_start.split('-')[0] |
1331 | + |
1332 | + mod = mod303.period |
1333 | + |
1334 | + if mod >= '01' and mod <= '12': |
1335 | + fecha_ini = datetime.strptime('%s-%s-01' % (dec_year, mod), '%Y-%m-%d') |
1336 | + fecha_fin = fecha_ini + relativedelta(months=+1, days=-1) |
1337 | + account_period_id = period_obj.search(cr,uid,[('date_start','=',fecha_ini),('date_stop','=',fecha_fin)]) |
1338 | + |
1339 | + if mod in ('1T', '2T', '3T', '4T'): |
1340 | + month = ( ( int(mod[0])-1 ) * 3 ) + 1 |
1341 | + fecha_ini = datetime.strptime('%s-%s-01' % (dec_year, month), '%Y-%m-%d') |
1342 | + fecha_fin = fecha_ini + relativedelta(months=+3, days=-1) |
1343 | + |
1344 | + account_period_id = period_obj.search(cr,uid,[('date_start','=',fecha_ini),('date_stop','=',fecha_fin)]) |
1345 | + if not account_period_id: |
1346 | + account_period_id = period_obj.search(cr,uid,[('quarter','=',quarter_dict[mod])]) |
1347 | + if not account_period_id: |
1348 | + raise osv.except_osv(_('El periodo seleccionado no coincide con los periodos del año fiscal:'), dec_year) |
1349 | + |
1350 | + return account_period_id |
1351 | + |
1352 | + |
1353 | + def _get_report_lines(self, cr, uid, ids, context=None): |
1354 | + """get report lines""" |
1355 | + |
1356 | + |
1357 | + dict_code_values = {} |
1358 | + for i in range(1,51): |
1359 | + dict_code_values["[%.2d]" % i] = 0 |
1360 | + |
1361 | + for mod303 in self.browse(cr, uid, ids, context): |
1362 | + |
1363 | + generate_line = tax_report(cr,uid,"account.vat.declaration") |
1364 | + generate_line.period_ids = self._get_period(cr,uid,[mod303.id],context) |
1365 | + generate_line.display_detail = False |
1366 | + lines = generate_line._get_lines( 'invoices', mod303.company_id.id) |
1367 | + |
1368 | + ordered_lines = sorted(lines, key=lambda k: k['code']) |
1369 | + |
1370 | + |
1371 | + for code in dict_code_values.keys(): |
1372 | + for line in ordered_lines: |
1373 | + if code == line["code"]: |
1374 | + dict_code_values[code] += line["tax_amount"] |
1375 | + |
1376 | + return dict_code_values |
1377 | + |
1378 | + |
1379 | + |
1380 | + |
1381 | + def action_confirm(self, cr, uid, ids, context=None): |
1382 | + """set to done the report and check its records""" |
1383 | + if context is None: context = {} |
1384 | + for mod303 in self.browse(cr, uid, ids, context): |
1385 | + report_lines = self._get_report_lines(cr, uid, ids, context) |
1386 | + regularizacion_anual = mod303.regularizacion_anual if ( mod303.period == "4T" or mod303.period == "12" ) else 0 |
1387 | + total_devengado = report_lines.get("[21]") |
1388 | + total_deducir = report_lines.get("[37]") |
1389 | + atribuible_estado = (total_devengado - total_deducir) * mod303.porcentaje_atribuible_estado / 100 ## casilla 40 |
1390 | + casilla_46 = atribuible_estado - mod303.cuota_compensar + regularizacion_anual |
1391 | + previus_result = mod303.previus_result if mod303.complementaria else 0 |
1392 | + resultado_liquidacion = casilla_46 - previus_result |
1393 | + vals = { |
1394 | + 'state': 'calculated', |
1395 | + 'calculation_date':time.strftime('%Y-%m-%d'), |
1396 | + 'total_devengado':total_devengado, |
1397 | + 'total_deducir':total_deducir, |
1398 | + 'diferencia': total_devengado - total_deducir, |
1399 | + 'atribuible_estado' : atribuible_estado, |
1400 | + 'resultado_casilla_46' : casilla_46, |
1401 | + 'resultado_liquidacion' : resultado_liquidacion, |
1402 | + 'compensar' : abs(resultado_liquidacion) if resultado_liquidacion < 0 and mod303.devolver == 0 else 0, |
1403 | + 'ingresar' : resultado_liquidacion if resultado_liquidacion > 0 else 0 |
1404 | + } |
1405 | + |
1406 | + if mod303.regularizacion_anual > 0 and not ( mod303.period == "4T" and mod303.period == "12" ): |
1407 | + self.log(cr,uid,mod303.id,_("El valor añadido para la regularizacion anual no se ha tendio en cuenta por no ser un periodo de cierre (12 o 4T)"),context) |
1408 | + |
1409 | + self.write(cr, uid, mod303.id, vals) |
1410 | + |
1411 | + return True |
1412 | + |
1413 | + def confirm(self, cr, uid, ids, context=None): |
1414 | + """set to done the report and check its records""" |
1415 | + |
1416 | + msg_validation = "" |
1417 | + for mod303 in self.browse(cr,uid,ids,context): |
1418 | + |
1419 | + if mod303.ingresar > 0 and not mod303.cuenta_ingreso_id: |
1420 | + msg_validation = _('Seleccione una cuenta para ingresar el importe') |
1421 | + if mod303.devolver > 0 and not mod303.cuenta_devolucion_id: |
1422 | + msg_validation = _('Seleccione una cuenta para realizar la devolución') |
1423 | + if mod303.resultado_liquidacion == 0 and not mod303.sin_actividad: |
1424 | + msg_validation = _("No hay actividad en el periodo seleccionado, marque la casilla correspondinte") |
1425 | + |
1426 | + |
1427 | + if msg_validation: |
1428 | + raise osv.except_osv("",msg_validation) |
1429 | + |
1430 | + self.write(cr, uid, ids, {'state': 'done'}) |
1431 | + |
1432 | + return True |
1433 | + |
1434 | + def cancel(self, cr, uid, ids, context=None): |
1435 | + """set to done the report and check its records""" |
1436 | + self.write(cr, uid, ids, {'state': 'canceled'}) |
1437 | + |
1438 | + return True |
1439 | + |
1440 | +l10n_es_aeat_mod303_report() |
1441 | |
1442 | === added file 'l10n_es_aeat_mod303/mod303_view.xml' |
1443 | --- l10n_es_aeat_mod303/mod303_view.xml 1970-01-01 00:00:00 +0000 |
1444 | +++ l10n_es_aeat_mod303/mod303_view.xml 2013-10-10 17:06:51 +0000 |
1445 | @@ -0,0 +1,164 @@ |
1446 | +<?xml version="1.0" encoding="utf-8"?> |
1447 | +<openerp> |
1448 | + <data> |
1449 | + |
1450 | + |
1451 | + ###################### |
1452 | + ### AEAT MODEL 303 ### |
1453 | + ###################### |
1454 | + |
1455 | + <!-- Tree view --> |
1456 | + <record id="view_l10n_es_aeat_mod303_report_tree" model="ir.ui.view"> |
1457 | + <field name="name">AEAT Model 303 (tree)</field> |
1458 | + <field name="model">l10n.es.aeat.mod303.report</field> |
1459 | + <field name="type">tree</field> |
1460 | + <field name="arch" type="xml"> |
1461 | + <tree string="AEAT 303 Reports"> |
1462 | + <field name="number"/> |
1463 | + <field name="company_id"/> |
1464 | + <field name="fiscalyear_id"/> |
1465 | + <field name="period" /> |
1466 | + <field name="state" /> |
1467 | + <!-- <field name="type"/> --> |
1468 | + <!-- <field name="previous_number"/> --> |
1469 | + <!-- <field name="support_type"/> --> |
1470 | + </tree> |
1471 | + </field> |
1472 | + </record> |
1473 | + |
1474 | + <!-- Form view --> |
1475 | + <record id="view_l10n_es_aeat_mod303_report_form" model="ir.ui.view"> |
1476 | + <field name="name">AEAT Model 303 (form)</field> |
1477 | + <field name="model">l10n.es.aeat.mod303.report</field> |
1478 | + <field name="type">form</field> |
1479 | + <field name="arch" type="xml"> |
1480 | + <form string="AEAT 303 Report" > |
1481 | + |
1482 | + <group string="Declaracion" colspan="4" > |
1483 | + <field name="company_id" on_change="on_change_company_id(company_id)" required="1" select="1"/> |
1484 | + <field name="company_vat" required="1"/> |
1485 | + <field name="fiscalyear_id" select="1"/> |
1486 | + <field name="period" required="True"/> |
1487 | + <!-- <field name="type" selection="1"/> --> |
1488 | + <group colspan="6" col="6"> |
1489 | + <field name="devolucion_mensual" /> |
1490 | + <field name="complementaria" /> |
1491 | + <field name="sin_actividad" /> |
1492 | + </group> |
1493 | + </group> |
1494 | + <notebook> |
1495 | + <page string ="General"> |
1496 | + <group string="Complementaria" attrs="{'invisible':[('complementaria','=',False)]}" colspan="4"> |
1497 | + <field name="previus_result" attrs="{'required':[('complementaria','=',True)]}" /> |
1498 | + <field name="previous_number" attrs="{'required':[('complementaria','=',True)]}"/> |
1499 | + </group> |
1500 | + <group string="Resultado" colspan="4" col="4"> |
1501 | + <group colspan="6" col="6"> |
1502 | + <field name="total_devengado"/> |
1503 | + <field name="total_deducir" /> |
1504 | + <field name="diferencia" /> |
1505 | + <group colspan="2" ></group> |
1506 | + <field name="porcentaje_atribuible_estado" /> |
1507 | + <field name="atribuible_estado"/> |
1508 | + <field name="cuota_compensar" /> |
1509 | + <field name="regularizacion_anual" /> |
1510 | + <field name="resultado_casilla_46" /> |
1511 | + <group colspan="4" ></group> |
1512 | + <field name="resultado_liquidacion" /> |
1513 | + </group> |
1514 | + </group> |
1515 | + <group attrs="{'invisible':[('resultado_liquidacion','=',0)]}"> |
1516 | + <group colspan="6" col="6" attrs="{'invisible':['|',('resultado_liquidacion','>',0),('state','=','draft')]}" > |
1517 | + <group colspan="2" string="Compensación"> |
1518 | + <field name="compensar" string="Importe"></field> |
1519 | + </group> |
1520 | + <group string="Devolución" > |
1521 | + |
1522 | + <field name="devolver" colspan="2" string="Importe"/> |
1523 | + <field name="cuenta_devolucion_id" colspan="2" |
1524 | + attrs="{'required':[('devolver','>',0)]}"/> |
1525 | + </group> |
1526 | + </group> |
1527 | + <group string="Ingreso" attrs="{'invisible':['|',('resultado_liquidacion','<',0),('state','=','draft')]}"> |
1528 | + <field name="ingresar" colspan="2" string="Importe"/> |
1529 | + <field name="cuenta_ingreso_id" colspan="2" |
1530 | + attrs="{'required':[('ingresar','>',0)]}"/> |
1531 | + </group> |
1532 | + </group> |
1533 | + <group colspan="4" > |
1534 | + <group> |
1535 | + <field name="state" select="2" readonly="1" /> |
1536 | + <field name="calculation_date" readonly="1"/> |
1537 | + </group> |
1538 | + <group colspan="4" col="10"> |
1539 | + <button name="button_calculate" |
1540 | + type="object" |
1541 | + string="Calculate" |
1542 | + states="draft" |
1543 | + icon="terp-stock_format-scientific" |
1544 | + /> |
1545 | + <button name="button_recalculate" |
1546 | + type="object" |
1547 | + string="Recalculate" |
1548 | + states="calculating,calculated" |
1549 | + icon="gtk-execute"/> |
1550 | + <button name="button_export" |
1551 | + type="object" |
1552 | + string="Export to BOE" |
1553 | + states="done" |
1554 | + icon="gtk-execute"/> |
1555 | + <button name="confirm" string="Confirm" type="object" states="calculated" icon="gtk-ok"/> |
1556 | + <button name="cancel" string="Cancel" type="object" states="calculated,done" icon="gtk-cancel"/> |
1557 | + <button name="action_recover" string="Draft" type="object" states="canceled" icon="gtk-undo"/> |
1558 | + </group> |
1559 | + </group> |
1560 | + </page> |
1561 | + </notebook> |
1562 | + </form> |
1563 | + </field> |
1564 | + </record> |
1565 | + |
1566 | + <record id="view_l10n_es_aeat_mod303_report_search" model="ir.ui.view"> |
1567 | + <field name="name">AEAT Model 303 (search)</field> |
1568 | + <field name="model">l10n.es.aeat.mod303.report</field> |
1569 | + <field name="type">search</field> |
1570 | + <field name="arch" type="xml"> |
1571 | + <search string="AEAT 303"> |
1572 | + <group col="8" colspan="4"> |
1573 | + <filter icon="terp-gtk-media-pause" string="Draft" domain="[('state','=','draft')]" help="Draft models"/> |
1574 | + <filter icon="gtk-execute" string="In process" domain="[('state','in',('calculating', 'calculated'))]" help="In process models"/> |
1575 | + <filter icon="terp-camera_test" string="Done" domain="[('state','=','done')]" help="Confirmed models"/> |
1576 | + <filter icon="gtk-cancel" string="Cancelled" domain="[('state', '=', 'canceled')]" help="Cancelled models"/> |
1577 | + <separator orientation="vertical"/> |
1578 | + <filter string="Fiscal Year" icon="terp-folder-orange" domain="[]" context="{'group_by':'fiscalyear_id'}"/> |
1579 | + <separator orientation="vertical"/> |
1580 | + <filter string="Company" icon="terp-personal" domain="[]" context="{'group_by':'company_id'}"/> |
1581 | + </group> |
1582 | + <newline/> |
1583 | + </search> |
1584 | + </field> |
1585 | + </record> |
1586 | + |
1587 | + <!-- Window action --> |
1588 | + <record id="action_l10n_es_aeat_mod303_report" model="ir.actions.act_window"> |
1589 | + <field name="name">AEAT Model 303</field> |
1590 | + <field name="res_model">l10n.es.aeat.mod303.report</field> |
1591 | + <field name="view_type">form</field> |
1592 | + <field name="view_mode">tree,form</field> |
1593 | + <field name="help">Create and query AEAT Model 303 Reports</field> |
1594 | + </record> |
1595 | + |
1596 | + |
1597 | + |
1598 | + |
1599 | + <!-- ### MENU ACCESS ### --> |
1600 | + |
1601 | + <menuitem |
1602 | + id="menu_aeat_mod303_report" |
1603 | + parent="l10n_es_aeat.menu_root_aeat" |
1604 | + action="action_l10n_es_aeat_mod303_report" |
1605 | + sequence="50" |
1606 | + name="AEAT 303 Model"/> |
1607 | + |
1608 | + </data> |
1609 | +</openerp> |
1610 | |
1611 | === added file 'l10n_es_aeat_mod303/mod303_workflow.xml' |
1612 | --- l10n_es_aeat_mod303/mod303_workflow.xml 1970-01-01 00:00:00 +0000 |
1613 | +++ l10n_es_aeat_mod303/mod303_workflow.xml 2013-10-10 17:06:51 +0000 |
1614 | @@ -0,0 +1,72 @@ |
1615 | +<?xml version="1.0" encoding="utf-8"?> |
1616 | +<openerp> |
1617 | + <data> |
1618 | + |
1619 | + <record id="wkf_l10n_es_aeat_mod303_report" model="workflow"> |
1620 | + <field name="name">AEAT 303 Report</field> |
1621 | + <field name="osv">l10n.es.aeat.mod303.report</field> |
1622 | + <field name="on_create">True</field> |
1623 | + </record> |
1624 | + |
1625 | + |
1626 | + <!-- |
1627 | + ### NODES ### |
1628 | + --> |
1629 | + <record id="act_draft" model="workflow.activity"> |
1630 | + <field name="wkf_id" ref="wkf_l10n_es_aeat_mod303_report"/> |
1631 | + <field name="flow_start">True</field> |
1632 | + <field name="name">draft</field> |
1633 | + </record> |
1634 | + |
1635 | + <record id="act_calculate" model="workflow.activity"> |
1636 | + <field name="wkf_id" ref="wkf_l10n_es_aeat_mod303_report"/> |
1637 | + <field name="name">calculated</field> |
1638 | + <field name="action">write({'state':'calculated'})</field> |
1639 | + <field name="kind">function</field> |
1640 | + </record> |
1641 | + |
1642 | + <record id="act_confirm" model="workflow.activity"> |
1643 | + <field name="wkf_id" ref="wkf_l10n_es_aeat_mod303_report"/> |
1644 | + <field name="name">confirmed</field> |
1645 | + <field name="action">action_confirm()</field> |
1646 | + <field name="kind">function</field> |
1647 | + </record> |
1648 | + |
1649 | + <record id="act_cancel" model="workflow.activity"> |
1650 | + <field name="wkf_id" ref="wkf_l10n_es_aeat_mod303_report"/> |
1651 | + <field name="name">canceled</field> |
1652 | + <field name="flow_stop">True</field> |
1653 | + <field name="action">write({'state':'canceled'})</field> |
1654 | + <field name="kind">function</field> |
1655 | + </record> |
1656 | + |
1657 | + |
1658 | + <!-- |
1659 | + ### TRANSITIONS ### |
1660 | + --> |
1661 | + <record id="trans_draft_calculate" model="workflow.transition"> |
1662 | + <field name="act_from" ref="act_draft"/> |
1663 | + <field name="act_to" ref="act_calculate"/> |
1664 | + <field name="signal">calculate</field> |
1665 | + </record> |
1666 | + |
1667 | + <record id="trans_calculate_confirm" model="workflow.transition"> |
1668 | + <field name="act_from" ref="act_calculate"/> |
1669 | + <field name="act_to" ref="act_confirm"/> |
1670 | + <field name="signal">confirm</field> |
1671 | + </record> |
1672 | + |
1673 | + <record id="trans_calculate_draft" model="workflow.transition"> |
1674 | + <field name="act_from" ref="act_calculate"/> |
1675 | + <field name="act_to" ref="act_cancel"/> |
1676 | + <field name="signal">cancel</field> |
1677 | + </record> |
1678 | + |
1679 | + <record id="trans_confirm_cancel" model="workflow.transition"> |
1680 | + <field name="act_from" ref="act_confirm"/> |
1681 | + <field name="act_to" ref="act_cancel"/> |
1682 | + <field name="signal">cancel</field> |
1683 | + </record> |
1684 | + |
1685 | + </data> |
1686 | +</openerp> |
1687 | |
1688 | === added directory 'l10n_es_aeat_mod303/security' |
1689 | === added file 'l10n_es_aeat_mod303/security/ir.model.access.csv' |
1690 | --- l10n_es_aeat_mod303/security/ir.model.access.csv 1970-01-01 00:00:00 +0000 |
1691 | +++ l10n_es_aeat_mod303/security/ir.model.access.csv 2013-10-10 17:06:51 +0000 |
1692 | @@ -0,0 +1,6 @@ |
1693 | +"id","name","model_id:id","group_id:id","perm_read","perm_write","perm_create","perm_unlink" |
1694 | +"access_l10n_es_aeat_mod303","l10n_es_aeat_mod303","model_l10n_es_aeat_mod303_report","account.group_account_user",1,0,0,0 |
1695 | +"access_l10n_es_aeat_mod303_manager","l10n_es_aeat_mod303 manager","model_l10n_es_aeat_mod303_report","account.group_account_manager",1,1,1,1 |
1696 | + |
1697 | + |
1698 | + |
1699 | |
1700 | === added directory 'l10n_es_aeat_mod303/wizard' |
1701 | === added file 'l10n_es_aeat_mod303/wizard/__init__.py' |
1702 | --- l10n_es_aeat_mod303/wizard/__init__.py 1970-01-01 00:00:00 +0000 |
1703 | +++ l10n_es_aeat_mod303/wizard/__init__.py 2013-10-10 17:06:51 +0000 |
1704 | @@ -0,0 +1,26 @@ |
1705 | +# -*- encoding: utf-8 -*- |
1706 | +############################################################################## |
1707 | +# |
1708 | +# OpenERP, Open Source Management Solution |
1709 | +# Copyright (C) 2012 Guadaltech. All Rights Reserved |
1710 | +# Author: Isaac De la Barrera |
1711 | +# |
1712 | +# This program is free software: you can redistribute it and/or modify |
1713 | +# it under the terms of the GNU General Public License as published by |
1714 | +# the Free Software Foundation, either version 3 of the License, or |
1715 | +# (at your option) any later version. |
1716 | +# |
1717 | +# This program is distributed in the hope that it will be useful, |
1718 | +# but WITHOUT ANY WARRANTY; without even the implied warranty of |
1719 | +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
1720 | +# GNU General Public License for more details. |
1721 | +# |
1722 | +# You should have received a copy of the GNU General Public License |
1723 | +# along with this program. If not, see http://www.gnu.org/licenses/. |
1724 | +# |
1725 | +############################################################################## |
1726 | + |
1727 | + |
1728 | +import export_mod303_to_boe |
1729 | + |
1730 | +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: |
1731 | \ No newline at end of file |
1732 | |
1733 | === added file 'l10n_es_aeat_mod303/wizard/export_mod303_to_boe.py' |
1734 | --- l10n_es_aeat_mod303/wizard/export_mod303_to_boe.py 1970-01-01 00:00:00 +0000 |
1735 | +++ l10n_es_aeat_mod303/wizard/export_mod303_to_boe.py 2013-10-10 17:06:51 +0000 |
1736 | @@ -0,0 +1,282 @@ |
1737 | +# -*- encoding: utf-8 -*- |
1738 | +############################################################################## |
1739 | +# |
1740 | +# OpenERP, Open Source Management Solution |
1741 | +# Copyright (C) 2013 Guadaltech. All Rights Reserved |
1742 | +# Author: Alberto Martín Cortada |
1743 | +# |
1744 | +# This program is free software: you can redistribute it and/or modify |
1745 | +# it under the terms of the GNU General Public License as published by |
1746 | +# the Free Software Foundation, either version 3 of the License, or |
1747 | +# (at your option) any later version. |
1748 | +# |
1749 | +# This program is distributed in the hope that it will be useful, |
1750 | +# but WITHOUT ANY WARRANTY; without even the implied warranty of |
1751 | +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
1752 | +# GNU General Public License for more details. |
1753 | +# |
1754 | +# You should have received a copy of the GNU General Public License |
1755 | +# along with this program. If not, see http://www.gnu.org/licenses/. |
1756 | +# |
1757 | +############################################################################## |
1758 | + |
1759 | + |
1760 | +__author__ = "Alberto Martín Cortada" |
1761 | + |
1762 | +import base64 |
1763 | +import time |
1764 | +from datetime import datetime |
1765 | + |
1766 | + |
1767 | +from tools.translate import _ |
1768 | +from osv import osv |
1769 | +from account.report.account_tax_report import tax_report |
1770 | + |
1771 | + |
1772 | +class l10n_es_aeat_mod303_export_to_boe(osv.osv_memory): |
1773 | + |
1774 | + _inherit = "l10n.es.aeat.report.export_to_boe" |
1775 | + _name = "l10n.es.aeat.mod303.export_to_boe" |
1776 | + _description = "Export AEAT Model 303 to BOE format" |
1777 | + |
1778 | + |
1779 | + def _get_formated_declaration(self,report): |
1780 | + |
1781 | + file_contents = '' |
1782 | + |
1783 | + ## cabecera |
1784 | + |
1785 | + file_contents += "<T30301>" ## pos 1 |
1786 | + |
1787 | + file_contents += ' ' ## pos 9 |
1788 | + |
1789 | + ## pos 10 |
1790 | + ## tipo de declaración - "Para impresión, cualquier caracter Alfanumerico o 'N' si la autoliquidación se declara SIN ACTIVIDAD" |
1791 | + |
1792 | + file_contents += self._formatString("N" if report.sin_actividad else " ",1) ## pos 10 |
1793 | + |
1794 | + ## identificación (1) |
1795 | + |
1796 | + file_contents += self._formatString(report.company_vat, 9) ## pos 19 # NIF del declarante |
1797 | + |
1798 | + file_contents += self._formatString(report.company_id.name, 30) ## pos 49 # Apellidos o Razon Social. |
1799 | + file_contents += self._formatString("", 15) ## pos 64 # Nombre |
1800 | + |
1801 | + file_contents += self._formatBoolean(report.devolucion_mensual, yes='1', no='2') # pos 65 |
1802 | + |
1803 | + |
1804 | + ## devengo (2) |
1805 | + |
1806 | + file_contents += self._formatNumber(report.fiscalyear_id.code, 4) ## 69 |
1807 | + file_contents += self._formatString(report.period,2) ## 71 |
1808 | + |
1809 | + |
1810 | + assert len(file_contents) == 71, _("The identification (1) and income (2) must be 72 characters long") |
1811 | + return file_contents |
1812 | + |
1813 | + def _get_formated_vat(self,cr,uid,ids,report): |
1814 | + |
1815 | + |
1816 | + model_report_obj = self.pool.get("l10n.es.aeat.mod303.report") |
1817 | + file_contents = '' |
1818 | + |
1819 | + ## lines obtenido de account_tax_report |
1820 | + |
1821 | + lines = model_report_obj._get_report_lines(cr,uid,ids) |
1822 | + |
1823 | + ## IVA devengado |
1824 | + |
1825 | + # -- Regimen General y Recargo de Equivalencia - codes [1~18] |
1826 | + |
1827 | + for codes in [('[01]','[03]'),('[04]','[06]'),('[07]','[09]'), ## regimen general |
1828 | + ('[10]','[12]'),('[13]','[15]'),('[16]','[18]')]: ## recargo equivalencia |
1829 | + |
1830 | + base_imponible = lines.get(codes[0],0) |
1831 | + cuota = lines.get(codes[1],0) |
1832 | + |
1833 | + file_contents += self._formatNumber(base_imponible, 15,2) # base imponible X % -- codes [1,4,7,10,13,16] |
1834 | + file_contents += self._formatNumber(cuota / base_imponible * 100 if base_imponible else 0, 3,2) # tipo % codes - [2,5,8,11,14,17] |
1835 | + file_contents += self._formatNumber(cuota, 15,2) # cuota X % -- codes [3,6,9,12,15,18] |
1836 | + |
1837 | + |
1838 | + # -- Adquisiciones Intracomunitarias - codes [19,20] |
1839 | + |
1840 | + file_contents += self._formatNumber(lines.get("[19]"), 15,2) ## base imponible |
1841 | + file_contents += self._formatNumber(lines.get("[20]"), 15,2) ## cuota |
1842 | + |
1843 | + # -- Total Cuota Devengada - code [21] |
1844 | + |
1845 | + file_contents += self._formatNumber(report.total_devengado, 15,2) ## cuota |
1846 | + |
1847 | + ## IVA deducible |
1848 | + |
1849 | + # -- Por Cuotas soportadas ... - codes [22~25] |
1850 | + # -- Por Cuotas satisfechas en ... - codes [26~29] |
1851 | + # -- En adquisiciones intracomunitarias de bienes ... - codes [30~33] |
1852 | + |
1853 | + for i in range(22,34): |
1854 | + file_contents += self._formatNumber(lines.get("[%s]" % i), 15,2) |
1855 | + |
1856 | + # -- |
1857 | + |
1858 | + file_contents += self._formatNumber(lines.get("[34]"), 15,2) # Compesaciones Regimen Especial AG y P |
1859 | + file_contents += self._formatNumber(lines.get("[35]"), 15,2) # Regularización Inversiones |
1860 | + file_contents += self._formatNumber(lines.get("[36]"), 15,2) # Regularización Inversiones por aplicación del porcentage def de prorrata |
1861 | + |
1862 | + # -- Total a deducir |
1863 | + |
1864 | + file_contents += self._formatNumber(report.total_deducir, 15,2) |
1865 | + |
1866 | + ## Diferencia [21] - [37] |
1867 | + file_contents += self._formatNumber(report.diferencia, 15,2) |
1868 | + |
1869 | + ## Atribuible a la administracion ... |
1870 | + |
1871 | + file_contents += self._formatNumber(report.porcentaje_atribuible_estado, 3,2) ## TODO Navarra y País Vasco |
1872 | + file_contents += self._formatNumber(report.atribuible_estado, 15,2) |
1873 | + |
1874 | + |
1875 | + file_contents += self._formatNumber(report.cuota_compensar, 15,2) ## [41] |
1876 | + |
1877 | + |
1878 | + ## Entregas intracomunitarias [42], Exportaciones y operaciones asimiladas ... [43], Derecho a deucción [44] |
1879 | + |
1880 | + file_contents += self._formatNumber(lines.get("[42]"), 15,2) |
1881 | + file_contents += self._formatNumber(lines.get("[43]"), 15,2) |
1882 | + file_contents += self._formatNumber(lines.get("[44]"), 15,2) |
1883 | + |
1884 | + ## Estado y Comunidades Forales |
1885 | + |
1886 | + file_contents += self._formatNumber(report.regularizacion_anual, 15,2) |
1887 | + |
1888 | + file_contents += self._formatNumber(report.resultado_casilla_46, 15,2) ## [40] - [41] |
1889 | + |
1890 | + ## A deducir - autoliquidación complementaria .... pedir campo |
1891 | + |
1892 | + file_contents += self._formatNumber(report.previus_result if report.complementaria else 0, 15,2) |
1893 | + file_contents += self._formatNumber(report.resultado_liquidacion, 15,2) ## [48] |
1894 | + |
1895 | + ## A compensar |
1896 | + file_contents += self._formatNumber(report.compensar, 15,2) ## [49] |
1897 | + |
1898 | + ## Marca SIN ACTIVIDAD |
1899 | + |
1900 | + file_contents += self._formatBoolean( report.sin_actividad , yes='1', no='2') # |
1901 | + |
1902 | + assert len(file_contents) == 822 - 72, _("The vat records must be 749 characters long and are %s") % len(file_contents) |
1903 | + return file_contents |
1904 | + |
1905 | + def _get_formated_last_info(self, report): |
1906 | + |
1907 | + file_contents = '' |
1908 | + |
1909 | + ## devolucion (6) |
1910 | + |
1911 | + file_contents += self._formatNumber(report.devolver,15,2) ## devolucion [50] |
1912 | + |
1913 | + ccc = "" |
1914 | + if report.cuenta_devolucion_id and report.devolver: |
1915 | + ccc = report.cuenta_devolucion_id.acc_number.replace("-","").replace(" ","") |
1916 | + if not (len(ccc) == 20 and ccc.isdigit()): |
1917 | + raise osv.except_osv(_('Warning'), _("CCC de devolución no válida \n%s") % ccc) |
1918 | + |
1919 | + file_contents += self._formatString(ccc,20) ## no hay devolución |
1920 | + |
1921 | + """ |
1922 | + ## ingreso (7) |
1923 | + |
1924 | + 859 1 Num Ingreso (7) - Forma de pago |
1925 | + 860 17 N Ingreso (7) - Importe [I] |
1926 | + 877 4 An Ingreso (7) - Código cuenta cliente - Entidad |
1927 | + 881 4 An Ingreso (7) - Código cuenta cliente - Oficina |
1928 | + 885 2 An Ingreso (7) - Código cuenta cliente - DC |
1929 | + 887 10 An Ingreso (7) - Código cuenta cliente - Número de cuenta |
1930 | + """ |
1931 | + |
1932 | + file_contents += self._formatString("0",1) ## NO SE USA ??? Forma de Pago - "0" No consta, "1" Efectivo,"2" Adeudo en cuenta, "3" Domiciliación |
1933 | + file_contents += self._formatNumber(report.ingresar,15,2) ## devolucion [50] |
1934 | + |
1935 | + ccc = "" |
1936 | + if report.cuenta_ingreso_id and report.ingresar: |
1937 | + ccc = report.cuenta_ingreso_id.acc_number.replace("-","").replace(" ","") |
1938 | + if not (len(ccc) == 20 and ccc.isdigit()): |
1939 | + raise osv.except_osv(_('Warning'), _("CCC de ingreso no válido %s") % ccc) |
1940 | + |
1941 | + file_contents += self._formatString(ccc,20) ## no hay devolución |
1942 | + |
1943 | + |
1944 | + """ |
1945 | + 897 1 Num Complementaria (8) Indicador Autoliquidación complementaria |
1946 | + 898 13 An Complementaria (8) - no justificante declaración anterior |
1947 | + """ |
1948 | + |
1949 | + file_contents += self._formatBoolean(report.complementaria, yes='1', no='0') # |
1950 | + file_contents += self._formatString(report.previous_number if report.complementaria else "" ,13) |
1951 | + |
1952 | + |
1953 | + ## TODO -- hardcode por ahora ... |
1954 | + """ Autorización Conjunta """ |
1955 | + file_contents += self._formatBoolean(False, yes='1', no=' ') |
1956 | + file_contents += self._formatString(' ',1) ## 77 autodeclaracion del concurso .... -- ' ' , '1' o '2' |
1957 | + |
1958 | + |
1959 | + file_contents += ' '*398 ## campo reservado |
1960 | + |
1961 | + ## firma (9) |
1962 | + |
1963 | + file_contents += self._formatString(report.company_id.partner_id.city,16) ## Localidad |
1964 | + |
1965 | + |
1966 | + calculation_date = datetime.strptime(report.calculation_date,"%Y-%m-%d %H:%M:%S") |
1967 | + file_contents += self._formatString(calculation_date.strftime("%d"),2) ## fecha: Dia |
1968 | + file_contents += self._formatString(_(calculation_date.strftime("%B")),10) ## fecha: Mes |
1969 | + file_contents += self._formatString(calculation_date.strftime("%Y"),4) ## fecha: Anio |
1970 | + |
1971 | + file_contents += self._formatString("</T30301>",9) |
1972 | + file_contents += "\r\n".encode("ascii") |
1973 | + |
1974 | +# print file_contents |
1975 | + return file_contents |
1976 | + |
1977 | + |
1978 | + def _export_boe_file(self, cr, uid, ids, report, model=None, context=None): |
1979 | + """ |
1980 | + Action that exports the data into a BOE formated text file |
1981 | + """ |
1982 | + if context is None: |
1983 | + context = {} |
1984 | + |
1985 | + assert model , _("AEAT Model is necessary") |
1986 | + |
1987 | + file_contents = '' |
1988 | + |
1989 | + ## |
1990 | + ## IDENTIFICACION (1) y DEVENGO (2) |
1991 | + file_contents += self._get_formated_declaration(report) |
1992 | + |
1993 | + ## |
1994 | + ## LIQUIDACIÓN (3) y COMPENSACION(4) |
1995 | + |
1996 | + file_contents += self._get_formated_vat(cr,uid,ids,report) |
1997 | + |
1998 | + ## |
1999 | + ## DEVOLUCION (6), INGRESO (7), COMPLEMENTARIA (8) Y FIRMA (9) |
2000 | + file_contents += self._get_formated_last_info(report) |
2001 | + |
2002 | + assert len(file_contents) == 1353, _("The 303 report must be 1353 characters long and are %s") % len(file_contents) |
2003 | + |
2004 | + |
2005 | + ## |
2006 | + ## Generate the file and save as attachment |
2007 | + file = base64.encodestring(file_contents) |
2008 | + |
2009 | + file_name = _("%s_report_%s.txt") % (model, time.strftime(_("%Y-%m-%d"))) |
2010 | + self.pool.get("ir.attachment").create(cr, uid, { |
2011 | + "name" : file_name, |
2012 | + "datas" : file, |
2013 | + "datas_fname" : file_name, |
2014 | + "res_model" : "l10n.es.aeat.mod%s.report" % model, |
2015 | + "res_id" : ids and ids[0] |
2016 | + }, context=context) |
2017 | + |
2018 | +l10n_es_aeat_mod303_export_to_boe() |
Yo ya no tengo ningún cliente en 6.0, por lo que no puedo probarlo, pero al ser un nuevo módulo, creo que puedes hacer el merge si en unos días nadie lo puede examinar, y luego si surge algún problema que se reporte vía bug. Algo que tengo pendiente es mejorar el módulo para también genere el asiento de IVA deudor/acreedor según el resultado. Ya te avisaré para hacer luego el backport si quieres.
Un saludo.