Merge lp:~pedro.baeza/openerp-spain/7.0-l10n_es_aeat_mod349 into lp:~openerp-spain-team/openerp-spain/7.0

Proposed by Pedro Manuel Baeza
Status: Merged
Merged at revision: 461
Proposed branch: lp:~pedro.baeza/openerp-spain/7.0-l10n_es_aeat_mod349
Merge into: lp:~openerp-spain-team/openerp-spain/7.0
Diff against target: 5358 lines (+2157/-2357) (has conflicts)
17 files modified
l10n_es_aeat_mod349/__openerp__.py (+66/-60)
l10n_es_aeat_mod349/account_fiscal_position.py (+10/-12)
l10n_es_aeat_mod349/account_invoice.py (+118/-144)
l10n_es_aeat_mod349/account_invoice_view.xml (+4/-4)
l10n_es_aeat_mod349/data/assign_invoices_op_keys.xml (+5/-0)
l10n_es_aeat_mod349/i18n/es.po (+743/-687)
l10n_es_aeat_mod349/i18n/l10n_es_aeat_mod349.pot (+710/-662)
l10n_es_aeat_mod349/mod349.py (+268/-245)
l10n_es_aeat_mod349/mod349_view.xml (+62/-123)
l10n_es_aeat_mod349/mod349_workflow.xml (+0/-72)
l10n_es_aeat_mod349/report/mod349_report.xml (+2/-2)
l10n_es_aeat_mod349/security/ir.model.access.csv (+1/-6)
l10n_es_aeat_mod349/static/src/img/icon_source.svg (+99/-0)
l10n_es_aeat_mod349/wizard/__init__.py (+10/-9)
l10n_es_aeat_mod349/wizard/calculate_mod349_records.py (+0/-295)
l10n_es_aeat_mod349/wizard/export_mod349_to_boe.py (+41/-36)
l10n_es_aeat_mod349/wizard/export_mod349_to_boe.xml (+18/-0)
Text conflict in l10n_es_aeat_mod349/i18n/es.po
To merge this branch: bzr merge lp:~pedro.baeza/openerp-spain/7.0-l10n_es_aeat_mod349
Reviewer Review Type Date Requested Status
OpenERP Spain Team Pending
Review via email: mp+215725@code.launchpad.net

Description of the change

Diversas mejoras realizadas en el módulo de la AEAT 349:

- Icono del módulo.
- Eliminación del workflow.
- Convenciones de código.
- Herencia de la vista del l10n_es_aeat.
- Traspaso del cálculo de la declaración al propio modelo 349.
- Al instalar el módulo, asignar una clave a todas las facturas ya existentes.

To post a comment you must log in.
460. By Pedro Manuel Baeza

[IMP] l10n_es_aeat_mod_349: Traducciones.

461. By Pedro Manuel Baeza

[FIX] l10n_es_aeat_mod_349: Vista del wizard BOE

462. By Pedro Manuel Baeza

[IMP] l10n_es_aeat_mod349: Vistas de facturas mejoradas

463. By Pedro Manuel Baeza

[IMP] l10n_es_aeat_mod349: Icono

464. By Pedro Manuel Baeza

[IMP] l10n_es_aeat_mod349: Asignar una clave a las facturas ya existentes.

465. By Pedro Manuel Baeza

[FIX] l10n_es_aeat_mod349: Chequeo del código de país unificado y corregido.
[IMP] l10n_es_aeat_mod349: Resultados agrupados correctamente.

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

Paso a hacer el merge, ya que no ha habido respuesta en todo este tiempo, y el módulo no es funcional sin este merge.

Un saludo.

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
1=== modified file 'l10n_es_aeat_mod349/__openerp__.py'
2--- l10n_es_aeat_mod349/__openerp__.py 2014-04-14 14:36:42 +0000
3+++ l10n_es_aeat_mod349/__openerp__.py 2014-04-15 12:47:56 +0000
4@@ -1,11 +1,14 @@
5 # -*- coding: utf-8 -*-
6 ##############################################################################
7 #
8-# Copyright (C) 2004-2011
9-# Pexego Sistemas Informáticos. (http://pexego.es) All Rights Reserved
10+# Copyright (C)
11+# 2004-2011: Pexego Sistemas Informáticos. (http://pexego.es)
12+# 2013: Top Consultant Software Creations S.L.
13+# (http://www.topconsultant.es/)
14 #
15-# Migración OpenERP 7.0. Top Consultant Software Creations S.L. (http://www.topconsultant.es/) 2013
16-# Ignacio Martínez y Miguel López.
17+# Autores originales: Luis Manuel Angueira Blanco (Pexego)
18+# Omar Castiñeira Saavedra(omar@pexego.es)
19+# Migración OpenERP 7.0: Ignacio Martínez y Miguel López.
20 #
21 # This program is free software: you can redistribute it and/or modify
22 # it under the terms of the GNU Affero General Public License as
23@@ -23,46 +26,48 @@
24 ##############################################################################
25
26 {
27- "name": "AEAT Model 349",
28- "version": "1.0",
29+ "name": "AEAT modelo 349",
30+ "version": "2.0",
31 "author": "Pexego",
32 "license": "AGPL-3",
33- 'contributors': ['Miguel López(Top Consultant)',
34- 'Ignacio Martínez(Top Consultant)'],
35+ 'contributors': [
36+ 'Miguel López (Top Consultant)',
37+ 'Ignacio Martínez (Top Consultant)',
38+ 'Pedro M. Baeza <pedro.baeza@serviciosbaeza.com>',
39+ ],
40 "category": 'Localisation/Accounting',
41 "description": """
42-Módulo para la presentación del Modelo AEAT 349 (Declaración Recapitulativa
43-de Operaciones Intracomunitarias)
44-
45-Basado en la Orden EHA/769/2010 por el que se aprueban
46-los diseños físicos y lógicos del 349.
47-
48-De acuerdo con la normativa de la Hacienda Española, están
49-obligados a presentar el modelo 349:
50-
51- * Todos aquellos sujetos pasivos del Impuesto sobre el Valo
52- Añadido que hayan realizado las operaciones previstas en el artículo 79
53- del Reglamento del Impuesto sobre el Valor Añadido, es decir, quienes
54- adquieran o vendan bienes a empresas situadas en países miembros de la
55- UE, sino también aquellos que presten servicios a miembros de la UE y
56- cumplan con las siguientes condiciones:
57-
58- - Que conforme a las reglas de la localización aplicables a las
59- mismas, no se entiendan prestadas en
60- el territorio de aplicación del Impuesto.
61-
62- - Que estén sometidas efectivamente a gravamen de otro Estado miembro.
63-
64- - Que su destinatario sea un empresario o profesional actuando como
65- tal y radique en dicho Estado miembro la sede de su actividad
66- económica, o tenga en el mismo un establecimiento permanente o, en su
67- defecto, el lugar de su domicilio o residencia habitual, o que dicho
68- destinatario sea una persona jurídica que no actúe como empresario o
69- profesional pero tenga asignado un número de identificación a efectos
70- del Impuesto suministrado por ese Estado miembro.
71-
72- - Que el sujeto pasivo sea dicho destinatario.
73-
74+Módulo para la presentación del Modelo AEAT 349 (Declaración Recapitulativa de
75+Operaciones Intracomunitarias)
76+
77+Basado en la Orden EHA/769/2010 por el que se aprueban los diseños físicos y
78+lógicos del 349.
79+
80+De acuerdo con la normativa de la Hacienda Española, están obligados a
81+presentar el modelo 349:
82+
83+ * Todos aquellos sujetos pasivos del Impuesto sobre el Valor Añadido que hayan
84+ realizado las operaciones previstas en el artículo 79 del Reglamento del
85+ Impuesto sobre el Valor Añadido, es decir, quienes adquieran o vendan bienes
86+ a empresas situadas en países miembros de la UE, sino también aquellos que
87+ presten servicios a miembros de la UE y cumplan con las siguientes
88+ condiciones:
89+
90+ - Que conforme a las reglas de la localización aplicables a las
91+ mismas, no se entiendan prestadas en el territorio de aplicación del
92+ impuesto.
93+
94+ - Que estén sometidas efectivamente a gravamen de otro Estado miembro.
95+
96+ - Que su destinatario sea un empresario o profesional actuando como
97+ tal y radique en dicho Estado miembro la sede de su actividad
98+ económica, o tenga en el mismo un establecimiento permanente o, en su
99+ defecto, el lugar de su domicilio o residencia habitual, o que dicho
100+ destinatario sea una persona jurídica que no actúe como empresario o
101+ profesional pero tenga asignado un número de identificación a efectos
102+ del Impuesto suministrado por ese Estado miembro.
103+
104+ - Que el sujeto pasivo sea dicho destinatario.
105
106 El período de declaración comprenderá, con carácter general las
107 operaciones realizadas en cada mes natural, y se presentará durante los
108@@ -70,22 +75,22 @@
109 correspondiente período mensual. No obstante, la presentación podrá ser
110 bimestral, trimestral o anual en los siguientes supuestos:
111
112- * Bimestral: Si al final del segundo mes de un trimestre natural el
113- importe total de las entregas de bienes y prestaciones de servicios que
114- deban consignarse en la declaración recapitulativa supera 100.000 euros
115- (a partir de 2012, el umbral se fija en 50.000 euros).
116-
117- * Trimestral: Cuando ni durante el trimestre de referencia ni en cada uno
118- de los cuatro trimestres naturales anteriores el importe total de las
119- entregas de bienes y prestaciones de servicios que deban consignarse en la
120- declaración recapitulativa sea superior a 100.000 euros.
121-
122- * Anual: En los treinta primeros días de enero del año siguiente ( la
123- primera sería en enero de 2011) si el importe total de las entregas de
124- bienes o prestaciones de servicios del año ( excluido IVA), no supera los
125- 35.000 € y el importe total de las entregas de bienes a otro Estado
126- Miembro (salvo medios de transporte nuevos) exentas de IVA no sea superior
127- a 15.000 €.
128+ * Bimestral: Si al final del segundo mes de un trimestre natural el
129+ importe total de las entregas de bienes y prestaciones de servicios que
130+ deban consignarse en la declaración recapitulativa supera 100.000 euros
131+ (a partir de 2012, el umbral se fija en 50.000 euros).
132+
133+ * Trimestral: Cuando ni durante el trimestre de referencia ni en cada uno
134+ de los cuatro trimestres naturales anteriores el importe total de las
135+ entregas de bienes y prestaciones de servicios que deban consignarse en la
136+ declaración recapitulativa sea superior a 100.000 euros.
137+
138+ * Anual: En los treinta primeros días de enero del año siguiente ( la
139+ primera sería en enero de 2011) si el importe total de las entregas de
140+ bienes o prestaciones de servicios del año ( excluido IVA), no supera los
141+ 35.000 € y el importe total de las entregas de bienes a otro Estado
142+ Miembro (salvo medios de transporte nuevos) exentas de IVA no sea superior
143+ a 15.000 €.
144 """,
145
146 'website': 'http://www.pexego.es',
147@@ -93,18 +98,19 @@
148 "account",
149 "account_invoice_currency",
150 "account_refund_original",
151+ "l10n_es",
152 "l10n_es_aeat",
153 ],
154 'data': [
155+ "wizard/export_mod349_to_boe.xml",
156 "account_fiscal_position_view.xml",
157 "account_invoice_view.xml",
158 "mod349_view.xml",
159- "mod349_workflow.xml",
160- "mod349_report.xml",
161+ "report/mod349_report.xml",
162 "security/ir.model.access.csv",
163- "security/mod_349_security.xml"
164+ "security/mod_349_security.xml",
165+ "data/assign_invoices_op_keys.xml",
166 ],
167 'installable': True,
168-
169 }
170 # vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
171
172=== modified file 'l10n_es_aeat_mod349/account_fiscal_position.py'
173--- l10n_es_aeat_mod349/account_fiscal_position.py 2014-04-14 14:36:42 +0000
174+++ l10n_es_aeat_mod349/account_fiscal_position.py 2014-04-15 12:47:56 +0000
175@@ -1,11 +1,15 @@
176 # -*- coding: utf-8 -*-
177 ##############################################################################
178 #
179-# Copyright (C) 2004-2011
180-# Pexego Sistemas Informáticos. (http://pexego.es) All Rights Reserved
181+# Copyright (C)
182+# 2004-2011: Pexego Sistemas Informáticos. (http://pexego.es)
183+# 2013: Top Consultant Software Creations S.L.
184+# (http://www.topconsultant.es/)
185+# 2014: Serv. Tecnol. Avanzados (http://www.serviciosbaeza.com)
186+# Pedro M. Baeza <pedro.baeza@serviciosbaeza.com>
187 #
188-# Migración OpenERP 7.0. Top Consultant Software Creations S.L. (http://www.topconsultant.es/) 2013
189-# Ignacio Martínez y Miguel López.
190+# Autor original: Luis Manuel Angueira Blanco (Pexego)
191+# Migración OpenERP 7.0: Ignacio Martínez y Miguel López.
192 #
193 # This program is free software: you can redistribute it and/or modify
194 # it under the terms of the GNU Affero General Public License as
195@@ -21,10 +25,6 @@
196 # along with this program. If not, see <http://www.gnu.org/licenses/>.
197 #
198 ##############################################################################
199-
200-__author__ = "Luis Manuel Angueira Blanco (Pexego)"
201-
202-
203 from openerp.osv import fields, orm
204
205
206@@ -35,9 +35,7 @@
207 AEAT 349 Report
208 """
209 _inherit = 'account.fiscal.position'
210-
211 _columns = {
212- 'intracommunity_operations':\
213- fields.boolean('Intra-Community operations'),
214+ 'intracommunity_operations': fields.boolean(
215+ 'Intra-Community operations'),
216 }
217-
218
219=== modified file 'l10n_es_aeat_mod349/account_invoice.py'
220--- l10n_es_aeat_mod349/account_invoice.py 2014-04-14 14:36:42 +0000
221+++ l10n_es_aeat_mod349/account_invoice.py 2014-04-15 12:47:56 +0000
222@@ -1,11 +1,16 @@
223 # -*- coding: utf-8 -*-
224 ##############################################################################
225 #
226-# Copyright (C) 2004-2011
227-# Pexego Sistemas Informáticos. (http://pexego.es) All Rights Reserved
228+# Copyright (C)
229+# 2004-2011: Pexego Sistemas Informáticos. (http://pexego.es)
230+# 2013: Top Consultant Software Creations S.L.
231+# (http://www.topconsultant.es/)
232+# 2014: Serv. Tecnol. Avanzados (http://www.serviciosbaeza.com)
233+# Pedro M. Baeza <pedro.baeza@serviciosbaeza.com>
234 #
235-# Migración OpenERP 7.0. Top Consultant Software Creations S.L. (http://www.topconsultant.es/) 2013
236-# Ignacio Martínez y Miguel López.
237+# Autores originales: Luis Manuel Angueira Blanco (Pexego)
238+# Omar Castiñeira Saavedra(omar@pexego.es)
239+# Migración OpenERP 7.0: Ignacio Martínez y Miguel López.
240 #
241 # This program is free software: you can redistribute it and/or modify
242 # it under the terms of the GNU Affero General Public License as
243@@ -21,14 +26,13 @@
244 # along with this program. If not, see <http://www.gnu.org/licenses/>.
245 #
246 ##############################################################################
247-
248-__author__ = \
249-"Luis Manuel Angueira Blanco (Pexego),Omar Castiñeira Saavedra(omar@pexego.es)"
250-
251 from openerp.tools.translate import _
252 from openerp.osv import fields, orm
253+from openerp.tools import DEFAULT_SERVER_DATETIME_FORMAT
254+from datetime import datetime
255+import calendar
256
257-OPERATION_KEY = [
258+OPERATION_KEYS = [
259 ('Nothing', ''),
260 ('E', 'E - Intra-Community supplies'),
261 ('A', 'A - Intra-Community acquisition'),
262@@ -40,109 +44,120 @@
263 'delivered by legal representative')
264 ]
265
266-MONTH_DATES_MAPPING = {
267- '01': {'date_start': '%s-01-01', 'date_stop': '%s-01-31'},
268- '02': {'date_start': '%s-02-01', 'date_stop': '%s-02-28'},
269- '03': {'date_start': '%s-03-01', 'date_stop': '%s-03-31'},
270- '04': {'date_start': '%s-04-01', 'date_stop': '%s-04-30'},
271- '05': {'date_start': '%s-05-01', 'date_stop': '%s-05-31'},
272- '06': {'date_start': '%s-06-01', 'date_stop': '%s-06-30'},
273- '07': {'date_start': '%s-07-01', 'date_stop': '%s-07-31'},
274- '08': {'date_start': '%s-08-01', 'date_stop': '%s-08-31'},
275- '09': {'date_start': '%s-09-01', 'date_stop': '%s-09-30'},
276- '10': {'date_start': '%s-10-01', 'date_stop': '%s-10-31'},
277- '11': {'date_start': '%s-11-01', 'date_stop': '%s-11-30'},
278- '12': {'date_start': '%s-12-01', 'date_stop': '%s-12-31'},
279-}
280-
281-
282 class account_invoice(orm.Model):
283 """
284- Inheritance of account invoce to add some fields
285+ Inheritance of account invoce to add some fields:
286 - operation_key: Operation key of invoice
287 """
288 _inherit = 'account.invoice'
289-
290- #################
291 ### FUNCTIONS ###
292- #################
293+ def _assign_invoice_operation_keys(self, cr, uid, ids=None,
294+ context=None):
295+ """On first install of the module, this method is called to
296+ assign a default value to invoices and fiscal position"""
297+ # Marcar la posición fiscal intracomunitaria
298+ fp_obj = self.pool['account.fiscal.position']
299+ fp_ids = fp_obj.search(cr, uid, [('name', '=',
300+ "Régimen Intracomunitario")],
301+ context=context)
302+ if not fp_ids:
303+ return
304+ fp_obj.write(cr, uid, fp_ids, {'intracommunity_operations': True},
305+ context=context)
306+ invoice_ids = self.search(cr, uid, [], context=context)
307+ for invoice in self.browse(cr, uid, invoice_ids, context=context):
308+ if invoice.fiscal_position:
309+ op_key = self._get_operation_key(invoice.fiscal_position,
310+ invoice.type)
311+ self.write(cr, uid, invoice.id, {'operation_key': op_key},
312+ context=context)
313+
314+ def _get_operation_key(self, fp, type):
315+ if not fp.intracommunity_operations:
316+ return False
317+ else:
318+ # TODO: Ver cómo discernir si son prestación de servicios
319+ if type == 'out_invoice' or type == 'out_refund':
320+ # Establecer a entrega si es de venta
321+ return 'E'
322+ else:
323+ # Establecer a adquisición si es de compra
324+ return 'A'
325+
326+ def _get_year_from_fy_month(self, fy, month):
327+ fy_start = datetime.strptime(fy.date_start,
328+ DEFAULT_SERVER_DATETIME_FORMAT)
329+ fy_stop = datetime.strptime(fy.date_stop,
330+ DEFAULT_SERVER_DATETIME_FORMAT)
331+ if fy_start.month < month:
332+ year = fy_start.year
333+ elif fy_stop.month > month:
334+ year = fy_stop.year
335+ else:
336+ raise orm.except_orm(_('Error'),
337+ _('Cannot get invoices.\nProvided month is not included '
338+ 'on selected fiscal year'))
339+
340 def _get_invoices_by_type(self, cr, uid, partner_id, operation_key,
341 fiscalyear_id=None, period_id=None, month=None,
342 period_selection=None, context=None):
343 """
344- Returns invoices ids by type (supplier/customer)
345- for a fiscalyear/period/month
346+ Returns invoices ids by type (supplier/customer) for a fiscal
347+ year, period or month.
348 """
349 assert period_selection, 'There is no period selected'
350 ## Set type of invoice
351 type = ['in_invoice', 'out_invoice', 'in_refund', 'out_refund']
352 fy_obj = self.pool['account.fiscalyear']
353 fy = fy_obj.browse(cr, uid, fiscalyear_id, context=context)
354- search_dict = [
355- ('partner_id', '=', partner_id),
356- ('state', 'in', ['open', 'paid']),
357- ('type', 'in', type),
358- ('operation_key', '=', operation_key)]
359+ domain = [('partner_id', '=', partner_id),
360+ ('state', 'in', ['open', 'paid']),
361+ ('type', 'in', type),
362+ ('operation_key', '=', operation_key)]
363 ## Invoices by fiscalyear (Annual)
364 if period_selection == '0A':
365 if not fiscalyear_id:
366 raise orm.except_orm(_('Error'),
367- _('Cannot get invoices.\nThere is no\
368- fiscalyear selected'))
369- search_dict.append(('period_id', 'in', [period.id for period in
370+ _('Cannot get invoices.\nThere is no fiscal '
371+ 'year selected'))
372+ domain.append(('period_id', 'in', [period.id for period in
373 fy.period_ids
374 if not period.special]))
375 ## Invoices by period
376 elif period_selection in ['1T', '2T', '3T', '4T']:
377 if not period_id:
378 raise orm.except_orm(_('Error'),
379- _('Cannot get invoices.\nThere is no \
380- period selected'))
381- search_dict.append(('period_id', 'in', period_id))
382+ _('Cannot get invoices.\nThere is no period selected'))
383+ domain.append(('period_id', 'in', period_id))
384 ## Invoices by month
385 else:
386- year = fy.code[:4]
387 if not month and not fiscalyear_id:
388 raise orm.except_orm(_('Error'),
389- _('Cannot get invoices.\nThere is \
390- no month and/or fiscalyear selected'))
391- search_dict.append(('date_invoice', '>=',
392- MONTH_DATES_MAPPING[month]['date_start'] %
393- year))
394- if month == '02':
395- #checks if year is leap to can search
396- #by last February date in database
397- if int(year) % 4 == 0 and \
398- (int(year) % 100 != 0 or int(year) % 400 == 0):
399- search_dict.append(('date_invoice',
400- '<=', "%s-02-29" % year))
401- else:
402- search_dict.append(('date_invoice',
403- '<=',
404- MONTH_DATES_MAPPING[month]['date' +
405- '_stop']
406- % year))
407- else:
408- search_dict.append(('date_invoice',
409- '<=',
410- MONTH_DATES_MAPPING[month]['date_stop']
411- % year))
412-
413- return self.search(cr, uid, search_dict, context=context)
414+ _('Cannot get invoices.\nThere is no month and/or '
415+ 'fiscal year selected'))
416+ month = int(month)
417+ year = self._get_year_from_fy_month(fy, month)
418+ month_last_day = calendar.monthrange(year, month)[1]
419+ date_start = datetime(year=year, month=month, day=1)
420+ date_stop = datetime(year=year, month=month, day=month_last_day)
421+ domain.append(('date_invoice', '>=',
422+ date_start.strftime(DEFAULT_SERVER_DATETIME_FORMAT)))
423+ domain.append(('date_invoice', '<=',
424+ date_stop.strftime(DEFAULT_SERVER_DATETIME_FORMAT)))
425+ return self.search(cr, uid, domain, context=context)
426
427 def clean_refund_invoices(self, cr, uid, ids, partner_id,
428 fiscalyear_id=None, period_id=None,
429 month=None, period_selection=None, context=None):
430- """separates restitution invoices"""
431- invoice_lines = []
432- restitution_lines = []
433- fiscal_y_obj = self.pool.get('account.fiscalyear')
434- fiscalyear_brw = fiscal_y_obj.browse(cr, uid, fiscalyear_id, context=context)
435-
436+ """Separate refund invoices"""
437+ invoice_ids = []
438+ refund_ids = []
439+ fy_obj = self.pool['account.fiscalyear']
440+ fy = fy_obj.browse(cr, uid, fiscalyear_id, context=context)
441 for refund in self.browse(cr, uid, ids, context=context):
442 if refund.type in ['in_refund', 'out_refund']:
443 if not refund.origin_invoices_ids:
444- invoice_lines.append(refund.id)
445+ invoice_ids.append(refund.id)
446 continue
447 for origin_line in refund.origin_invoices_ids:
448 if origin_line.state in ['open', 'paid'] and \
449@@ -150,78 +165,38 @@
450 if period_selection == '0A':
451 if origin_line.period_id.id not in \
452 [period.id for period in
453- fiscalyear_brw.period_ids if not \
454- period.special]:
455- restitution_lines.append(refund.id)
456- break
457+ fy.period_ids if not period.special]:
458+ refund_ids.append(refund.id)
459 else:
460- invoice_lines.append(refund.id)
461- break
462+ invoice_ids.append(refund.id)
463 elif period_selection in ['1T', '2T', '3T', '4T']:
464 if origin_line.period_id.id != period_id:
465- restitution_lines.append(refund.id)
466- break
467+ refund_ids.append(refund.id)
468 else:
469- invoice_lines.append(refund.id)
470- break
471+ invoice_ids.append(refund.id)
472 else:
473- if origin_line.date_invoice < \
474- MONTH_DATES_MAPPING[month]['date_start'] \
475- % fiscalyear_brw.code[:4]:
476- restitution_lines.append(refund.id)
477- break
478+ month = int(month)
479+ year = self._get_year_from_fy_month(fy, month)
480+ if datetime.strptime(origin_line.date_invoice,
481+ DEFAULT_SERVER_DATETIME_FORMAT) < \
482+ datetime(year=year, month=month, day=1):
483+ refund_ids.append(refund.id)
484 else:
485- invoice_lines.append(refund.id)
486- break
487+ invoice_ids.append(refund.id)
488+ break
489 else:
490- invoice_lines.append(refund.id)
491-
492- return invoice_lines, restitution_lines
493-
494- def on_change_fiscal_position(self, cr, uid, ids,
495- fiscal_position, type, context=None):
496- """
497- Suggest an operation key when fiscal position changes
498- """
499- res = {'value': {'operation_key': 'Nothing'}}
500+ invoice_ids.append(refund.id)
501+ return invoice_ids, refund_ids
502+
503+ def on_change_fiscal_position(self, cr, uid, ids, fiscal_position,
504+ type, context=None):
505+ """Suggest an operation key when fiscal position changes."""
506+ res = {'operation_key': 'Nothing'}
507 if fiscal_position and type:
508- obj = self.pool.get('account.fiscal.position')
509- if obj.browse(cr, uid, fiscal_position, context=context).intracommunity_operations:
510- if type == 'out_invoice':
511- # Set to supplies when type is customer invoice
512- res = {'value': {'operation_key': 'E'}}
513- else:
514- # Set to acquisition when type is supplier invoice
515- res = {'value': {'operation_key': 'A'}}
516- return res
517-
518- def onchange_partner_id(self, cr, uid, ids,
519- type, partner_id, date_invoice=False,
520- payment_term=False, partner_bank_id=False,
521- company_id=False, context=None):
522- """
523- Inheritance to extend method and return operation key
524- """
525- ## Get original data from onchange method
526- res = super(account_invoice,
527- self).onchange_partner_id(cr, uid, ids, type, partner_id,
528- date_invoice=date_invoice,
529- payment_term=payment_term,
530- partner_bank_id=partner_bank_id,
531- company_id=company_id,
532- context=context)
533- ## Get operation key for current record
534- operation_key_dict = self.on_change_fiscal_position(cr, uid, ids,
535- fiscal_position=res['value']['fiscal_position'], type=type,
536- context=context)
537- ## Add operation key to result
538- if operation_key_dict['value'] and \
539- operation_key_dict['value']['operation_key']:
540- res['value']['operation_key'] = (
541- operation_key_dict['value']['operation_key'])
542- else:
543- res['value']['operation_key'] = False
544- return res
545+ fp_obj = self.pool['account.fiscal.position']
546+ fp = fp_obj.browse(cr, uid, fiscal_position, context=context)
547+ res['operation_key'] = self._get_operation_key(fp, type)
548+ return {'value': res}
549
550 def create(self, cr, uid, vals, context=None):
551 """Writes operation key value, if invoice is created in
552@@ -231,13 +206,12 @@
553 fp_obj = self.pool['account.fiscal.position']
554 if fp_obj.browse(cr, uid, vals.get('fiscal_position'),
555 context=context).intracommunity_operations:
556- if vals.get('type') == 'out_invoice':
557- vals['operation_key'] = 'E'
558- else:
559- vals['operation_key'] = 'A'
560+ vals['operation_key'] = self._get_operation_key(
561+ vals['fiscal_position'],
562+ vals['type'])
563 return super(account_invoice, self).create(cr, uid, vals,
564 context=context)
565
566 _columns = {
567- 'operation_key': fields.selection(OPERATION_KEY, 'Operation key')
568+ 'operation_key': fields.selection(OPERATION_KEYS, 'Operation key')
569 }
570
571=== modified file 'l10n_es_aeat_mod349/account_invoice_view.xml'
572--- l10n_es_aeat_mod349/account_invoice_view.xml 2013-11-22 23:44:11 +0000
573+++ l10n_es_aeat_mod349/account_invoice_view.xml 2014-04-15 12:47:56 +0000
574@@ -12,8 +12,8 @@
575 <field name="model">account.invoice</field>
576 <field name="inherit_id" ref="account.invoice_form"/>
577 <field name="arch" type="xml">
578- <field name="fiscal_position" position="replace">
579- <field name="fiscal_position" on_change="on_change_fiscal_position(fiscal_position, type)"/>
580+ <field name="fiscal_position" position="attributes">
581+ <attribute name="on_change">on_change_fiscal_position(fiscal_position, type)</attribute>
582 </field>
583 </field>
584 </record>
585@@ -38,8 +38,8 @@
586 <field name="model">account.invoice</field>
587 <field name="inherit_id" ref="account.invoice_supplier_form"/>
588 <field name="arch" type="xml">
589- <field name="fiscal_position" position="replace">
590- <field name="fiscal_position" on_change="on_change_fiscal_position(fiscal_position, type)"/>
591+ <field name="fiscal_position" position="attributes">
592+ <attribute name="on_change">on_change_fiscal_position(fiscal_position, type)</attribute>
593 </field>
594 </field>
595 </record>
596
597=== added directory 'l10n_es_aeat_mod349/data'
598=== added file 'l10n_es_aeat_mod349/data/assign_invoices_op_keys.xml'
599--- l10n_es_aeat_mod349/data/assign_invoices_op_keys.xml 1970-01-01 00:00:00 +0000
600+++ l10n_es_aeat_mod349/data/assign_invoices_op_keys.xml 2014-04-15 12:47:56 +0000
601@@ -0,0 +1,5 @@
602+<openerp>
603+ <data noupdate="1">
604+ <function model="account.invoice" name="_assign_invoice_operation_keys"/>
605+ </data>
606+</openerp>
607\ No newline at end of file
608
609=== modified file 'l10n_es_aeat_mod349/i18n/es.po' (properties changed: +x to -x)
610--- l10n_es_aeat_mod349/i18n/es.po 2014-04-15 07:53:51 +0000
611+++ l10n_es_aeat_mod349/i18n/es.po 2014-04-15 12:47:56 +0000
612@@ -4,15 +4,22 @@
613 #
614 msgid ""
615 msgstr ""
616-"Project-Id-Version: OpenERP Server 6.1-20130731-233420\n"
617+"Project-Id-Version: OpenERP Server 7.0\n"
618 "Report-Msgid-Bugs-To: \n"
619+<<<<<<< TREE
620 "POT-Creation-Date: 2010-12-13 17:53+0000\n"
621 "PO-Revision-Date: 2014-04-14 21:25+0000\n"
622 "Last-Translator: Pedro Manuel Baeza <pedro.baeza@gmail.com>\n"
623+=======
624+"POT-Creation-Date: 2014-04-14 18:38+0000\n"
625+"PO-Revision-Date: 2014-04-14 20:38+0100\n"
626+"Last-Translator: Pedro Manuel Baeza <pedro.baeza@serviciosbaeza.com>\n"
627+>>>>>>> MERGE-SOURCE
628 "Language-Team: \n"
629 "MIME-Version: 1.0\n"
630 "Content-Type: text/plain; charset=UTF-8\n"
631 "Content-Transfer-Encoding: 8bit\n"
632+<<<<<<< TREE
633 "X-Launchpad-Export-Date: 2014-04-15 07:53+0000\n"
634 "X-Generator: Launchpad (build 16976)\n"
635
636@@ -24,144 +31,100 @@
637 #. module: l10n_es_aeat_mod349
638 #: selection:l10n.es.aeat.mod349.report,period_selection:0
639 #: selection:l10n.es.aeat.mod349.partner_refund,period_selection:0
640+=======
641+"Plural-Forms: \n"
642+
643+#. module: l10n_es_aeat_mod349
644+#: selection:l10n.es.aeat.mod349.partner_refund,period_selection:0
645+#: selection:l10n.es.aeat.mod349.report,period_selection:0
646+msgid "0A - Annual"
647+msgstr "0A - Anual"
648+
649+#. module: l10n_es_aeat_mod349
650+#: selection:l10n.es.aeat.mod349.partner_refund,period_selection:0
651+#: selection:l10n.es.aeat.mod349.report,period_selection:0
652+>>>>>>> MERGE-SOURCE
653 msgid "1T - First Quarter"
654-msgstr "1T - Primer Trimestre"
655-
656-#. module: l10n_ES_aeat_mod349
657-#: rml:report_l10n_es_aeat_mod349.report:0
658-msgid "Year"
659-msgstr "Year"
660-
661-#. module: l10n_ES_aeat_mod349
662-#: rml:report_l10n_es_aeat_mod349.report:0
663-#: field:l10n.es.aeat.mod349.partner_refund,period_selection:0
664-#: field:l10n.es.aeat.mod349.report,period_id:0
665-#: field:l10n.es.aeat.mod349.report,period_selection:0
666-msgid "Period"
667-msgstr "Período"
668-
669-#. module: l10n_es_aeat_mod349
670-#: code:addons/l10n_es_aeat_mod349/mod349.py:153
671-#, python-format
672-msgid "All partner refunds fields (country, VAT number) must be filled."
673-msgstr ""
674-"Todos los campos de las rectificaciones (país, número CIF/NIF) deben estar "
675-"rellenados."
676-
677-#. module: l10n_es_aeat_mod349
678-#: code:addons/l10n_es_aeat_mod349/mod349.py:149
679-#, python-format
680-msgid "All partner records fields (country, VAT number) must be filled."
681-msgstr ""
682-"Todos los campos de los registros de empresas (país, número CIF/NIF) deben "
683-"estar rellenados."
684-
685-#. module: l10n_es_aeat_mod349
686-#: field:l10n.es.aeat.mod349.partner_refund,total_origin_amount:0
687-msgid "Original amount"
688-msgstr "Importe original"
689-
690-#. module: l10n_es_aeat_mod349
691-#: field:account.fiscal.position,intracommunity_operations:0
692-msgid "Intra-Community operations"
693-msgstr "Operaciones intracomunitarias"
694-
695-#. module: l10n_es_aeat_mod349
696-#: code:addons/l10n_es_aeat_mod349/mod349.py:192
697-#, python-format
698-msgid ""
699-"Name '%s' have not allowed characters.\n"
700-"Please, fix it before confirm the report"
701-msgstr ""
702-"El nombre '%s' tiene caracteres no permitidos.\n"
703-"Por favor, arréglelo antes de confirmar la declaración."
704-
705-#. module: l10n_es_aeat_mod349
706-#: code:addons/l10n_es_aeat_mod349/wizard/export_mod349_to_boe.py:169
707-#: code:addons/l10n_es_aeat_mod349/wizard/export_mod349_to_boe.py:224
708-#, python-format
709-msgid "The type 2 record must be 502 characters long"
710-msgstr "El tipo de registro 2 debe ser de 502 caracteres de largo"
711-
712-#. module: l10n_es_aeat_mod349
713-#: code:addons/l10n_es_aeat_mod349/mod349.py:149
714-#: code:addons/l10n_es_aeat_mod349/mod349.py:153
715-#: code:addons/l10n_es_aeat_mod349/mod349.py:179
716-#: code:addons/l10n_es_aeat_mod349/mod349.py:191
717-#: code:addons/l10n_es_aeat_mod349/mod349.py:198
718-#: code:addons/l10n_es_aeat_mod349/mod349.py:205
719-#, python-format
720-msgid "Error!"
721-msgstr "¡Error!"
722-
723-#. module: l10n_es_aeat_mod349
724-#: help:l10n.es.aeat.mod349.partner_record,partner_record_ok:0
725-msgid "Checked if Partner record is OK"
726-msgstr "Marcado si el registro de empresa es correcto."
727-
728-#. module: l10n_es_aeat_mod349
729-#: field:l10n.es.aeat.mod349.report,partner_refund_ids:0
730-msgid "Partner refund IDS"
731-msgstr "IDs de rectificaciones"
732-
733-#. module: l10n_es_aeat_mod349
734-#: field:l10n.es.aeat.mod349.report,total_partner_refunds_amount:0
735-msgid "Partners refunds amount"
736-msgstr "Importe rectificaciones"
737-
738-#. module: l10n_es_aeat_mod349
739-#: help:l10n.es.aeat.mod349.report,contact_name:0
740-msgid "Must have name and surname."
741-msgstr "Debe contener nombre y apellidos"
742-
743-#. module: l10n_es_aeat_mod349
744-#: selection:account.invoice,operation_key:0
745-#: selection:l10n.es.aeat.mod349.partner_record,operation_key:0
746-#: selection:l10n.es.aeat.mod349.partner_refund,operation_key:0
747-msgid " "
748-msgstr " "
749-
750-#. module: l10n_es_aeat_mod349
751-#: selection:l10n.es.aeat.mod349.report,month_selection:0
752-#: selection:l10n.es.aeat.mod349.partner_refund,month_selection:0
753-msgid "March"
754-msgstr "Marzo"
755-
756-#. module: l10n_es_aeat_mod349
757-#: selection:l10n.es.aeat.mod349.report,period_selection:0
758-#: selection:l10n.es.aeat.mod349.partner_refund,period_selection:0
759+msgstr "1T - Primer trimestre"
760+
761+#. module: l10n_es_aeat_mod349
762+#: selection:l10n.es.aeat.mod349.partner_refund,period_selection:0
763+#: selection:l10n.es.aeat.mod349.report,period_selection:0
764+msgid "2T - Second Quarter"
765+msgstr "2T - Segundo trimestre"
766+
767+#. module: l10n_es_aeat_mod349
768+#: selection:l10n.es.aeat.mod349.partner_refund,period_selection:0
769+#: selection:l10n.es.aeat.mod349.report,period_selection:0
770+msgid "3T - Third Quarter"
771+msgstr "3T - Tercer trimestre"
772+
773+#. module: l10n_es_aeat_mod349
774+#: view:l10n.es.aeat.mod349.report:0
775+msgid "413"
776+msgstr "413"
777+
778+#. module: l10n_es_aeat_mod349
779+#: selection:l10n.es.aeat.mod349.partner_refund,period_selection:0
780+#: selection:l10n.es.aeat.mod349.report,period_selection:0
781 msgid "4T - Fourth Quarter"
782-msgstr "4T - Cuarto Trimestre"
783-
784-#. module: l10n_es_aeat_mod349
785-#: view:l10n.es.aeat.mod349.report:0
786-#: field:l10n.es.aeat.mod349.report,company_id:0
787-msgid "Company"
788-msgstr "Compañía"
789-
790-#. module: l10n_es_aeat_mod349
791-#: view:l10n.es.aeat.mod349.report:0
792-#: selection:l10n.es.aeat.mod349.report,state:0
793-msgid "Done"
794-msgstr "Realizada"
795-
796-#. module: l10n_es_aeat_mod349
797-#: view:l10n.es.aeat.mod349.report:0
798-msgid "In process"
799-msgstr "En proceso"
800-
801-#. module: l10n_es_aeat_mod349
802-#: selection:l10n.es.aeat.mod349.report,type:0
803-msgid "Substitutive"
804-msgstr "Sustitutiva"
805+msgstr "4T - Cuarto trimestre"
806
807 #. module: l10n_es_aeat_mod349
808 #: selection:account.invoice,operation_key:0
809 #: selection:l10n.es.aeat.mod349.partner_record,operation_key:0
810 #: selection:l10n.es.aeat.mod349.partner_refund,operation_key:0
811 #: report:report_l10n_es_aeat_mod349.report:0
812-msgid "E - Intra-Community supplies"
813-msgstr "E - Entregas intracomunitarias"
814+msgid "A - Intra-Community acquisition"
815+msgstr "A - Adquisición intracomunitaria"
816+
817+#. module: l10n_es_aeat_mod349
818+#: report:report_l10n_es_aeat_mod349.report:0
819+msgid "AEAT 349 MODEL"
820+msgstr "MODELO 349"
821+
822+#. module: l10n_es_aeat_mod349
823+#: model:ir.ui.menu,name:l10n_es_aeat_mod349.menu_aeat_mod349_report
824+msgid "AEAT 349 Model"
825+msgstr "Modelo AEAT 349"
826+
827+#. module: l10n_es_aeat_mod349
828+#: code:_description:0
829+#: model:ir.model,name:l10n_es_aeat_mod349.model_l10n_es_aeat_mod349_partner_record
830+#, python-format
831+msgid "AEAT 349 Model - Partner record"
832+msgstr "Modelo 349 - Registro de empresa"
833+
834+#. module: l10n_es_aeat_mod349
835+#: code:_description:0
836+#: model:ir.model,name:l10n_es_aeat_mod349.model_l10n_es_aeat_mod349_partner_record_detail
837+#, python-format
838+msgid "AEAT 349 Model - Partner record detail"
839+msgstr "Modelo 349 - Detalle de registro de empresa"
840+
841+#. module: l10n_es_aeat_mod349
842+#: code:_description:0
843+#: model:ir.model,name:l10n_es_aeat_mod349.model_l10n_es_aeat_mod349_partner_refund
844+#, python-format
845+msgid "AEAT 349 Model - Partner refund"
846+msgstr "Modelo 349 - Rectificativa de empresa"
847+
848+#. module: l10n_es_aeat_mod349
849+#: code:_description:0
850+#: model:ir.model,name:l10n_es_aeat_mod349.model_l10n_es_aeat_mod349_partner_refund_detail
851+#, python-format
852+msgid "AEAT 349 Model - Partner refund detail"
853+msgstr "Modelo 349 - Detalle de rectificación"
854+
855+#. module: l10n_es_aeat_mod349
856+#: model:ir.actions.report.xml,name:l10n_es_aeat_mod349.report_l10n_es_aeat_mod349
857+msgid "AEAT 349 Model report"
858+msgstr "Declaración modelo 349"
859+
860+#. module: l10n_es_aeat_mod349
861+#: view:l10n.es.aeat.mod349.partner_record_detail:0
862+msgid "AEAT 349 Partner record"
863+msgstr "Registro de empresa modelo 349"
864
865 #. module: l10n_es_aeat_mod349
866 #: view:l10n.es.aeat.mod349.partner_record_detail:0
867@@ -169,21 +132,24 @@
868 msgstr "Detalle de Registro de Empresa AEAT 349"
869
870 #. module: l10n_es_aeat_mod349
871-#: field:l10n.es.aeat.mod349.report,fiscalyear_id:0
872-#: view:l10n.es.aeat.mod349.report:0
873-msgid "Fiscal Year"
874-msgstr "Ejercicio fiscal"
875-
876-#. module: l10n_es_aeat_mod349
877-#: field:l10n.es.aeat.mod349.report,previous_number:0
878-msgid "Previous Declaration Number"
879-msgstr "Numero de declaración anterior"
880-
881-#. module: l10n_es_aeat_mod349
882-#: view:l10n.es.aeat.mod349.report:0
883-#: field:l10n.es.aeat.mod349.report,partner_record_ids:0
884-msgid "Partner records"
885-msgstr "Registros de empresas"
886+#: view:l10n.es.aeat.mod349.partner_record:0
887+msgid "AEAT 349 Partner records"
888+msgstr "Registros de empresa modelo 349"
889+
890+#. module: l10n_es_aeat_mod349
891+#: view:l10n.es.aeat.mod349.partner_refund_detail:0
892+msgid "AEAT 349 Partner refund"
893+msgstr "Rectificaciones modelo 349"
894+
895+#. module: l10n_es_aeat_mod349
896+#: view:l10n.es.aeat.mod349.partner_refund_detail:0
897+msgid "AEAT 349 Partner refund detail"
898+msgstr "Detalle de rectificación modelo 349"
899+
900+#. module: l10n_es_aeat_mod349
901+#: view:l10n.es.aeat.mod349.partner_refund:0
902+msgid "AEAT 349 Partner refunds"
903+msgstr "Rectificaciones modelo 349"
904
905 #. module: l10n_es_aeat_mod349
906 #: field:l10n.es.aeat.mod349.partner_record,report_id:0
907@@ -192,144 +158,46 @@
908 msgstr "ID declaración modelo 349"
909
910 #. module: l10n_es_aeat_mod349
911-#: selection:l10n.es.aeat.mod349.report,type:0
912-msgid "Normal"
913-msgstr "Normal"
914+#: view:l10n.es.aeat.mod349.report:0
915+msgid "AEAT 349 reports"
916+msgstr "Declaraciones AEAT 349"
917
918 #. module: l10n_es_aeat_mod349
919+<<<<<<< TREE
920 #: model:ir.ui.menu,name:l10n_es_aeat_mod349.menu_aeat_mod349_report
921 msgid "AEAT 349 Model"
922 msgstr "Declaración AEAT 349"
923-
924-#. module: l10n_es_aeat_mod349
925-#: model:ir.model,name:l10n_es_aeat_mod349.model_l10n_es_aeat_mod349_partner_refund_detail
926-msgid "AEAT 349 Model - Partner refund detail"
927-msgstr "Modelo 349 - Detalle de rectificación"
928-
929-#. module: l10n_es_aeat_mod349
930-#: selection:l10n.es.aeat.mod349.report,month_selection:0
931-#: selection:l10n.es.aeat.mod349.partner_refund,month_selection:0
932-msgid "July"
933-msgstr "Julio"
934-
935-#. module: l10n_es_aeat_mod349
936-#: field:l10n.es.aeat.mod349.partner_record,partner_vat:0
937-#: field:l10n.es.aeat.mod349.partner_refund,partner_vat:0
938-#: report:report_l10n_es_aeat_mod349.report:0
939-msgid "VAT"
940-msgstr "CIF/NIF"
941-
942-#. module: l10n_es_aeat_mod349
943-#: field:l10n.es.aeat.mod349.partner_refund_detail,refund_id:0
944-msgid "Partner refund ID"
945-msgstr "ID Rectificación"
946-
947-#. module: l10n_es_aeat_mod349
948-#: code:addons/l10n_es_aeat_mod349/account_invoice.py:94
949-#, python-format
950-msgid ""
951-"Cannot get invoices.\n"
952-"There is no period selected"
953-msgstr ""
954-"No se pueden obtener facturas.\n"
955-"No hay un periodo seleccionado."
956-
957-#. module: l10n_es_aeat_mod349
958-#: code:addons/l10n_es_aeat_mod349/account_invoice.py:86
959-#, python-format
960-msgid ""
961-"Cannot get invoices.\n"
962-"There is no fiscalyear selected"
963-msgstr ""
964-"No se pueden obtener facturas.\n"
965-"No hay un ejercicio fiscal seleccionado."
966-
967-#. module: l10n_es_aeat_mod349
968-#: code:addons/l10n_es_aeat_mod349/account_invoice.py:102
969-#, python-format
970-msgid ""
971-"Cannot get invoices.\n"
972-"There is no month and/or fiscalyear selected"
973-msgstr ""
974-"No se pueden obtener facturas.\n"
975-"No hay mes y/o ejercicio fiscal seleccionado."
976-
977-#. module: l10n_es_aeat_mod349
978-#: code:addons/l10n_es_aeat_mod349/wizard/export_mod349_to_boe.py:117
979-#, python-format
980-msgid "The type 1 record must be 502 characters long"
981-msgstr "El tipo de registro 1 debe ser de 502 caracteres de largo"
982-
983-#. module: l10n_es_aeat_mod349
984-#: code:addons/l10n_es_aeat_mod349/mod349.py:171
985-#, python-format
986-msgid "Company without Title"
987-msgstr "Compañía sin título"
988-
989-#. module: l10n_es_aeat_mod349
990-#: code:addons/l10n_es_aeat_mod349/mod349.py:179
991-#, python-format
992-msgid "Contact name (Full name) must have name and surname"
993-msgstr ""
994-"El nombre del contacto (Nombre completo) debe contener nombre y apellidos"
995-
996-#. module: l10n_es_aeat_mod349
997-#: help:l10n.es.aeat.mod349.partner_refund,total_origin_amount:0
998-#: field:l10n.es.aeat.mod349.partner_refund,total_origin_amount:0
999-msgid "Refund original amount"
1000-msgstr "Importe operación original"
1001-
1002-#. module: l10n_es_aeat_mod349
1003-#: code:addons/l10n_es_aeat_mod349/mod349.py:172
1004-#, python-format
1005-msgid ""
1006-"Company has no company title.\n"
1007-"This may cause some problems when trying to import on AEAT help program"
1008-msgstr ""
1009-"La compañía no tiene un título definido.\n"
1010-"Esto podría causar algunos problemas intentando importar en el programa de "
1011-"ayuda de la AEAT."
1012-
1013-#. module: l10n_es_aeat_mod349
1014-#: code:addons/l10n_es_aeat_mod349/mod349.py:206
1015-#, python-format
1016-msgid ""
1017-"Partner name '%s' in refund lines is not valid due to incorrect characters"
1018-msgstr ""
1019-"El nombre de la empresa '%s' en las líneas de rectificaciones no es válido "
1020-"por contener caracteres incorrectos."
1021-
1022-#. module: l10n_es_aeat_mod349
1023-#: code:addons/l10n_es_aeat_mod349/mod349.py:199
1024-#, python-format
1025-msgid ""
1026-"Partner name '%s' in partner records is not valid due to incorrect characters"
1027-msgstr ""
1028-"El nombre de la empresa '%s' en los registros de empresas no es válido "
1029-"debido a caracteres incorrectos."
1030-
1031-#. module: l10n_es_aeat_mod349
1032-#: view:l10n.es.aeat.mod349.report:0
1033-msgid "Recalculate"
1034-msgstr "Recalcular"
1035-
1036-#. module: l10n_es_aeat_mod349
1037-#: view:l10n.es.aeat.mod349.report:0
1038-msgid "Declaration"
1039-msgstr "Declaración"
1040-
1041-#. module: l10n_es_aeat_mod349
1042+=======
1043+#: model:ir.actions.act_window,name:l10n_es_aeat_mod349.action_l10n_es_aeat_mod349_report
1044+msgid "AEAT Model 349"
1045+msgstr "Modelo AEAT 349"
1046+>>>>>>> MERGE-SOURCE
1047+
1048+#. module: l10n_es_aeat_mod349
1049+#: code:_description:0
1050 #: model:ir.model,name:l10n_es_aeat_mod349.model_l10n_es_aeat_mod349_report
1051+#, python-format
1052 msgid "AEAT Model 349 Report"
1053 msgstr "Declaración modelo AEAT 349"
1054
1055 #. module: l10n_es_aeat_mod349
1056-#: selection:account.invoice,operation_key:0
1057-#: selection:l10n.es.aeat.mod349.partner_record,operation_key:0
1058-#: selection:l10n.es.aeat.mod349.partner_refund,operation_key:0
1059-#: report:report_l10n_es_aeat_mod349.report:0
1060-msgid "T - Triangular operations"
1061-msgstr "T - Operaciones triangulares"
1062+#: code:addons/l10n_es_aeat_mod349/mod349.py:142
1063+#: code:addons/l10n_es_aeat_mod349/mod349.py:153
1064+#, python-format
1065+msgid "All amounts must be positives"
1066+msgstr "All amounts must be positives"
1067+
1068+#. module: l10n_es_aeat_mod349
1069+#: code:addons/l10n_es_aeat_mod349/mod349.py:137
1070+#, python-format
1071+msgid "All partner records fields (country, VAT number) must be filled."
1072+msgstr "Todos los campos de los registros de empresas (país, número CIF/NIF) deben estar rellenados."
1073+
1074+#. module: l10n_es_aeat_mod349
1075+#: code:addons/l10n_es_aeat_mod349/mod349.py:147
1076+#, python-format
1077+msgid "All partner refunds fields (country, VAT number) must be filled."
1078+msgstr "Todos los campos de las rectificaciones (país, número CIF/NIF) deben estar rellenados."
1079
1080 #. module: l10n_es_aeat_mod349
1081 #: field:l10n.es.aeat.mod349.partner_record_detail,amount_untaxed:0
1082@@ -338,131 +206,16 @@
1083 msgstr "Importe sin impuestos"
1084
1085 #. module: l10n_es_aeat_mod349
1086-#: field:l10n.es.aeat.mod349.partner_record,record_detail_ids:0
1087-msgid "Partner record detail IDS"
1088-msgstr "IDs Detalle de registro de empresa"
1089-
1090-#. module: l10n_es_aeat_mod349
1091-#: view:l10n.es.aeat.mod349.report:0
1092-msgid "Identification"
1093-msgstr "Identificación"
1094-
1095-#. module: l10n_es_aeat_mod349
1096-#: field:l10n.es.aeat.mod349.report,type:0
1097-msgid "Statement Type"
1098-msgstr "Tipo de declaración"
1099-
1100-#. module: l10n_es_aeat_mod349
1101-#: report:report_l10n_es_aeat_mod349.report:0
1102-msgid "Op. Amount"
1103-msgstr "Importe op."
1104-
1105-#. module: l10n_es_aeat_mod349
1106-#: view:l10n.es.aeat.mod349.report:0
1107-msgid "Confirm"
1108-msgstr "Confirmar"
1109-
1110-#. module: l10n_es_aeat_mod349
1111-#: view:l10n.es.aeat.mod349.partner_refund_detail:0
1112-msgid "AEAT 349 Partner refund"
1113-msgstr "Rectificaciones modelo 349"
1114-
1115-#. module: l10n_es_aeat_mod349
1116-#: field:l10n.es.aeat.mod349.report,state:0
1117-msgid "State"
1118-msgstr "Estado"
1119-
1120-#. module: l10n_es_aeat_mod349
1121-#: model:ir.actions.act_window,help:l10n_es_aeat_mod349.action_l10n_es_aeat_mod349_report
1122-msgid "Create and query AEAT Model 349 Reports"
1123-msgstr "Permite crear y consultar las declaraciones sobre el modelo AEAT 349"
1124-
1125-#. module: l10n_es_aeat_mod349
1126-#: report:report_l10n_es_aeat_mod349.report:0
1127-msgid "Fiscal year:"
1128-msgstr "Ejercicio fiscal:"
1129-
1130-#. module: l10n_es_aeat_mod349
1131-#: field:l10n.es.aeat.mod349.partner_record,partner_record_ok:0
1132-msgid "Partner Record OK"
1133-msgstr "Registro de empresa correcto"
1134-
1135-#. module: l10n_es_aeat_mod349
1136-#: selection:l10n.es.aeat.mod349.report,period_selection:0
1137-#: selection:l10n.es.aeat.mod349.partner_refund,period_selection:0
1138-msgid "MO - Monthly"
1139-msgstr "MO - Mensual"
1140-
1141-#. module: l10n_es_aeat_mod349
1142-#: field:l10n.es.aeat.mod349.partner_record_detail,partner_record_id:0
1143-msgid "Partner record"
1144-msgstr "Registro de empresa"
1145-
1146-#. module: l10n_es_aeat_mod349
1147-#: model:ir.model,name:l10n_es_aeat_mod349.model_l10n_es_aeat_mod349_calculate_records
1148-msgid "AEAT Model 349 Wizard - Calculate Records"
1149-msgstr "Asistente modelo AEAT 349 - Calcular registros"
1150-
1151-#. module: l10n_es_aeat_mod349
1152-#: model:ir.model,name:l10n_es_aeat_mod349.model_l10n_es_aeat_mod349_partner_refund
1153-msgid "AEAT 349 Model - Partner refund"
1154-msgstr "Modelo 349 - Rectificativa de empresa"
1155-
1156-#. module: l10n_es_aeat_mod349
1157-#: field:l10n.es.aeat.mod349.report,support_type:0
1158-msgid "Support Type"
1159-msgstr "Tipo de soporte"
1160-
1161-#. module: l10n_es_aeat_mod349
1162-#: view:l10n.es.aeat.mod349.report:0
1163-msgid "Export to BOE"
1164-msgstr "Exportar a formato BOE"
1165-
1166-#. module: l10n_es_aeat_mod349
1167-#: view:l10n.es.aeat.mod349.partner_refund_detail:0
1168-msgid "AEAT 349 Partner refund detail"
1169-msgstr "Detalle de rectificación modelo 349"
1170-
1171-#. module: l10n_es_aeat_mod349
1172-#: view:l10n.es.aeat.mod349.partner_record:0
1173-#: view:l10n.es.aeat.mod349.partner_refund:0
1174-msgid "Info"
1175-msgstr "Info"
1176-
1177-#. module: l10n_es_aeat_mod349
1178-#: report:report_l10n_es_aeat_mod349.report:0
1179-msgid "PARTNER REFUND LINES"
1180-msgstr "LÍNEAS DE RECTIFICACIONES"
1181-
1182-#. module: l10n_es_aeat_mod349
1183-#: selection:account.invoice,operation_key:0
1184-#: selection:l10n.es.aeat.mod349.partner_record,operation_key:0
1185-#: selection:l10n.es.aeat.mod349.partner_refund,operation_key:0
1186-#: report:report_l10n_es_aeat_mod349.report:0
1187-msgid "A - Intra-Community acquisition"
1188-msgstr "A - Adquisición intracomunitaria"
1189-
1190-#. module: l10n_es_aeat_mod349
1191-#: report:report_l10n_es_aeat_mod349.report:0
1192-msgid "Operation key help"
1193-msgstr "Leyenda llave de operación"
1194-
1195-#. module: l10n_es_aeat_mod349
1196-#: selection:account.invoice,operation_key:0
1197-#: selection:l10n.es.aeat.mod349.partner_record,operation_key:0
1198-#: selection:l10n.es.aeat.mod349.partner_refund,operation_key:0
1199-msgid "I - Intra-Community services acquisitions"
1200-msgstr "I - Adqusiciones intracomunitarias de servicios"
1201-
1202-#. module: l10n_es_aeat_mod349
1203-#: view:l10n.es.aeat.mod349.partner_record_detail:0
1204-msgid "AEAT 349 Partner record"
1205-msgstr "Registro de empresa modelo 349"
1206-
1207-#. module: l10n_es_aeat_mod349
1208-#: view:l10n.es.aeat.mod349.partner_refund:0
1209-msgid "AEAT 349 Partner refunds"
1210-msgstr "Rectificaciones modelo 349"
1211+#: selection:l10n.es.aeat.mod349.partner_refund,month_selection:0
1212+#: selection:l10n.es.aeat.mod349.report,month_selection:0
1213+msgid "April"
1214+msgstr "Abril"
1215+
1216+#. module: l10n_es_aeat_mod349
1217+#: selection:l10n.es.aeat.mod349.partner_refund,month_selection:0
1218+#: selection:l10n.es.aeat.mod349.report,month_selection:0
1219+msgid "August"
1220+msgstr "Agosto"
1221
1222 #. module: l10n_es_aeat_mod349
1223 #: field:l10n.es.aeat.mod349.report,calculation_date:0
1224@@ -470,158 +223,376 @@
1225 msgstr "Fecha de cálculo"
1226
1227 #. module: l10n_es_aeat_mod349
1228-#: view:l10n.es.aeat.mod349.partner_record:0
1229-msgid "Detail lines"
1230-msgstr "Líneas de detalle"
1231-
1232-#. module: l10n_es_aeat_mod349
1233-#: field:l10n.es.aeat.mod349.partner_record,partner_id:0
1234-#: field:l10n.es.aeat.mod349.partner_refund,partner_id:0
1235+#: selection:l10n.es.aeat.mod349.report,state:0
1236+msgid "Cancelled"
1237+msgstr "Cancelled"
1238+
1239+#. module: l10n_es_aeat_mod349
1240+#: code:addons/l10n_es_aeat_mod349/account_invoice.py:107
1241+#, python-format
1242+msgid ""
1243+"Cannot get invoices.\n"
1244+"There is no month and/or fiscalyear selected"
1245+msgstr ""
1246+"Cannot get invoices.\n"
1247+"There is no month and/or fiscalyear selected"
1248+
1249+#. module: l10n_es_aeat_mod349
1250+#: code:addons/l10n_es_aeat_mod349/account_invoice.py:99
1251+#, python-format
1252+msgid ""
1253+"Cannot get invoices.\n"
1254+"There is no period selected"
1255+msgstr ""
1256+"Cannot get invoices.\n"
1257+"There is no period selected"
1258+
1259+#. module: l10n_es_aeat_mod349
1260+#: code:addons/l10n_es_aeat_mod349/account_invoice.py:90
1261+#, python-format
1262+msgid ""
1263+"Cannot get invoices.\n"
1264+"There is no fiscalyear selected"
1265+msgstr ""
1266+"Cannot get invoices.\n"
1267+"There is no fiscalyear selected"
1268+
1269+#. module: l10n_es_aeat_mod349
1270+#: help:l10n.es.aeat.mod349.partner_record,partner_record_ok:0
1271+msgid "Checked if partner record is OK"
1272+msgstr "Marcado si el registro de empresa está correcto"
1273+
1274+#. module: l10n_es_aeat_mod349
1275+#: help:l10n.es.aeat.mod349.partner_refund,partner_refund_ok:0
1276+msgid "Checked if refund record is OK"
1277+msgstr "Marcado si el registro de factura rectificativa está correcto"
1278+
1279+#. module: l10n_es_aeat_mod349
1280+#: field:l10n.es.aeat.mod349.report,company_id:0
1281+msgid "Company"
1282+msgstr "Compañía"
1283+
1284+#. module: l10n_es_aeat_mod349
1285+#: code:addons/l10n_es_aeat_mod349/mod349.py:167
1286+#, python-format
1287+msgid ""
1288+"Company has no company title.\n"
1289+"This may cause some problems when trying to import on AEAT help program"
1290+msgstr ""
1291+"La compañía no tiene un título definido.\n"
1292+"Esto podría causar algunos problemas intentando importar en el programa de ayuda de la AEAT."
1293+
1294+#. module: l10n_es_aeat_mod349
1295+#: code:addons/l10n_es_aeat_mod349/mod349.py:166
1296+#, python-format
1297+msgid "Company without Title"
1298+msgstr "Compañía sin título"
1299+
1300+#. module: l10n_es_aeat_mod349
1301+#: view:l10n.es.aeat.mod349.report:0
1302+msgid "Complementaria"
1303+msgstr "Complementaria"
1304+
1305+#. module: l10n_es_aeat_mod349
1306+#: selection:l10n.es.aeat.mod349.report,type:0
1307+msgid "Complementary"
1308+msgstr "Complementaria"
1309+
1310+#. module: l10n_es_aeat_mod349
1311+#: code:addons/l10n_es_aeat_mod349/mod349.py:176
1312+#, python-format
1313+msgid "Contact name (Full name) must have name and surname"
1314+msgstr "El nombre del contacto (Nombre completo) debe contener nombre y apellidos"
1315+
1316+#. module: l10n_es_aeat_mod349
1317+#: field:l10n.es.aeat.mod349.partner_record,country_id:0
1318+#: field:l10n.es.aeat.mod349.partner_refund,country_id:0
1319 #: report:report_l10n_es_aeat_mod349.report:0
1320-msgid "Partner"
1321-msgstr "Empresa"
1322-
1323-#. module: l10n_es_aeat_mod349
1324-#: field:l10n.es.aeat.mod349.report,contact_name:0
1325-msgid "Full Name"
1326-msgstr "Nombre completo"
1327-
1328-#. module: l10n_es_aeat_mod349
1329-#: selection:l10n.es.aeat.mod349.report,month_selection:0
1330-#: selection:l10n.es.aeat.mod349.partner_refund,month_selection:0
1331-msgid "September"
1332-msgstr "Septiembre"
1333-
1334-#. module: l10n_es_aeat_mod349
1335-#: selection:l10n.es.aeat.mod349.report,month_selection:0
1336-#: selection:l10n.es.aeat.mod349.partner_refund,month_selection:0
1337+msgid "Country"
1338+msgstr "País"
1339+
1340+#. module: l10n_es_aeat_mod349
1341+#: model:ir.actions.act_window,help:l10n_es_aeat_mod349.action_l10n_es_aeat_mod349_report
1342+msgid "Create and query AEAT Model 349 reports"
1343+msgstr "Crea y consulta declaraciones de la AEAT modelo 349"
1344+
1345+#. module: l10n_es_aeat_mod349
1346+#: selection:l10n.es.aeat.mod349.report,support_type:0
1347+msgid "DVD"
1348+msgstr "DVD"
1349+
1350+#. module: l10n_es_aeat_mod349
1351+#: field:l10n.es.aeat.mod349.partner_record_detail,date:0
1352+#: field:l10n.es.aeat.mod349.partner_refund_detail,date:0
1353+msgid "Date"
1354+msgstr "Fecha"
1355+
1356+#. module: l10n_es_aeat_mod349
1357+#: selection:l10n.es.aeat.mod349.partner_refund,month_selection:0
1358+#: selection:l10n.es.aeat.mod349.report,month_selection:0
1359 msgid "December"
1360 msgstr "Diciembre"
1361
1362 #. module: l10n_es_aeat_mod349
1363-#: report:report_l10n_es_aeat_mod349.report:0
1364-msgid "Support type:"
1365-msgstr "Tipo de soporte:"
1366-
1367-#. module: l10n_es_aeat_mod349
1368-#: view:l10n.es.aeat.mod349.partner_record:0
1369-msgid "AEAT 349 Partner records"
1370-msgstr "Registros de empresa modelo 349"
1371+#: view:l10n.es.aeat.mod349.report:0
1372+msgid "Declaración"
1373+msgstr "Declaración"
1374
1375 #. module: l10n_es_aeat_mod349
1376 #: field:l10n.es.aeat.mod349.report,number:0
1377-msgid "Declaration Number"
1378-msgstr "Número de declaración"
1379-
1380-#. module: l10n_es_aeat_mod349
1381-#: field:l10n.es.aeat.mod349.report,month_selection:0
1382-#: field:l10n.es.aeat.mod349.partner_refund,month_selection:0
1383-msgid "Month"
1384-msgstr "Mes"
1385-
1386-#. module: l10n_es_aeat_mod349
1387-#: selection:l10n.es.aeat.mod349.report,state:0
1388-msgid "Canceled"
1389-msgstr "Cancelada"
1390-
1391-#. module: l10n_es_aeat_mod349
1392-#: model:ir.model,name:l10n_es_aeat_mod349.model_l10n_es_aeat_mod349_partner_record_detail
1393-msgid "AEAT 349 Model - Partner record detail"
1394-msgstr "Modelo 349 - Detalle de registro de empresa"
1395-
1396-#. module: l10n_es_aeat_mod349
1397-#: selection:l10n.es.aeat.mod349.report,period_selection:0
1398-#: selection:l10n.es.aeat.mod349.partner_refund,period_selection:0
1399-msgid "3T - Third Quarter"
1400-msgstr "3T - Tercer Trimestre"
1401-
1402-#. module: l10n_es_aeat_mod349
1403-#: view:l10n.es.aeat.mod349.report:0
1404-msgid "Calculate"
1405-msgstr "Calcular"
1406-
1407-#. module: l10n_es_aeat_mod349
1408-#: selection:l10n.es.aeat.mod349.report,support_type:0
1409-msgid "DVD"
1410-msgstr "DVD"
1411-
1412-#. module: l10n_es_aeat_mod349
1413+msgid "Declaration number"
1414+msgstr "Número declaración"
1415+
1416+#. module: l10n_es_aeat_mod349
1417+#: view:l10n.es.aeat.mod349.partner_record:0
1418+msgid "Detail lines"
1419+msgstr "Líneas de detalle"
1420+
1421+#. module: l10n_es_aeat_mod349
1422+#: view:l10n.es.aeat.mod349.partner_refund:0
1423+msgid "Details"
1424+msgstr "Detalles"
1425+
1426+#. module: l10n_es_aeat_mod349
1427+#: selection:l10n.es.aeat.mod349.report,state:0
1428+msgid "Done"
1429+msgstr "Realizada"
1430+
1431+#. module: l10n_es_aeat_mod349
1432+#: selection:l10n.es.aeat.mod349.report,state:0
1433+msgid "Draft"
1434+msgstr "Borrador"
1435+
1436+#. module: l10n_es_aeat_mod349
1437+#: selection:account.invoice,operation_key:0
1438+#: selection:l10n.es.aeat.mod349.partner_record,operation_key:0
1439+#: selection:l10n.es.aeat.mod349.partner_refund,operation_key:0
1440 #: report:report_l10n_es_aeat_mod349.report:0
1441-msgid "AEAT 349 MODEL"
1442-msgstr "MODELO 349"
1443-
1444-#. module: l10n_es_aeat_mod349
1445+msgid "E - Intra-Community supplies"
1446+msgstr "E - Entregas intracomunitarias"
1447+
1448+#. module: l10n_es_aeat_mod349
1449+#: code:addons/l10n_es_aeat_mod349/account_invoice.py:89
1450+#: code:addons/l10n_es_aeat_mod349/account_invoice.py:98
1451+#: code:addons/l10n_es_aeat_mod349/account_invoice.py:106
1452+#, python-format
1453+msgid "Error"
1454+msgstr "Error"
1455+
1456+#. module: l10n_es_aeat_mod349
1457+#: code:addons/l10n_es_aeat_mod349/mod349.py:136
1458+#: code:addons/l10n_es_aeat_mod349/mod349.py:141
1459+#: code:addons/l10n_es_aeat_mod349/mod349.py:146
1460+#: code:addons/l10n_es_aeat_mod349/mod349.py:152
1461+#: code:addons/l10n_es_aeat_mod349/mod349.py:175
1462+#: code:addons/l10n_es_aeat_mod349/mod349.py:185
1463+#: code:addons/l10n_es_aeat_mod349/mod349.py:191
1464+#: code:addons/l10n_es_aeat_mod349/mod349.py:198
1465+#, python-format
1466+msgid "Error!"
1467+msgstr "¡Error!"
1468+
1469+#. module: l10n_es_aeat_mod349
1470+#: model:ir.actions.act_window,name:l10n_es_aeat_mod349.action_wizard_aeat_mod349_export
1471+msgid "Export AEAT 349 BOE file"
1472+msgstr "Exportar archivo BOE de la AEAT 349"
1473+
1474+#. module: l10n_es_aeat_mod349
1475+#: code:_description:0
1476 #: model:ir.model,name:l10n_es_aeat_mod349.model_l10n_es_aeat_mod349_export_to_boe
1477+#, python-format
1478 msgid "Export AEAT Model 349 to BOE format"
1479 msgstr "Exportar modelo AEAT 349 a formato BOE"
1480
1481 #. module: l10n_es_aeat_mod349
1482-#: view:l10n.es.aeat.mod349.report:0
1483-#: selection:l10n.es.aeat.mod349.report,state:0
1484-msgid "Draft"
1485-msgstr "Borrador"
1486-
1487-#. module: l10n_es_aeat_mod349
1488-#: field:l10n.es.aeat.mod349.report,company_vat:0
1489-msgid "VAT number"
1490-msgstr "CIF/NIF"
1491-
1492-#. module: l10n_es_aeat_mod349
1493-#: field:l10n.es.aeat.mod349.partner_refund,refund_detail_ids:0
1494-msgid "Partner refund detail IDS"
1495-msgstr "IDs Detalles de rectificaciones"
1496-
1497-#. module: l10n_es_aeat_mod349
1498-#: report:report_l10n_es_aeat_mod349.report:0
1499-msgid "Orig. Amount"
1500-msgstr "Importe orig."
1501+#: selection:l10n.es.aeat.mod349.partner_refund,month_selection:0
1502+#: selection:l10n.es.aeat.mod349.report,month_selection:0
1503+msgid "February"
1504+msgstr "Febrero"
1505+
1506+#. module: l10n_es_aeat_mod349
1507+#: field:l10n.es.aeat.mod349.export_to_boe,data:0
1508+msgid "File"
1509+msgstr "Archivo"
1510+
1511+#. module: l10n_es_aeat_mod349
1512+#: field:l10n.es.aeat.mod349.export_to_boe,name:0
1513+msgid "File name"
1514+msgstr "Nombre de archivo"
1515+
1516+#. module: l10n_es_aeat_mod349
1517+#: code:addons/l10n_es_aeat_mod349/wizard/export_mod349_to_boe.py:91
1518+#: code:addons/l10n_es_aeat_mod349/wizard/export_mod349_to_boe.py:155
1519+#, python-format
1520+msgid "First four characters of fiscal year code must be numeric and contain the fiscal year number. Please, fix it and try again."
1521+msgstr "First four characters of fiscal year code must be numeric and contain the fiscal year number. Please, fix it and try again."
1522+
1523+#. module: l10n_es_aeat_mod349
1524+#: code:_description:0
1525+#: model:ir.model,name:l10n_es_aeat_mod349.model_account_fiscal_position
1526+#, python-format
1527+msgid "Fiscal Position"
1528+msgstr "Posición fiscal"
1529
1530 #. module: l10n_es_aeat_mod349
1531 #: field:l10n.es.aeat.mod349.partner_refund,fiscalyear_id:0
1532-msgid "Fiscalyear"
1533+#: field:l10n.es.aeat.mod349.report,fiscalyear_id:0
1534+msgid "Fiscal year"
1535 msgstr "Ejercicio fiscal"
1536
1537 #. module: l10n_es_aeat_mod349
1538-#: field:l10n.es.aeat.mod349.partner_refund_detail,total_origin_amount:0
1539-msgid "Origin total amount"
1540-msgstr "Total original"
1541-
1542-#. module: l10n_es_aeat_mod349
1543-#: selection:l10n.es.aeat.mod349.report,month_selection:0
1544-#: selection:l10n.es.aeat.mod349.partner_refund,month_selection:0
1545-msgid "August"
1546-msgstr "Agosto"
1547-
1548-#. module: l10n_es_aeat_mod349
1549-#: selection:l10n.es.aeat.mod349.report,state:0
1550-msgid "Processing"
1551-msgstr "Procesando"
1552-
1553-#. module: l10n_es_aeat_mod349
1554-#: selection:l10n.es.aeat.mod349.report,month_selection:0
1555-#: selection:l10n.es.aeat.mod349.partner_refund,month_selection:0
1556+#: code:addons/l10n_es_aeat_mod349/wizard/export_mod349_to_boe.py:90
1557+#: code:addons/l10n_es_aeat_mod349/wizard/export_mod349_to_boe.py:154
1558+#, python-format
1559+msgid "Fiscal year code"
1560+msgstr "Fiscal year code"
1561+
1562+#. module: l10n_es_aeat_mod349
1563+#: report:report_l10n_es_aeat_mod349.report:0
1564+msgid "Fiscal year:"
1565+msgstr "Ejercicio fiscal:"
1566+
1567+#. module: l10n_es_aeat_mod349
1568+#: field:l10n.es.aeat.mod349.report,frequency_change:0
1569+msgid "Frequency change"
1570+msgstr "Cambio de frecuencia"
1571+
1572+#. module: l10n_es_aeat_mod349
1573+#: field:l10n.es.aeat.mod349.report,contact_name:0
1574+msgid "Full Name"
1575+msgstr "Nombre completo"
1576+
1577+#. module: l10n_es_aeat_mod349
1578+#: view:l10n.es.aeat.mod349.report:0
1579+msgid "General"
1580+msgstr "General"
1581+
1582+#. module: l10n_es_aeat_mod349
1583+#: selection:account.invoice,operation_key:0
1584+#: selection:l10n.es.aeat.mod349.partner_record,operation_key:0
1585+#: selection:l10n.es.aeat.mod349.partner_refund,operation_key:0
1586+msgid "H - Intra-Community supplies without taxes delivered by legal representative"
1587+msgstr "H - Intra-Community supplies without taxes delivered by legal representative"
1588+
1589+#. module: l10n_es_aeat_mod349
1590+#: selection:account.invoice,operation_key:0
1591+#: selection:l10n.es.aeat.mod349.partner_record,operation_key:0
1592+#: selection:l10n.es.aeat.mod349.partner_refund,operation_key:0
1593+msgid "I - Intra-Community services acquisitions"
1594+msgstr "I - Adqusiciones intracomunitarias de servicios"
1595+
1596+#. module: l10n_es_aeat_mod349
1597+#: view:l10n.es.aeat.mod349.partner_record:0
1598+#: view:l10n.es.aeat.mod349.partner_refund:0
1599+msgid "Info"
1600+msgstr "Info"
1601+
1602+#. module: l10n_es_aeat_mod349
1603+#: field:account.fiscal.position,intracommunity_operations:0
1604+msgid "Intra-Community operations"
1605+msgstr "Operaciones intracomunitarias"
1606+
1607+#. module: l10n_es_aeat_mod349
1608+#: code:_description:0
1609+#: model:ir.model,name:l10n_es_aeat_mod349.model_account_invoice
1610+#: field:l10n.es.aeat.mod349.partner_record_detail,invoice_id:0
1611+#, python-format
1612+msgid "Invoice"
1613+msgstr "Factura"
1614+
1615+#. module: l10n_es_aeat_mod349
1616+#: field:l10n.es.aeat.mod349.partner_refund_detail,invoice_id:0
1617+msgid "Invoice ID"
1618+msgstr "ID Factura"
1619+
1620+#. module: l10n_es_aeat_mod349
1621+#: selection:l10n.es.aeat.mod349.partner_refund,month_selection:0
1622+#: selection:l10n.es.aeat.mod349.report,month_selection:0
1623+msgid "January"
1624+msgstr "Enero"
1625+
1626+#. module: l10n_es_aeat_mod349
1627+#: selection:l10n.es.aeat.mod349.partner_refund,month_selection:0
1628+#: selection:l10n.es.aeat.mod349.report,month_selection:0
1629+msgid "July"
1630+msgstr "Julio"
1631+
1632+#. module: l10n_es_aeat_mod349
1633+#: selection:l10n.es.aeat.mod349.partner_refund,month_selection:0
1634+#: selection:l10n.es.aeat.mod349.report,month_selection:0
1635 msgid "June"
1636 msgstr "Junio"
1637
1638 #. module: l10n_es_aeat_mod349
1639-#: view:l10n.es.aeat.mod349.report:0
1640-msgid "Options"
1641-msgstr "Opciones"
1642-
1643-#. module: l10n_es_aeat_mod349
1644-#: field:l10n.es.aeat.mod349.report,contact_phone:0
1645-msgid "Phone"
1646-msgstr "Teléfono"
1647-
1648-#. module: l10n_es_aeat_mod349
1649-#: field:l10n.es.aeat.mod349.partner_record_detail,date:0
1650-#: field:l10n.es.aeat.mod349.partner_refund_detail,date:0
1651-msgid "Date"
1652-msgstr "Fecha"
1653-
1654-#. module: l10n_es_aeat_mod349
1655-#: selection:l10n.es.aeat.mod349.report,month_selection:0
1656-#: selection:l10n.es.aeat.mod349.partner_refund,month_selection:0
1657+#: field:l10n.es.aeat.mod349.report,representative_vat:0
1658+msgid "L.R. VAT number"
1659+msgstr "CIF/NIF Repr. legal"
1660+
1661+#. module: l10n_es_aeat_mod349
1662+#: help:l10n.es.aeat.mod349.report,representative_vat:0
1663+msgid "Legal Representative VAT number."
1664+msgstr "CIF/NIF Reprensentante legal."
1665+
1666+#. module: l10n_es_aeat_mod349
1667+#: selection:account.invoice,operation_key:0
1668+#: selection:l10n.es.aeat.mod349.partner_record,operation_key:0
1669+#: selection:l10n.es.aeat.mod349.partner_refund,operation_key:0
1670+msgid "M - Intra-Community supplies without taxes"
1671+msgstr "M - Intra-Community supplies without taxes"
1672+
1673+#. module: l10n_es_aeat_mod349
1674+#: selection:l10n.es.aeat.mod349.partner_refund,period_selection:0
1675+#: selection:l10n.es.aeat.mod349.report,period_selection:0
1676+msgid "MO - Monthly"
1677+msgstr "MO - Mensual"
1678+
1679+#. module: l10n_es_aeat_mod349
1680+#: selection:l10n.es.aeat.mod349.partner_refund,month_selection:0
1681+#: selection:l10n.es.aeat.mod349.report,month_selection:0
1682+msgid "March"
1683+msgstr "Marzo"
1684+
1685+#. module: l10n_es_aeat_mod349
1686+#: selection:l10n.es.aeat.mod349.partner_refund,month_selection:0
1687+#: selection:l10n.es.aeat.mod349.report,month_selection:0
1688+msgid "May"
1689+msgstr "Mayo"
1690+
1691+#. module: l10n_es_aeat_mod349
1692+#: field:l10n.es.aeat.mod349.partner_refund,month_selection:0
1693+#: field:l10n.es.aeat.mod349.report,month_selection:0
1694+msgid "Month"
1695+msgstr "Mes"
1696+
1697+#. module: l10n_es_aeat_mod349
1698+#: help:l10n.es.aeat.mod349.report,contact_name:0
1699+msgid "Must have name and surname."
1700+msgstr "Debe contener nombre y apellidos"
1701+
1702+#. module: l10n_es_aeat_mod349
1703+#: field:l10n.es.aeat.mod349.partner_record,name:0
1704+#: field:l10n.es.aeat.mod349.report,name:0
1705+msgid "Name"
1706+msgstr "Nombre"
1707+
1708+#. module: l10n_es_aeat_mod349
1709+#: code:addons/l10n_es_aeat_mod349/mod349.py:186
1710+#, python-format
1711+msgid ""
1712+"Name '%s' have not allowed characters.\n"
1713+"Please, fix it before confirm the report"
1714+msgstr ""
1715+"El nombre '%s' tiene caracteres no permitidos.\n"
1716+"Por favor, arréglelo antes de confirmar la declaración."
1717+
1718+#. module: l10n_es_aeat_mod349
1719+#: selection:l10n.es.aeat.mod349.report,type:0
1720+msgid "Normal"
1721+msgstr "Normal"
1722+
1723+#. module: l10n_es_aeat_mod349
1724+#: selection:l10n.es.aeat.mod349.partner_refund,month_selection:0
1725+#: selection:l10n.es.aeat.mod349.report,month_selection:0
1726 msgid "November"
1727 msgstr "Noviembre"
1728
1729@@ -631,91 +602,20 @@
1730 msgstr "Número:"
1731
1732 #. module: l10n_es_aeat_mod349
1733-#: field:l10n.es.aeat.mod349.partner_record,total_operation_amount:0
1734-#: field:l10n.es.aeat.mod349.partner_refund,total_operation_amount:0
1735-msgid "Total operation amount"
1736-msgstr "Importe total operación"
1737-
1738-#. module: l10n_es_aeat_mod349
1739+#: selection:l10n.es.aeat.mod349.partner_refund,month_selection:0
1740 #: selection:l10n.es.aeat.mod349.report,month_selection:0
1741-#: selection:l10n.es.aeat.mod349.partner_refund,month_selection:0
1742 msgid "October"
1743 msgstr "Octubre"
1744
1745 #. module: l10n_es_aeat_mod349
1746-#: selection:l10n.es.aeat.mod349.report,period_selection:0
1747-#: selection:l10n.es.aeat.mod349.partner_refund,period_selection:0
1748-msgid "2T - Second Quarter"
1749-msgstr "2T - Segundo Trimestre"
1750-
1751-#. module: l10n_es_aeat_mod349
1752-#: selection:l10n.es.aeat.mod349.report,month_selection:0
1753-#: selection:l10n.es.aeat.mod349.partner_refund,month_selection:0
1754-msgid "January"
1755-msgstr "Enero"
1756-
1757-#. module: l10n_es_aeat_mod349
1758-#: view:l10n.es.aeat.mod349.report:0
1759-msgid "Summary"
1760-msgstr "Resumen"
1761-
1762-#. module: l10n_es_aeat_mod349
1763-#: selection:l10n.es.aeat.mod349.report,state:0
1764-msgid "Processed"
1765-msgstr "Calculada"
1766-
1767-#. module: l10n_es_aeat_mod349
1768-#: field:l10n.es.aeat.mod349.report,representative_vat:0
1769-msgid "L.R. VAT number"
1770-msgstr "CIF/NIF Repr. legal"
1771-
1772-#. module: l10n_es_aeat_mod349
1773-#: selection:account.invoice,operation_key:0
1774-#: selection:l10n.es.aeat.mod349.partner_record,operation_key:0
1775-#: selection:l10n.es.aeat.mod349.partner_refund,operation_key:0
1776-msgid "S - Intra-Community services"
1777-msgstr "S - Prestaciones de servicios intracomunitarias"
1778-
1779-#. module: l10n_es_aeat_mod349
1780-#: field:l10n.es.aeat.mod349.report,total_partner_records:0
1781-msgid "Partners records"
1782-msgstr "Registros de empresa"
1783-
1784-#. module: l10n_es_aeat_mod349
1785-#: model:ir.actions.report.xml,name:l10n_es_aeat_mod349.report_l10n_es_aeat_mod349
1786-msgid "AEAT 349 Model report"
1787-msgstr "Declaración modelo 349"
1788-
1789-#. module: l10n_es_aeat_mod349
1790-#: view:l10n.es.aeat.mod349.report:0
1791-msgid "General"
1792-msgstr "General"
1793-
1794-#. module: l10n_es_aeat_mod349
1795-#: model:ir.model,name:l10n_es_aeat_mod349.model_account_invoice
1796-#: field:l10n.es.aeat.mod349.partner_record_detail,invoice_id:0
1797-msgid "Invoice"
1798-msgstr "Factura"
1799-
1800-#. module: l10n_es_aeat_mod349
1801-#: view:l10n.es.aeat.mod349.report:0
1802-msgid "Cancel"
1803-msgstr "Cancelar"
1804-
1805-#. module: l10n_es_aeat_mod349
1806-#: view:l10n.es.aeat.mod349.report:0
1807-msgid "AEAT 349"
1808-msgstr "AEAT 349"
1809-
1810-#. module: l10n_es_aeat_mod349
1811-#: view:l10n.es.aeat.mod349.report:0
1812-msgid "Complementary/Substitutive declaration"
1813-msgstr "Declaración Complementaria / Sustitutiva"
1814-
1815-#. module: l10n_es_aeat_mod349
1816-#: view:l10n.es.aeat.mod349.partner_refund:0
1817-msgid "Details"
1818-msgstr "Detalles"
1819+#: report:report_l10n_es_aeat_mod349.report:0
1820+msgid "Op. Amount"
1821+msgstr "Importe op."
1822+
1823+#. module: l10n_es_aeat_mod349
1824+#: report:report_l10n_es_aeat_mod349.report:0
1825+msgid "Op.Amount"
1826+msgstr "Importe op."
1827
1828 #. module: l10n_es_aeat_mod349
1829 #: report:report_l10n_es_aeat_mod349.report:0
1830@@ -730,20 +630,24 @@
1831 msgstr "Clave operación"
1832
1833 #. module: l10n_es_aeat_mod349
1834-#: selection:l10n.es.aeat.mod349.report,type:0
1835-msgid "Complementary"
1836-msgstr "Complementaria"
1837-
1838-#. module: l10n_es_aeat_mod349
1839-#: selection:l10n.es.aeat.mod349.report,month_selection:0
1840-#: selection:l10n.es.aeat.mod349.partner_refund,month_selection:0
1841-msgid "May"
1842-msgstr "Mayo"
1843-
1844-#. module: l10n_es_aeat_mod349
1845-#: field:l10n.es.aeat.mod349.report,frequency_change:0
1846-msgid "Frequency change"
1847-msgstr "Cambio de frecuencia"
1848+#: report:report_l10n_es_aeat_mod349.report:0
1849+msgid "Operation key help"
1850+msgstr "Leyenda llave de operación"
1851+
1852+#. module: l10n_es_aeat_mod349
1853+#: view:l10n.es.aeat.mod349.report:0
1854+msgid "Options"
1855+msgstr "Opciones"
1856+
1857+#. module: l10n_es_aeat_mod349
1858+#: report:report_l10n_es_aeat_mod349.report:0
1859+msgid "Orig. Amount"
1860+msgstr "Importe orig."
1861+
1862+#. module: l10n_es_aeat_mod349
1863+#: field:l10n.es.aeat.mod349.partner_refund,total_origin_amount:0
1864+msgid "Original amount"
1865+msgstr "Importe original"
1866
1867 #. module: l10n_es_aeat_mod349
1868 #: report:report_l10n_es_aeat_mod349.report:0
1869@@ -751,44 +655,126 @@
1870 msgstr "LÍNEAS DE REGISTRO DE EMPRESA"
1871
1872 #. module: l10n_es_aeat_mod349
1873+#: report:report_l10n_es_aeat_mod349.report:0
1874+msgid "PARTNER REFUND LINES"
1875+msgstr "LÍNEAS DE RECTIFICACIONES"
1876+
1877+#. module: l10n_es_aeat_mod349
1878+#: field:l10n.es.aeat.mod349.partner_record,partner_id:0
1879+#: field:l10n.es.aeat.mod349.partner_refund,partner_id:0
1880+#: report:report_l10n_es_aeat_mod349.report:0
1881+msgid "Partner"
1882+msgstr "Empresa"
1883+
1884+#. module: l10n_es_aeat_mod349
1885+#: field:l10n.es.aeat.mod349.partner_record,partner_record_ok:0
1886+msgid "Partner Record OK"
1887+msgstr "Registro de empresa correcto"
1888+
1889+#. module: l10n_es_aeat_mod349
1890+#: code:addons/l10n_es_aeat_mod349/mod349.py:192
1891+#, python-format
1892+msgid "Partner name '%s' in partner records is not valid due to incorrect characters"
1893+msgstr "El nombre de la empresa '%s' en los registros de empresas no es válido debido a caracteres incorrectos."
1894+
1895+#. module: l10n_es_aeat_mod349
1896+#: code:addons/l10n_es_aeat_mod349/mod349.py:199
1897+#, python-format
1898+msgid "Partner name '%s' in refund lines is not valid due to incorrect characters"
1899+msgstr "El nombre de la empresa '%s' en las líneas de rectificaciones no es válido por contener caracteres incorrectos."
1900+
1901+#. module: l10n_es_aeat_mod349
1902+#: field:l10n.es.aeat.mod349.partner_record_detail,partner_record_id:0
1903+msgid "Partner record"
1904+msgstr "Registro de empresa"
1905+
1906+#. module: l10n_es_aeat_mod349
1907+#: field:l10n.es.aeat.mod349.partner_record,record_detail_ids:0
1908+msgid "Partner record detail IDS"
1909+msgstr "IDs Detalle de registro de empresa"
1910+
1911+#. module: l10n_es_aeat_mod349
1912+#: view:l10n.es.aeat.mod349.report:0
1913+#: field:l10n.es.aeat.mod349.report,partner_record_ids:0
1914+msgid "Partner records"
1915+msgstr "Registros de empresas"
1916+
1917+#. module: l10n_es_aeat_mod349
1918+#: field:l10n.es.aeat.mod349.partner_refund_detail,refund_id:0
1919+msgid "Partner refund ID"
1920+msgstr "ID Rectificación"
1921+
1922+#. module: l10n_es_aeat_mod349
1923+#: field:l10n.es.aeat.mod349.report,partner_refund_ids:0
1924+msgid "Partner refund IDS"
1925+msgstr "IDs de rectificaciones"
1926+
1927+#. module: l10n_es_aeat_mod349
1928+#: field:l10n.es.aeat.mod349.partner_refund,partner_refund_ok:0
1929+msgid "Partner refund OK"
1930+msgstr "Rectificación correcta"
1931+
1932+#. module: l10n_es_aeat_mod349
1933+#: field:l10n.es.aeat.mod349.partner_refund,refund_detail_ids:0
1934+msgid "Partner refund detail IDS"
1935+msgstr "IDs Detalles de rectificaciones"
1936+
1937+#. module: l10n_es_aeat_mod349
1938+#: field:l10n.es.aeat.mod349.report,total_partner_records:0
1939+msgid "Partners records"
1940+msgstr "Registros de empresa"
1941+
1942+#. module: l10n_es_aeat_mod349
1943 #: field:l10n.es.aeat.mod349.report,total_partner_records_amount:0
1944 msgid "Partners records amount"
1945 msgstr "Importe registros empresas"
1946
1947 #. module: l10n_es_aeat_mod349
1948-#: model:ir.actions.act_window,name:l10n_es_aeat_mod349.action_l10n_es_aeat_mod349_report
1949-#: model:ir.model,name:l10n_es_aeat_mod349.model_l10n_es_aeat_mod349
1950-#: model:ir.module.module,shortdesc:l10n_es_aeat_mod349.module_meta_information
1951-msgid "AEAT Model 349"
1952-msgstr "Modelo AEAT 349"
1953-
1954-#. module: l10n_es_aeat_mod349
1955-#: model:ir.model,name:l10n_es_aeat_mod349.model_l10n_es_aeat_mod349_partner_record
1956-msgid "AEAT 349 Model - Partner record"
1957-msgstr "Modelo 349 - Registro de empresa"
1958-
1959-#. module: l10n_es_aeat_mod349
1960-#: selection:l10n.es.aeat.mod349.report,period_selection:0
1961-#: selection:l10n.es.aeat.mod349.partner_refund,period_selection:0
1962-msgid "0A - Annual"
1963-msgstr "0A - Anual"
1964-
1965-#. module: l10n_es_aeat_mod349
1966-#: help:l10n.es.aeat.mod349.report,representative_vat:0
1967-msgid "Legal Representative VAT number."
1968-msgstr "CIF/NIF Reprensentante legal."
1969-
1970-#. module: l10n_es_aeat_mod349
1971-#: selection:l10n.es.aeat.mod349.report,month_selection:0
1972-#: selection:l10n.es.aeat.mod349.partner_refund,month_selection:0
1973-msgid "February"
1974-msgstr "Febrero"
1975-
1976-#. module: l10n_es_aeat_mod349
1977-#: field:l10n.es.aeat.mod349.partner_record,name:0
1978-#: field:l10n.es.aeat.mod349.report,name:0
1979-msgid "Name"
1980-msgstr "Nombre"
1981+#: field:l10n.es.aeat.mod349.report,total_partner_refunds:0
1982+msgid "Partners refunds"
1983+msgstr "Rectificaciones"
1984+
1985+#. module: l10n_es_aeat_mod349
1986+#: field:l10n.es.aeat.mod349.report,total_partner_refunds_amount:0
1987+msgid "Partners refunds amount"
1988+msgstr "Importe rectificaciones"
1989+
1990+#. module: l10n_es_aeat_mod349
1991+#: field:l10n.es.aeat.mod349.partner_refund,period_selection:0
1992+#: field:l10n.es.aeat.mod349.report,period_selection:0
1993+#: report:report_l10n_es_aeat_mod349.report:0
1994+msgid "Period"
1995+msgstr "Período"
1996+
1997+#. module: l10n_es_aeat_mod349
1998+#: field:l10n.es.aeat.mod349.report,period_ids:0
1999+msgid "Periods"
2000+msgstr "Periods"
2001+
2002+#. module: l10n_es_aeat_mod349
2003+#: field:l10n.es.aeat.mod349.report,contact_phone:0
2004+msgid "Phone"
2005+msgstr "Teléfono"
2006+
2007+#. module: l10n_es_aeat_mod349
2008+#: field:l10n.es.aeat.mod349.report,previous_number:0
2009+msgid "Previous declaration number"
2010+msgstr "Previous declaration number"
2011+
2012+#. module: l10n_es_aeat_mod349
2013+#: selection:l10n.es.aeat.mod349.report,state:0
2014+msgid "Processed"
2015+msgstr "Calculada"
2016+
2017+#. module: l10n_es_aeat_mod349
2018+#: view:l10n.es.aeat.mod349.partner_refund:0
2019+msgid "Refund data"
2020+msgstr "Datos rectificación"
2021+
2022+#. module: l10n_es_aeat_mod349
2023+#: help:l10n.es.aeat.mod349.partner_refund,total_origin_amount:0
2024+msgid "Refund original amount"
2025+msgstr "Importe operación original"
2026
2027 #. module: l10n_es_aeat_mod349
2028 #: view:l10n.es.aeat.mod349.report:0
2029@@ -796,27 +782,55 @@
2030 msgstr "Rectificaciones"
2031
2032 #. module: l10n_es_aeat_mod349
2033-#: field:l10n.es.aeat.mod349.partner_record,country_id:0
2034-#: field:l10n.es.aeat.mod349.partner_refund,country_id:0
2035-#: report:report_l10n_es_aeat_mod349.report:0
2036-msgid "Country"
2037-msgstr "País"
2038-
2039-#. module: l10n_es_aeat_mod349
2040+#: view:l10n.es.aeat.mod349.report:0
2041+msgid "Resultado"
2042+msgstr "Resultado"
2043+
2044+#. module: l10n_es_aeat_mod349
2045+#: selection:account.invoice,operation_key:0
2046+#: selection:l10n.es.aeat.mod349.partner_record,operation_key:0
2047+#: selection:l10n.es.aeat.mod349.partner_refund,operation_key:0
2048+msgid "S - Intra-Community services"
2049+msgstr "S - Prestaciones de servicios intracomunitarias"
2050+
2051+#. module: l10n_es_aeat_mod349
2052+#: selection:l10n.es.aeat.mod349.partner_refund,month_selection:0
2053 #: selection:l10n.es.aeat.mod349.report,month_selection:0
2054-#: selection:l10n.es.aeat.mod349.partner_refund,month_selection:0
2055-msgid "April"
2056-msgstr "Abril"
2057-
2058-#. module: l10n_es_aeat_mod349
2059-#: help:l10n.es.aeat.mod349.partner_refund,partner_refund_ok:0
2060-msgid "Checked if Refund record is OK"
2061-msgstr "Marcado si el registro de rectificación es correcto."
2062-
2063-#. module: l10n_es_aeat_mod349
2064-#: report:report_l10n_es_aeat_mod349.report:0
2065-msgid "Op.Amount"
2066-msgstr "Importe op."
2067+msgid "September"
2068+msgstr "Septiembre"
2069+
2070+#. module: l10n_es_aeat_mod349
2071+#: field:l10n.es.aeat.mod349.report,state:0
2072+msgid "State"
2073+msgstr "Estado"
2074+
2075+#. module: l10n_es_aeat_mod349
2076+#: field:l10n.es.aeat.mod349.report,type:0
2077+msgid "Statement Type"
2078+msgstr "Tipo de declaración"
2079+
2080+#. module: l10n_es_aeat_mod349
2081+#: selection:l10n.es.aeat.mod349.report,type:0
2082+msgid "Substitutive"
2083+msgstr "Sustitutiva"
2084+
2085+#. module: l10n_es_aeat_mod349
2086+#: field:l10n.es.aeat.mod349.report,support_type:0
2087+msgid "Support Type"
2088+msgstr "Tipo de soporte"
2089+
2090+#. module: l10n_es_aeat_mod349
2091+#: report:report_l10n_es_aeat_mod349.report:0
2092+msgid "Support type:"
2093+msgstr "Tipo de soporte:"
2094+
2095+#. module: l10n_es_aeat_mod349
2096+#: selection:account.invoice,operation_key:0
2097+#: selection:l10n.es.aeat.mod349.partner_record,operation_key:0
2098+#: selection:l10n.es.aeat.mod349.partner_refund,operation_key:0
2099+#: report:report_l10n_es_aeat_mod349.report:0
2100+msgid "T - Triangular operations"
2101+msgstr "T - Operaciones triangulares"
2102
2103 #. module: l10n_es_aeat_mod349
2104 #: selection:l10n.es.aeat.mod349.report,support_type:0
2105@@ -824,16 +838,58 @@
2106 msgstr "Telemática"
2107
2108 #. module: l10n_es_aeat_mod349
2109-#: field:l10n.es.aeat.mod349.partner_refund,partner_refund_ok:0
2110-msgid "Partner refund OK"
2111-msgstr "Rectificación correcta"
2112-
2113-#. module: l10n_es_aeat_mod349
2114-#: view:l10n.es.aeat.mod349.partner_refund:0
2115-msgid "Refund data"
2116-msgstr "Datos rectificación"
2117-
2118-#. module: l10n_es_aeat_mod349
2119-#: field:l10n.es.aeat.mod349.partner_refund_detail,invoice_id:0
2120-msgid "Invoice ID"
2121-msgstr "ID Factura"
2122+#: code:addons/l10n_es_aeat_mod349/wizard/export_mod349_to_boe.py:122
2123+#, python-format
2124+msgid "The type 1 record must be 502 characters long"
2125+msgstr "El tipo de registro 1 debe ser de 502 caracteres de largo"
2126+
2127+#. module: l10n_es_aeat_mod349
2128+#: code:addons/l10n_es_aeat_mod349/wizard/export_mod349_to_boe.py:175
2129+#: code:addons/l10n_es_aeat_mod349/wizard/export_mod349_to_boe.py:227
2130+#, python-format
2131+msgid "The type 2 record must be 502 characters long"
2132+msgstr "El tipo de registro 2 debe ser de 502 caracteres de largo"
2133+
2134+#. module: l10n_es_aeat_mod349
2135+#: report:report_l10n_es_aeat_mod349.report:0
2136+msgid "Total :"
2137+msgstr "Total :"
2138+
2139+#. module: l10n_es_aeat_mod349
2140+#: field:l10n.es.aeat.mod349.partner_record,total_operation_amount:0
2141+#: field:l10n.es.aeat.mod349.partner_refund,total_operation_amount:0
2142+msgid "Total operation amount"
2143+msgstr "Importe total operación"
2144+
2145+#. module: l10n_es_aeat_mod349
2146+#: field:l10n.es.aeat.mod349.partner_record,partner_vat:0
2147+#: field:l10n.es.aeat.mod349.partner_refund,partner_vat:0
2148+#: report:report_l10n_es_aeat_mod349.report:0
2149+msgid "VAT"
2150+msgstr "NIF"
2151+
2152+#. module: l10n_es_aeat_mod349
2153+#: field:l10n.es.aeat.mod349.report,company_vat:0
2154+msgid "VAT number"
2155+msgstr "NIF"
2156+
2157+#. module: l10n_es_aeat_mod349
2158+#: report:report_l10n_es_aeat_mod349.report:0
2159+msgid "Year"
2160+msgstr "Año"
2161+
2162+#. module: l10n_es_aeat_mod349
2163+#: selection:l10n.es.aeat.mod349.export_to_boe,state:0
2164+msgid "get"
2165+msgstr "get"
2166+
2167+#. module: l10n_es_aeat_mod349
2168+#: selection:l10n.es.aeat.mod349.export_to_boe,state:0
2169+msgid "open"
2170+msgstr "open"
2171+
2172+#. module: l10n_es_aeat_mod349
2173+#: field:l10n.es.aeat.mod349.export_to_boe,state:0
2174+msgid "unknown"
2175+msgstr "unknown"
2176+
2177
2178=== modified file 'l10n_es_aeat_mod349/i18n/l10n_es_aeat_mod349.pot'
2179--- l10n_es_aeat_mod349/i18n/l10n_es_aeat_mod349.pot 2013-11-22 23:44:11 +0000
2180+++ l10n_es_aeat_mod349/i18n/l10n_es_aeat_mod349.pot 2014-04-15 12:47:56 +0000
2181@@ -4,11 +4,11 @@
2182 #
2183 msgid ""
2184 msgstr ""
2185-"Project-Id-Version: OpenERP Server 6.0.0-rc1\n"
2186-"Report-Msgid-Bugs-To: support@openerp.com\n"
2187-"POT-Creation-Date: 2010-12-13 17:53:35+0000\n"
2188-"PO-Revision-Date: 2010-12-14 10:12+0100\n"
2189-"Last-Translator: Luis Manuel Angueira Blanco <manuel@pexego.es>\n"
2190+"Project-Id-Version: OpenERP Server 7.0\n"
2191+"Report-Msgid-Bugs-To: \n"
2192+"POT-Creation-Date: 2014-04-14 18:35+0000\n"
2193+"PO-Revision-Date: 2014-04-14 20:35+0100\n"
2194+"Last-Translator: Pedro Manuel Baeza <pedro.baeza@serviciosbaeza.com>\n"
2195 "Language-Team: \n"
2196 "MIME-Version: 1.0\n"
2197 "Content-Type: text/plain; charset=UTF-8\n"
2198@@ -16,143 +16,94 @@
2199 "Plural-Forms: \n"
2200
2201 #. module: l10n_es_aeat_mod349
2202-#: field:l10n.es.aeat.mod349.report,total_partner_refunds:0
2203-msgid "Partners refunds"
2204+#: selection:l10n.es.aeat.mod349.partner_refund,period_selection:0
2205+#: selection:l10n.es.aeat.mod349.report,period_selection:0
2206+msgid "0A - Annual"
2207 msgstr ""
2208
2209 #. module: l10n_es_aeat_mod349
2210+#: selection:l10n.es.aeat.mod349.partner_refund,period_selection:0
2211 #: selection:l10n.es.aeat.mod349.report,period_selection:0
2212-#: selection:l10n.es.aeat.mod349.partner_refund,period_selection:0
2213 msgid "1T - First Quarter"
2214 msgstr ""
2215
2216-#. module: l10n_ES_aeat_mod349
2217-#: rml:report_l10n_es_aeat_mod349.report:0
2218-msgid "Year"
2219-msgstr ""
2220-
2221-#. module: l10n_ES_aeat_mod349
2222-#: rml:report_l10n_es_aeat_mod349.report:0
2223-#: field:l10n.es.aeat.mod349.partner_refund,period_selection:0
2224-#: field:l10n.es.aeat.mod349.report,period_id:0
2225-#: field:l10n.es.aeat.mod349.report,period_selection:0
2226-msgid "Period"
2227-msgstr ""
2228-
2229-#. module: l10n_es_aeat_mod349
2230-#: code:addons/l10n_es_aeat_mod349/mod349.py:153
2231-#, python-format
2232-msgid "All partner refunds fields (country, VAT number) must be filled."
2233-msgstr ""
2234-
2235-#. module: l10n_es_aeat_mod349
2236-#: code:addons/l10n_es_aeat_mod349/mod349.py:149
2237-#, python-format
2238-msgid "All partner records fields (country, VAT number) must be filled."
2239-msgstr ""
2240-
2241-#. module: l10n_es_aeat_mod349
2242-#: field:l10n.es.aeat.mod349.partner_refund,total_origin_amount:0
2243-msgid "Original amount"
2244-msgstr ""
2245-
2246-#. module: l10n_es_aeat_mod349
2247-#: field:account.fiscal.position,intracommunity_operations:0
2248-msgid "Intra-Community operations"
2249-msgstr ""
2250-
2251-#. module: l10n_es_aeat_mod349
2252-#: code:addons/l10n_es_aeat_mod349/mod349.py:192
2253-#, python-format
2254-msgid "Name '%s' have not allowed characters.\n"
2255-"Please, fix it before confirm the report"
2256-msgstr ""
2257-
2258-#. module: l10n_es_aeat_mod349
2259-#: code:addons/l10n_es_aeat_mod349/wizard/export_mod349_to_boe.py:169
2260-#: code:addons/l10n_es_aeat_mod349/wizard/export_mod349_to_boe.py:224
2261-#, python-format
2262-msgid "The type 2 record must be 502 characters long"
2263-msgstr ""
2264-
2265-#. module: l10n_es_aeat_mod349
2266-#: code:addons/l10n_es_aeat_mod349/mod349.py:149
2267-#: code:addons/l10n_es_aeat_mod349/mod349.py:153
2268-#: code:addons/l10n_es_aeat_mod349/mod349.py:179
2269-#: code:addons/l10n_es_aeat_mod349/mod349.py:191
2270-#: code:addons/l10n_es_aeat_mod349/mod349.py:198
2271-#: code:addons/l10n_es_aeat_mod349/mod349.py:205
2272-#, python-format
2273-msgid "Error!"
2274-msgstr ""
2275-
2276-#. module: l10n_es_aeat_mod349
2277-#: help:l10n.es.aeat.mod349.partner_record,partner_record_ok:0
2278-msgid "Checked if Partner record is OK"
2279-msgstr ""
2280-
2281-#. module: l10n_es_aeat_mod349
2282-#: field:l10n.es.aeat.mod349.report,partner_refund_ids:0
2283-msgid "Partner refund IDS"
2284-msgstr ""
2285-
2286-#. module: l10n_es_aeat_mod349
2287-#: field:l10n.es.aeat.mod349.report,total_partner_refunds_amount:0
2288-msgid "Partners refunds amount"
2289-msgstr ""
2290-
2291-#. module: l10n_es_aeat_mod349
2292-#: help:l10n.es.aeat.mod349.report,contact_name:0
2293-msgid "Must have name and surname."
2294-msgstr ""
2295-
2296-#. module: l10n_es_aeat_mod349
2297-#: selection:account.invoice,operation_key:0
2298-#: selection:l10n.es.aeat.mod349.partner_record,operation_key:0
2299-#: selection:l10n.es.aeat.mod349.partner_refund,operation_key:0
2300-msgid " "
2301-msgstr ""
2302-
2303-#. module: l10n_es_aeat_mod349
2304-#: selection:l10n.es.aeat.mod349.report,month_selection:0
2305-#: selection:l10n.es.aeat.mod349.partner_refund,month_selection:0
2306-msgid "March"
2307-msgstr ""
2308-
2309-#. module: l10n_es_aeat_mod349
2310-#: selection:l10n.es.aeat.mod349.report,period_selection:0
2311-#: selection:l10n.es.aeat.mod349.partner_refund,period_selection:0
2312+#. module: l10n_es_aeat_mod349
2313+#: selection:l10n.es.aeat.mod349.partner_refund,period_selection:0
2314+#: selection:l10n.es.aeat.mod349.report,period_selection:0
2315+msgid "2T - Second Quarter"
2316+msgstr ""
2317+
2318+#. module: l10n_es_aeat_mod349
2319+#: selection:l10n.es.aeat.mod349.partner_refund,period_selection:0
2320+#: selection:l10n.es.aeat.mod349.report,period_selection:0
2321+msgid "3T - Third Quarter"
2322+msgstr ""
2323+
2324+#. module: l10n_es_aeat_mod349
2325+#: view:l10n.es.aeat.mod349.report:0
2326+msgid "413"
2327+msgstr ""
2328+
2329+#. module: l10n_es_aeat_mod349
2330+#: selection:l10n.es.aeat.mod349.partner_refund,period_selection:0
2331+#: selection:l10n.es.aeat.mod349.report,period_selection:0
2332 msgid "4T - Fourth Quarter"
2333 msgstr ""
2334
2335 #. module: l10n_es_aeat_mod349
2336-#: view:l10n.es.aeat.mod349.report:0
2337-#: field:l10n.es.aeat.mod349.report,company_id:0
2338-msgid "Company"
2339-msgstr ""
2340-
2341-#. module: l10n_es_aeat_mod349
2342-#: view:l10n.es.aeat.mod349.report:0
2343-#: selection:l10n.es.aeat.mod349.report,state:0
2344-msgid "Done"
2345-msgstr ""
2346-
2347-#. module: l10n_es_aeat_mod349
2348-#: view:l10n.es.aeat.mod349.report:0
2349-msgid "In process"
2350-msgstr ""
2351-
2352-#. module: l10n_es_aeat_mod349
2353-#: selection:l10n.es.aeat.mod349.report,type:0
2354-msgid "Substitutive"
2355-msgstr ""
2356-
2357-#. module: l10n_es_aeat_mod349
2358 #: selection:account.invoice,operation_key:0
2359 #: selection:l10n.es.aeat.mod349.partner_record,operation_key:0
2360 #: selection:l10n.es.aeat.mod349.partner_refund,operation_key:0
2361 #: report:report_l10n_es_aeat_mod349.report:0
2362-msgid "E - Intra-Community supplies"
2363+msgid "A - Intra-Community acquisition"
2364+msgstr ""
2365+
2366+#. module: l10n_es_aeat_mod349
2367+#: report:report_l10n_es_aeat_mod349.report:0
2368+msgid "AEAT 349 MODEL"
2369+msgstr ""
2370+
2371+#. module: l10n_es_aeat_mod349
2372+#: model:ir.ui.menu,name:l10n_es_aeat_mod349.menu_aeat_mod349_report
2373+msgid "AEAT 349 Model"
2374+msgstr ""
2375+
2376+#. module: l10n_es_aeat_mod349
2377+#: code:_description:0
2378+#: model:ir.model,name:l10n_es_aeat_mod349.model_l10n_es_aeat_mod349_partner_record
2379+#, python-format
2380+msgid "AEAT 349 Model - Partner record"
2381+msgstr ""
2382+
2383+#. module: l10n_es_aeat_mod349
2384+#: code:_description:0
2385+#: model:ir.model,name:l10n_es_aeat_mod349.model_l10n_es_aeat_mod349_partner_record_detail
2386+#, python-format
2387+msgid "AEAT 349 Model - Partner record detail"
2388+msgstr ""
2389+
2390+#. module: l10n_es_aeat_mod349
2391+#: code:_description:0
2392+#: model:ir.model,name:l10n_es_aeat_mod349.model_l10n_es_aeat_mod349_partner_refund
2393+#, python-format
2394+msgid "AEAT 349 Model - Partner refund"
2395+msgstr ""
2396+
2397+#. module: l10n_es_aeat_mod349
2398+#: code:_description:0
2399+#: model:ir.model,name:l10n_es_aeat_mod349.model_l10n_es_aeat_mod349_partner_refund_detail
2400+#, python-format
2401+msgid "AEAT 349 Model - Partner refund detail"
2402+msgstr ""
2403+
2404+#. module: l10n_es_aeat_mod349
2405+#: model:ir.actions.report.xml,name:l10n_es_aeat_mod349.report_l10n_es_aeat_mod349
2406+msgid "AEAT 349 Model report"
2407+msgstr ""
2408+
2409+#. module: l10n_es_aeat_mod349
2410+#: view:l10n.es.aeat.mod349.partner_record_detail:0
2411+msgid "AEAT 349 Partner record"
2412 msgstr ""
2413
2414 #. module: l10n_es_aeat_mod349
2415@@ -161,20 +112,23 @@
2416 msgstr ""
2417
2418 #. module: l10n_es_aeat_mod349
2419-#: field:l10n.es.aeat.mod349.report,fiscalyear_id:0
2420-#: view:l10n.es.aeat.mod349.report:0
2421-msgid "Fiscal Year"
2422-msgstr ""
2423-
2424-#. module: l10n_es_aeat_mod349
2425-#: field:l10n.es.aeat.mod349.report,previous_number:0
2426-msgid "Previous Declaration Number"
2427-msgstr ""
2428-
2429-#. module: l10n_es_aeat_mod349
2430-#: view:l10n.es.aeat.mod349.report:0
2431-#: field:l10n.es.aeat.mod349.report,partner_record_ids:0
2432-msgid "Partner records"
2433+#: view:l10n.es.aeat.mod349.partner_record:0
2434+msgid "AEAT 349 Partner records"
2435+msgstr ""
2436+
2437+#. module: l10n_es_aeat_mod349
2438+#: view:l10n.es.aeat.mod349.partner_refund_detail:0
2439+msgid "AEAT 349 Partner refund"
2440+msgstr ""
2441+
2442+#. module: l10n_es_aeat_mod349
2443+#: view:l10n.es.aeat.mod349.partner_refund_detail:0
2444+msgid "AEAT 349 Partner refund detail"
2445+msgstr ""
2446+
2447+#. module: l10n_es_aeat_mod349
2448+#: view:l10n.es.aeat.mod349.partner_refund:0
2449+msgid "AEAT 349 Partner refunds"
2450 msgstr ""
2451
2452 #. module: l10n_es_aeat_mod349
2453@@ -184,123 +138,39 @@
2454 msgstr ""
2455
2456 #. module: l10n_es_aeat_mod349
2457-#: selection:l10n.es.aeat.mod349.report,type:0
2458-msgid "Normal"
2459-msgstr ""
2460-
2461-#. module: l10n_es_aeat_mod349
2462-#: model:ir.ui.menu,name:l10n_es_aeat_mod349.menu_aeat_mod349_report
2463-msgid "AEAT 349 Model"
2464-msgstr ""
2465-
2466-#. module: l10n_es_aeat_mod349
2467-#: model:ir.model,name:l10n_es_aeat_mod349.model_l10n_es_aeat_mod349_partner_refund_detail
2468-msgid "AEAT 349 Model - Partner refund detail"
2469-msgstr ""
2470-
2471-#. module: l10n_es_aeat_mod349
2472-#: selection:l10n.es.aeat.mod349.report,month_selection:0
2473-#: selection:l10n.es.aeat.mod349.partner_refund,month_selection:0
2474-msgid "July"
2475-msgstr ""
2476-
2477-#. module: l10n_es_aeat_mod349
2478-#: field:l10n.es.aeat.mod349.partner_record,partner_vat:0
2479-#: field:l10n.es.aeat.mod349.partner_refund,partner_vat:0
2480-#: report:report_l10n_es_aeat_mod349.report:0
2481-msgid "VAT"
2482-msgstr ""
2483-
2484-#. module: l10n_es_aeat_mod349
2485-#: field:l10n.es.aeat.mod349.partner_refund_detail,refund_id:0
2486-msgid "Partner refund ID"
2487-msgstr ""
2488-
2489-#. module: l10n_es_aeat_mod349
2490-#: code:addons/l10n_es_aeat_mod349/account_invoice.py:94
2491-#, python-format
2492-msgid "Cannot get invoices.\n"
2493-"There is no period selected"
2494-msgstr ""
2495-
2496-#. module: l10n_es_aeat_mod349
2497-#: code:addons/l10n_es_aeat_mod349/account_invoice.py:86
2498-#, python-format
2499-msgid "Cannot get invoices.\n"
2500-"There is no fiscalyear selected"
2501-msgstr ""
2502-
2503-#. module: l10n_es_aeat_mod349
2504-#: code:addons/l10n_es_aeat_mod349/account_invoice.py:102
2505-#, python-format
2506-msgid "Cannot get invoices.\n"
2507-"There is no month and/or fiscalyear selected"
2508-msgstr ""
2509-
2510-#. module: l10n_es_aeat_mod349
2511-#: code:addons/l10n_es_aeat_mod349/wizard/export_mod349_to_boe.py:117
2512-#, python-format
2513-msgid "The type 1 record must be 502 characters long"
2514-msgstr ""
2515-
2516-#. module: l10n_es_aeat_mod349
2517-#: code:addons/l10n_es_aeat_mod349/mod349.py:171
2518-#, python-format
2519-msgid "Company without Title"
2520-msgstr ""
2521-
2522-#. module: l10n_es_aeat_mod349
2523-#: code:addons/l10n_es_aeat_mod349/mod349.py:179
2524-#, python-format
2525-msgid "Contact name (Full name) must have name and surname"
2526-msgstr ""
2527-
2528-#. module: l10n_es_aeat_mod349
2529-#: help:l10n.es.aeat.mod349.partner_refund,total_origin_amount:0
2530-#: field:l10n.es.aeat.mod349.partner_refund,total_origin_amount:0
2531-msgid "Refund original amount"
2532-msgstr ""
2533-
2534-#. module: l10n_es_aeat_mod349
2535-#: code:addons/l10n_es_aeat_mod349/mod349.py:172
2536-#, python-format
2537-msgid "Company has no company title.\n"
2538-"This may cause some problems when trying to import on AEAT help program"
2539-msgstr ""
2540-
2541-#. module: l10n_es_aeat_mod349
2542-#: code:addons/l10n_es_aeat_mod349/mod349.py:206
2543-#, python-format
2544-msgid "Partner name '%s' in refund lines is not valid due to incorrect characters"
2545-msgstr ""
2546-
2547-#. module: l10n_es_aeat_mod349
2548-#: code:addons/l10n_es_aeat_mod349/mod349.py:199
2549-#, python-format
2550-msgid "Partner name '%s' in partner records is not valid due to incorrect characters"
2551-msgstr ""
2552-
2553-#. module: l10n_es_aeat_mod349
2554-#: view:l10n.es.aeat.mod349.report:0
2555-msgid "Recalculate"
2556-msgstr ""
2557-
2558-#. module: l10n_es_aeat_mod349
2559-#: view:l10n.es.aeat.mod349.report:0
2560-msgid "Declaration"
2561-msgstr ""
2562-
2563-#. module: l10n_es_aeat_mod349
2564+#: view:l10n.es.aeat.mod349.report:0
2565+msgid "AEAT 349 reports"
2566+msgstr ""
2567+
2568+#. module: l10n_es_aeat_mod349
2569+#: model:ir.actions.act_window,name:l10n_es_aeat_mod349.action_l10n_es_aeat_mod349_report
2570+msgid "AEAT Model 349"
2571+msgstr ""
2572+
2573+#. module: l10n_es_aeat_mod349
2574+#: code:_description:0
2575 #: model:ir.model,name:l10n_es_aeat_mod349.model_l10n_es_aeat_mod349_report
2576+#, python-format
2577 msgid "AEAT Model 349 Report"
2578 msgstr ""
2579
2580 #. module: l10n_es_aeat_mod349
2581-#: selection:account.invoice,operation_key:0
2582-#: selection:l10n.es.aeat.mod349.partner_record,operation_key:0
2583-#: selection:l10n.es.aeat.mod349.partner_refund,operation_key:0
2584-#: report:report_l10n_es_aeat_mod349.report:0
2585-msgid "T - Triangular operations"
2586+#: code:addons/l10n_es_aeat_mod349/mod349.py:142
2587+#: code:addons/l10n_es_aeat_mod349/mod349.py:153
2588+#, python-format
2589+msgid "All amounts must be positives"
2590+msgstr ""
2591+
2592+#. module: l10n_es_aeat_mod349
2593+#: code:addons/l10n_es_aeat_mod349/mod349.py:137
2594+#, python-format
2595+msgid "All partner records fields (country, VAT number) must be filled."
2596+msgstr ""
2597+
2598+#. module: l10n_es_aeat_mod349
2599+#: code:addons/l10n_es_aeat_mod349/mod349.py:147
2600+#, python-format
2601+msgid "All partner refunds fields (country, VAT number) must be filled."
2602 msgstr ""
2603
2604 #. module: l10n_es_aeat_mod349
2605@@ -310,130 +180,15 @@
2606 msgstr ""
2607
2608 #. module: l10n_es_aeat_mod349
2609-#: field:l10n.es.aeat.mod349.partner_record,record_detail_ids:0
2610-msgid "Partner record detail IDS"
2611-msgstr ""
2612-
2613-#. module: l10n_es_aeat_mod349
2614-#: view:l10n.es.aeat.mod349.report:0
2615-msgid "Identification"
2616-msgstr ""
2617-
2618-#. module: l10n_es_aeat_mod349
2619-#: field:l10n.es.aeat.mod349.report,type:0
2620-msgid "Statement Type"
2621-msgstr ""
2622-
2623-#. module: l10n_es_aeat_mod349
2624-#: report:report_l10n_es_aeat_mod349.report:0
2625-msgid "Op. Amount"
2626-msgstr ""
2627-
2628-#. module: l10n_es_aeat_mod349
2629-#: view:l10n.es.aeat.mod349.report:0
2630-msgid "Confirm"
2631-msgstr ""
2632-
2633-#. module: l10n_es_aeat_mod349
2634-#: view:l10n.es.aeat.mod349.partner_refund_detail:0
2635-msgid "AEAT 349 Partner refund"
2636-msgstr ""
2637-
2638-#. module: l10n_es_aeat_mod349
2639-#: field:l10n.es.aeat.mod349.report,state:0
2640-msgid "State"
2641-msgstr ""
2642-
2643-#. module: l10n_es_aeat_mod349
2644-#: model:ir.actions.act_window,help:l10n_es_aeat_mod349.action_l10n_es_aeat_mod349_report
2645-msgid "Create and query AEAT Model 349 Reports"
2646-msgstr ""
2647-
2648-#. module: l10n_es_aeat_mod349
2649-#: report:report_l10n_es_aeat_mod349.report:0
2650-msgid "Fiscal year:"
2651-msgstr ""
2652-
2653-#. module: l10n_es_aeat_mod349
2654-#: field:l10n.es.aeat.mod349.partner_record,partner_record_ok:0
2655-msgid "Partner Record OK"
2656-msgstr ""
2657-
2658-#. module: l10n_es_aeat_mod349
2659-#: selection:l10n.es.aeat.mod349.report,period_selection:0
2660-#: selection:l10n.es.aeat.mod349.partner_refund,period_selection:0
2661-msgid "MO - Monthly"
2662-msgstr ""
2663-
2664-#. module: l10n_es_aeat_mod349
2665-#: field:l10n.es.aeat.mod349.partner_record_detail,partner_record_id:0
2666-msgid "Partner record"
2667-msgstr ""
2668-
2669-#. module: l10n_es_aeat_mod349
2670-#: model:ir.model,name:l10n_es_aeat_mod349.model_l10n_es_aeat_mod349_calculate_records
2671-msgid "AEAT Model 349 Wizard - Calculate Records"
2672-msgstr ""
2673-
2674-#. module: l10n_es_aeat_mod349
2675-#: model:ir.model,name:l10n_es_aeat_mod349.model_l10n_es_aeat_mod349_partner_refund
2676-msgid "AEAT 349 Model - Partner refund"
2677-msgstr ""
2678-
2679-#. module: l10n_es_aeat_mod349
2680-#: field:l10n.es.aeat.mod349.report,support_type:0
2681-msgid "Support Type"
2682-msgstr ""
2683-
2684-#. module: l10n_es_aeat_mod349
2685-#: view:l10n.es.aeat.mod349.report:0
2686-msgid "Export to BOE"
2687-msgstr ""
2688-
2689-#. module: l10n_es_aeat_mod349
2690-#: view:l10n.es.aeat.mod349.partner_refund_detail:0
2691-msgid "AEAT 349 Partner refund detail"
2692-msgstr ""
2693-
2694-#. module: l10n_es_aeat_mod349
2695-#: view:l10n.es.aeat.mod349.partner_record:0
2696-#: view:l10n.es.aeat.mod349.partner_refund:0
2697-msgid "Info"
2698-msgstr ""
2699-
2700-#. module: l10n_es_aeat_mod349
2701-#: report:report_l10n_es_aeat_mod349.report:0
2702-msgid "PARTNER REFUND LINES"
2703-msgstr ""
2704-
2705-#. module: l10n_es_aeat_mod349
2706-#: selection:account.invoice,operation_key:0
2707-#: selection:l10n.es.aeat.mod349.partner_record,operation_key:0
2708-#: selection:l10n.es.aeat.mod349.partner_refund,operation_key:0
2709-#: report:report_l10n_es_aeat_mod349.report:0
2710-msgid "A - Intra-Community acquisition"
2711-msgstr ""
2712-
2713-#. module: l10n_es_aeat_mod349
2714-#: report:report_l10n_es_aeat_mod349.report:0
2715-msgid "Operation key help"
2716-msgstr ""
2717-
2718-#. module: l10n_es_aeat_mod349
2719-#: selection:account.invoice,operation_key:0
2720-#: selection:l10n.es.aeat.mod349.partner_record,operation_key:0
2721-#: selection:l10n.es.aeat.mod349.partner_refund,operation_key:0
2722-msgid "I - Intra-Community services acquisitions"
2723-msgstr ""
2724-
2725-#. module: l10n_es_aeat_mod349
2726-#: view:l10n.es.aeat.mod349.partner_record_detail:0
2727-msgid "AEAT 349 Partner record"
2728-msgstr ""
2729-
2730-#. module: l10n_es_aeat_mod349
2731-#: view:l10n.es.aeat.mod349.partner_refund:0
2732-msgid "AEAT 349 Partner refunds"
2733+#: selection:l10n.es.aeat.mod349.partner_refund,month_selection:0
2734+#: selection:l10n.es.aeat.mod349.report,month_selection:0
2735+msgid "April"
2736+msgstr ""
2737+
2738+#. module: l10n_es_aeat_mod349
2739+#: selection:l10n.es.aeat.mod349.partner_refund,month_selection:0
2740+#: selection:l10n.es.aeat.mod349.report,month_selection:0
2741+msgid "August"
2742 msgstr ""
2743
2744 #. module: l10n_es_aeat_mod349
2745@@ -442,158 +197,366 @@
2746 msgstr ""
2747
2748 #. module: l10n_es_aeat_mod349
2749-#: view:l10n.es.aeat.mod349.partner_record:0
2750-msgid "Detail lines"
2751-msgstr ""
2752-
2753-#. module: l10n_es_aeat_mod349
2754-#: field:l10n.es.aeat.mod349.partner_record,partner_id:0
2755-#: field:l10n.es.aeat.mod349.partner_refund,partner_id:0
2756+#: selection:l10n.es.aeat.mod349.report,state:0
2757+msgid "Cancelled"
2758+msgstr ""
2759+
2760+#. module: l10n_es_aeat_mod349
2761+#: code:addons/l10n_es_aeat_mod349/account_invoice.py:107
2762+#, python-format
2763+msgid ""
2764+"Cannot get invoices.\n"
2765+"There is no month and/or fiscalyear selected"
2766+msgstr ""
2767+
2768+#. module: l10n_es_aeat_mod349
2769+#: code:addons/l10n_es_aeat_mod349/account_invoice.py:99
2770+#, python-format
2771+msgid ""
2772+"Cannot get invoices.\n"
2773+"There is no period selected"
2774+msgstr ""
2775+
2776+#. module: l10n_es_aeat_mod349
2777+#: code:addons/l10n_es_aeat_mod349/account_invoice.py:90
2778+#, python-format
2779+msgid ""
2780+"Cannot get invoices.\n"
2781+"There is no fiscalyear selected"
2782+msgstr ""
2783+
2784+#. module: l10n_es_aeat_mod349
2785+#: help:l10n.es.aeat.mod349.partner_record,partner_record_ok:0
2786+msgid "Checked if partner record is OK"
2787+msgstr ""
2788+
2789+#. module: l10n_es_aeat_mod349
2790+#: help:l10n.es.aeat.mod349.partner_refund,partner_refund_ok:0
2791+msgid "Checked if refund record is OK"
2792+msgstr ""
2793+
2794+#. module: l10n_es_aeat_mod349
2795+#: field:l10n.es.aeat.mod349.report,company_id:0
2796+msgid "Company"
2797+msgstr ""
2798+
2799+#. module: l10n_es_aeat_mod349
2800+#: code:addons/l10n_es_aeat_mod349/mod349.py:167
2801+#, python-format
2802+msgid ""
2803+"Company has no company title.\n"
2804+"This may cause some problems when trying to import on AEAT help program"
2805+msgstr ""
2806+
2807+#. module: l10n_es_aeat_mod349
2808+#: code:addons/l10n_es_aeat_mod349/mod349.py:166
2809+#, python-format
2810+msgid "Company without Title"
2811+msgstr ""
2812+
2813+#. module: l10n_es_aeat_mod349
2814+#: view:l10n.es.aeat.mod349.report:0
2815+msgid "Complementaria"
2816+msgstr ""
2817+
2818+#. module: l10n_es_aeat_mod349
2819+#: selection:l10n.es.aeat.mod349.report,type:0
2820+msgid "Complementary"
2821+msgstr ""
2822+
2823+#. module: l10n_es_aeat_mod349
2824+#: code:addons/l10n_es_aeat_mod349/mod349.py:176
2825+#, python-format
2826+msgid "Contact name (Full name) must have name and surname"
2827+msgstr ""
2828+
2829+#. module: l10n_es_aeat_mod349
2830+#: field:l10n.es.aeat.mod349.partner_record,country_id:0
2831+#: field:l10n.es.aeat.mod349.partner_refund,country_id:0
2832 #: report:report_l10n_es_aeat_mod349.report:0
2833-msgid "Partner"
2834-msgstr ""
2835-
2836-#. module: l10n_es_aeat_mod349
2837-#: field:l10n.es.aeat.mod349.report,contact_name:0
2838-msgid "Full Name"
2839-msgstr ""
2840-
2841-#. module: l10n_es_aeat_mod349
2842-#: selection:l10n.es.aeat.mod349.report,month_selection:0
2843-#: selection:l10n.es.aeat.mod349.partner_refund,month_selection:0
2844-msgid "September"
2845-msgstr ""
2846-
2847-#. module: l10n_es_aeat_mod349
2848-#: selection:l10n.es.aeat.mod349.report,month_selection:0
2849-#: selection:l10n.es.aeat.mod349.partner_refund,month_selection:0
2850+msgid "Country"
2851+msgstr ""
2852+
2853+#. module: l10n_es_aeat_mod349
2854+#: model:ir.actions.act_window,help:l10n_es_aeat_mod349.action_l10n_es_aeat_mod349_report
2855+msgid "Create and query AEAT Model 349 reports"
2856+msgstr ""
2857+
2858+#. module: l10n_es_aeat_mod349
2859+#: selection:l10n.es.aeat.mod349.report,support_type:0
2860+msgid "DVD"
2861+msgstr ""
2862+
2863+#. module: l10n_es_aeat_mod349
2864+#: field:l10n.es.aeat.mod349.partner_record_detail,date:0
2865+#: field:l10n.es.aeat.mod349.partner_refund_detail,date:0
2866+msgid "Date"
2867+msgstr ""
2868+
2869+#. module: l10n_es_aeat_mod349
2870+#: selection:l10n.es.aeat.mod349.partner_refund,month_selection:0
2871+#: selection:l10n.es.aeat.mod349.report,month_selection:0
2872 msgid "December"
2873 msgstr ""
2874
2875 #. module: l10n_es_aeat_mod349
2876-#: report:report_l10n_es_aeat_mod349.report:0
2877-msgid "Support type:"
2878-msgstr ""
2879-
2880-#. module: l10n_es_aeat_mod349
2881-#: view:l10n.es.aeat.mod349.partner_record:0
2882-msgid "AEAT 349 Partner records"
2883+#: view:l10n.es.aeat.mod349.report:0
2884+msgid "Declaración"
2885 msgstr ""
2886
2887 #. module: l10n_es_aeat_mod349
2888 #: field:l10n.es.aeat.mod349.report,number:0
2889-msgid "Declaration Number"
2890-msgstr ""
2891-
2892-#. module: l10n_es_aeat_mod349
2893-#: field:l10n.es.aeat.mod349.report,month_selection:0
2894-#: field:l10n.es.aeat.mod349.partner_refund,month_selection:0
2895-msgid "Month"
2896-msgstr ""
2897-
2898-#. module: l10n_es_aeat_mod349
2899-#: selection:l10n.es.aeat.mod349.report,state:0
2900-msgid "Canceled"
2901-msgstr ""
2902-
2903-#. module: l10n_es_aeat_mod349
2904-#: model:ir.model,name:l10n_es_aeat_mod349.model_l10n_es_aeat_mod349_partner_record_detail
2905-msgid "AEAT 349 Model - Partner record detail"
2906-msgstr ""
2907-
2908-#. module: l10n_es_aeat_mod349
2909-#: selection:l10n.es.aeat.mod349.report,period_selection:0
2910-#: selection:l10n.es.aeat.mod349.partner_refund,period_selection:0
2911-msgid "3T - Third Quarter"
2912-msgstr ""
2913-
2914-#. module: l10n_es_aeat_mod349
2915-#: view:l10n.es.aeat.mod349.report:0
2916-msgid "Calculate"
2917-msgstr ""
2918-
2919-#. module: l10n_es_aeat_mod349
2920-#: selection:l10n.es.aeat.mod349.report,support_type:0
2921-msgid "DVD"
2922-msgstr ""
2923-
2924-#. module: l10n_es_aeat_mod349
2925+msgid "Declaration number"
2926+msgstr ""
2927+
2928+#. module: l10n_es_aeat_mod349
2929+#: view:l10n.es.aeat.mod349.partner_record:0
2930+msgid "Detail lines"
2931+msgstr ""
2932+
2933+#. module: l10n_es_aeat_mod349
2934+#: view:l10n.es.aeat.mod349.partner_refund:0
2935+msgid "Details"
2936+msgstr ""
2937+
2938+#. module: l10n_es_aeat_mod349
2939+#: selection:l10n.es.aeat.mod349.report,state:0
2940+msgid "Done"
2941+msgstr ""
2942+
2943+#. module: l10n_es_aeat_mod349
2944+#: selection:l10n.es.aeat.mod349.report,state:0
2945+msgid "Draft"
2946+msgstr ""
2947+
2948+#. module: l10n_es_aeat_mod349
2949+#: selection:account.invoice,operation_key:0
2950+#: selection:l10n.es.aeat.mod349.partner_record,operation_key:0
2951+#: selection:l10n.es.aeat.mod349.partner_refund,operation_key:0
2952 #: report:report_l10n_es_aeat_mod349.report:0
2953-msgid "AEAT 349 MODEL"
2954-msgstr ""
2955-
2956-#. module: l10n_es_aeat_mod349
2957+msgid "E - Intra-Community supplies"
2958+msgstr ""
2959+
2960+#. module: l10n_es_aeat_mod349
2961+#: code:addons/l10n_es_aeat_mod349/account_invoice.py:89
2962+#: code:addons/l10n_es_aeat_mod349/account_invoice.py:98
2963+#: code:addons/l10n_es_aeat_mod349/account_invoice.py:106
2964+#, python-format
2965+msgid "Error"
2966+msgstr ""
2967+
2968+#. module: l10n_es_aeat_mod349
2969+#: code:addons/l10n_es_aeat_mod349/mod349.py:136
2970+#: code:addons/l10n_es_aeat_mod349/mod349.py:141
2971+#: code:addons/l10n_es_aeat_mod349/mod349.py:146
2972+#: code:addons/l10n_es_aeat_mod349/mod349.py:152
2973+#: code:addons/l10n_es_aeat_mod349/mod349.py:175
2974+#: code:addons/l10n_es_aeat_mod349/mod349.py:185
2975+#: code:addons/l10n_es_aeat_mod349/mod349.py:191
2976+#: code:addons/l10n_es_aeat_mod349/mod349.py:198
2977+#, python-format
2978+msgid "Error!"
2979+msgstr ""
2980+
2981+#. module: l10n_es_aeat_mod349
2982+#: model:ir.actions.act_window,name:l10n_es_aeat_mod349.action_wizard_aeat_mod349_export
2983+msgid "Export AEAT 349 BOE file"
2984+msgstr ""
2985+
2986+#. module: l10n_es_aeat_mod349
2987+#: code:_description:0
2988 #: model:ir.model,name:l10n_es_aeat_mod349.model_l10n_es_aeat_mod349_export_to_boe
2989+#, python-format
2990 msgid "Export AEAT Model 349 to BOE format"
2991 msgstr ""
2992
2993 #. module: l10n_es_aeat_mod349
2994-#: view:l10n.es.aeat.mod349.report:0
2995-#: selection:l10n.es.aeat.mod349.report,state:0
2996-msgid "Draft"
2997-msgstr ""
2998-
2999-#. module: l10n_es_aeat_mod349
3000-#: field:l10n.es.aeat.mod349.report,company_vat:0
3001-msgid "VAT number"
3002-msgstr ""
3003-
3004-#. module: l10n_es_aeat_mod349
3005-#: field:l10n.es.aeat.mod349.partner_refund,refund_detail_ids:0
3006-msgid "Partner refund detail IDS"
3007-msgstr ""
3008-
3009-#. module: l10n_es_aeat_mod349
3010-#: report:report_l10n_es_aeat_mod349.report:0
3011-msgid "Orig. Amount"
3012+#: selection:l10n.es.aeat.mod349.partner_refund,month_selection:0
3013+#: selection:l10n.es.aeat.mod349.report,month_selection:0
3014+msgid "February"
3015+msgstr ""
3016+
3017+#. module: l10n_es_aeat_mod349
3018+#: field:l10n.es.aeat.mod349.export_to_boe,data:0
3019+msgid "File"
3020+msgstr ""
3021+
3022+#. module: l10n_es_aeat_mod349
3023+#: field:l10n.es.aeat.mod349.export_to_boe,name:0
3024+msgid "File name"
3025+msgstr ""
3026+
3027+#. module: l10n_es_aeat_mod349
3028+#: code:addons/l10n_es_aeat_mod349/wizard/export_mod349_to_boe.py:91
3029+#: code:addons/l10n_es_aeat_mod349/wizard/export_mod349_to_boe.py:155
3030+#, python-format
3031+msgid "First four characters of fiscal year code must be numeric and contain the fiscal year number. Please, fix it and try again."
3032+msgstr ""
3033+
3034+#. module: l10n_es_aeat_mod349
3035+#: code:_description:0
3036+#: model:ir.model,name:l10n_es_aeat_mod349.model_account_fiscal_position
3037+#, python-format
3038+msgid "Fiscal Position"
3039 msgstr ""
3040
3041 #. module: l10n_es_aeat_mod349
3042 #: field:l10n.es.aeat.mod349.partner_refund,fiscalyear_id:0
3043-msgid "Fiscalyear"
3044-msgstr ""
3045-
3046-#. module: l10n_es_aeat_mod349
3047-#: field:l10n.es.aeat.mod349.partner_refund_detail,total_origin_amount:0
3048-msgid "Origin total amount"
3049-msgstr ""
3050-
3051-#. module: l10n_es_aeat_mod349
3052-#: selection:l10n.es.aeat.mod349.report,month_selection:0
3053-#: selection:l10n.es.aeat.mod349.partner_refund,month_selection:0
3054-msgid "August"
3055-msgstr ""
3056-
3057-#. module: l10n_es_aeat_mod349
3058-#: selection:l10n.es.aeat.mod349.report,state:0
3059-msgid "Processing"
3060-msgstr ""
3061-
3062-#. module: l10n_es_aeat_mod349
3063-#: selection:l10n.es.aeat.mod349.report,month_selection:0
3064-#: selection:l10n.es.aeat.mod349.partner_refund,month_selection:0
3065+#: field:l10n.es.aeat.mod349.report,fiscalyear_id:0
3066+msgid "Fiscal year"
3067+msgstr ""
3068+
3069+#. module: l10n_es_aeat_mod349
3070+#: code:addons/l10n_es_aeat_mod349/wizard/export_mod349_to_boe.py:90
3071+#: code:addons/l10n_es_aeat_mod349/wizard/export_mod349_to_boe.py:154
3072+#, python-format
3073+msgid "Fiscal year code"
3074+msgstr ""
3075+
3076+#. module: l10n_es_aeat_mod349
3077+#: report:report_l10n_es_aeat_mod349.report:0
3078+msgid "Fiscal year:"
3079+msgstr ""
3080+
3081+#. module: l10n_es_aeat_mod349
3082+#: field:l10n.es.aeat.mod349.report,frequency_change:0
3083+msgid "Frequency change"
3084+msgstr ""
3085+
3086+#. module: l10n_es_aeat_mod349
3087+#: field:l10n.es.aeat.mod349.report,contact_name:0
3088+msgid "Full Name"
3089+msgstr ""
3090+
3091+#. module: l10n_es_aeat_mod349
3092+#: view:l10n.es.aeat.mod349.report:0
3093+msgid "General"
3094+msgstr ""
3095+
3096+#. module: l10n_es_aeat_mod349
3097+#: selection:account.invoice,operation_key:0
3098+#: selection:l10n.es.aeat.mod349.partner_record,operation_key:0
3099+#: selection:l10n.es.aeat.mod349.partner_refund,operation_key:0
3100+msgid "H - Intra-Community supplies without taxes delivered by legal representative"
3101+msgstr ""
3102+
3103+#. module: l10n_es_aeat_mod349
3104+#: selection:account.invoice,operation_key:0
3105+#: selection:l10n.es.aeat.mod349.partner_record,operation_key:0
3106+#: selection:l10n.es.aeat.mod349.partner_refund,operation_key:0
3107+msgid "I - Intra-Community services acquisitions"
3108+msgstr ""
3109+
3110+#. module: l10n_es_aeat_mod349
3111+#: view:l10n.es.aeat.mod349.partner_record:0
3112+#: view:l10n.es.aeat.mod349.partner_refund:0
3113+msgid "Info"
3114+msgstr ""
3115+
3116+#. module: l10n_es_aeat_mod349
3117+#: field:account.fiscal.position,intracommunity_operations:0
3118+msgid "Intra-Community operations"
3119+msgstr ""
3120+
3121+#. module: l10n_es_aeat_mod349
3122+#: code:_description:0
3123+#: model:ir.model,name:l10n_es_aeat_mod349.model_account_invoice
3124+#: field:l10n.es.aeat.mod349.partner_record_detail,invoice_id:0
3125+#, python-format
3126+msgid "Invoice"
3127+msgstr ""
3128+
3129+#. module: l10n_es_aeat_mod349
3130+#: field:l10n.es.aeat.mod349.partner_refund_detail,invoice_id:0
3131+msgid "Invoice ID"
3132+msgstr ""
3133+
3134+#. module: l10n_es_aeat_mod349
3135+#: selection:l10n.es.aeat.mod349.partner_refund,month_selection:0
3136+#: selection:l10n.es.aeat.mod349.report,month_selection:0
3137+msgid "January"
3138+msgstr ""
3139+
3140+#. module: l10n_es_aeat_mod349
3141+#: selection:l10n.es.aeat.mod349.partner_refund,month_selection:0
3142+#: selection:l10n.es.aeat.mod349.report,month_selection:0
3143+msgid "July"
3144+msgstr ""
3145+
3146+#. module: l10n_es_aeat_mod349
3147+#: selection:l10n.es.aeat.mod349.partner_refund,month_selection:0
3148+#: selection:l10n.es.aeat.mod349.report,month_selection:0
3149 msgid "June"
3150 msgstr ""
3151
3152 #. module: l10n_es_aeat_mod349
3153-#: view:l10n.es.aeat.mod349.report:0
3154-msgid "Options"
3155-msgstr ""
3156-
3157-#. module: l10n_es_aeat_mod349
3158-#: field:l10n.es.aeat.mod349.report,contact_phone:0
3159-msgid "Phone"
3160-msgstr ""
3161-
3162-#. module: l10n_es_aeat_mod349
3163-#: field:l10n.es.aeat.mod349.partner_record_detail,date:0
3164-#: field:l10n.es.aeat.mod349.partner_refund_detail,date:0
3165-msgid "Date"
3166-msgstr ""
3167-
3168-#. module: l10n_es_aeat_mod349
3169-#: selection:l10n.es.aeat.mod349.report,month_selection:0
3170-#: selection:l10n.es.aeat.mod349.partner_refund,month_selection:0
3171+#: field:l10n.es.aeat.mod349.report,representative_vat:0
3172+msgid "L.R. VAT number"
3173+msgstr ""
3174+
3175+#. module: l10n_es_aeat_mod349
3176+#: help:l10n.es.aeat.mod349.report,representative_vat:0
3177+msgid "Legal Representative VAT number."
3178+msgstr ""
3179+
3180+#. module: l10n_es_aeat_mod349
3181+#: selection:account.invoice,operation_key:0
3182+#: selection:l10n.es.aeat.mod349.partner_record,operation_key:0
3183+#: selection:l10n.es.aeat.mod349.partner_refund,operation_key:0
3184+msgid "M - Intra-Community supplies without taxes"
3185+msgstr ""
3186+
3187+#. module: l10n_es_aeat_mod349
3188+#: selection:l10n.es.aeat.mod349.partner_refund,period_selection:0
3189+#: selection:l10n.es.aeat.mod349.report,period_selection:0
3190+msgid "MO - Monthly"
3191+msgstr ""
3192+
3193+#. module: l10n_es_aeat_mod349
3194+#: selection:l10n.es.aeat.mod349.partner_refund,month_selection:0
3195+#: selection:l10n.es.aeat.mod349.report,month_selection:0
3196+msgid "March"
3197+msgstr ""
3198+
3199+#. module: l10n_es_aeat_mod349
3200+#: selection:l10n.es.aeat.mod349.partner_refund,month_selection:0
3201+#: selection:l10n.es.aeat.mod349.report,month_selection:0
3202+msgid "May"
3203+msgstr ""
3204+
3205+#. module: l10n_es_aeat_mod349
3206+#: field:l10n.es.aeat.mod349.partner_refund,month_selection:0
3207+#: field:l10n.es.aeat.mod349.report,month_selection:0
3208+msgid "Month"
3209+msgstr ""
3210+
3211+#. module: l10n_es_aeat_mod349
3212+#: help:l10n.es.aeat.mod349.report,contact_name:0
3213+msgid "Must have name and surname."
3214+msgstr ""
3215+
3216+#. module: l10n_es_aeat_mod349
3217+#: field:l10n.es.aeat.mod349.partner_record,name:0
3218+#: field:l10n.es.aeat.mod349.report,name:0
3219+msgid "Name"
3220+msgstr ""
3221+
3222+#. module: l10n_es_aeat_mod349
3223+#: code:addons/l10n_es_aeat_mod349/mod349.py:186
3224+#, python-format
3225+msgid ""
3226+"Name '%s' have not allowed characters.\n"
3227+"Please, fix it before confirm the report"
3228+msgstr ""
3229+
3230+#. module: l10n_es_aeat_mod349
3231+#: selection:l10n.es.aeat.mod349.report,type:0
3232+msgid "Normal"
3233+msgstr ""
3234+
3235+#. module: l10n_es_aeat_mod349
3236+#: selection:l10n.es.aeat.mod349.partner_refund,month_selection:0
3237+#: selection:l10n.es.aeat.mod349.report,month_selection:0
3238 msgid "November"
3239 msgstr ""
3240
3241@@ -603,90 +566,19 @@
3242 msgstr ""
3243
3244 #. module: l10n_es_aeat_mod349
3245-#: field:l10n.es.aeat.mod349.partner_record,total_operation_amount:0
3246-#: field:l10n.es.aeat.mod349.partner_refund,total_operation_amount:0
3247-msgid "Total operation amount"
3248-msgstr ""
3249-
3250-#. module: l10n_es_aeat_mod349
3251+#: selection:l10n.es.aeat.mod349.partner_refund,month_selection:0
3252 #: selection:l10n.es.aeat.mod349.report,month_selection:0
3253-#: selection:l10n.es.aeat.mod349.partner_refund,month_selection:0
3254 msgid "October"
3255 msgstr ""
3256
3257 #. module: l10n_es_aeat_mod349
3258-#: selection:l10n.es.aeat.mod349.report,period_selection:0
3259-#: selection:l10n.es.aeat.mod349.partner_refund,period_selection:0
3260-msgid "2T - Second Quarter"
3261-msgstr ""
3262-
3263-#. module: l10n_es_aeat_mod349
3264-#: selection:l10n.es.aeat.mod349.report,month_selection:0
3265-#: selection:l10n.es.aeat.mod349.partner_refund,month_selection:0
3266-msgid "January"
3267-msgstr ""
3268-
3269-#. module: l10n_es_aeat_mod349
3270-#: view:l10n.es.aeat.mod349.report:0
3271-msgid "Summary"
3272-msgstr ""
3273-
3274-#. module: l10n_es_aeat_mod349
3275-#: selection:l10n.es.aeat.mod349.report,state:0
3276-msgid "Processed"
3277-msgstr ""
3278-
3279-#. module: l10n_es_aeat_mod349
3280-#: field:l10n.es.aeat.mod349.report,representative_vat:0
3281-msgid "L.R. VAT number"
3282-msgstr ""
3283-
3284-#. module: l10n_es_aeat_mod349
3285-#: selection:account.invoice,operation_key:0
3286-#: selection:l10n.es.aeat.mod349.partner_record,operation_key:0
3287-#: selection:l10n.es.aeat.mod349.partner_refund,operation_key:0
3288-msgid "S - Intra-Community services"
3289-msgstr ""
3290-
3291-#. module: l10n_es_aeat_mod349
3292-#: field:l10n.es.aeat.mod349.report,total_partner_records:0
3293-msgid "Partners records"
3294-msgstr ""
3295-
3296-#. module: l10n_es_aeat_mod349
3297-#: model:ir.actions.report.xml,name:l10n_es_aeat_mod349.report_l10n_es_aeat_mod349
3298-msgid "AEAT 349 Model report"
3299-msgstr ""
3300-
3301-#. module: l10n_es_aeat_mod349
3302-#: view:l10n.es.aeat.mod349.report:0
3303-msgid "General"
3304-msgstr ""
3305-
3306-#. module: l10n_es_aeat_mod349
3307-#: model:ir.model,name:l10n_es_aeat_mod349.model_account_invoice
3308-#: field:l10n.es.aeat.mod349.partner_record_detail,invoice_id:0
3309-msgid "Invoice"
3310-msgstr ""
3311-
3312-#. module: l10n_es_aeat_mod349
3313-#: view:l10n.es.aeat.mod349.report:0
3314-msgid "Cancel"
3315-msgstr ""
3316-
3317-#. module: l10n_es_aeat_mod349
3318-#: view:l10n.es.aeat.mod349.report:0
3319-msgid "AEAT 349"
3320-msgstr ""
3321-
3322-#. module: l10n_es_aeat_mod349
3323-#: view:l10n.es.aeat.mod349.report:0
3324-msgid "Complementary/Substitutive declaration"
3325-msgstr ""
3326-
3327-#. module: l10n_es_aeat_mod349
3328-#: view:l10n.es.aeat.mod349.partner_refund:0
3329-msgid "Details"
3330+#: report:report_l10n_es_aeat_mod349.report:0
3331+msgid "Op. Amount"
3332+msgstr ""
3333+
3334+#. module: l10n_es_aeat_mod349
3335+#: report:report_l10n_es_aeat_mod349.report:0
3336+msgid "Op.Amount"
3337 msgstr ""
3338
3339 #. module: l10n_es_aeat_mod349
3340@@ -702,19 +594,23 @@
3341 msgstr ""
3342
3343 #. module: l10n_es_aeat_mod349
3344-#: selection:l10n.es.aeat.mod349.report,type:0
3345-msgid "Complementary"
3346-msgstr ""
3347-
3348-#. module: l10n_es_aeat_mod349
3349-#: selection:l10n.es.aeat.mod349.report,month_selection:0
3350-#: selection:l10n.es.aeat.mod349.partner_refund,month_selection:0
3351-msgid "May"
3352-msgstr ""
3353-
3354-#. module: l10n_es_aeat_mod349
3355-#: field:l10n.es.aeat.mod349.report,frequency_change:0
3356-msgid "Frequency change"
3357+#: report:report_l10n_es_aeat_mod349.report:0
3358+msgid "Operation key help"
3359+msgstr ""
3360+
3361+#. module: l10n_es_aeat_mod349
3362+#: view:l10n.es.aeat.mod349.report:0
3363+msgid "Options"
3364+msgstr ""
3365+
3366+#. module: l10n_es_aeat_mod349
3367+#: report:report_l10n_es_aeat_mod349.report:0
3368+msgid "Orig. Amount"
3369+msgstr ""
3370+
3371+#. module: l10n_es_aeat_mod349
3372+#: field:l10n.es.aeat.mod349.partner_refund,total_origin_amount:0
3373+msgid "Original amount"
3374 msgstr ""
3375
3376 #. module: l10n_es_aeat_mod349
3377@@ -723,43 +619,125 @@
3378 msgstr ""
3379
3380 #. module: l10n_es_aeat_mod349
3381+#: report:report_l10n_es_aeat_mod349.report:0
3382+msgid "PARTNER REFUND LINES"
3383+msgstr ""
3384+
3385+#. module: l10n_es_aeat_mod349
3386+#: field:l10n.es.aeat.mod349.partner_record,partner_id:0
3387+#: field:l10n.es.aeat.mod349.partner_refund,partner_id:0
3388+#: report:report_l10n_es_aeat_mod349.report:0
3389+msgid "Partner"
3390+msgstr ""
3391+
3392+#. module: l10n_es_aeat_mod349
3393+#: field:l10n.es.aeat.mod349.partner_record,partner_record_ok:0
3394+msgid "Partner Record OK"
3395+msgstr ""
3396+
3397+#. module: l10n_es_aeat_mod349
3398+#: code:addons/l10n_es_aeat_mod349/mod349.py:192
3399+#, python-format
3400+msgid "Partner name '%s' in partner records is not valid due to incorrect characters"
3401+msgstr ""
3402+
3403+#. module: l10n_es_aeat_mod349
3404+#: code:addons/l10n_es_aeat_mod349/mod349.py:199
3405+#, python-format
3406+msgid "Partner name '%s' in refund lines is not valid due to incorrect characters"
3407+msgstr ""
3408+
3409+#. module: l10n_es_aeat_mod349
3410+#: field:l10n.es.aeat.mod349.partner_record_detail,partner_record_id:0
3411+msgid "Partner record"
3412+msgstr ""
3413+
3414+#. module: l10n_es_aeat_mod349
3415+#: field:l10n.es.aeat.mod349.partner_record,record_detail_ids:0
3416+msgid "Partner record detail IDS"
3417+msgstr ""
3418+
3419+#. module: l10n_es_aeat_mod349
3420+#: view:l10n.es.aeat.mod349.report:0
3421+#: field:l10n.es.aeat.mod349.report,partner_record_ids:0
3422+msgid "Partner records"
3423+msgstr ""
3424+
3425+#. module: l10n_es_aeat_mod349
3426+#: field:l10n.es.aeat.mod349.partner_refund_detail,refund_id:0
3427+msgid "Partner refund ID"
3428+msgstr ""
3429+
3430+#. module: l10n_es_aeat_mod349
3431+#: field:l10n.es.aeat.mod349.report,partner_refund_ids:0
3432+msgid "Partner refund IDS"
3433+msgstr ""
3434+
3435+#. module: l10n_es_aeat_mod349
3436+#: field:l10n.es.aeat.mod349.partner_refund,partner_refund_ok:0
3437+msgid "Partner refund OK"
3438+msgstr ""
3439+
3440+#. module: l10n_es_aeat_mod349
3441+#: field:l10n.es.aeat.mod349.partner_refund,refund_detail_ids:0
3442+msgid "Partner refund detail IDS"
3443+msgstr ""
3444+
3445+#. module: l10n_es_aeat_mod349
3446+#: field:l10n.es.aeat.mod349.report,total_partner_records:0
3447+msgid "Partners records"
3448+msgstr ""
3449+
3450+#. module: l10n_es_aeat_mod349
3451 #: field:l10n.es.aeat.mod349.report,total_partner_records_amount:0
3452 msgid "Partners records amount"
3453 msgstr ""
3454
3455 #. module: l10n_es_aeat_mod349
3456-#: model:ir.actions.act_window,name:l10n_es_aeat_mod349.action_l10n_es_aeat_mod349_report
3457-#: model:ir.model,name:l10n_es_aeat_mod349.model_l10n_es_aeat_mod349
3458-#: model:ir.module.module,shortdesc:l10n_es_aeat_mod349.module_meta_information
3459-msgid "AEAT Model 349"
3460-msgstr ""
3461-
3462-#. module: l10n_es_aeat_mod349
3463-#: model:ir.model,name:l10n_es_aeat_mod349.model_l10n_es_aeat_mod349_partner_record
3464-msgid "AEAT 349 Model - Partner record"
3465-msgstr ""
3466-
3467-#. module: l10n_es_aeat_mod349
3468-#: selection:l10n.es.aeat.mod349.report,period_selection:0
3469-#: selection:l10n.es.aeat.mod349.partner_refund,period_selection:0
3470-msgid "0A - Annual"
3471-msgstr ""
3472-
3473-#. module: l10n_es_aeat_mod349
3474-#: help:l10n.es.aeat.mod349.report,representative_vat:0
3475-msgid "Legal Representative VAT number."
3476-msgstr ""
3477-
3478-#. module: l10n_es_aeat_mod349
3479-#: selection:l10n.es.aeat.mod349.report,month_selection:0
3480-#: selection:l10n.es.aeat.mod349.partner_refund,month_selection:0
3481-msgid "February"
3482-msgstr ""
3483-
3484-#. module: l10n_es_aeat_mod349
3485-#: field:l10n.es.aeat.mod349.partner_record,name:0
3486-#: field:l10n.es.aeat.mod349.report,name:0
3487-msgid "Name"
3488+#: field:l10n.es.aeat.mod349.report,total_partner_refunds:0
3489+msgid "Partners refunds"
3490+msgstr ""
3491+
3492+#. module: l10n_es_aeat_mod349
3493+#: field:l10n.es.aeat.mod349.report,total_partner_refunds_amount:0
3494+msgid "Partners refunds amount"
3495+msgstr ""
3496+
3497+#. module: l10n_es_aeat_mod349
3498+#: field:l10n.es.aeat.mod349.partner_refund,period_selection:0
3499+#: field:l10n.es.aeat.mod349.report,period_selection:0
3500+#: report:report_l10n_es_aeat_mod349.report:0
3501+msgid "Period"
3502+msgstr ""
3503+
3504+#. module: l10n_es_aeat_mod349
3505+#: field:l10n.es.aeat.mod349.report,period_ids:0
3506+msgid "Periods"
3507+msgstr ""
3508+
3509+#. module: l10n_es_aeat_mod349
3510+#: field:l10n.es.aeat.mod349.report,contact_phone:0
3511+msgid "Phone"
3512+msgstr ""
3513+
3514+#. module: l10n_es_aeat_mod349
3515+#: field:l10n.es.aeat.mod349.report,previous_number:0
3516+msgid "Previous declaration number"
3517+msgstr ""
3518+
3519+#. module: l10n_es_aeat_mod349
3520+#: selection:l10n.es.aeat.mod349.report,state:0
3521+msgid "Processed"
3522+msgstr ""
3523+
3524+#. module: l10n_es_aeat_mod349
3525+#: view:l10n.es.aeat.mod349.partner_refund:0
3526+msgid "Refund data"
3527+msgstr ""
3528+
3529+#. module: l10n_es_aeat_mod349
3530+#: help:l10n.es.aeat.mod349.partner_refund,total_origin_amount:0
3531+msgid "Refund original amount"
3532 msgstr ""
3533
3534 #. module: l10n_es_aeat_mod349
3535@@ -768,26 +746,54 @@
3536 msgstr ""
3537
3538 #. module: l10n_es_aeat_mod349
3539-#: field:l10n.es.aeat.mod349.partner_record,country_id:0
3540-#: field:l10n.es.aeat.mod349.partner_refund,country_id:0
3541-#: report:report_l10n_es_aeat_mod349.report:0
3542-msgid "Country"
3543-msgstr ""
3544-
3545-#. module: l10n_es_aeat_mod349
3546+#: view:l10n.es.aeat.mod349.report:0
3547+msgid "Resultado"
3548+msgstr ""
3549+
3550+#. module: l10n_es_aeat_mod349
3551+#: selection:account.invoice,operation_key:0
3552+#: selection:l10n.es.aeat.mod349.partner_record,operation_key:0
3553+#: selection:l10n.es.aeat.mod349.partner_refund,operation_key:0
3554+msgid "S - Intra-Community services"
3555+msgstr ""
3556+
3557+#. module: l10n_es_aeat_mod349
3558+#: selection:l10n.es.aeat.mod349.partner_refund,month_selection:0
3559 #: selection:l10n.es.aeat.mod349.report,month_selection:0
3560-#: selection:l10n.es.aeat.mod349.partner_refund,month_selection:0
3561-msgid "April"
3562-msgstr ""
3563-
3564-#. module: l10n_es_aeat_mod349
3565-#: help:l10n.es.aeat.mod349.partner_refund,partner_refund_ok:0
3566-msgid "Checked if Refund record is OK"
3567-msgstr ""
3568-
3569-#. module: l10n_es_aeat_mod349
3570-#: report:report_l10n_es_aeat_mod349.report:0
3571-msgid "Op.Amount"
3572+msgid "September"
3573+msgstr ""
3574+
3575+#. module: l10n_es_aeat_mod349
3576+#: field:l10n.es.aeat.mod349.report,state:0
3577+msgid "State"
3578+msgstr ""
3579+
3580+#. module: l10n_es_aeat_mod349
3581+#: field:l10n.es.aeat.mod349.report,type:0
3582+msgid "Statement Type"
3583+msgstr ""
3584+
3585+#. module: l10n_es_aeat_mod349
3586+#: selection:l10n.es.aeat.mod349.report,type:0
3587+msgid "Substitutive"
3588+msgstr ""
3589+
3590+#. module: l10n_es_aeat_mod349
3591+#: field:l10n.es.aeat.mod349.report,support_type:0
3592+msgid "Support Type"
3593+msgstr ""
3594+
3595+#. module: l10n_es_aeat_mod349
3596+#: report:report_l10n_es_aeat_mod349.report:0
3597+msgid "Support type:"
3598+msgstr ""
3599+
3600+#. module: l10n_es_aeat_mod349
3601+#: selection:account.invoice,operation_key:0
3602+#: selection:l10n.es.aeat.mod349.partner_record,operation_key:0
3603+#: selection:l10n.es.aeat.mod349.partner_refund,operation_key:0
3604+#: report:report_l10n_es_aeat_mod349.report:0
3605+msgid "T - Triangular operations"
3606 msgstr ""
3607
3608 #. module: l10n_es_aeat_mod349
3609@@ -796,16 +802,58 @@
3610 msgstr ""
3611
3612 #. module: l10n_es_aeat_mod349
3613-#: field:l10n.es.aeat.mod349.partner_refund,partner_refund_ok:0
3614-msgid "Partner refund OK"
3615-msgstr ""
3616-
3617-#. module: l10n_es_aeat_mod349
3618-#: view:l10n.es.aeat.mod349.partner_refund:0
3619-msgid "Refund data"
3620-msgstr ""
3621-
3622-#. module: l10n_es_aeat_mod349
3623-#: field:l10n.es.aeat.mod349.partner_refund_detail,invoice_id:0
3624-msgid "Invoice ID"
3625-msgstr ""
3626+#: code:addons/l10n_es_aeat_mod349/wizard/export_mod349_to_boe.py:122
3627+#, python-format
3628+msgid "The type 1 record must be 502 characters long"
3629+msgstr ""
3630+
3631+#. module: l10n_es_aeat_mod349
3632+#: code:addons/l10n_es_aeat_mod349/wizard/export_mod349_to_boe.py:175
3633+#: code:addons/l10n_es_aeat_mod349/wizard/export_mod349_to_boe.py:227
3634+#, python-format
3635+msgid "The type 2 record must be 502 characters long"
3636+msgstr ""
3637+
3638+#. module: l10n_es_aeat_mod349
3639+#: report:report_l10n_es_aeat_mod349.report:0
3640+msgid "Total :"
3641+msgstr ""
3642+
3643+#. module: l10n_es_aeat_mod349
3644+#: field:l10n.es.aeat.mod349.partner_record,total_operation_amount:0
3645+#: field:l10n.es.aeat.mod349.partner_refund,total_operation_amount:0
3646+msgid "Total operation amount"
3647+msgstr ""
3648+
3649+#. module: l10n_es_aeat_mod349
3650+#: field:l10n.es.aeat.mod349.partner_record,partner_vat:0
3651+#: field:l10n.es.aeat.mod349.partner_refund,partner_vat:0
3652+#: report:report_l10n_es_aeat_mod349.report:0
3653+msgid "VAT"
3654+msgstr ""
3655+
3656+#. module: l10n_es_aeat_mod349
3657+#: field:l10n.es.aeat.mod349.report,company_vat:0
3658+msgid "VAT number"
3659+msgstr ""
3660+
3661+#. module: l10n_es_aeat_mod349
3662+#: report:report_l10n_es_aeat_mod349.report:0
3663+msgid "Year"
3664+msgstr ""
3665+
3666+#. module: l10n_es_aeat_mod349
3667+#: selection:l10n.es.aeat.mod349.export_to_boe,state:0
3668+msgid "get"
3669+msgstr ""
3670+
3671+#. module: l10n_es_aeat_mod349
3672+#: selection:l10n.es.aeat.mod349.export_to_boe,state:0
3673+msgid "open"
3674+msgstr ""
3675+
3676+#. module: l10n_es_aeat_mod349
3677+#: field:l10n.es.aeat.mod349.export_to_boe,state:0
3678+msgid "unknown"
3679+msgstr ""
3680+
3681
3682=== modified file 'l10n_es_aeat_mod349/mod349.py'
3683--- l10n_es_aeat_mod349/mod349.py 2014-04-14 14:36:42 +0000
3684+++ l10n_es_aeat_mod349/mod349.py 2014-04-15 12:47:56 +0000
3685@@ -1,11 +1,16 @@
3686 # -*- coding: utf-8 -*-
3687 ##############################################################################
3688 #
3689-# Copyright (C) 2004-2011
3690-# Pexego Sistemas Informáticos. (http://pexego.es) All Rights Reserved
3691+# Copyright (C)
3692+# 2004-2011: Pexego Sistemas Informáticos. (http://pexego.es)
3693+# 2013: Top Consultant Software Creations S.L.
3694+# (http://www.topconsultant.es/)
3695+# 2014: Serv. Tecnol. Avanzados (http://www.serviciosbaeza.com)
3696+# Pedro M. Baeza <pedro.baeza@serviciosbaeza.com>
3697 #
3698-# Migración OpenERP 7.0. Top Consultant Software Creations S.L. (http://www.topconsultant.es/) 2013
3699-# Ignacio Martínez y Miguel López.
3700+# Autores originales: Luis Manuel Angueira Blanco (Pexego)
3701+# Omar Castiñeira Saavedra(omar@pexego.es)
3702+# Migración OpenERP 7.0: Ignacio Martínez y Miguel López.
3703 #
3704 # This program is free software: you can redistribute it and/or modify
3705 # it under the terms of the GNU Affero General Public License as
3706@@ -21,15 +26,10 @@
3707 # along with this program. If not, see <http://www.gnu.org/licenses/>.
3708 #
3709 ##############################################################################
3710-
3711-__author__ = \
3712-"Luis Manuel Angueira Blanco (Pexego),Omar Castiñeira Saavedra(omar@pexego.es)"
3713-
3714-
3715 import re
3716 from openerp.tools.translate import _
3717 from openerp.osv import fields, orm
3718-
3719+from openerp.addons.l10n_es_aeat_mod349.account_invoice import OPERATION_KEYS
3720
3721 MONTH_MAPPING = [
3722 ('01', 'January'),
3723@@ -46,22 +46,11 @@
3724 ('12', 'December'),
3725 ]
3726
3727-OPERATION_KEY = [
3728- ('E', 'E - Intra-Community supplies'),
3729- ('A', 'A - Intra-Community acquisition'),
3730- ('T', 'T - Triangular operations'),
3731- ('S', 'S - Intra-Community services'),
3732- ('I', 'I - Intra-Community services acquisitions'),
3733- ('M', 'M - Intra-Community supplies without taxes'),
3734- ('H', 'H - Intra-Community supplies without taxes delivered by legal'
3735- ' representative'),
3736-]
3737-
3738+# TODO: Quitarlo de aquí y pasarlo a l10n_es_aeat con sustituciones
3739 NAME_RESTRICTIVE_REGEXP = re.compile(u"^[a-zA-Z0-9\sáÁéÉíÍóÓúÚñÑçÇäÄëËïÏüÜöÖ"
3740 u"àÀèÈìÌòÒùÙâÂêÊîÎôÔûÛ\.,-_&'´\:;:/]*$",
3741 re.UNICODE | re.X)
3742
3743-
3744 def _check_valid_string(text_to_check):
3745 """
3746 Checks if string fits with RegExp
3747@@ -70,15 +59,23 @@
3748 return True
3749 return False
3750
3751-
3752-class l10n_es_aeat_mod349(orm.Model):
3753+def _format_partner_vat(cr, uid, partner_vat=None, country=None,
3754+ context=None):
3755+ """Formats VAT to match XXVATNUMBER (where XX is country code)."""
3756+ if country:
3757+ country_pattern = "[" + country.code + country.code.lower() + "]{2}.*"
3758+ vat_regex = re.compile(country_pattern, re.UNICODE | re.X)
3759+ if partner_vat and not vat_regex.match(partner_vat):
3760+ partner_vat = country.code + partner_vat
3761+ return partner_vat
3762+
3763+
3764+class Mod349(orm.Model):
3765 _inherit = "l10n.es.aeat.report"
3766 _name = "l10n.es.aeat.mod349.report"
3767 _description = "AEAT Model 349 Report"
3768
3769- #################
3770 ### FUNCTIONS ###
3771- #################
3772 def _get_report_totals(self, cr, uid, ids, name, args, context=None):
3773 res = {}
3774 for report in self.browse(cr, uid, ids, context=context):
3775@@ -94,10 +91,9 @@
3776 }
3777 return res
3778
3779- def _get_report_alias(self, cr, uid, ids, field_name, args, context=None):
3780- """
3781- Returns an alias as name for the report
3782- """
3783+ def _get_report_alias(self, cr, uid, ids, field_name, args,
3784+ context=None):
3785+ """Returns an alias as name for the report."""
3786 res = {}
3787 for item in self.browse(cr, uid, ids, context=context):
3788 res[item.id] = '%s - %s/%s' % (
3789@@ -106,20 +102,165 @@
3790 item.period_selection or '')
3791 return res
3792
3793- def button_calculate(self, cr, uid, ids, context=None):
3794- calculate_obj = self.pool['l10n.es.aeat.mod349.calculate_records']
3795- calculate_obj._wkf_calculate_records(cr, uid, ids, context=context)
3796- return True
3797-
3798- def button_recalculate(self, cr, uid, ids, context=None):
3799- calculate_obj = self.pool['l10n.es.aeat.mod349.calculate_records']
3800- calculate_obj._calculate_records(cr, uid, ids, context=context)
3801- return True
3802-
3803- def button_export(self, cr, uid, ids, context=None):
3804- export_obj = self.pool["l10n.es.aeat.mod349.export_to_boe"]
3805- self_brw = self.browse(cr, uid, ids and ids[0], context=context)
3806- export_obj._export_boe_file(cr, uid, ids, self_brw, context=context)
3807+ def _create_349_partner_records(self, cr, uid, ids, report_id,
3808+ partner_obj, operation_key,
3809+ context=None):
3810+ """creates partner records in 349"""
3811+ invoices_ids = self.pool['account.invoice'].browse(cr, uid, ids,
3812+ context=context)
3813+ obj = self.pool['l10n.es.aeat.mod349.partner_record']
3814+ partner_country = partner_obj.country_id
3815+ invoice_created = obj.create(cr, uid, {
3816+ 'report_id': report_id,
3817+ 'partner_id': partner_obj.id,
3818+ 'partner_vat': _format_partner_vat(cr, uid,
3819+ partner_vat=partner_obj.vat,
3820+ country=partner_country),
3821+ 'operation_key': operation_key,
3822+ 'country_id': partner_country.id or False,
3823+ 'total_operation_amount': sum([invoice.cc_amount_untaxed for
3824+ invoice in invoices_ids if
3825+ invoice.type not in
3826+ ('in_refund', 'out_refund')]) -
3827+ sum([invoice.cc_amount_untaxed
3828+ for invoice in invoices_ids
3829+ if invoice.type in
3830+ ('in_refund',
3831+ 'out_refund')])
3832+ })
3833+ ### Creation of partner detail lines
3834+ for invoice in invoices_ids:
3835+ detail_obj = self.pool['l10n.es.aeat.mod349.partner_record_detail']
3836+ detail_obj.create(cr, uid,
3837+ {'partner_record_id': invoice_created,
3838+ 'invoice_id': invoice.id,
3839+ 'amount_untaxed': invoice.cc_amount_untaxed})
3840+ return invoice_created
3841+
3842+ def _create_349_refund_records(self, cr, uid, ids, report_id,
3843+ partner_obj, operation_key, context=None):
3844+ """Creates restitution records in 349"""
3845+ refunds = self.pool['account.invoice'].browse(cr, uid, ids)
3846+ refundpol = self.pool['l10n.es.aeat.mod349.partner_record_detail']
3847+ refund_obj = self.pool['l10n.es.aeat.mod349.partner_record']
3848+ obj = self.pool['l10n.es.aeat.mod349.partner_refund']
3849+ obj_detail = self.pool['l10n.es.aeat.mod349.partner_refund_detail']
3850+ partner_country = [address.country_id for address in
3851+ partner_obj.address if address.type ==
3852+ 'invoice' and address.country_id]
3853+ if not partner_country:
3854+ partner_country = [address.country_id for
3855+ address in partner_obj.address
3856+ if address.type == 'default' and
3857+ address.country_id]
3858+ partner_country = partner_country and partner_country[0] or False
3859+ record = {}
3860+ for invoice in refunds:
3861+ #goes around all refunded invoices
3862+ for origin_inv in invoice.origin_invoices_ids:
3863+ if origin_inv.state in ['open', 'paid']:
3864+ # searches for details of another 349s to restor
3865+ refund_detail = refundpol.search(cr, uid,
3866+ [('invoice_id', '=',
3867+ origin_inv.id)])
3868+ valid_refund_details = refund_detail
3869+ for detail in refundpol.browse(cr, uid, refund_detail):
3870+ if not detail.partner_record_id.report_id:
3871+ valid_refund_details.remove(detail.id)
3872+ if valid_refund_details:
3873+ rd = refundpol.browse(cr, uid, valid_refund_details[0])
3874+ #creates a dictionary key with partner_record id to
3875+ #after recover it
3876+ key = str(rd.partner_record_id.id)
3877+ #separates restitutive invoices and nomal, refund
3878+ #invoices of correct period
3879+ if record.get(key):
3880+ record[key].append(invoice)
3881+ #NOTE: Two or more refunded invoices declared in
3882+ #different 349s isn't implemented
3883+ break
3884+ else:
3885+ record[key] = [invoice]
3886+ #NOTE: Two or more refunded invoices declared in
3887+ #different 349s isn't implemented
3888+ break
3889+ #recorremos nuestro diccionario y vamos creando registros
3890+ for line in record:
3891+ partner_rec = refund_obj.browse(cr, uid, int(line),
3892+ context=context)
3893+ record_created = obj.create(cr, uid, {
3894+ 'report_id': report_id,
3895+ 'partner_id': partner_obj.id,
3896+ 'partner_vat': _format_partner_vat(cr, uid,
3897+ partner_vat=partner_obj.vat,
3898+ country=partner_country,
3899+ context=context),
3900+ 'operation_key': operation_key,
3901+ 'country_id': partner_country and partner_country.id or False,
3902+ 'total_operation_amount': partner_rec.total_operation_amount \
3903+ - sum([x.cc_amount_untaxed for x in record[line]]),
3904+ 'total_origin_amount': partner_rec.total_operation_amount,
3905+ 'period_selection': partner_rec.report_id.period_selection,
3906+ 'month_selection': partner_rec.report_id.month_selection,
3907+ 'fiscalyear_id': partner_rec.report_id.fiscalyear_id.id
3908+ }, context=context)
3909+ ### Creation of partner detail lines
3910+ for invoice in record[line]:
3911+ obj_detail.create(cr, uid, {
3912+ 'refund_id': record_created,
3913+ 'invoice_id': invoice.id,
3914+ 'amount_untaxed': invoice.cc_amount_untaxed
3915+ }, context=context)
3916+ return True
3917+
3918+ def calculate(self, cr, uid, ids, context=None):
3919+ """Computes the records in report."""
3920+ partner_obj = self.pool['res.partner']
3921+ invoice_obj = self.pool['account.invoice']
3922+ report_obj = self.pool['l10n.es.aeat.mod349.report']
3923+ partner_record_obj = self.pool['l10n.es.aeat.mod349.partner_record']
3924+ partner_refund_obj = self.pool['l10n.es.aeat.mod349.partner_refund']
3925+ for mod349 in self.browse(cr, uid, ids, context=context):
3926+ ## Remove previous partner records and partner refunds in report
3927+ partner_record_obj.unlink(cr, uid, [record.id for record in
3928+ mod349.partner_record_ids],
3929+ context=context)
3930+ partner_refund_obj.unlink(cr, uid, [refund.id for refund in
3931+ mod349.partner_refund_ids],
3932+ context=context)
3933+ # Returns all partners
3934+ # TODO: Problema: Si se ha desactivado el partner, pero tiene
3935+ # facturas, no saldrán en el informe
3936+ partner_ids = partner_obj.search(cr, uid, [], context=context)
3937+ for partner_id in partner_ids:
3938+ for op_key in [x[0] for x in OPERATION_KEYS]:
3939+ ## Invoices
3940+ invoice_ids = invoice_obj._get_invoices_by_type(cr, uid,
3941+ partner_id,
3942+ operation_key=op_key,
3943+ period_selection=mod349.period_selection,
3944+ fiscalyear_id=mod349.fiscalyear_id.id,
3945+ period_id=[x.id for x in mod349.period_ids],
3946+ month=mod349.month_selection, context=context)
3947+ # Separates normal invoices from restitution
3948+ invoice_ids, refunds_ids = invoice_obj.\
3949+ clean_refund_invoices(cr, uid, invoice_ids, partner_id,
3950+ fiscalyear_id=mod349.fiscalyear_id.id,
3951+ period_id=[x.id for x in mod349.period_ids],
3952+ month=mod349.month_selection,
3953+ period_selection=mod349.period_selection,
3954+ context=context)
3955+ if invoice_ids or refunds_ids:
3956+ partner = partner_obj.browse(cr, uid, partner_id,
3957+ context=context)
3958+ if invoice_ids:
3959+ self._create_349_partner_records(cr, uid,
3960+ invoice_ids, mod349.id, partner,
3961+ op_key, context=context)
3962+ if refunds_ids:
3963+ self._create_349_refund_records(cr, uid,
3964+ refunds_ids, mod349.id, partner,
3965+ op_key, context=context)
3966 return True
3967
3968 def _check_report_lines(self, cr, uid, ids, context=None):
3969@@ -132,21 +273,17 @@
3970 ## all are correct (all fields filled)
3971 for partner_record in item.partner_record_ids:
3972 if not partner_record.partner_record_ok:
3973- raise orm.except_orm(
3974- _('Error!'),
3975- _("All partner records fields " +
3976- "(country, VAT number) must " +
3977- "be filled."))
3978+ raise orm.except_orm(_('Error!'),
3979+ _("All partner records fields (country, VAT number) "
3980+ "must be filled."))
3981 if partner_record.total_operation_amount < 0:
3982 raise orm.except_orm(_('Error!'),
3983 _("All amounts must be positives"))
3984 for partner_record in item.partner_refund_ids:
3985 if not partner_record.partner_refund_ok:
3986- raise orm.except_orm(
3987- _('Error!'),
3988- _("All partner refunds fields " +
3989- "(country, VAT number) must " +
3990- "be filled."))
3991+ raise orm.except_orm(_('Error!'),
3992+ _("All partner refunds fields (country, VAT number) "
3993+ "must be filled."))
3994 if partner_record.total_operation_amount < 0 or \
3995 partner_record.total_origin_amount < 0:
3996 raise orm.except_orm(_('Error!'),
3997@@ -182,40 +319,33 @@
3998 """
3999 mod349_obj = self.browse(cr, uid, ids and ids[0], context)
4000 if not _check_valid_string(mod349_obj.contact_name):
4001- raise osv.except_osv(_('Error!'),
4002+ raise orm.except_orm(_('Error!'),
4003 _("Name '%s' have not allowed characters.\nPlease, fix it "
4004 "before confirm the report") % mod349_obj.contact_name)
4005 ## Check partner record partner names
4006 for partner_record in mod349_obj.partner_record_ids:
4007 if not _check_valid_string(partner_record.partner_id.name):
4008- raise osv.except_osv(_("Error!"),
4009+ raise orm.except_orm(_("Error!"),
4010 _("Partner name '%s' in partner records is not valid "
4011 "due to incorrect characters") %
4012 partner_record.partner_id.name)
4013 ## Check partner refund partner names
4014 for partner_refund in mod349_obj.partner_refund_ids:
4015 if not _check_valid_string(partner_refund.partner_id.name):
4016- raise osv.except_osv(_("Error!"),
4017+ raise orm.except_orm(_("Error!"),
4018 _("Partner name '%s' in refund lines is not valid due "
4019 "to incorrect characters") %
4020 partner_refund.partner_id.name)
4021
4022- def wkf_confirm(self, cr, uid, ids, context=None):
4023- """ Workflow : confirm """
4024- if context is None:
4025- context = {}
4026-
4027- self._check_report(cr, uid, ids, context)
4028- self.write(cr, uid, ids, {'state': 'done'}, context=context)
4029- return True
4030-
4031- def _check_report(self, cr, uid, ids, context):
4032+ def button_confirm(self, cr, uid, ids, context=None):
4033 """
4034- Checks if all the fields of the report are filled
4035+ Checks if all the fields of the report are correctly filled
4036 """
4037 self._check_names(cr, uid, ids, context)
4038 self._check_report_lines(cr, uid, ids, context)
4039 self._check_restrictive_names(cr, uid, ids, context)
4040+ return super(Mod349, self).button_confirm(cr, uid, ids,
4041+ context=context)
4042
4043 def onchange_period_selection(self, cr, uid, ids, period_selection,
4044 fiscalyear_id, context=None):
4045@@ -233,8 +363,7 @@
4046 string="Name", method=True),
4047 'period_ids': fields.many2many('account.period',
4048 'mod349_mod349_period_rel',
4049- 'mod349_id', 'period_ids',
4050- 'Periods'),
4051+ 'mod349_id', 'period_ids', 'Periods'),
4052 'period_selection': fields.selection([
4053 ('0A', '0A - Annual'),
4054 ('MO', 'MO - Monthly'),
4055@@ -244,64 +373,49 @@
4056 ('4T', '4T - Fourth Quarter')
4057 ], 'Period', required=True, select=1,
4058 states={'confirmed': [('readonly', True)]}),
4059-
4060- 'month_selection': fields.selection(MONTH_MAPPING,
4061- 'Month',
4062- states={'confirmed': [('readonly',
4063- True)]}),
4064-
4065+ 'month_selection': fields.selection(MONTH_MAPPING, 'Month',
4066+ states={'confirmed': [('readonly', True)]}),
4067 'frequency_change': fields.boolean('Frequency change',
4068- states={'confirmed': [('readonly',
4069- True)]}),
4070+ states={'confirmed': [('readonly', True)]}),
4071 ## Identification
4072- 'contact_name': fields.char("Full Name",
4073- size=40,
4074- help="Must have name and surname.",
4075- states={'calculated': [('required',
4076- True)],
4077- 'confirmed': [('readonly',
4078- True)]}),
4079- 'contact_phone': fields.char("Phone",
4080- size=9,
4081- states={'calculated': [('required',
4082- True)],
4083- 'confirmed': [('readonly',
4084- True)]}),
4085+ 'contact_name': fields.char("Full Name", size=40,
4086+ help="Must have name and surname.",
4087+ states={'calculated': [('required', True)],
4088+ 'confirmed': [('readonly', True)]}),
4089+ 'contact_phone': fields.char("Phone", size=9,
4090+ states={'calculated': [('required', True)],
4091+ 'confirmed': [('readonly', True)]}),
4092 ## TOTALS
4093 'total_partner_records': fields.function(_get_report_totals,
4094- string="Partners records",
4095- method=True,
4096- type='integer',
4097- multi="report_totals_multi"),
4098+ string="Partners records", method=True,
4099+ type='integer', multi="report_totals_multi"),
4100 'total_partner_records_amount': fields.function(_get_report_totals,
4101- string="Partners" +
4102- " records amount",
4103- method=True,
4104- type='float',
4105- multi="report_" +
4106- "totals_multi"),
4107+ string="Partners records amount", method=True,
4108+ type='float', multi="report_totals_multi"),
4109 'total_partner_refunds': fields.function(_get_report_totals,
4110- string="Partners refunds",
4111- method=True,
4112- type='integer',
4113- multi="report_totals_multi"),
4114+ string="Partners refunds", method=True,
4115+ type='integer', multi="report_totals_multi"),
4116 'total_partner_refunds_amount': fields.function(_get_report_totals,
4117- string="Partners" +
4118- " refunds amount",
4119- method=True,
4120- type='float',
4121- multi="report_" +
4122- "totals_multi"),
4123+ string="Partners refunds amount", method=True,
4124+ type='float', multi="report_totals_multi"),
4125+ # LISTADOS
4126+ 'partner_record_ids': fields.one2many(
4127+ 'l10n.es.aeat.mod349.partner_record',
4128+ 'report_id', 'Partner records', ondelete='cascade',
4129+ states={'confirmed': [('readonly', True)]}),
4130+ 'partner_refund_ids': fields.one2many(
4131+ 'l10n.es.aeat.mod349.partner_refund',
4132+ 'report_id', 'Partner refund IDS', ondelete='cascade',
4133+ states={'confirmed': [('readonly', True)]}),
4134 }
4135-
4136 _defaults = {
4137 'period_selection': '0A',
4138- 'type': ' ',
4139+ 'type': 'N',
4140 'number': '349',
4141 }
4142
4143
4144-class l10n_es_aeat_mod349_partner_record(orm.Model):
4145+class Mod349PartnerRecord(orm.Model):
4146 """
4147 AEAT 349 Model - Partner record
4148 Shows total amount per operation key (grouped) for each partner
4149@@ -332,60 +446,35 @@
4150 Formats VAT to match XXVATNUMBER (where XX is country code)
4151 """
4152 if country_id:
4153- country_obj = self.pool.get('res.country')
4154- country_code = country_obj.browse(cr, uid, country_id,
4155- context=context).code
4156- country_pattern = "[" + country_code + \
4157- country_code.lower() + "]{2}.*"
4158- vat_regex = re.compile(country_pattern, re.UNICODE | re.X)
4159-
4160- if partner_vat and not vat_regex.match(partner_vat):
4161- partner_vat = country_code + partner_vat
4162+ country_obj = self.pool['res.country']
4163+ country = country_obj.browse(cr, uid, country_id, context=context)
4164+ partner_vat = _format_partner_vat(cr, uid, partner_vat=partner_vat,
4165+ country=country)
4166 return {'value': {'partner_vat': partner_vat}}
4167
4168 _columns = {
4169 'report_id': fields.many2one('l10n.es.aeat.mod349.report',
4170 'AEAT 349 Report ID'),
4171 # The name it's just an alias of the partner vat
4172- 'name': fields.function(get_record_name,
4173- method=True,
4174- type="char",
4175- size="64",
4176- string="Name"),
4177+ 'name': fields.function(get_record_name, method=True, type="char",
4178+ size="64", string="Name"),
4179 'partner_id': fields.many2one('res.partner', 'Partner', required=True),
4180 'partner_vat': fields.char('VAT', size=15, select=1),
4181 'country_id': fields.many2one('res.country', 'Country'),
4182- 'operation_key': fields.selection(OPERATION_KEY,
4183- 'Operation key',
4184+ 'operation_key': fields.selection(OPERATION_KEYS, 'Operation key',
4185 required=True),
4186 'total_operation_amount': fields.float('Total operation amount'),
4187 'partner_record_ok': fields.function(_check_partner_record_line,
4188- method=True,
4189- string='Partner Record OK',
4190- help='Checked if' +
4191- ' Partner record is OK'),
4192- }
4193-
4194-
4195-
4196-class l10n_es_aeat_mod349_report_add_partner_records(orm.Model):
4197- """
4198- Inheritance of 'l10n.es.aeat.mod349' to add
4199- a relation between partner record and report
4200- """
4201- _inherit = 'l10n.es.aeat.mod349.report'
4202-
4203- _columns = {
4204- 'partner_record_ids':
4205- fields.one2many('l10n.es.aeat.mod349.partner_record',
4206- 'report_id',
4207- 'Partner records',
4208- ondelete='cascade',
4209- states={'confirmed': [('readonly', True)]}),
4210- }
4211-
4212-
4213-class l10n_es_aeat_mod349_partner_record_detail(orm.Model):
4214+ method=True, string='Partner Record OK',
4215+ help='Checked if partner record is OK'),
4216+ 'record_detail_ids': fields.one2many(
4217+ 'l10n.es.aeat.mod349.partner_record_detail',
4218+ 'partner_record_id', 'Partner record detail IDS',
4219+ ondelete='cascade'),
4220+ }
4221+
4222+
4223+class Mod349PartnerRecordDetail(orm.Model):
4224 """
4225 AEAT 349 Model - Partner record detail
4226 Shows detail lines for each partner record.
4227@@ -394,19 +483,14 @@
4228 _description = 'AEAT 349 Model - Partner record detail'
4229
4230 _columns = {
4231- 'partner_record_id':
4232- fields.many2one('l10n.es.aeat.mod349.partner_record',
4233- 'Partner record',
4234- required=True,
4235- ondelete='cascade',
4236- select=1),
4237+ 'partner_record_id': fields.many2one(
4238+ 'l10n.es.aeat.mod349.partner_record',
4239+ 'Partner record', required=True,
4240+ ondelete='cascade', select=1),
4241 'invoice_id': fields.many2one('account.invoice', 'Invoice'),
4242 'amount_untaxed': fields.float('Amount untaxed'),
4243- 'date': fields.related('invoice_id',
4244- 'date_invoice',
4245- type="date",
4246- string="Date",
4247- readonly=True),
4248+ 'date': fields.related('invoice_id', 'date_invoice', type="date",
4249+ string="Date", readonly=True),
4250 }
4251
4252 _defaults = {
4253@@ -415,25 +499,7 @@
4254 }
4255
4256
4257-
4258-class l10n_es_aeat_mod349_partner_record_add_partner_record_details(orm.Model):
4259- """
4260- Inheritance of 'l10n.es.aeat.mod349.partner_record' to add a
4261- relation between
4262- partner record and partner record details
4263- """
4264- _inherit = 'l10n.es.aeat.mod349.partner_record'
4265-
4266- _columns = {
4267- 'record_detail_ids':
4268- fields.one2many('l10n.es.aeat.mod349.partner_record_detail',
4269- 'partner_record_id',
4270- 'Partner record detail IDS',
4271- ondelete='cascade'),
4272- }
4273-
4274-
4275-class l10n_es_aeat_mod349_partner_refund(orm.Model):
4276+class Mod349PartnerRefund(orm.Model):
4277 _name = 'l10n.es.aeat.mod349.partner_refund'
4278 _description = 'AEAT 349 Model - Partner refund'
4279 _order = 'operation_key asc'
4280@@ -454,24 +520,19 @@
4281 _columns = {
4282 'report_id': fields.many2one('l10n.es.aeat.mod349.report',
4283 'AEAT 349 Report ID'),
4284- 'partner_id': fields.many2one('res.partner',
4285- 'Partner',
4286- required=1,
4287+ 'partner_id': fields.many2one('res.partner', 'Partner', required=1,
4288 select=1),
4289 'partner_vat': fields.char('VAT', size=15),
4290- 'operation_key': fields.selection(OPERATION_KEY,
4291- 'Operation key',
4292+ 'operation_key': fields.selection(OPERATION_KEYS, 'Operation key',
4293 required=True),
4294 'country_id': fields.many2one('res.country', 'Country'),
4295- 'fiscalyear_id': fields.many2one('account.fiscalyear', 'Fiscalyear'),
4296+ 'fiscalyear_id': fields.many2one('account.fiscalyear', 'Fiscal year'),
4297 'total_operation_amount': fields.float('Total operation amount'),
4298 'total_origin_amount': fields.float('Original amount',
4299 help="Refund original amount"),
4300- 'partner_refund_ok':
4301- fields.function(_check_partner_refund_line,
4302- method=True,
4303- string='Partner refund OK',
4304- help='Checked if Refund record is OK'),
4305+ 'partner_refund_ok': fields.function(_check_partner_refund_line,
4306+ method=True, string='Partner refund OK',
4307+ help='Checked if refund record is OK'),
4308 'period_selection': fields.selection([
4309 ('0A', '0A - Annual'),
4310 ('MO', 'MO - Monthly'),
4311@@ -480,7 +541,11 @@
4312 ('3T', '3T - Third Quarter'),
4313 ('4T', '4T - Fourth Quarter')
4314 ], 'Period'),
4315- 'month_selection': fields.selection(MONTH_MAPPING, 'Month')
4316+ 'month_selection': fields.selection(MONTH_MAPPING, 'Month'),
4317+ 'refund_detail_ids': fields.one2many(
4318+ 'l10n.es.aeat.mod349.partner_refund_detail',
4319+ 'refund_id', 'Partner refund detail IDS',
4320+ ondelete='cascade'),
4321 }
4322
4323 _defaults = {
4324@@ -489,41 +554,16 @@
4325
4326 def onchange_format_partner_vat(self, cr, uid, ids,
4327 partner_vat, country_id, context=None):
4328- """
4329- Formats VAT to match XXVATNUMBER (where XX is country code)
4330- """
4331+ """Formats VAT to match XXVATNUMBER (where XX is country code)"""
4332 if country_id:
4333 country_obj = self.pool['res.country']
4334- country_code = country_obj.browse(cr, uid, country_id,
4335- context=context).code
4336- country_pattern = "[" + country_code + \
4337- country_code.lower() + "]{2}.*"
4338- vat_regex = re.compile(country_pattern, re.UNICODE | re.X)
4339- if partner_vat and not vat_regex.match(partner_vat):
4340- partner_vat = country_code + partner_vat
4341+ country = country_obj.browse(cr, uid, country_id, context=context)
4342+ partner_vat = _format_partner_vat(cr, uid, partner_vat=partner_vat,
4343+ country=country)
4344 return {'value': {'partner_vat': partner_vat}}
4345
4346
4347-class l10n_es_aeat_mod349_partner_record_add_partner_refund(orm.Model):
4348- """
4349- Inheritance of 'l10n.es.aeat.mod349' to add a
4350- relation between partner refund and report
4351- """
4352- _inherit = 'l10n.es.aeat.mod349.report'
4353-
4354- _columns = {
4355- 'partner_refund_ids':
4356- fields.one2many('l10n.es.aeat.mod349.partner_refund',
4357- 'report_id',
4358- 'Partner refund IDS',
4359- ondelete='cascade',
4360- states={'confirmed': [('readonly',
4361- True)]}),
4362- }
4363-
4364-
4365-class l10n_es_aeat_mod349_partner_refund_detail(orm.Model):
4366-
4367+class Mod349PartnerRefundDetail(orm.Model):
4368 _name = 'l10n.es.aeat.mod349.partner_refund_detail'
4369 _description = 'AEAT 349 Model - Partner refund detail'
4370
4371@@ -535,20 +575,3 @@
4372 'date': fields.related('invoice_id', 'date_invoice',
4373 type="date", string="Date", readonly=True)
4374 }
4375-
4376-
4377-class l10n_es_aeat_mod349_partner_refund_add_partner_refund_detail(orm.Model):
4378- """
4379- Inheritance of 'l10n.es.aeat.mod349.partner_refund' to add a relation
4380- between partner refund and partner refund detail
4381- """
4382- _inherit = 'l10n.es.aeat.mod349.partner_refund'
4383-
4384- _columns = {
4385- 'refund_detail_ids':
4386- fields.one2many('l10n.es.aeat.mod349.partner_refund_detail',
4387- 'refund_id',
4388- 'Partner refund detail IDS',
4389- ondelete='cascade'),
4390- }
4391-
4392
4393=== modified file 'l10n_es_aeat_mod349/mod349_view.xml'
4394--- l10n_es_aeat_mod349/mod349_view.xml 2014-04-14 14:36:42 +0000
4395+++ l10n_es_aeat_mod349/mod349_view.xml 2014-04-15 12:47:56 +0000
4396@@ -33,8 +33,6 @@
4397 </field>
4398 </record>
4399
4400-
4401-
4402 <!-- #################################
4403 ### AEAT MODEL 349 PARTNER RECORDS ###
4404 ################################## -->
4405@@ -78,8 +76,6 @@
4406 </field>
4407 </record>
4408
4409-
4410-
4411 <!-- #######################################
4412 ### AEAT MODEL 349 PARTNER REFUND DETAIL ###
4413 ######################################## -->
4414@@ -111,8 +107,6 @@
4415 </field>
4416 </record>
4417
4418-
4419-
4420 <!-- #################################
4421 ### AEAT MODEL 349 PARTNER REFUNDS ###
4422 ################################## -->
4423@@ -166,99 +160,68 @@
4424 </field>
4425 </record>
4426
4427-
4428-
4429 <!-- #################
4430 ### AEAT MODEL 349 ###
4431 ################## -->
4432 <!-- Tree view -->
4433 <record id="view_l10n_es_aeat_mod349_report_tree" model="ir.ui.view">
4434- <field name="name">AEAT Model 349 (tree)</field>
4435+ <field name="name">l10n_es.aeat.mod349.report.tree</field>
4436 <field name="model">l10n.es.aeat.mod349.report</field>
4437- <field name="type">tree</field>
4438+ <field name="inherit_id" ref="l10n_es_aeat.view_l10n_es_aeat_report_tree"/>
4439 <field name="arch" type="xml">
4440- <tree string="AEAT 349">
4441- <field name="number"/>
4442- <field name="name"/>
4443- <field name="company_id"/>
4444- <field name="fiscalyear_id"/>
4445+ <tree position="attributes">
4446+ <attribute name="string">AEAT 349 reports</attribute>=
4447+ </tree>
4448+ <field name="fiscalyear_id" position="after">
4449 <field name="period_selection"/>
4450 <field name="month_selection"/>
4451- <field name="type"/>
4452- <field name="previous_number"/>
4453- <field name="state"/>
4454- </tree>
4455+ <field name="total_partner_records"/>
4456+ <field name="total_partner_records_amount"/>
4457+ <field name="total_partner_refunds"/>
4458+ <field name="total_partner_refunds_amount"/>
4459+ </field>
4460 </field>
4461 </record>
4462
4463 <!-- Form view -->
4464 <record id="view_l10n_es_aeat_mod349_report_form" model="ir.ui.view">
4465- <field name="name">AEAT Model 349 (form)</field>
4466+ <field name="name">l10n_es.aeat.mod349.report.form</field>
4467 <field name="model">l10n.es.aeat.mod349.report</field>
4468- <field name="type">form</field>
4469+ <field name="inherit_id" ref="l10n_es_aeat.view_l10n_es_aeat_report_form"/>
4470 <field name="arch" type="xml">
4471- <form string="AEAT 349" version="7.0">
4472- <header>
4473- <button name="button_calculate"
4474- type="object"
4475- string="Calculate"
4476- states="draft"
4477- icon="gtk-execute"/>
4478- <button name="button_recalculate"
4479- type="object"
4480- string="Recalculate"
4481- states="calculating,calculated"
4482- icon="gtk-execute"/>
4483- <button name="button_export"
4484- type="object"
4485- string="Export to BOE"
4486- states="calculated,done"
4487- icon="gtk-execute"/>
4488- <button name="confirm" string="Confirm" type="workflow" states="calculated" icon="gtk-ok"/>
4489- <button name="cancel" string="Cancel" type="workflow" states="calculated,done" icon="gtk-cancel"/>
4490- <button name="action_recover" string="Draft" type="object" states="canceled" icon="gtk-undo"/>
4491- </header>
4492- <sheet>
4493- <group colspan="4" col="6" string="Declaration">
4494- <field name="company_id" on_change="on_change_company_id(company_id)" required="1" select="1"/>
4495- <field name="number"/>
4496- </group>
4497-
4498- <group colspan="4" col="8">
4499- <group colspan="4" col="2">
4500- <field name="fiscalyear_id"/>
4501- </group>
4502- <group colspan="4" col="2">
4503- <field name="period_selection" on_change="onchange_period_selection(period_selection, fiscalyear_id)"/>
4504- <newline/>
4505- <group colspan="2" col="2" attrs="{'invisible':[('period_selection','not in',['1T','2T','3T','4T'])]}">
4506- <field name="period_ids" attrs="{'required':[('period_selection','in',['1T','2T','3T','4T'])]}" domain="[('fiscalyear_id','=',fiscalyear_id)]"/>
4507- </group>
4508- <newline/>
4509- <group colspan="2" col="2" attrs="{'invisible':[('period_selection','!=','MO')]}">
4510- <field name="month_selection" attrs="{'required':[('period_selection','==','MO')]}"/>
4511- </group>
4512- </group>
4513- </group>
4514- <sheet>
4515+ <button name="%(l10n_es_aeat.action_wizard_aeat_export)d" position="attributes">
4516+ <attribute name="name">%(action_wizard_aeat_mod349_export)d</attribute>
4517+ </button>
4518+ <field name="company_vat" position="after">
4519+ <field name="contact_phone"/>
4520+ <field name="contact_name"/>
4521+ <field name="representative_vat"/>
4522+ </field>
4523+ <field name="calculation_date" position="after">
4524+ <field name="period_selection" on_change="onchange_period_selection(period_selection, fiscalyear_id)"/>
4525+ <field name="period_ids"
4526+ attrs="{'required': [('period_selection', 'in', ['1T','2T','3T','4T'])], 'invisible':[('period_selection', 'not in', ['1T','2T','3T','4T'])]}"
4527+ domain="[('fiscalyear_id','=',fiscalyear_id)]"/>
4528+ <field name="month_selection"
4529+ attrs="{'required': [('period_selection','==','MO')], 'invisible': [('period_selection','!=','MO')]}"/>
4530+ </field>
4531+ <group string="Declaración" position="after">
4532+ <group string="Complementaria" colspan="4">
4533+ <field name="type"/>
4534+ <field name="previous_number"
4535+ attrs="{'invisible': [('type','==','N')], 'required': ['|', ('type','==','S'), ('type','==','C')]}"/>
4536+ </group>
4537 <notebook colspan="4">
4538 <page string="General">
4539- <group string="Identification" colspan="4">
4540- <field name="company_vat"/>
4541- <field name="contact_phone"/>
4542- <field name="contact_name"/>
4543- <field name="representative_vat"/>
4544- </group>
4545- <group string="Complementary/Substitutive declaration" colspan="4">
4546- <field name="type"/>
4547- <field name="previous_number"
4548- attrs="{'required':[('type','==','S'),('state','==','calculated')]}"/>
4549- </group>
4550- <group string="Summary" colspan="4">
4551- <field name="total_partner_records"/>
4552- <field name="total_partner_records_amount"/>
4553- <field name="total_partner_refunds"/>
4554- <field name="total_partner_refunds_amount"/>
4555+ <group string="Resultado">
4556+ <group>
4557+ <field name="total_partner_records"/>
4558+ <field name="total_partner_records_amount"/>
4559+ </group>
4560+ <group>
4561+ <field name="total_partner_refunds"/>
4562+ <field name="total_partner_refunds_amount"/>
4563+ </group>
4564 </group>
4565 <group string="Options" colspan="4">
4566 <field name="support_type"/>
4567@@ -272,39 +235,7 @@
4568 <field name="partner_refund_ids" nolabel="1"/>
4569 </page>
4570 </notebook>
4571- </sheet>
4572- <footer>
4573- <group colspan="4">
4574- <field name="state" select="2" readonly="1"/>
4575- <field name="calculation_date" select="2" readonly="1"/>
4576- </group>
4577- </footer>
4578- </sheet>
4579- </form>
4580- </field>
4581- </record>
4582-
4583- <record id="view_l10n_es_aeat_mod349_report_search" model="ir.ui.view">
4584- <field name="name">AEAT Model 349 (search)</field>
4585- <field name="model">l10n.es.aeat.mod349.report</field>
4586- <field name="type">search</field>
4587- <field name="arch" type="xml">
4588- <search string="AEAT 349">
4589- <group col="8" colspan="4">
4590- <filter icon="terp-gtk-media-pause" string="Draft" domain="[('state','=','draft')]" help="Draft models"/>
4591- <filter icon="gtk-execute" string="In process" domain="[('state','in',('calculating', 'calculated'))]" help="In process models"/>
4592- <filter icon="terp-camera_test" string="Done" domain="[('state','=','done')]" help="Confirmed models"/>
4593- <filter icon="gtk-cancel" string="Cancelled" domain="[('state', '=', 'canceled')]" help="Cancelled models"/>
4594- <separator orientation="vertical"/>
4595- <filter string="Fiscal Year" icon="terp-folder-orange" domain="[]" context="{'group_by':'fiscalyear_id'}"/>
4596- <separator orientation="vertical"/>
4597- <filter string="Company" icon="terp-personal" domain="[]" context="{'group_by':'company_id'}"/>
4598- </group>
4599- <newline/>
4600- <field name="number"/>
4601- <field name="period_selection"/>
4602- <field name="type"/>
4603- </search>
4604+ </group>
4605 </field>
4606 </record>
4607
4608@@ -314,19 +245,27 @@
4609 <field name="res_model">l10n.es.aeat.mod349.report</field>
4610 <field name="view_type">form</field>
4611 <field name="view_mode">tree,form</field>
4612- <field name="help">Create and query AEAT Model 349 Reports</field>
4613- </record>
4614-
4615-
4616-
4617- <!--
4618- ### MENU ACCESS ###
4619- -->
4620+ <field name="help">Create and query AEAT Model 349 reports</field>
4621+ </record>
4622+ <record model="ir.actions.act_window.view" id="action_l10n_es_aeat_mod303_report_tree">
4623+ <field name="sequence" eval="2"/>
4624+ <field name="view_mode">tree</field>
4625+ <field name="view_id" ref="view_l10n_es_aeat_mod349_report_tree"/>
4626+ <field name="act_window_id" ref="action_l10n_es_aeat_mod349_report"/>
4627+ </record>
4628+ <record model="ir.actions.act_window.view" id="action_l10n_es_aeat_mod349_report_form">
4629+ <field name="sequence" eval="3"/>
4630+ <field name="view_mode">form</field>
4631+ <field name="view_id" ref="view_l10n_es_aeat_mod349_report_form"/>
4632+ <field name="act_window_id" ref="action_l10n_es_aeat_mod349_report"/>
4633+ </record>
4634+
4635+ <!-- ### MENU ACCESS ### -->
4636 <menuitem
4637 id="menu_aeat_mod349_report"
4638 parent="l10n_es_aeat.menu_root_aeat"
4639 action="action_l10n_es_aeat_mod349_report"
4640- sequence="60"
4641+ sequence="349"
4642 name="AEAT 349 Model"/>
4643
4644 </data>
4645
4646=== removed file 'l10n_es_aeat_mod349/mod349_workflow.xml'
4647--- l10n_es_aeat_mod349/mod349_workflow.xml 2013-11-22 23:44:11 +0000
4648+++ l10n_es_aeat_mod349/mod349_workflow.xml 1970-01-01 00:00:00 +0000
4649@@ -1,72 +0,0 @@
4650-<?xml version="1.0" encoding="utf-8"?>
4651-<openerp>
4652- <data>
4653-
4654- <record id="wkf_l10n_es_aeat_mod349_report" model="workflow">
4655- <field name="name">AEAT 349 Report</field>
4656- <field name="osv">l10n.es.aeat.mod349.report</field>
4657- <field name="on_create">True</field>
4658- </record>
4659-
4660-
4661- <!--
4662- ### NODES ###
4663- -->
4664- <record id="act_draft" model="workflow.activity">
4665- <field name="wkf_id" ref="wkf_l10n_es_aeat_mod349_report"/>
4666- <field name="flow_start">True</field>
4667- <field name="name">draft</field>
4668- </record>
4669-
4670- <record id="act_calculate" model="workflow.activity">
4671- <field name="wkf_id" ref="wkf_l10n_es_aeat_mod349_report"/>
4672- <field name="name">calculated</field>
4673- <field name="action">write({'state':'calculated'})</field>
4674- <field name="kind">function</field>
4675- </record>
4676-
4677- <record id="act_confirm" model="workflow.activity">
4678- <field name="wkf_id" ref="wkf_l10n_es_aeat_mod349_report"/>
4679- <field name="name">confirmed</field>
4680- <field name="action">wkf_confirm()</field>
4681- <field name="kind">function</field>
4682- </record>
4683-
4684- <record id="act_cancel" model="workflow.activity">
4685- <field name="wkf_id" ref="wkf_l10n_es_aeat_mod349_report"/>
4686- <field name="name">canceled</field>
4687- <field name="flow_stop">True</field>
4688- <field name="action">write({'state':'canceled'})</field>
4689- <field name="kind">function</field>
4690- </record>
4691-
4692-
4693- <!--
4694- ### TRANSITIONS ###
4695- -->
4696- <record id="trans_draft_calculate" model="workflow.transition">
4697- <field name="act_from" ref="act_draft"/>
4698- <field name="act_to" ref="act_calculate"/>
4699- <field name="signal">calculate</field>
4700- </record>
4701-
4702- <record id="trans_calculate_confirm" model="workflow.transition">
4703- <field name="act_from" ref="act_calculate"/>
4704- <field name="act_to" ref="act_confirm"/>
4705- <field name="signal">confirm</field>
4706- </record>
4707-
4708- <record id="trans_calculate_draft" model="workflow.transition">
4709- <field name="act_from" ref="act_calculate"/>
4710- <field name="act_to" ref="act_cancel"/>
4711- <field name="signal">cancel</field>
4712- </record>
4713-
4714- <record id="trans_confirm_cancel" model="workflow.transition">
4715- <field name="act_from" ref="act_confirm"/>
4716- <field name="act_to" ref="act_cancel"/>
4717- <field name="signal">cancel</field>
4718- </record>
4719-
4720- </data>
4721-</openerp>
4722
4723=== renamed file 'l10n_es_aeat_mod349/mod349_report.xml' => 'l10n_es_aeat_mod349/report/mod349_report.xml'
4724--- l10n_es_aeat_mod349/mod349_report.xml 2013-11-22 23:44:11 +0000
4725+++ l10n_es_aeat_mod349/report/mod349_report.xml 2014-04-15 12:47:56 +0000
4726@@ -1,6 +1,6 @@
4727 <?xml version="1.0" encoding="utf-8"?>
4728 <openerp>
4729- <data>
4730+ <data>
4731
4732 <report
4733 id="report_l10n_es_aeat_mod349"
4734@@ -12,5 +12,5 @@
4735 menu="True"
4736 header="False" />
4737
4738- </data>
4739+ </data>
4740 </openerp>
4741\ No newline at end of file
4742
4743=== modified file 'l10n_es_aeat_mod349/security/ir.model.access.csv'
4744--- l10n_es_aeat_mod349/security/ir.model.access.csv 2013-11-22 23:44:11 +0000
4745+++ l10n_es_aeat_mod349/security/ir.model.access.csv 2014-04-15 12:47:56 +0000
4746@@ -1,16 +1,11 @@
4747 "id","name","model_id:id","group_id:id","perm_read","perm_write","perm_create","perm_unlink"
4748-
4749 "access_l10n_es_aeat_mod349_report_user","AEAT 349 Model: Report - Account User","model_l10n_es_aeat_mod349_report","account.group_account_user",1,0,0,0
4750 "access_l10n_es_aeat_mod349_report_manager","AEAT 349 Model: Report - Account Manager","model_l10n_es_aeat_mod349_report","account.group_account_manager",1,1,1,1
4751-
4752 "access_l10n_es_aeat_mod349_partner_record_user","AEAT 349 Model: Partner record - Account User","model_l10n_es_aeat_mod349_partner_record","account.group_account_user",1,0,0,0
4753 "access_l10n_es_aeat_mod349_partner_record_manager","AEAT 349 Model: Partner record - Account Manager","model_l10n_es_aeat_mod349_partner_record","account.group_account_manager",1,1,1,1
4754-
4755 "access_l10n_es_aeat_mod349_partner_record_detail_user","AEAT 349 Model: Partner record detail - Account User","model_l10n_es_aeat_mod349_partner_record_detail","account.group_account_user",1,0,0,0
4756 "access_l10n_es_aeat_mod349_partner_record_detail_manager","AEAT 349 Model: Partner record detail - Account Manager","model_l10n_es_aeat_mod349_partner_record_detail","account.group_account_manager",1,1,1,1
4757-
4758 "access_l10n_es_aeat_mod349_partner_refund_user","AEAT 349 Model: Partner refund - Account User","model_l10n_es_aeat_mod349_partner_refund","account.group_account_user",1,0,0,0
4759 "access_l10n_es_aeat_mod349_partner_refund_manager","AEAT 349 Model: Partner refund - Account Manager","model_l10n_es_aeat_mod349_partner_refund","account.group_account_manager",1,1,1,1
4760-
4761 "access_l10n_es_aeat_mod349_partner_refund_detail_user","AEAT 349 Model: Partner refund detail - Account User","model_l10n_es_aeat_mod349_partner_refund_detail","account.group_account_user",1,0,0,0
4762-"access_l10n_es_aeat_mod349_partner_refund_detail_manager","AEAT 349 Model: Partner refund detail - Account Manager","model_l10n_es_aeat_mod349_partner_refund_detail","account.group_account_manager",1,1,1,1
4763\ No newline at end of file
4764+"access_l10n_es_aeat_mod349_partner_refund_detail_manager","AEAT 349 Model: Partner refund detail - Account Manager","model_l10n_es_aeat_mod349_partner_refund_detail","account.group_account_manager",1,1,1,1
4765
4766=== added directory 'l10n_es_aeat_mod349/static'
4767=== added directory 'l10n_es_aeat_mod349/static/src'
4768=== added directory 'l10n_es_aeat_mod349/static/src/img'
4769=== added file 'l10n_es_aeat_mod349/static/src/img/icon.png'
4770Binary files l10n_es_aeat_mod349/static/src/img/icon.png 1970-01-01 00:00:00 +0000 and l10n_es_aeat_mod349/static/src/img/icon.png 2014-04-15 12:47:56 +0000 differ
4771=== added file 'l10n_es_aeat_mod349/static/src/img/icon_source.svg'
4772--- l10n_es_aeat_mod349/static/src/img/icon_source.svg 1970-01-01 00:00:00 +0000
4773+++ l10n_es_aeat_mod349/static/src/img/icon_source.svg 2014-04-15 12:47:56 +0000
4774@@ -0,0 +1,99 @@
4775+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
4776+<!-- Created with Inkscape (http://www.inkscape.org/) -->
4777+
4778+<svg
4779+ xmlns:dc="http://purl.org/dc/elements/1.1/"
4780+ xmlns:cc="http://creativecommons.org/ns#"
4781+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
4782+ xmlns:svg="http://www.w3.org/2000/svg"
4783+ xmlns="http://www.w3.org/2000/svg"
4784+ xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
4785+ xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
4786+ id="svg2"
4787+ version="1.1"
4788+ inkscape:version="0.48.3.1 r9886"
4789+ width="128"
4790+ height="128"
4791+ sodipodi:docname="icon_source.svg"
4792+ inkscape:export-filename="icon.png"
4793+ inkscape:export-xdpi="90"
4794+ inkscape:export-ydpi="90">
4795+ <metadata
4796+ id="metadata8">
4797+ <rdf:RDF>
4798+ <cc:Work
4799+ rdf:about="">
4800+ <dc:format>image/svg+xml</dc:format>
4801+ <dc:type
4802+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
4803+ <dc:title />
4804+ </cc:Work>
4805+ </rdf:RDF>
4806+ </metadata>
4807+ <defs
4808+ id="defs6" />
4809+ <sodipodi:namedview
4810+ pagecolor="#ffffff"
4811+ bordercolor="#666666"
4812+ borderopacity="1"
4813+ objecttolerance="10"
4814+ gridtolerance="10"
4815+ guidetolerance="10"
4816+ inkscape:pageopacity="0"
4817+ inkscape:pageshadow="2"
4818+ inkscape:window-width="1855"
4819+ inkscape:window-height="1056"
4820+ id="namedview4"
4821+ showgrid="false"
4822+ inkscape:zoom="9.2903224"
4823+ inkscape:cx="65.663825"
4824+ inkscape:cy="30.379861"
4825+ inkscape:window-x="65"
4826+ inkscape:window-y="24"
4827+ inkscape:window-maximized="1"
4828+ inkscape:current-layer="svg2"
4829+ fit-margin-top="0"
4830+ fit-margin-left="0"
4831+ fit-margin-right="0"
4832+ fit-margin-bottom="0" />
4833+ <g
4834+ id="g3003"
4835+ transform="translate(-0.07356158,0)">
4836+ <g
4837+ transform="translate(0,-3.31149)"
4838+ id="g2998">
4839+ <rect
4840+ style="color:#000000;fill:#0060b2;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:0.51812077;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"
4841+ id="rect2998"
4842+ width="51.523285"
4843+ height="118.80513"
4844+ x="13.910543"
4845+ y="3.8516259"
4846+ ry="0"
4847+ transform="matrix(1,0,0.51069126,0.85976417,0,0)" />
4848+ <path
4849+ style="fill:#ffd715;fill-opacity:1;stroke:none"
4850+ d="M 8.3819299,96.350865 C 15.28056,97.754835 21.012791,96.867186 27.616708,95.369146 62.09419,84.971119 95.837094,59.943837 111.39019,30.987651 c 3.18661,-6.108384 5.44624,-13.663422 7.03447,-20.85088 l 6.46605,10.776762 C 125.69568,40.01481 102.39016,63.273776 86.603152,76.12262 73.967981,86.300307 59.506348,95.700246 46.777865,100.17543 c -9.415431,3.18415 -23.576115,5.76306 -32.88781,5.87454 z"
4851+ id="path3000"
4852+ inkscape:connector-curvature="0"
4853+ sodipodi:nodetypes="ccccccccc" />
4854+ <path
4855+ style="fill:#db2f34;fill-opacity:1;stroke:none"
4856+ d="m 24.427332,35.162809 6.945024,10.297799 C 12.399362,62.416498 10.934918,76.019681 6.2265773,90.24404 L 0,79.467276 C 3.2831165,59.062301 13.253472,46.414525 24.427332,35.162809 z"
4857+ id="path3021"
4858+ inkscape:connector-curvature="0"
4859+ sodipodi:nodetypes="ccccc" />
4860+ </g>
4861+ </g>
4862+ <text
4863+ sodipodi:linespacing="125%"
4864+ id="text2988"
4865+ y="127.48399"
4866+ x="-1.5893271"
4867+ style="font-size:42.27203751px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;text-align:start;line-height:125%;letter-spacing:0px;word-spacing:0px;text-anchor:start;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold"
4868+ xml:space="preserve"><tspan
4869+ y="127.48399"
4870+ x="-1.5893271"
4871+ id="tspan2990"
4872+ sodipodi:role="line">349</tspan></text>
4873+</svg>
4874
4875=== modified file 'l10n_es_aeat_mod349/wizard/__init__.py'
4876--- l10n_es_aeat_mod349/wizard/__init__.py 2014-04-14 14:36:42 +0000
4877+++ l10n_es_aeat_mod349/wizard/__init__.py 2014-04-15 12:47:56 +0000
4878@@ -1,11 +1,16 @@
4879 # -*- coding: utf-8 -*-
4880 ##############################################################################
4881 #
4882-# Copyright (C) 2004-2011
4883-# Pexego Sistemas Informáticos. (http://pexego.es) All Rights Reserved
4884+# Copyright (C)
4885+# 2004-2011: Pexego Sistemas Informáticos. (http://pexego.es)
4886+# 2013: Top Consultant Software Creations S.L.
4887+# (http://www.topconsultant.es/)
4888+# 2014: Serv. Tecnol. Avanzados (http://www.serviciosbaeza.com)
4889+# Pedro M. Baeza <pedro.baeza@serviciosbaeza.com>
4890 #
4891-# Migración OpenERP 7.0. Top Consultant Software Creations S.L. (http://www.topconsultant.es/) 2013
4892-# Ignacio Martínez y Miguel López.
4893+# Autores originales: Luis Manuel Angueira Blanco (Pexego)
4894+# Omar Castiñeira Saavedra(omar@pexego.es)
4895+# Migración OpenERP 7.0: Ignacio Martínez y Miguel López.
4896 #
4897 # This program is free software: you can redistribute it and/or modify
4898 # it under the terms of the GNU Affero General Public License as
4899@@ -21,8 +26,4 @@
4900 # along with this program. If not, see <http://www.gnu.org/licenses/>.
4901 #
4902 ##############################################################################
4903-
4904-__author__ = "Luis Manuel Angueira Blanco (Pexego)"
4905-
4906-from . import calculate_mod349_records
4907-from . import export_mod349_to_boe
4908\ No newline at end of file
4909+from . import export_mod349_to_boe
4910
4911=== removed file 'l10n_es_aeat_mod349/wizard/calculate_mod349_records.py'
4912--- l10n_es_aeat_mod349/wizard/calculate_mod349_records.py 2014-04-14 14:36:42 +0000
4913+++ l10n_es_aeat_mod349/wizard/calculate_mod349_records.py 1970-01-01 00:00:00 +0000
4914@@ -1,295 +0,0 @@
4915-# -*- coding: utf-8 -*-
4916-##############################################################################
4917-#
4918-# Copyright (C) 2004-2011
4919-# Pexego Sistemas Informáticos. (http://pexego.es) All Rights Reserved
4920-#
4921-# Migración OpenERP 7.0. Top Consultant Software Creations S.L. (http://www.topconsultant.es/) 2013
4922-# Ignacio Martínez y Miguel López.
4923-#
4924-# This program is free software: you can redistribute it and/or modify
4925-# it under the terms of the GNU Affero General Public License as
4926-# published by the Free Software Foundation, either version 3 of the
4927-# License, or (at your option) any later version.
4928-#
4929-# This program is distributed in the hope that it will be useful,
4930-# but WITHOUT ANY WARRANTY; without even the implied warranty of
4931-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
4932-# GNU Affero General Public License for more details.
4933-#
4934-# You should have received a copy of the GNU Affero General Public License
4935-# along with this program. If not, see <http://www.gnu.org/licenses/>.
4936-#
4937-##############################################################################
4938-
4939-import threading
4940-import time
4941-from openerp import netsvc
4942-import re
4943-from openerp.osv import orm
4944-
4945-vat_regex = re.compile(u"[a-zA-Z]{2}.*", re.UNICODE | re.X)
4946-
4947-
4948-class l10n_es_aeat_mod349_calculate_records(orm.TransientModel):
4949- _name = "l10n.es.aeat.mod349.calculate_records"
4950- _description = u"AEAT Model 349 Wizard - Calculate Records"
4951-
4952- def _formatPartnerVAT(self, cr, uid, partner_vat=None, country_id=None,
4953- context=None):
4954- """
4955- Formats VAT to match XXVATNUMBER (where XX is country code)
4956- """
4957- if partner_vat and \
4958- not vat_regex.match(partner_vat) and country_id:
4959- partner_vat = self.pool.get('res.country').\
4960- browse(cr, uid, country_id, context=context).code + partner_vat
4961-
4962- return partner_vat
4963-
4964- def _create_partner_records_for_report(self, cr, uid, ids, report_id,\
4965- partner_obj, operation_key,
4966- context=None):
4967- """creates partner records in 349"""
4968- invoices_ids = self.pool.get('account.invoice').browse(cr, uid, ids,
4969- context=context)
4970-
4971- obj = self.pool.get('l10n.es.aeat.mod349.partner_record')
4972-
4973- partner_country = partner_obj.country_id
4974-
4975- invoice_created = obj.create(cr, uid, {
4976- 'report_id': report_id,
4977- 'partner_id': partner_obj.id,
4978- 'partner_vat':
4979- self._formatPartnerVAT(cr,
4980- uid,
4981- partner_vat=partner_obj.vat,
4982- country_id=partner_country.id),
4983- 'operation_key': operation_key,
4984- 'country_id': partner_country.id or False,
4985- 'total_operation_amount': sum([invoice.cc_amount_untaxed for
4986- invoice in invoices_ids if
4987- invoice.type not in
4988- ('in_refund', 'out_refund')]) -
4989- sum([invoice.cc_amount_untaxed
4990- for invoice in invoices_ids
4991- if invoice.type in
4992- ('in_refund',
4993- 'out_refund')])
4994- })
4995-
4996- ### Creation of partner detail lines
4997- for invoice in invoices_ids:
4998- self.pool.get('l10n.es.aeat.mod349.partner_record_detail').\
4999- create(cr, uid, {
5000- 'partner_record_id': invoice_created,
The diff has been truncated for viewing.