Merge lp:~vauxoo/openerp-mexico-localization/addons-mx-trunk-facturae-multisuc-dev-yzk into lp:openerp-mexico-localization

Proposed by Isaac López Zúñiga
Status: Rejected
Rejected by: Moisés López - http://www.vauxoo.com
Proposed branch: lp:~vauxoo/openerp-mexico-localization/addons-mx-trunk-facturae-multisuc-dev-yzk
Merge into: lp:openerp-mexico-localization
Diff against target: 1264 lines (+634/-223) (has conflicts)
19 files modified
l10n_mx_company_multi_address/__init__.py (+31/-0)
l10n_mx_company_multi_address/__openerp__.py (+54/-0)
l10n_mx_company_multi_address/account_journal.py (+79/-0)
l10n_mx_company_multi_address/account_journal_view.xml (+18/-0)
l10n_mx_company_multi_address/invoice.py (+123/-0)
l10n_mx_company_multi_address/invoice_view_address.xml (+21/-0)
l10n_mx_company_multi_address/res_company.py (+60/-0)
l10n_mx_company_multi_address/res_company_view.xml (+18/-0)
l10n_mx_facturae/__init__.py (+1/-0)
l10n_mx_facturae/__openerp__.py (+3/-1)
l10n_mx_facturae/__terp__.py (+3/-1)
l10n_mx_facturae/invoice.py (+18/-18)
l10n_mx_facturae/l10n_mx_facturae_report.xml (+1/-0)
l10n_mx_facturae/report/invoice_facturae_pdf.py (+7/-7)
l10n_mx_facturae/report/invoice_facturae_pdf.rml (+25/-26)
l10n_mx_facturae_cbb/report/invoice_facturae_pdf.py (+7/-7)
l10n_mx_facturae_cbb/report/invoice_facturae_pdf.rml (+115/-118)
l10n_mx_facturae_pac_sf/report/invoice_facturae_pac_sf_pdf.py (+8/-8)
l10n_mx_facturae_pac_sf/report/invoice_facturae_pac_sf_pdf.rml (+42/-37)
Text conflict in l10n_mx_company_multi_address/invoice_view_address.xml
Contents conflict in l10n_mx_facturae/report/invoice_facturae_pdf.sxw
Text conflict in l10n_mx_facturae_pac_sf/report/invoice_facturae_pac_sf_pdf.rml
Contents conflict in l10n_mx_facturae_pac_sf/report/invoice_facturae_pac_sf_pdf.sxw
To merge this branch: bzr merge lp:~vauxoo/openerp-mexico-localization/addons-mx-trunk-facturae-multisuc-dev-yzk
Reviewer Review Type Date Requested Status
Moisés López - http://www.vauxoo.com Disapprove
Review via email: mp+102782@code.launchpad.net
To post a comment you must log in.
176. By Isaac López Zúñiga

[IMP][l10n_mx_company_multi_address] ADD inherit to _get_facturae_invoice_dict_data function

177. By Isaac López Zúñiga

[ADD][l10n_mx_company_multi_address] Add address_invoice_company_id to journal

178. By Isaac López Zúñiga

[IMP][l10n_mx_company_multi_address] Se quita el onchange de company

179. By Isaac López Zúñiga

[IMP][l10n_mx_company_multi_address] Se agrega el regimen fiscal al xml

180. By Isaac López Zúñiga

[REF][l10n_mx_company_multi_address]Cambio a fin de linea LF

181. By Isaac López Zúñiga

[IMP][l10n_mx_company_multi_address] Lugar de expedicion correspondiente a la sucursal

182. By Isaac López Zúñiga

[REF]l10n_mx_company_multi_address] Add , after to city

183. By Isaac López Zúñiga

[IMP][l10n_mx_company_multi_address] address_invoice_company_id cambiado a readonly

184. By Isaac López Zúñiga

[FIX][l10n_mx_company_multi_address] Readonly removido

185. By Isaac López Zúñiga

[REF][l10n_mx_company_multi_address] renombra la vista a invoice_view_address.xml

Revision history for this message
Moisés López - http://www.vauxoo.com (moylop260) wrote :

Conflicto en los textos, migrar a nueva versión

review: Disapprove

Unmerged revisions

185. By Isaac López Zúñiga

[REF][l10n_mx_company_multi_address] renombra la vista a invoice_view_address.xml

184. By Isaac López Zúñiga

[FIX][l10n_mx_company_multi_address] Readonly removido

183. By Isaac López Zúñiga

[IMP][l10n_mx_company_multi_address] address_invoice_company_id cambiado a readonly

182. By Isaac López Zúñiga

[REF]l10n_mx_company_multi_address] Add , after to city

181. By Isaac López Zúñiga

[IMP][l10n_mx_company_multi_address] Lugar de expedicion correspondiente a la sucursal

180. By Isaac López Zúñiga

[REF][l10n_mx_company_multi_address]Cambio a fin de linea LF

179. By Isaac López Zúñiga

[IMP][l10n_mx_company_multi_address] Se agrega el regimen fiscal al xml

178. By Isaac López Zúñiga

[IMP][l10n_mx_company_multi_address] Se quita el onchange de company

177. By Isaac López Zúñiga

[ADD][l10n_mx_company_multi_address] Add address_invoice_company_id to journal

176. By Isaac López Zúñiga

[IMP][l10n_mx_company_multi_address] ADD inherit to _get_facturae_invoice_dict_data function

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
1=== added directory 'l10n_mx_company_multi_address'
2=== added file 'l10n_mx_company_multi_address/__init__.py'
3--- l10n_mx_company_multi_address/__init__.py 1970-01-01 00:00:00 +0000
4+++ l10n_mx_company_multi_address/__init__.py 2012-11-12 20:01:19 +0000
5@@ -0,0 +1,31 @@
6+
7+# -*- encoding: utf-8 -*-
8+###########################################################################
9+# Module Writen to OpenERP, Open Source Management Solution
10+#
11+# Copyright (c) 2012 Vauxoo - http://www.vauxoo.com/
12+# All Rights Reserved.
13+# info Vauxoo (info@vauxoo.com)
14+############################################################################
15+# Coded by: moylop260 (moylop260@vauxoo.com)
16+# Launchpad Project Manager for Publication: Nhomar Hernandez - nhomar@vauxoo.com
17+############################################################################
18+#
19+# This program is free software: you can redistribute it and/or modify
20+# it under the terms of the GNU Affero General Public License as
21+# published by the Free Software Foundation, either version 3 of the
22+# License, or (at your option) any later version.
23+#
24+# This program is distributed in the hope that it will be useful,
25+# but WITHOUT ANY WARRANTY; without even the implied warranty of
26+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
27+# GNU Affero General Public License for more details.
28+#
29+# You should have received a copy of the GNU Affero General Public License
30+# along with this program. If not, see <http://www.gnu.org/licenses/>.
31+#
32+##############################################################################
33+
34+import res_company
35+import invoice
36+import account_journal
37
38=== added file 'l10n_mx_company_multi_address/__openerp__.py'
39--- l10n_mx_company_multi_address/__openerp__.py 1970-01-01 00:00:00 +0000
40+++ l10n_mx_company_multi_address/__openerp__.py 2012-11-12 20:01:19 +0000
41@@ -0,0 +1,54 @@
42+# -*- encoding: utf-8 -*-
43+###########################################################################
44+# Module Writen to OpenERP, Open Source Management Solution
45+#
46+# Copyright (c) 2012 Vauxoo - http://www.vauxoo.com/
47+# All Rights Reserved.
48+# info Vauxoo (info@vauxoo.com)
49+############################################################################
50+# Coded by: moylop260 (moylop260@vauxoo.com)
51+# Launchpad Project Manager for Publication: Nhomar Hernandez - nhomar@vauxoo.com
52+############################################################################
53+#
54+# This program is free software: you can redistribute it and/or modify
55+# it under the terms of the GNU Affero General Public License as
56+# published by the Free Software Foundation, either version 3 of the
57+# License, or (at your option) any later version.
58+#
59+# This program is distributed in the hope that it will be useful,
60+# but WITHOUT ANY WARRANTY; without even the implied warranty of
61+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
62+# GNU Affero General Public License for more details.
63+#
64+# You should have received a copy of the GNU Affero General Public License
65+# along with this program. If not, see <http://www.gnu.org/licenses/>.
66+#
67+##############################################################################
68+
69+{
70+ "name" : "Multiaddress para una misma compañia",
71+ "version" : "1.0",
72+ "author" : "Vauxoo",
73+ "category" : "Localization/Mexico",
74+ "description" : """This module allows the management of multiaddress for "factura electronica" whitout multicompany scheme
75+ """,
76+ "website" : "http://www.vauxoo.com/",
77+ "license" : "AGPL-3",
78+ "depends" : ["base", "account","l10n_mx_facturae_22",
79+ ],
80+ "init_xml" : [],
81+ "demo_xml" : [],
82+ "update_xml" : [
83+ #'security/ir.model.access.csv',
84+ "invoice_view.xml",
85+
86+ #"ir_sequence_view.xml",
87+ #"res_company_view6.xml",
88+ #"invoice_view.xml",
89+ "res_company_view.xml",
90+ "account_journal_view.xml",
91+ #"partner_address_view.xml",
92+ ],
93+ "installable" : True,
94+ "active" : False,
95+}
96
97=== added file 'l10n_mx_company_multi_address/account_journal.py'
98--- l10n_mx_company_multi_address/account_journal.py 1970-01-01 00:00:00 +0000
99+++ l10n_mx_company_multi_address/account_journal.py 2012-11-12 20:01:19 +0000
100@@ -0,0 +1,79 @@
101+# -*- encoding: utf-8 -*-
102+###########################################################################
103+# Module Writen to OpenERP, Open Source Management Solution
104+#
105+# Copyright (c) 2012 Vauxoo - http://www.vauxoo.com/
106+# All Rights Reserved.
107+# info Vauxoo (info@vauxoo.com)
108+############################################################################
109+# Coded by: Isaac Lopez (isaac@vauxoo.com)
110+# Moises Lopez (moylop260@vauxoo.com)
111+############################################################################
112+#
113+# This program is free software: you can redistribute it and/or modify
114+# it under the terms of the GNU Affero General Public License as
115+# published by the Free Software Foundation, either version 3 of the
116+# License, or (at your option) any later version.
117+#
118+# This program is distributed in the hope that it will be useful,
119+# but WITHOUT ANY WARRANTY; without even the implied warranty of
120+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
121+# GNU Affero General Public License for more details.
122+#
123+# You should have received a copy of the GNU Affero General Public License
124+# along with this program. If not, see <http://www.gnu.org/licenses/>.
125+#
126+##############################################################################
127+from osv import fields
128+from osv import osv
129+
130+class account_journal(osv.osv):
131+ _inherit='account.journal'
132+
133+ _columns = {
134+ 'address_invoice_company_id': fields.many2one('res.partner.address', 'Invoice Company Address', domain="[('type', '=', 'invoice')]"),
135+ }
136+account_journal()
137+
138+
139+
140+
141+
142+
143+
144+
145+
146+
147+
148+
149+
150+
151+
152+
153+
154+
155+
156+
157+
158+
159+
160+
161+
162+
163+
164+
165+
166+
167+
168+
169+
170+
171+
172+
173+
174+
175+
176+
177+
178+
179+
180
181=== added file 'l10n_mx_company_multi_address/account_journal_view.xml'
182--- l10n_mx_company_multi_address/account_journal_view.xml 1970-01-01 00:00:00 +0000
183+++ l10n_mx_company_multi_address/account_journal_view.xml 2012-11-12 20:01:19 +0000
184@@ -0,0 +1,18 @@
185+<?xml version="1.0"?>
186+<openerp>
187+ <data>
188+
189+ <record model="ir.ui.view" id="view_account_journal_view_form_inh_multisuc">
190+ <field name="name">view.account.journal.view.form.inh.multisuc</field>
191+ <field name="model">account.journal</field>
192+ <field name="inherit_id" ref="account.view_account_journal_form"/>
193+ <field name="type">form</field>
194+ <field name="arch" type="xml">
195+ <field name="group_invoice_lines" position="after">
196+ <field name="address_invoice_company_id"/>
197+ </field>
198+ </field>
199+ </record>
200+
201+ </data>
202+</openerp>
203
204=== added file 'l10n_mx_company_multi_address/invoice.py'
205--- l10n_mx_company_multi_address/invoice.py 1970-01-01 00:00:00 +0000
206+++ l10n_mx_company_multi_address/invoice.py 2012-11-12 20:01:19 +0000
207@@ -0,0 +1,123 @@
208+# -*- encoding: utf-8 -*-
209+###########################################################################
210+# Module Writen to OpenERP, Open Source Management Solution
211+#
212+# Copyright (c) 2012 Vauxoo - http://www.vauxoo.com/
213+# All Rights Reserved.
214+# info Vauxoo (info@vauxoo.com)
215+############################################################################
216+# Coded by: Fernando Irene Garcia (fernando@vauxoo.com)
217+############################################################################
218+#
219+# This program is free software: you can redistribute it and/or modify
220+# it under the terms of the GNU Affero General Public License as
221+# published by the Free Software Foundation, either version 3 of the
222+# License, or (at your option) any later version.
223+#
224+# This program is distributed in the hope that it will be useful,
225+# but WITHOUT ANY WARRANTY; without even the implied warranty of
226+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
227+# GNU Affero General Public License for more details.
228+#
229+# You should have received a copy of the GNU Affero General Public License
230+# along with this program. If not, see <http://www.gnu.org/licenses/>.
231+#
232+##############################################################################
233+from osv import fields
234+from osv import osv
235+
236+class account_invoice(osv.osv):
237+ _inherit='account.invoice'
238+
239+ _columns = {
240+ 'address_invoice_company_id': fields.many2one('res.partner.address', 'Invoice Company Address', readonly=True, states={'draft':[('readonly',False)]}, domain="[('type', '=', 'invoice'), ('company_id', '=', company_id)]"),
241+ }
242+ def _get_facturae_invoice_dict_data(self, cr, uid, ids, context={}):
243+ invoice_data_parents = super(account_invoice,self)._get_facturae_invoice_dict_data(cr,uid,ids,context)
244+ invoice = self.browse(cr, uid, ids)[0]
245+ invoice_data_parents[0]['Comprobante']['Emisor'] = {'rfc': (invoice.company_id.partner_id._columns.has_key('vat_split') and invoice.company_id.partner_id.vat_split or invoice.company_id.partner_id.vat or '').replace('-', ' ').replace(' ',''),'nombre': invoice.company_id.address_invoice_parent_company_id.name or '' }
246+ invoice_data_parents[0]['Comprobante']['Emisor']['DomicilioFiscal'] = {'calle': invoice.company_id.address_invoice_parent_company_id.street and invoice.company_id.address_invoice_parent_company_id.street.replace('\n\r', ' ').replace('\r\n', ' ').replace('\n', ' ').replace('\r', ' ') or '',
247+ 'noExterior': invoice.company_id.address_invoice_parent_company_id.street3 and invoice.company_id.address_invoice_parent_company_id.street3.replace('\n\r', ' ').replace('\r\n', ' ').replace('\n', ' ').replace('\r', ' ') or 'N/A',
248+ 'noInterior': invoice.company_id.address_invoice_parent_company_id.street4 and invoice.company_id.address_invoice_parent_company_id.street4.replace('\n\r', ' ').replace('\r\n', ' ').replace('\n', ' ').replace('\r', ' ') or 'N/A',
249+ 'colonia': invoice.company_id.address_invoice_parent_company_id.street2 and invoice.company_id.address_invoice_parent_company_id.street2.replace('\n\r', ' ').replace('\r\n', ' ').replace('\n', ' ').replace('\r', ' ') or 'N/A',
250+ 'localidad': invoice.company_id.address_invoice_parent_company_id.city2 and invoice.company_id.address_invoice_parent_company_id.city2.replace('\n\r', ' ').replace('\r\n', ' ').replace('\n', ' ').replace('\r', ' ') or 'N/A',
251+ 'municipio': invoice.company_id.address_invoice_parent_company_id.city and invoice.company_id.address_invoice_parent_company_id.city.replace('\n\r', ' ').replace('\r\n', ' ').replace('\n', ' ').replace('\r', ' ') or '',
252+ 'estado': invoice.company_id.address_invoice_parent_company_id.state_id and invoice.company_id.address_invoice_parent_company_id.state_id.name and invoice.company_id.address_invoice_parent_company_id.state_id.name.replace('\n\r', ' ').replace('\r\n', ' ').replace('\n', ' ').replace('\r', ' ') or '',
253+ 'pais': invoice.company_id.address_invoice_parent_company_id.country_id and invoice.company_id.address_invoice_parent_company_id.country_id.name and invoice.company_id.address_invoice_parent_company_id.country_id.name.replace('\n\r', ' ').replace('\r\n', ' ').replace('\n', ' ').replace('\r', ' ')or '',
254+ 'codigoPostal': invoice.company_id.address_invoice_parent_company_id.zip and invoice.company_id.address_invoice_parent_company_id.zip.replace('\n\r', ' ').replace('\r\n', ' ').replace('\n', ' ').replace('\r', ' ') or '',
255+ }
256+
257+ invoice_data_parents[0]['Comprobante']['Emisor']['ExpedidoEn'] = {'calle': invoice.address_invoice_company_id.street and invoice.address_invoice_company_id.street.replace('\n\r', ' ').replace('\r\n', ' ').replace('\n', ' ').replace('\r', ' ') or '',
258+ 'noExterior': invoice.address_invoice_company_id.street3 and invoice.address_invoice_company_id.street3.replace('\n\r', ' ').replace('\r\n', ' ').replace('\n', ' ').replace('\r', ' ') or 'N/A',
259+ 'noInterior': invoice.address_invoice_company_id.street4 and invoice.address_invoice_company_id.street4.replace('\n\r', ' ').replace('\r\n', ' ').replace('\n', ' ').replace('\r', ' ') or 'N/A',
260+ 'colonia': invoice.address_invoice_company_id.street2 and invoice.address_invoice_company_id.street2.replace('\n\r', ' ').replace('\r\n', ' ').replace('\n', ' ').replace('\r', ' ') or 'N/A',
261+ 'localidad': invoice.address_invoice_company_id.city2 and invoice.address_invoice_company_id.city2.replace('\n\r', ' ').replace('\r\n', ' ').replace('\n', ' ').replace('\r', ' ') or 'N/A',
262+ 'municipio': invoice.address_invoice_company_id.city and invoice.address_invoice_company_id.city.replace('\n\r', ' ').replace('\r\n', ' ').replace('\n', ' ').replace('\r', ' ') or '',
263+ 'estado': invoice.address_invoice_company_id.state_id and invoice.address_invoice_company_id.state_id.name and invoice.address_invoice_company_id.state_id.name.replace('\n\r', ' ').replace('\r\n', ' ').replace('\n', ' ').replace('\r', ' ') or '',
264+ 'pais': invoice.address_invoice_company_id.country_id and invoice.address_invoice_company_id.country_id.name and invoice.address_invoice_company_id.country_id.name.replace('\n\r', ' ').replace('\r\n', ' ').replace('\n', ' ').replace('\r', ' ')or '',
265+ 'codigoPostal': invoice.address_invoice_company_id.zip and invoice.address_invoice_company_id.zip.replace('\n\r', ' ').replace('\r\n', ' ').replace('\n', ' ').replace('\r', ' ') or '',
266+ }
267+ invoice_data_parents[0]['Comprobante']['Emisor']['RegimenFiscal'] = {'Regimen':invoice.company_id.partner_id.regimen_fiscal_id.name or ''}
268+
269+ city = invoice.address_invoice_company_id.city and invoice.address_invoice_company_id.city.replace('\n\r', ' ').replace('\r\n', ' ').replace('\n', ' ').replace('\r', ' ') or False
270+ state = invoice.address_invoice_company_id.state_id and invoice.address_invoice_company_id.state_id.name and invoice.address_invoice_company_id.state_id.name.replace('\n\r', ' ').replace('\r\n', ' ').replace('\n', ' ').replace('\r', ' ') or False
271+ country = invoice.address_invoice_company_id.country_id and invoice.address_invoice_company_id.country_id.name and invoice.address_invoice_company_id.country_id.name.replace('\n\r', ' ').replace('\r\n', ' ').replace('\n', ' ').replace('\r', ' ') or False
272+ if city and state and country:
273+ address = city +', '+ state +', '+ country
274+ else:
275+ raise osv.except_osv(('Domicilio Incompleto!'),('Verifique que el domicilio de la compañia emisora del comprobante fiscal este completo (Ciudad - Estado - Pais)'))
276+
277+ invoice_data_parents[0]['Comprobante']['LugarExpedicion'] = address
278+ return invoice_data_parents
279+
280+ def onchange_journal_id(self, cr, uid, ids, journal_id=False):
281+ result = super(account_invoice,self).onchange_journal_id(cr,uid,ids,journal_id)
282+ address_id = self.pool.get('account.journal').browse(cr, uid, journal_id) or False
283+ if address_id and address_id.address_invoice_company_id:
284+ result['value'].update({'address_invoice_company_id': address_id.address_invoice_company_id.id})
285+ return result
286+
287+account_invoice()
288+
289+
290+
291+
292+
293+
294+
295+
296+
297+
298+
299+
300+
301+
302+
303+
304+
305+
306+
307+
308+
309+
310+
311+
312+
313+
314+
315+
316+
317+
318+
319+
320+
321+
322+
323+
324+
325+
326+
327+
328+
329+
330+
331
332=== renamed file 'l10n_mx_facturae/invoice_view.xml' => 'l10n_mx_company_multi_address/invoice_view_address.xml'
333--- l10n_mx_facturae/invoice_view.xml 2012-05-27 23:16:24 +0000
334+++ l10n_mx_company_multi_address/invoice_view_address.xml 2012-11-12 20:01:19 +0000
335@@ -1,16 +1,37 @@
336 <?xml version="1.0"?>
337 <openerp>
338 <data>
339+<<<<<<< TREE
340
341 <record model="ir.ui.view" id="account_invoice_form_inh_l10n_mx_facturae_rate">
342 <field name="name">account.invoice.form.inh.l10n.mx.facturae.rate</field>
343+=======
344+
345+ <record model="ir.ui.view" id="account_invoice_form_inh_l10n_mx_facturae_01">
346+ <field name="name">account.invoice.form.inh_l10n_mx_facturae_01</field>
347+>>>>>>> MERGE-SOURCE
348 <field name="model">account.invoice</field>
349 <field name="inherit_id" ref="account.invoice_form"/>
350 <field name="type">form</field>
351 <field name="arch" type="xml">
352+<<<<<<< TREE
353 <field name="payment_term" position="after">
354 <field name="rate"/>
355 </field>
356+=======
357+ <xpath expr="/form/notebook/page[@string='Other Info']/field[@name='company_id']" position="after">
358+ <field name="address_invoice_company_id"/>
359+ </xpath>
360+
361+<!--
362+ <xpath expr="/form/notebook/page[@string='Other Info']/field[@name='company_id']" position="replace">
363+ <field name="company_id" on_change="onchange_company_address(company_id, journal_id)"/>
364+ </xpath>
365+-->
366+ <field name="journal_id" position="replace">
367+ <field name="journal_id" groups="base.group_user" on_change="onchange_journal_id(journal_id)" widget="selection"/>
368+ </field>
369+>>>>>>> MERGE-SOURCE
370 </field>
371 </record>
372
373
374=== added file 'l10n_mx_company_multi_address/res_company.py'
375--- l10n_mx_company_multi_address/res_company.py 1970-01-01 00:00:00 +0000
376+++ l10n_mx_company_multi_address/res_company.py 2012-11-12 20:01:19 +0000
377@@ -0,0 +1,60 @@
378+# -*- encoding: utf-8 -*-
379+###########################################################################
380+# Module Writen to OpenERP, Open Source Management Solution
381+#
382+# Copyright (c) 2012 Vauxoo - http://www.vauxoo.com/
383+# All Rights Reserved.
384+# info Vauxoo (info@vauxoo.com)
385+############################################################################
386+# Coded by: moylop260 (moylop260@vauxoo.com)
387+# Coded by: isaac (isaac@vauxoo.com)
388+############################################################################
389+#
390+# This program is free software: you can redistribute it and/or modify
391+# it under the terms of the GNU Affero General Public License as
392+# published by the Free Software Foundation, either version 3 of the
393+# License, or (at your option) any later version.
394+#
395+# This program is distributed in the hope that it will be useful,
396+# but WITHOUT ANY WARRANTY; without even the implied warranty of
397+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
398+# GNU Affero General Public License for more details.
399+#
400+# You should have received a copy of the GNU Affero General Public License
401+# along with this program. If not, see <http://www.gnu.org/licenses/>.
402+#
403+##############################################################################
404+
405+from osv import osv
406+from osv import fields
407+from tools.translate import _
408+import os
409+import time
410+
411+class res_company(osv.osv):
412+ _inherit = 'res.company'
413+
414+ def get_address_invoice_parent_company_id(self, cr, uid, ids, field, arg, context=None):
415+ if context is None:
416+ context = {}
417+ res = {}
418+ partner_obj = self.pool.get('res.partner')
419+ companies = self.browse(cr, uid, ids, context=context)
420+ for company_id in companies:
421+ partner_parent = company_id and company_id.parent_id and company_id.parent_id.partner_id or False
422+ if partner_parent:
423+ address_id = partner_obj.address_get(cr, uid, [partner_parent.id], ['invoice'])['invoice']
424+ #Validar, si tiene hijos utilizar no utilizar la main, mejor utilizar la normal company_id.partner_id.id
425+ elif company_id.company_address_main_id:
426+ address_id = company_id.company_address_main_id.id
427+ else:
428+ address_id = partner_obj.address_get(cr, uid, [company_id.partner_id.id], ['invoice'])['invoice']
429+ res[company_id.id] = address_id
430+ return res
431+
432+ _columns = {
433+ 'address_invoice_parent_company_id': fields.many2one("res.partner.address", 'Invoice Company Address Parent', help="En este campo se debe colocar la dirección de la compañia matriz, independientemente si se maneja un esquema Multi-company o Multi-Address.", domain="[('type', '=', 'invoice')]"),
434+ }
435+res_company()
436+
437+# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
438
439=== added file 'l10n_mx_company_multi_address/res_company_view.xml'
440--- l10n_mx_company_multi_address/res_company_view.xml 1970-01-01 00:00:00 +0000
441+++ l10n_mx_company_multi_address/res_company_view.xml 2012-11-12 20:01:19 +0000
442@@ -0,0 +1,18 @@
443+<?xml version="1.0" encoding="utf-8"?>
444+<openerp>
445+ <data>
446+
447+ <record model="ir.ui.view" id="view_res_company_form_inh_facturae_form1">
448+ <field name="name">view.res.company.form.inh.facturae_form1</field>
449+ <field name="inherit_id" ref="base.view_company_form"/>
450+ <field name="model">res.company</field>
451+ <field name="type">form</field>
452+ <field name="arch" type="xml">
453+ <field name="parent_id" position="after">
454+ <field name="address_invoice_parent_company_id"/>
455+ </field>
456+ </field>
457+ </record>
458+
459+ </data>
460+</openerp>
461
462=== modified file 'l10n_mx_facturae/__init__.py'
463--- l10n_mx_facturae/__init__.py 2012-02-24 00:42:55 +0000
464+++ l10n_mx_facturae/__init__.py 2012-11-12 20:01:19 +0000
465@@ -28,6 +28,7 @@
466 import invoice
467 import wizard
468 import report
469+#import res_company
470 #import ir_sequence
471 #import res_company
472 #import partner_address
473
474=== modified file 'l10n_mx_facturae/__openerp__.py'
475--- l10n_mx_facturae/__openerp__.py 2012-08-27 23:55:07 +0000
476+++ l10n_mx_facturae/__openerp__.py 2012-11-12 20:01:19 +0000
477@@ -51,6 +51,7 @@
478 "l10n_mx_company_cif",
479 "l10n_mx_partner_address",
480 "l10n_mx_invoice_amount_to_text",
481+ "l10n_mx_company_multi_address",
482 "sale",#no depende de "sale" directamente, pero marca error en algunas versiones
483 ],
484 "init_xml" : [],
485@@ -64,7 +65,8 @@
486 "wizard/installer_view.xml",
487 #"ir_sequence_view.xml",
488 #"res_company_view6.xml",
489- "invoice_view.xml",
490+ #"invoice_view.xml",
491+ #"res_company_view.xml",
492 #"partner_address_view.xml",
493 ],
494 "installable" : True,
495
496=== modified file 'l10n_mx_facturae/__terp__.py'
497--- l10n_mx_facturae/__terp__.py 2012-03-17 01:09:58 +0000
498+++ l10n_mx_facturae/__terp__.py 2012-11-12 20:01:19 +0000
499@@ -50,6 +50,7 @@
500 "l10n_mx_facturae_seq",
501 "l10n_mx_company_cif",
502 "l10n_mx_partner_address",
503+ "l10n_mx_company_multi_address",
504 "sale",#no depende de "sale" directamente, pero marca error en algunas versiones
505 ],
506 "init_xml" : [],
507@@ -61,7 +62,8 @@
508 "l10n_mx_facturae_wizard.xml",
509 #"ir_sequence_view.xml",
510 #"res_company_view.xml",
511- "invoice_view.xml",
512+ #"invoice_view.xml",
513+ #"res_company_view.xml",
514 #"partner_address_view.xml",
515 ],
516 "installable" : True,
517
518=== modified file 'l10n_mx_facturae/invoice.py'
519--- l10n_mx_facturae/invoice.py 2012-08-01 18:55:55 +0000
520+++ l10n_mx_facturae/invoice.py 2012-11-12 20:01:19 +0000
521@@ -824,26 +824,26 @@
522 #virtual_invoice.append( (invoice.company_id and invoice.company_id.partner_id and invoice.company_id.partner_id.vat or '').replac
523
524 'DomicilioFiscal': {
525- 'calle': address_invoice_parent.street and address_invoice_parent.street.replace('\n\r', ' ').replace('\r\n', ' ').replace('\n', ' ').replace('\r', ' ') or '',
526- 'noExterior': address_invoice_parent.street3 and address_invoice_parent.street3.replace('\n\r', ' ').replace('\r\n', ' ').replace('\n', ' ').replace('\r', ' ') or 'N/A', #"Numero Exterior"
527- 'noInterior': address_invoice_parent.street4 and address_invoice_parent.street4.replace('\n\r', ' ').replace('\r\n', ' ').replace('\n', ' ').replace('\r', ' ') or 'N/A', #"Numero Interior"
528- 'colonia': address_invoice_parent.street2 and address_invoice_parent.street2.replace('\n\r', ' ').replace('\r\n', ' ').replace('\n', ' ').replace('\r', ' ') or 'N/A' ,
529- 'localidad': address_invoice_parent.city2 and address_invoice_parent.city2.replace('\n\r', ' ').replace('\r\n', ' ').replace('\n', ' ').replace('\r', ' ') or 'N/A',
530- 'municipio': address_invoice_parent.city and address_invoice_parent.city.replace('\n\r', ' ').replace('\r\n', ' ').replace('\n', ' ').replace('\r', ' ') or '',
531- 'estado': address_invoice_parent.state_id and address_invoice_parent.state_id.name and address_invoice_parent.state_id.name.replace('\n\r', ' ').replace('\r\n', ' ').replace('\n', ' ').replace('\r', ' ') or '' ,
532- 'pais': address_invoice_parent.country_id and address_invoice_parent.country_id.name and address_invoice_parent.country_id.name.replace('\n\r', ' ').replace('\r\n', ' ').replace('\n', ' ').replace('\r', ' ')or '',
533- 'codigoPostal': address_invoice_parent.zip and address_invoice_parent.zip.replace('\n\r', ' ').replace('\r\n', ' ').replace('\n', ' ').replace('\r', ' ') or '',
534+ 'calle': invoice.company_id.address_invoice_parent_company_id.street and invoice.company_id.address_invoice_parent_company_id.street.replace('\n\r', ' ').replace('\r\n', ' ').replace('\n', ' ').replace('\r', ' ') or '',
535+ 'noExterior': invoice.company_id.address_invoice_parent_company_id.street3 and invoice.company_id.address_invoice_parent_company_id.street3.replace('\n\r', ' ').replace('\r\n', ' ').replace('\n', ' ').replace('\r', ' ') or 'N/A', #"Numero Exterior"
536+ 'noInterior': invoice.company_id.address_invoice_parent_company_id.street4 and invoice.company_id.address_invoice_parent_company_id.street4.replace('\n\r', ' ').replace('\r\n', ' ').replace('\n', ' ').replace('\r', ' ') or 'N/A', #"Numero Interior"
537+ 'colonia': invoice.company_id.address_invoice_parent_company_id.street2 and invoice.company_id.address_invoice_parent_company_id.street2.replace('\n\r', ' ').replace('\r\n', ' ').replace('\n', ' ').replace('\r', ' ') or 'N/A' ,
538+ 'localidad': invoice.company_id.address_invoice_parent_company_id.city2 and invoice.company_id.address_invoice_parent_company_id.city2.replace('\n\r', ' ').replace('\r\n', ' ').replace('\n', ' ').replace('\r', ' ') or 'N/A',
539+ 'municipio': invoice.company_id.address_invoice_parent_company_id.city and invoice.company_id.address_invoice_parent_company_id.city.replace('\n\r', ' ').replace('\r\n', ' ').replace('\n', ' ').replace('\r', ' ') or '',
540+ 'estado': invoice.company_id.address_invoice_parent_company_id.state_id and invoice.company_id.address_invoice_parent_company_id.state_id.name and invoice.company_id.address_invoice_parent_company_id.state_id.name.replace('\n\r', ' ').replace('\r\n', ' ').replace('\n', ' ').replace('\r', ' ') or '' ,
541+ 'pais': invoice.company_id.address_invoice_parent_company_id.country_id and invoice.company_id.address_invoice_parent_company_id.country_id.name and invoice.company_id.address_invoice_parent_company_id.country_id.name.replace('\n\r', ' ').replace('\r\n', ' ').replace('\n', ' ').replace('\r', ' ')or '',
542+ 'codigoPostal': invoice.company_id.address_invoice_parent_company_id.zip and invoice.company_id.address_invoice_parent_company_id.zip.replace('\n\r', ' ').replace('\r\n', ' ').replace('\n', ' ').replace('\r', ' ') or '',
543 },
544 'ExpedidoEn': {
545- 'calle': address_invoice.street and address_invoice.street.replace('\n\r', ' ').replace('\r\n', ' ').replace('\n', ' ').replace('\r', ' ') or '',
546- 'noExterior': address_invoice.street3 and address_invoice.street3.replace('\n\r', ' ').replace('\r\n', ' ').replace('\n', ' ').replace('\r', ' ') or 'N/A', #"Numero Exterior"
547- 'noInterior': address_invoice.street4 and address_invoice.street4.replace('\n\r', ' ').replace('\r\n', ' ').replace('\n', ' ').replace('\r', ' ') or 'N/A', #"Numero Interior"
548- 'colonia': address_invoice.street2 and address_invoice.street2.replace('\n\r', ' ').replace('\r\n', ' ').replace('\n', ' ').replace('\r', ' ') or 'N/A' ,
549- 'localidad': address_invoice.city2 and address_invoice.city2.replace('\n\r', ' ').replace('\r\n', ' ').replace('\n', ' ').replace('\r', ' ') or 'N/A',
550- 'municipio': address_invoice.city and address_invoice.city.replace('\n\r', ' ').replace('\r\n', ' ').replace('\n', ' ').replace('\r', ' ') or '',
551- 'estado': address_invoice.state_id and address_invoice.state_id.name and address_invoice.state_id.name.replace('\n\r', ' ').replace('\r\n', ' ').replace('\n', ' ').replace('\r', ' ') or '' ,
552- 'pais': address_invoice.country_id and address_invoice.country_id.name and address_invoice.country_id.name.replace('\n\r', ' ').replace('\r\n', ' ').replace('\n', ' ').replace('\r', ' ')or '',
553- 'codigoPostal': address_invoice.zip and address_invoice.zip.replace('\n\r', ' ').replace('\r\n', ' ').replace('\n', ' ').replace('\r', ' ') or '',
554+ 'calle': invoice.address_invoice_company_id.street and invoice.address_invoice_company_id.street.replace('\n\r', ' ').replace('\r\n', ' ').replace('\n', ' ').replace('\r', ' ') or '',
555+ 'noExterior': invoice.address_invoice_company_id.street3 and invoice.address_invoice_company_id.street3.replace('\n\r', ' ').replace('\r\n', ' ').replace('\n', ' ').replace('\r', ' ') or 'N/A', #"Numero Exterior"
556+ 'noInterior': invoice.address_invoice_company_id.street4 and invoice.address_invoice_company_id.street4.replace('\n\r', ' ').replace('\r\n', ' ').replace('\n', ' ').replace('\r', ' ') or 'N/A', #"Numero Interior"
557+ 'colonia': invoice.address_invoice_company_id.street2 and invoice.address_invoice_company_id.street2.replace('\n\r', ' ').replace('\r\n', ' ').replace('\n', ' ').replace('\r', ' ') or 'N/A' ,
558+ 'localidad': invoice.address_invoice_company_id.city2 and invoice.address_invoice_company_id.city2.replace('\n\r', ' ').replace('\r\n', ' ').replace('\n', ' ').replace('\r', ' ') or 'N/A',
559+ 'municipio': invoice.address_invoice_company_id.city and invoice.address_invoice_company_id.city.replace('\n\r', ' ').replace('\r\n', ' ').replace('\n', ' ').replace('\r', ' ') or '',
560+ 'estado': invoice.address_invoice_company_id.state_id and invoice.address_invoice_company_id.state_id.name and invoice.address_invoice_company_id.state_id.name.replace('\n\r', ' ').replace('\r\n', ' ').replace('\n', ' ').replace('\r', ' ') or '' ,
561+ 'pais': invoice.address_invoice_company_id.country_id and invoice.address_invoice_company_id.country_id.name and invoice.address_invoice_company_id.country_id.name.replace('\n\r', ' ').replace('\r\n', ' ').replace('\n', ' ').replace('\r', ' ')or '',
562+ 'codigoPostal': invoice.address_invoice_company_id.zip and invoice.address_invoice_company_id.zip.replace('\n\r', ' ').replace('\r\n', ' ').replace('\n', ' ').replace('\r', ' ') or '',
563 },
564 })
565 #Termina seccion: Emisor
566
567=== modified file 'l10n_mx_facturae/l10n_mx_facturae_report.xml'
568--- l10n_mx_facturae/l10n_mx_facturae_report.xml 2012-03-12 02:56:38 +0000
569+++ l10n_mx_facturae/l10n_mx_facturae_report.xml 2012-11-12 20:01:19 +0000
570@@ -13,5 +13,6 @@
571 groups="l10n_mx_facturae.group_facturae_mx_cfd_user"
572 />
573
574+
575 </data>
576 </openerp>
577
578=== modified file 'l10n_mx_facturae/report/invoice_facturae_pdf.py'
579--- l10n_mx_facturae/report/invoice_facturae_pdf.py 2012-08-28 23:32:57 +0000
580+++ l10n_mx_facturae/report/invoice_facturae_pdf.py 2012-11-12 20:01:19 +0000
581@@ -44,8 +44,8 @@
582 'facturae_data_dict': self._facturae_data_dict,
583 #'amount_to_text': self._get_amount_to_text,
584 'split_string': self._split_string,
585- 'company_address': self._company_address,
586- 'subcompany_address': self._subcompany_address,
587+ #~ 'company_address': self._company_address,
588+ #~ 'subcompany_address': self._subcompany_address,
589 'get_invoice_sequence': self._get_invoice_sequence,
590 'get_approval': self._get_approval,
591 'get_taxes': self._get_taxes,
592@@ -192,12 +192,12 @@
593 #return [self.company_address_invoice]
594 return ""
595
596- def _company_address(self):
597- #print "self.company_address_invoice",self.company_address_invoice
598- return self.company_address_invoice
599+ #~ def _company_address(self):
600+ #~ #print "self.company_address_invoice",self.company_address_invoice
601+ #~ return self.company_address_invoice
602
603- def _subcompany_address(self):
604- return self.subcompany_address_invoice
605+ #~ def _subcompany_address(self):
606+ #~ return self.subcompany_address_invoice
607
608 def _facturae_data_dict(self):
609 #print "self.invoice_data_dict",self.invoice_data_dict
610
611=== modified file 'l10n_mx_facturae/report/invoice_facturae_pdf.rml'
612--- l10n_mx_facturae/report/invoice_facturae_pdf.rml 2012-09-08 04:35:43 +0000
613+++ l10n_mx_facturae/report/invoice_facturae_pdf.rml 2012-11-12 20:01:19 +0000
614@@ -108,27 +108,26 @@
615 <para style="P23">[[ o.company_id.logo and setTag('para','image',{'width':'120.0','height':'80.0'}) ]] [[ o.company_id.logo ]]</para>
616 </td>
617 <td>
618- <para style="P17">[[ company_address()['name'] or o.company_id.partner_id.name ]]</para>
619- <para style="P20">
620- <font color="white"> </font>
621- </para>
622- <para style="P17">Calle: [[ company_address()['street'] or '' ]] Nro. Ext: [[ company_address()['street3'] or '' ]] Int: [[ company_address()['street4'] or '' ]]</para>
623- <para style="P20">
624- <font color="white"> </font>
625- </para>
626- <para style="P17">Colonia: [[ company_address()['street2'] or '' ]]</para>
627- <para style="P20">
628- <font color="white"> </font>
629- </para>
630- <para style="P17">Ciudad: [[ company_address()['city'] or '' ]] Estado: [[ company_address()['state_id'] and company_address()['state_id']['name'] or '' ]]</para>
631+ <para style="P20">
632+ <font color="white"> </font>
633+ </para>
634+ <para style="P17">Calle: [[ o.company_id.address_invoice_parent_company_id.street or '' ]] Nro. Ext: [[ o.company_id.address_invoice_parent_company_id.street3 or '' ]] Int: [[ o.company_id.address_invoice_parent_company_id.street4 or '' ]]</para>
635+ <para style="P20">
636+ <font color="white"> </font>
637+ </para>
638+ <para style="P17">Colonia: [[ o.company_id.address_invoice_parent_company_id.street2 or '' ]]</para>
639+ <para style="P20">
640+ <font color="white"> </font>
641+ </para>
642+ <para style="P17">Ciudad: [[ o.company_id.address_invoice_parent_company_id.city or '' ]] Estado: [[ o.company_id.address_invoice_parent_company_id.state_id and o.company_id.address_invoice_parent_company_id.state_id.name or '' ]]</para>
643 <para style="P21">
644 <font color="white"> </font>
645 </para>
646- <para style="P17">Localidad: [[ company_address()['city2'] or '' ]]</para>
647+ <para style="P17">Localidad: [[ o.company_id.address_invoice_parent_company_id.city2 or '' ]]</para>
648 <para style="P20">
649 <font color="white"> </font>
650 </para>
651- <para style="P17">CP: [[ company_address()['zip'] or '' ]]</para>
652+ <para style="P17">CP: [[ o.company_id.address_invoice_parent_company_id.zip or '' ]]</para>
653 <para style="P20">
654 <font color="white"> </font>
655 </para>
656@@ -137,9 +136,9 @@
657 <font color="white"> </font>
658 </para>
659 <para style="P19">Teléfono(s): </para>
660- <para style="P19">[[ company_address()['phone'] or removeParentNode('para') ]]</para>
661- <para style="P19">[[ company_address()['fax'] or removeParentNode('para') ]]</para>
662- <para style="P19">[[ company_address()['mobile'] or removeParentNode('para') ]]</para>
663+ <para style="P19">[[ o.company_id.address_invoice_parent_company_id.phone or removeParentNode('para') ]]</para>
664+ <para style="P19">[[ o.company_id.address_invoice_parent_company_id.fax or removeParentNode('para') ]]</para>
665+ <para style="P19">[[ o.company_id.address_invoice_parent_company_id.mobile or removeParentNode('para') ]]</para>
666 </td>
667 <td>
668 <para style="P7">
669@@ -152,7 +151,7 @@
670 <para style="P9">
671 <font color="white"> </font>
672 </para>
673- <para style="Table Contents">[[ company_address()['city'] or '' ]], [[ company_address()['state_id'] and company_address()['state_id']['name'] or '' ]] a</para>
674+ <para style="Table Contents">[[ o.company_id.address_invoice_parent_company_id.city or '' ]], [[ o.company_id.address_invoice_parent_company_id.state_id and o.company_id.address_invoice_parent_company_id.state_id.name or '' ]] a</para>
675 <para style="P24">[[ o.date_invoice_tz or '' ]]</para>
676 <para style="Table Contents">Serie: [[ get_approval() and get_approval().serie or '' ]]</para>
677 <para style="Table Contents">Aprobación: [[ get_approval() and get_approval().approval_number or '' ]]</para>
678@@ -180,13 +179,13 @@
679 <para style="Table Contents">Condición de pago: [[ format(o.payment_term and (o.payment_term.note or o.payment_term.name) or removeParentNode('para') ) ]]</para>
680 <para style="P3">Origen: [[ o.origin or removeParentNode('para') ]]</para>
681 <para style="P3">Expedido en:</para>
682- <para style="P3">[[ subcompany_address()['name'] or o.company_id.partner_id.name ]]</para>
683- <para style="P3">Calle: [[ subcompany_address()['street'] or '' ]] Nro. Ext: [[ subcompany_address()['street3'] or '' ]] Int: [[ subcompany_address()['street4'] or '' ]]</para>
684- <para style="P3">Colonia: [[ subcompany_address()['street2'] or '' ]]</para>
685- <para style="P3">Ciudad: [[ subcompany_address()['city'] or '' ]] </para>
686- <para style="P3">Estado: [[ subcompany_address()['state_id'] and subcompany_address()['state_id']['name'] or '' ]]</para>
687- <para style="P3">Localidad: [[ subcompany_address()['city2'] or '' ]]</para>
688- <para style="P3">CP: [[ subcompany_address()['zip'] or '' ]] </para>
689+ <para style="P3">[[ (o.address_invoice_company_id and o.address_invoice_company_id.name and o.address_invoice_company_id.name or '') or (o.company_id.partner_id.name and o.company_id.partner_id.name or '') ]]</para>
690+ <para style="P3">Calle: [[ o.address_invoice_company_id.street or '' ]] Nro. Ext: [[ o.address_invoice_company_id.street3 or '' ]] Int: [[ o.address_invoice_company_id.street4 or '' ]]</para>
691+ <para style="P3">Colonia: [[ o.address_invoice_company_id.street2 or '' ]]</para>
692+ <para style="P3">Ciudad: [[ o.address_invoice_company_id.city or '' ]] </para>
693+ <para style="P3">Estado: [[ o.address_invoice_company_id.state_id and o.address_invoice_company_id.state_id.name or '' ]]</para>
694+ <para style="P3">Localidad: [[ o.address_invoice_company_id.city2 or '' ]]</para>
695+ <para style="P3">CP: [[ o.address_invoice_company_id.zip or '' ]] </para>
696 </td>
697 </tr>
698 </blockTable>
699
700=== renamed file 'l10n_mx_facturae/report/invoice_facturae_pdf.sxw' => 'l10n_mx_facturae/report/invoice_facturae_pdf.sxw.OTHER'
701Binary files l10n_mx_facturae/report/invoice_facturae_pdf.sxw 2012-09-08 04:35:43 +0000 and l10n_mx_facturae/report/invoice_facturae_pdf.sxw.OTHER 2012-11-12 20:01:19 +0000 differ
702=== modified file 'l10n_mx_facturae_cbb/report/invoice_facturae_pdf.py'
703--- l10n_mx_facturae_cbb/report/invoice_facturae_pdf.py 2012-04-06 23:21:07 +0000
704+++ l10n_mx_facturae_cbb/report/invoice_facturae_pdf.py 2012-11-12 20:01:19 +0000
705@@ -44,8 +44,8 @@
706 'facturae_data_dict': self._facturae_data_dict,
707 #'amount_to_text': self._get_amount_to_text,
708 'split_string': self._split_string,
709- 'company_address': self._company_address,
710- 'subcompany_address': self._subcompany_address,
711+ #~ 'company_address': self._company_address,
712+ #~ 'subcompany_address': self._subcompany_address,
713 'get_invoice_sequence': self._get_invoice_sequence,
714 'get_approval': self._get_approval,
715 'get_taxes': self._get_taxes,
716@@ -192,12 +192,12 @@
717 #return [self.company_address_invoice]
718 return ""
719
720- def _company_address(self):
721- #print "self.company_address_invoice",self.company_address_invoice
722- return self.company_address_invoice
723+ #~ def _company_address(self):
724+ #~ #print "self.company_address_invoice",self.company_address_invoice
725+ #~ return self.company_address_invoice
726
727- def _subcompany_address(self):
728- return self.subcompany_address_invoice
729+ #~ def _subcompany_address(self):
730+ #~ return self.subcompany_address_invoice
731
732 def _facturae_data_dict(self):
733 #print "self.invoice_data_dict",self.invoice_data_dict
734
735=== modified file 'l10n_mx_facturae_cbb/report/invoice_facturae_pdf.rml'
736--- l10n_mx_facturae_cbb/report/invoice_facturae_pdf.rml 2012-04-06 23:21:07 +0000
737+++ l10n_mx_facturae_cbb/report/invoice_facturae_pdf.rml 2012-11-12 20:01:19 +0000
738@@ -46,35 +46,33 @@
739 <paraStyle name="P1" fontName="Helvetica" alignment="RIGHT"/>
740 <paraStyle name="P2" fontName="Helvetica" fontSize="8.0" leading="10"/>
741 <paraStyle name="P3" fontName="Helvetica" fontSize="8.0" leading="10"/>
742- <paraStyle name="P4" fontName="Helvetica" textColor="#280099"/>
743- <paraStyle name="P5" fontName="Helvetica" alignment="RIGHT" textColor="#280099"/>
744- <paraStyle name="P6" fontName="Helvetica" textColor="#ff3333"/>
745- <paraStyle name="P7" fontName="Helvetica" fontSize="12.0" leading="15" textColor="#800000"/>
746- <paraStyle name="P8" fontName="Helvetica" fontSize="2.0" leading="3" textColor="#800000"/>
747- <paraStyle name="P9" rightIndent="0.0" leftIndent="0.0" fontName="Helvetica" fontSize="8.0" leading="10" alignment="LEFT" spaceBefore="0.0" spaceAfter="0.0"/>
748- <paraStyle name="P10" rightIndent="0.0" leftIndent="0.0" fontName="Helvetica" fontSize="6.0" leading="8" alignment="LEFT" spaceBefore="0.0" spaceAfter="0.0"/>
749+ <paraStyle name="P4" fontName="Helvetica" fontSize="10.0" leading="13"/>
750+ <paraStyle name="P5" fontName="Helvetica" textColor="#280099"/>
751+ <paraStyle name="P6" fontName="Helvetica" alignment="RIGHT" textColor="#280099"/>
752+ <paraStyle name="P7" fontName="Helvetica" textColor="#ff3333"/>
753+ <paraStyle name="P8" fontName="Helvetica" fontSize="12.0" leading="15" textColor="#800000"/>
754+ <paraStyle name="P9" fontName="Helvetica" fontSize="2.0" leading="3" textColor="#800000"/>
755+ <paraStyle name="P10" rightIndent="0.0" leftIndent="0.0" fontName="Helvetica" fontSize="8.0" leading="10" alignment="LEFT" spaceBefore="0.0" spaceAfter="0.0"/>
756 <paraStyle name="P11" rightIndent="0.0" leftIndent="0.0" fontName="Helvetica" fontSize="8.0" leading="10" alignment="LEFT" spaceBefore="0.0" spaceAfter="0.0"/>
757 <paraStyle name="P12" rightIndent="0.0" leftIndent="0.0" fontName="Helvetica" fontSize="8.0" leading="10" alignment="LEFT" spaceBefore="0.0" spaceAfter="0.0" textColor="#280099"/>
758- <paraStyle name="P13" rightIndent="0.0" leftIndent="0.0" fontName="Helvetica" fontSize="18.0" leading="22" alignment="CENTER" spaceBefore="0.0" spaceAfter="0.0" textColor="#280099"/>
759- <paraStyle name="P14" rightIndent="0.0" leftIndent="0.0" fontName="Helvetica" fontSize="8.0" leading="10" alignment="LEFT" spaceBefore="0.0" spaceAfter="0.0" textColor="#280099"/>
760- <paraStyle name="P15" rightIndent="0.0" leftIndent="0.0" fontName="Helvetica" fontSize="2.0" leading="3" alignment="LEFT" spaceBefore="0.0" spaceAfter="0.0" textColor="#280099"/>
761- <paraStyle name="P16" rightIndent="0.0" leftIndent="0.0" fontName="Helvetica" fontSize="8.0" leading="10" alignment="LEFT" spaceBefore="0.0" spaceAfter="0.0" textColor="#000000"/>
762- <paraStyle name="P17" rightIndent="0.0" leftIndent="0.0" fontName="Helvetica" fontSize="8.0" leading="10" alignment="RIGHT" spaceBefore="0.0" spaceAfter="0.0"/>
763+ <paraStyle name="P13" rightIndent="0.0" leftIndent="0.0" fontName="Helvetica" fontSize="9.0" leading="11" alignment="CENTER" spaceBefore="0.0" spaceAfter="0.0"/>
764+ <paraStyle name="P14" rightIndent="0.0" leftIndent="0.0" fontName="Helvetica" fontSize="6.0" leading="8" alignment="LEFT" spaceBefore="0.0" spaceAfter="0.0"/>
765+ <paraStyle name="P15" rightIndent="0.0" leftIndent="0.0" fontName="Helvetica" fontSize="8.0" leading="10" alignment="LEFT" spaceBefore="0.0" spaceAfter="0.0"/>
766+ <paraStyle name="P16" rightIndent="0.0" leftIndent="0.0" fontName="Helvetica" fontSize="8.0" leading="10" alignment="LEFT" spaceBefore="0.0" spaceAfter="0.0" textColor="#280099"/>
767+ <paraStyle name="P17" rightIndent="0.0" leftIndent="0.0" fontName="Helvetica" fontSize="18.0" leading="22" alignment="CENTER" spaceBefore="0.0" spaceAfter="0.0" textColor="#280099"/>
768 <paraStyle name="P18" rightIndent="0.0" leftIndent="0.0" fontName="Helvetica" fontSize="8.0" leading="10" alignment="LEFT" spaceBefore="0.0" spaceAfter="0.0" textColor="#280099"/>
769- <paraStyle name="P19" rightIndent="0.0" leftIndent="0.0" fontName="Helvetica" fontSize="8.0" leading="10" alignment="LEFT" spaceBefore="0.0" spaceAfter="0.0" textColor="#280099"/>
770+ <paraStyle name="P19" rightIndent="0.0" leftIndent="0.0" fontName="Helvetica" fontSize="2.0" leading="3" alignment="LEFT" spaceBefore="0.0" spaceAfter="0.0" textColor="#280099"/>
771 <paraStyle name="P20" rightIndent="0.0" leftIndent="0.0" fontName="Helvetica" fontSize="2.0" leading="3" alignment="LEFT" spaceBefore="0.0" spaceAfter="0.0" textColor="#280099"/>
772- <paraStyle name="P21" rightIndent="0.0" leftIndent="0.0" fontName="Helvetica" fontSize="2.0" leading="3" alignment="LEFT" spaceBefore="0.0" spaceAfter="0.0" textColor="#280099"/>
773- <paraStyle name="P22" rightIndent="0.0" leftIndent="0.0" fontName="Helvetica" fontSize="8.0" leading="10" alignment="LEFT" spaceBefore="0.0" spaceAfter="0.0"/>
774- <paraStyle name="P23" rightIndent="0.0" leftIndent="0.0" fontName="Helvetica" fontSize="8.0" leading="10" alignment="LEFT" spaceBefore="0.0" spaceAfter="0.0" textColor="#000000"/>
775- <paraStyle name="P24" fontName="Helvetica" textColor="#280099"/>
776- <paraStyle name="P25" fontName="Helvetica" alignment="RIGHT" textColor="#280099"/>
777- <paraStyle name="P26" fontName="Helvetica" fontSize="8.0" leading="10"/>
778- <paraStyle name="P27" fontName="Helvetica" fontSize="10.0" leading="13"/>
779- <paraStyle name="P28" fontName="Helvetica" alignment="RIGHT"/>
780- <paraStyle name="P29" rightIndent="0.0" leftIndent="0.0" fontName="Helvetica" fontSize="8.0" leading="10" alignment="LEFT" spaceBefore="0.0" spaceAfter="0.0" textColor="#280099"/>
781- <paraStyle name="P30" rightIndent="0.0" leftIndent="0.0" fontName="Helvetica" fontSize="8.0" leading="10" alignment="LEFT" spaceBefore="0.0" spaceAfter="0.0"/>
782- <paraStyle name="P31" rightIndent="0.0" leftIndent="0.0" fontName="Helvetica" fontSize="8.0" leading="10" alignment="LEFT" spaceBefore="0.0" spaceAfter="0.0"/>
783- <paraStyle name="P32" rightIndent="0.0" leftIndent="0.0" fontName="Helvetica" fontSize="9.0" leading="11" alignment="CENTER" spaceBefore="0.0" spaceAfter="0.0"/>
784+ <paraStyle name="P21" rightIndent="0.0" leftIndent="0.0" fontName="Helvetica" fontSize="8.0" leading="10" alignment="LEFT" spaceBefore="0.0" spaceAfter="0.0" textColor="#000000"/>
785+ <paraStyle name="P22" rightIndent="0.0" leftIndent="0.0" fontName="Helvetica" fontSize="8.0" leading="10" alignment="RIGHT" spaceBefore="0.0" spaceAfter="0.0"/>
786+ <paraStyle name="P23" rightIndent="0.0" leftIndent="0.0" fontName="Helvetica" fontSize="8.0" leading="10" alignment="LEFT" spaceBefore="0.0" spaceAfter="0.0"/>
787+ <paraStyle name="P24" rightIndent="0.0" leftIndent="0.0" fontName="Helvetica" fontSize="8.0" leading="10" alignment="LEFT" spaceBefore="0.0" spaceAfter="0.0" textColor="#000000"/>
788+ <paraStyle name="P25" rightIndent="0.0" leftIndent="0.0" fontName="Helvetica" fontSize="8.0" leading="10" alignment="LEFT" spaceBefore="0.0" spaceAfter="0.0" textColor="#280099"/>
789+ <paraStyle name="P26" rightIndent="0.0" leftIndent="0.0" fontName="Helvetica" fontSize="8.0" leading="10" alignment="LEFT" spaceBefore="0.0" spaceAfter="0.0" textColor="#280099"/>
790+ <paraStyle name="P27" rightIndent="0.0" leftIndent="0.0" fontName="Helvetica" fontSize="2.0" leading="3" alignment="LEFT" spaceBefore="0.0" spaceAfter="0.0" textColor="#280099"/>
791+ <paraStyle name="P28" rightIndent="0.0" leftIndent="0.0" fontName="Helvetica" fontSize="2.0" leading="3" alignment="LEFT" spaceBefore="0.0" spaceAfter="0.0" textColor="#280099"/>
792+ <paraStyle name="P29" fontName="Helvetica" fontSize="8.0" leading="10"/>
793+ <paraStyle name="P30" fontName="Helvetica" textColor="#280099"/>
794 <paraStyle name="Standard" fontName="Helvetica"/>
795 <paraStyle name="Heading" fontName="Helvetica" fontSize="14.0" leading="17" spaceBefore="12.0" spaceAfter="6.0"/>
796 <paraStyle name="Text body" fontName="Helvetica" spaceBefore="0.0" spaceAfter="6.0"/>
797@@ -91,59 +89,58 @@
798 </stylesheet>
799 <story>
800 <section>
801- <para style="P10">[[ repeatIn(objects,'o') ]] <font face="Helvetica" size="9.0">[[ set_global_data(o) ]]</font></para>
802- <para style="P13">[[ o.company_id.parent_id and o.company_id.parent_id.partner_id.name or o.company_id.partner_id.name ]]</para>
803+ <para style="P14">[[ repeatIn(objects,'o') ]] <font face="Helvetica" size="9.0">[[ set_global_data(o) ]]</font></para>
804+ <para style="P17">[[ o.company_id.parent_id and o.company_id.parent_id.partner_id.name or o.company_id.partner_id.name ]]</para>
805 <blockTable colWidths="125.0,207.0,166.0" style="Tabla1">
806 <tr>
807 <td>
808- <para style="P17">[[ o.company_id.logo and setTag('para','image',{'width':'120.0','height':'80.0'}) ]] [[ o.company_id.logo ]]</para>
809- </td>
810- <td>
811- <para style="P12">[[ company_address()['name'] or o.company_id.partner_id.name ]]</para>
812- <para style="P15">
813- <font color="white"> </font>
814- </para>
815- <para style="P12">Calle: [[ company_address()['street'] or '' ]] Nro. Ext: [[ company_address()['street3'] or '' ]] Int: [[ company_address()['street4'] or '' ]]</para>
816- <para style="P15">
817- <font color="white"> </font>
818- </para>
819- <para style="P12">Colonia: [[ company_address()['street2'] or '' ]]</para>
820- <para style="P15">
821- <font color="white"> </font>
822- </para>
823- <para style="P12">Ciudad: [[ company_address()['city'] or '' ]] Estado: [[ company_address()['state_id'] and company_address()['state_id']['name'] or '' ]]</para>
824- <para style="P21">
825- <font color="white"> </font>
826- </para>
827- <para style="P12">Localidad: [[ company_address()['city2'] or '' ]]</para>
828- <para style="P15">
829- <font color="white"> </font>
830- </para>
831- <para style="P12">CP: [[ company_address()['zip'] or '' ]]</para>
832- <para style="P15">
833- <font color="white"> </font>
834- </para>
835- <para style="P12">RFC: [[ o.company_id.partner_id._columns.has_key('vat_split') and o.company_id.partner_id.vat_split or o.company_id.partner_id.vat ]]</para>
836- <para style="P15">
837- <font color="white"> </font>
838- </para>
839- <para style="P14">Teléfono(s): </para>
840- <para style="P14">[[ company_address()['phone'] or removeParentNode('para') ]]</para>
841- <para style="P14">[[ company_address()['fax'] or removeParentNode('para') ]]</para>
842- <para style="P14">[[ company_address()['mobile'] or removeParentNode('para') ]]</para>
843- </td>
844- <td>
845- <para style="P6">
846+ <para style="P22">[[ o.company_id.logo and setTag('para','image',{'width':'120.0','height':'80.0'}) ]] [[ o.company_id.logo ]]</para>
847+ </td>
848+ <td>
849+ <para style="P19">
850+ <font color="white"> </font>
851+ </para>
852+ <para style="P16">Calle: [[ o.company_id.address_invoice_parent_company_id.street or '' ]] Nro. Ext: [[ o.company_id.address_invoice_parent_company_id.street3 or '' ]] Int: [[ o.company_id.address_invoice_parent_company_id.street4 or '' ]]</para>
853+ <para style="P19">
854+ <font color="white"> </font>
855+ </para>
856+ <para style="P16">Colonia: [[ o.company_id.address_invoice_parent_company_id.street2 or '' ]]</para>
857+ <para style="P19">
858+ <font color="white"> </font>
859+ </para>
860+ <para style="P16">Ciudad: [[ o.company_id.address_invoice_parent_company_id.city or '' ]] Estado: [[ o.company_id.address_invoice_parent_company_id.state_id and o.company_id.address_invoice_parent_company_id.state_id.name or '' ]]</para>
861+ <para style="P20">
862+ <font color="white"> </font>
863+ </para>
864+ <para style="P16">Localidad: [[ o.company_id.address_invoice_parent_company_id.city2 or '' ]]</para>
865+ <para style="P19">
866+ <font color="white"> </font>
867+ </para>
868+ <para style="P16">CP: [[ o.company_id.address_invoice_parent_company_id.zip or '' ]]</para>
869+ <para style="P19">
870+ <font color="white"> </font>
871+ </para>
872+ <para style="P16">RFC: [[ o.company_id.partner_id._columns.has_key('vat_split') and o.company_id.partner_id.vat_split or o.company_id.partner_id.vat ]]</para>
873+ <para style="P19">
874+ <font color="white"> </font>
875+ </para>
876+ <para style="P18">Teléfono(s): </para>
877+ <para style="P18">[[ o.company_id.address_invoice_parent_company_id.phone or removeParentNode('para') ]]</para>
878+ <para style="P18">[[ o.company_id.address_invoice_parent_company_id.fax or removeParentNode('para') ]]</para>
879+ <para style="P18">[[ o.company_id.address_invoice_parent_company_id.mobile or removeParentNode('para') ]]</para>
880+ </td>
881+ <td>
882+ <para style="P7">
883 <font face="Helvetica" size="18.0">Folio: [[ get_approval() and get_approval().serie or '' ]] [[ ( o.type in ['out_invoice', 'out_refund'] ) and ( o.state in ['open', 'paid', 'cancel'] ) and o.number or 'SIN FOLIO O ESTATUS NO VALIDO' ]]</font>
884 </para>
885- <para style="P8">
886- <font color="white"> </font>
887- </para>
888- <para style="P7">[[ o.state == 'cancel' and 'FACTURA CANCELADA' ]]</para>
889- <para style="P8">
890- <font color="white"> </font>
891- </para>
892- <para style="Table Contents">[[ company_address()['city'] or '' ]], [[ company_address()['state_id'] and company_address()['state_id']['name'] or '' ]] a</para>
893+ <para style="P9">
894+ <font color="white"> </font>
895+ </para>
896+ <para style="P8">[[ o.state == 'cancel' and 'FACTURA CANCELADA' ]]</para>
897+ <para style="P9">
898+ <font color="white"> </font>
899+ </para>
900+ <para style="Table Contents">[[ o.company_id.address_invoice_parent_company_id.city or '' ]], [[ o.company_id.address_invoice_parent_company_id.state_id and o.company_id.address_invoice_parent_company_id.state_id.name or '' ]] a</para>
901 <para style="Table Contents">[[ o.date_invoice_tz or '' ]]</para>
902 </td>
903 </tr>
904@@ -151,7 +148,7 @@
905 <blockTable colWidths="249.0,249.0" style="Tabla2">
906 <tr>
907 <td>
908- <para style="P4">Receptor</para>
909+ <para style="P5">Receptor</para>
910 <para style="Table Contents"><font face="Helvetica">Nombre: </font>[[ o.partner_id.name ]]</para>
911 <para style="terp_default_8"><font face="Helvetica">Dirección:</font> [[ o.address_invoice_id.street ]] No. Ext: [[ o.address_invoice_id.street3 ]] Int: [[ o.address_invoice_id.street4 ]]</para>
912 <para style="terp_default_8"><font face="Helvetica">Colonia:</font> [[ o.address_invoice_id.street2 or '' ]]</para>
913@@ -159,44 +156,44 @@
914 <para style="terp_default_8"><font face="Helvetica">Localidad: </font>[[ o.address_invoice_id.city2 or '' ]]</para>
915 <para style="terp_default_8"><font face="Helvetica">C.P.:</font> [[ o.address_invoice_id.zip or '' ]] </para>
916 <para style="terp_default_8"><font face="Helvetica">R. F. C. :</font> [[ o.partner_id._columns.has_key('vat_split') and o.partner_id.vat_split or o.partner_id.vat ]]</para>
917- <para style="P16">Teléfono(s): </para>
918- <para style="P11">[[ o.address_invoice_id.phone or removeParentNode('para') ]]</para>
919- <para style="P11">[[ o.address_invoice_id.fax or removeParentNode('para') ]]</para>
920- <para style="P11">[[ o.address_invoice_id.mobile or removeParentNode('para') ]]</para>
921+ <para style="P21">Teléfono(s): </para>
922+ <para style="P15">[[ o.address_invoice_id.phone or removeParentNode('para') ]]</para>
923+ <para style="P15">[[ o.address_invoice_id.fax or removeParentNode('para') ]]</para>
924+ <para style="P15">[[ o.address_invoice_id.mobile or removeParentNode('para') ]]</para>
925 </td>
926 <td>
927 <para style="Table Contents">Condición de pago: [[ format(o.payment_term and (o.payment_term.note or o.payment_term.name) or removeParentNode('para') ) ]]</para>
928 <para style="P3">Origen: [[ o.origin or removeParentNode('para') ]]</para>
929 <para style="P3">Expedido en:</para>
930- <para style="P3">[[ subcompany_address()['name'] or o.company_id.partner_id.name ]]</para>
931- <para style="P3">Calle: [[ subcompany_address()['street'] or '' ]] Nro. Ext: [[ subcompany_address()['street3'] or '' ]] Int: [[ subcompany_address()['street4'] or '' ]]</para>
932- <para style="P3">Colonia: [[ subcompany_address()['street2'] or '' ]]</para>
933- <para style="P3">Ciudad: [[ subcompany_address()['city'] or '' ]] </para>
934- <para style="P3">Estado: [[ subcompany_address()['state_id'] and subcompany_address()['state_id']['name'] or '' ]]</para>
935- <para style="P3">Localidad: [[ subcompany_address()['city2'] or '' ]]</para>
936- <para style="P3">CP: [[ subcompany_address()['zip'] or '' ]] </para>
937+ <para style="P3">[[ (o.address_invoice_company_id and o.address_invoice_company_id.name and o.address_invoice_company_id.name or '') or (o.company_id.partner_id.name and o.company_id.partner_id.name or '') ]]</para>
938+ <para style="P3">Calle: [[ o.address_invoice_company_id.street or '' ]] Nro. Ext: [[ o.address_invoice_company_id.street3 or '' ]] Int: [[ o.address_invoice_company_id.street4 or '' ]]</para>
939+ <para style="P3">Colonia: [[ o.address_invoice_company_id.street2 or '' ]]</para>
940+ <para style="P3">Ciudad: [[ o.address_invoice_company_id.city or '' ]] </para>
941+ <para style="P3">Estado: [[ o.address_invoice_company_id.state_id and o.address_invoice_company_id.state_id.name or '' ]]</para>
942+ <para style="P3">Localidad: [[ o.address_invoice_company_id.city2 or '' ]]</para>
943+ <para style="P3">CP: [[ o.address_invoice_company_id.zip or '' ]] </para>
944 </td>
945 </tr>
946 </blockTable>
947 <blockTable colWidths="47.0,38.0,174.0,89.0,67.0,85.0" style="Tabla3">
948 <tr>
949 <td>
950- <para style="P4">Cantidad</para>
951- </td>
952- <td>
953- <para style="P4">Unidad</para>
954- </td>
955- <td>
956- <para style="P4">Descripción</para>
957- </td>
958- <td>
959- <para style="P4">Clave</para>
960- </td>
961- <td>
962- <para style="P5">P.Unitario</para>
963- </td>
964- <td>
965- <para style="P5">Importe</para>
966+ <para style="P5">Cantidad</para>
967+ </td>
968+ <td>
969+ <para style="P5">Unidad</para>
970+ </td>
971+ <td>
972+ <para style="P5">Descripción</para>
973+ </td>
974+ <td>
975+ <para style="P5">Clave</para>
976+ </td>
977+ <td>
978+ <para style="P6">P.Unitario</para>
979+ </td>
980+ <td>
981+ <para style="P6">Importe</para>
982 </td>
983 </tr>
984 <tr>
985@@ -208,7 +205,7 @@
986 </td>
987 <td>
988 <para style="Table Contents">[[ l.name ]]</para>
989- <para style="P27">
990+ <para style="P4">
991 <font face="Helvetica" size="7.0">Notas:</font>
992 <font face="Helvetica" size="7.0">[[l.note or removeParentNode('para')]]</font>
993 </para>
994@@ -220,22 +217,22 @@
995 <para style="P1">[[ formatLang(l.price_unit) ]]</para>
996 </td>
997 <td>
998- <para style="P1">[[ exists_key('global_discount_percent') and (formatLang(l.quantity * l.price_unit, digits=get_digits(dp='Account'))) or formatLang(l.price_subtotal) ]]</para>
999+ <para style="P1">[[ exists_key('global_discount_percent') and (formatLang(l.quantity * l.price_unit)) or formatLang(l.price_subtotal) ]]</para>
1000 </td>
1001 </tr>
1002 </blockTable>
1003 <blockTable colWidths="427.0,71.0" style="Tabla7">
1004 <tr>
1005 <td>
1006- <para style="P5">Suma $</para>
1007+ <para style="P6">Suma $</para>
1008 </td>
1009 <td>
1010- <para style="P1">[[formatLang( ( exists_key('global_discount_percent') and o.global_discount_amount or 0.0 ) + (o.amount_untaxed or 0.0), digits=get_digits(dp='Account') )]]</para>
1011+ <para style="P1">[[formatLang( ( exists_key('global_discount_percent') and o.global_discount_amount or 0.0 ) + (o.amount_untaxed or 0.0) )]]</para>
1012 </td>
1013 </tr>
1014 <tr>
1015 <td>
1016- <para style="P5">Descuento: [[ exists_key('global_discount_percent') and o.global_discount_percent or removeParentNode('tr')]] %</para>
1017+ <para style="P6">Descuento: [[ exists_key('global_discount_percent') and o.global_discount_percent or removeParentNode('tr')]] %</para>
1018 </td>
1019 <td>
1020 <para style="P1">[[o.global_discount_amount and formatLang( o.global_discount_amount) or '']]</para>
1021@@ -243,7 +240,7 @@
1022 </tr>
1023 <tr>
1024 <td>
1025- <para style="P5">Sub Total $</para>
1026+ <para style="P6">Sub Total $</para>
1027 </td>
1028 <td>
1029 <para style="P1">[[ formatLang(o.amount_untaxed) ]]</para>
1030@@ -251,7 +248,7 @@
1031 </tr>
1032 <tr>
1033 <td>
1034- <para style="P5">
1035+ <para style="P6">
1036 <font face="Helvetica" size="6.0">[[ repeatIn( get_taxes(), 'tax' ) ]]</font>
1037 <font face="Helvetica">[[ tax['name2'] ]] ([[ round( float( tax['tax_percent'] ) ) ]]%) $</font>
1038 </para>
1039@@ -262,7 +259,7 @@
1040 </tr>
1041 <tr>
1042 <td>
1043- <para style="P5">
1044+ <para style="P6">
1045 <font face="Helvetica" size="6.0">[[ repeatIn( get_taxes_ret(), 'tax_ret' ) ]]</font>
1046 <font face="Helvetica">[[ tax_ret['name2'] ]] Ret ([[ round( float( tax_ret['tax_percent'] ),2 )*-1 ]]%) $</font>
1047 </para>
1048@@ -273,7 +270,7 @@
1049 </tr>
1050 <tr>
1051 <td>
1052- <para style="P5">Total $</para>
1053+ <para style="P6">Total $</para>
1054 </td>
1055 <td>
1056 <para style="P1">[[ formatLang(o.amount_total) ]]</para>
1057@@ -281,8 +278,8 @@
1058 </tr>
1059 <tr>
1060 <td>
1061- <para style="P29">IMPORTE CON LETRA:</para>
1062- <para style="P31">[[ o.amount_to_text ]]</para>
1063+ <para style="P12">IMPORTE CON LETRA:</para>
1064+ <para style="P11">[[ o.amount_to_text ]]</para>
1065 </td>
1066 <td>
1067 <para style="P1">
1068@@ -291,8 +288,10 @@
1069 </td>
1070 </tr>
1071 </blockTable>
1072- <para style="P9"/>
1073- <para style="P9">
1074+ <para style="P10">
1075+ <font color="white"> </font>
1076+ </para>
1077+ <para style="P10">
1078 <font color="white"> </font>
1079 </para>
1080 <blockTable colWidths="106.0,257.0,135.0" style="Tabla4">
1081@@ -324,10 +323,8 @@
1082 </td>
1083 </tr>
1084 </blockTable>
1085- <para style="terp_default_9">
1086- <font color="white"> </font>
1087- </para>
1088- <para style="P32">Vendedor: [[o.user_id.name]]</para>
1089+ <para style="terp_default_9"/>
1090+ <para style="P13">Vendedor: [[o.user_id.name]]</para>
1091 <para style="terp_default_9">[[ format(o.comment or '') ]]</para>
1092 </section>
1093 <para style="Standard">
1094
1095=== modified file 'l10n_mx_facturae_cbb/report/invoice_facturae_pdf.sxw'
1096Binary files l10n_mx_facturae_cbb/report/invoice_facturae_pdf.sxw 2012-04-06 23:21:07 +0000 and l10n_mx_facturae_cbb/report/invoice_facturae_pdf.sxw 2012-11-12 20:01:19 +0000 differ
1097=== modified file 'l10n_mx_facturae_pac_sf/report/invoice_facturae_pac_sf_pdf.py'
1098--- l10n_mx_facturae_pac_sf/report/invoice_facturae_pac_sf_pdf.py 2012-09-08 03:46:54 +0000
1099+++ l10n_mx_facturae_pac_sf/report/invoice_facturae_pac_sf_pdf.py 2012-11-12 20:01:19 +0000
1100@@ -44,8 +44,8 @@
1101 'facturae_data_dict': self._facturae_data_dict,
1102 #'amount_to_text': self._get_amount_to_text,
1103 'split_string': self._split_string,
1104- 'company_address': self._company_address,
1105- 'subcompany_address': self._subcompany_address,
1106+ #~ 'company_address': self._company_address,
1107+ #~ 'subcompany_address': self._subcompany_address,
1108 'get_invoice_sequence': self._get_invoice_sequence,
1109 'get_approval': self._get_approval,
1110 'get_taxes': self._get_taxes,
1111@@ -189,12 +189,12 @@
1112 #return [self.company_address_invoice]
1113 return ""
1114
1115- def _company_address(self):
1116- #print "self.company_address_invoice",self.company_address_invoice
1117- return self.company_address_invoice
1118-
1119- def _subcompany_address(self):
1120- return self.subcompany_address_invoice
1121+ #~ def _company_address(self):
1122+ #~ #print "self.company_address_invoice",self.company_address_invoice
1123+ #~ return self.company_address_invoice
1124+ #~
1125+ #~ def _subcompany_address(self):
1126+ #~ return self.subcompany_address_invoice
1127
1128 def _facturae_data_dict(self):
1129 #print "self.invoice_data_dict",self.invoice_data_dict
1130
1131=== modified file 'l10n_mx_facturae_pac_sf/report/invoice_facturae_pac_sf_pdf.rml'
1132--- l10n_mx_facturae_pac_sf/report/invoice_facturae_pac_sf_pdf.rml 2012-09-08 04:35:43 +0000
1133+++ l10n_mx_facturae_pac_sf/report/invoice_facturae_pac_sf_pdf.rml 2012-11-12 20:01:19 +0000
1134@@ -98,6 +98,7 @@
1135 <paraStyle name="P19" rightIndent="0.0" leftIndent="0.0" fontName="Helvetica" fontSize="8.0" leading="10" alignment="LEFT" spaceBefore="0.0" spaceAfter="0.0"/>
1136 <paraStyle name="P20" rightIndent="0.0" leftIndent="0.0" fontName="Helvetica" fontSize="8.0" leading="10" alignment="LEFT" spaceBefore="0.0" spaceAfter="0.0" textColor="#280099"/>
1137 <paraStyle name="P21" rightIndent="0.0" leftIndent="0.0" fontName="Helvetica" fontSize="18.0" leading="22" alignment="CENTER" spaceBefore="0.0" spaceAfter="0.0" textColor="#280099"/>
1138+<<<<<<< TREE
1139 <paraStyle name="P22" rightIndent="0.0" leftIndent="0.0" fontName="Helvetica" fontSize="8.0" leading="10" alignment="LEFT" spaceBefore="0.0" spaceAfter="0.0" textColor="#280099"/>
1140 <paraStyle name="P23" rightIndent="0.0" leftIndent="0.0" fontName="Helvetica" fontSize="2.0" leading="3" alignment="LEFT" spaceBefore="0.0" spaceAfter="0.0" textColor="#280099"/>
1141 <paraStyle name="P24" rightIndent="0.0" leftIndent="0.0" fontName="Helvetica" fontSize="2.0" leading="3" alignment="LEFT" spaceBefore="0.0" spaceAfter="0.0" textColor="#280099"/>
1142@@ -107,6 +108,11 @@
1143 <paraStyle name="P28" rightIndent="0.0" leftIndent="0.0" fontName="Helvetica" fontSize="6.0" leading="8" alignment="LEFT" spaceBefore="0.0" spaceAfter="0.0"/>
1144 <paraStyle name="P29" rightIndent="0.0" leftIndent="0.0" fontName="Helvetica" fontSize="6.0" leading="8" alignment="LEFT" spaceBefore="0.0" spaceAfter="0.0"/>
1145 <paraStyle name="P30" rightIndent="0.0" leftIndent="0.0" fontName="Helvetica" fontSize="8.0" leading="10" alignment="LEFT" spaceBefore="0.0" spaceAfter="0.0"/>
1146+=======
1147+ <paraStyle name="P22" rightIndent="0.0" leftIndent="0.0" fontName="Helvetica" fontSize="2.0" leading="3" alignment="LEFT" spaceBefore="0.0" spaceAfter="0.0" textColor="#280099"/>
1148+ <paraStyle name="P23" rightIndent="0.0" leftIndent="0.0" fontName="Helvetica" fontSize="8.0" leading="10" alignment="LEFT" spaceBefore="0.0" spaceAfter="0.0" textColor="#000000"/>
1149+ <paraStyle name="P24" rightIndent="0.0" leftIndent="0.0" fontName="Helvetica" fontSize="8.0" leading="10" alignment="RIGHT" spaceBefore="0.0" spaceAfter="0.0"/>
1150+>>>>>>> MERGE-SOURCE
1151 <paraStyle name="Standard" fontName="Helvetica"/>
1152 <paraStyle name="Heading" fontName="Helvetica" fontSize="14.0" leading="17" spaceBefore="12.0" spaceAfter="6.0"/>
1153 <paraStyle name="Text body" fontName="Helvetica" spaceBefore="0.0" spaceAfter="6.0"/>
1154@@ -128,41 +134,40 @@
1155 <blockTable colWidths="125.0,207.0,166.0" style="Tabla1">
1156 <tr>
1157 <td>
1158- <para style="P26">[[ o.company_id.logo and setTag('para','image',{'width':'120.0','height':'80.0'}) ]] [[ o.company_id.logo ]]</para>
1159+ <para style="P24">[[ o.company_id.logo and setTag('para','image',{'width':'120.0','height':'80.0'}) ]] [[ o.company_id.logo ]]</para>
1160 </td>
1161 <td>
1162- <para style="P20">[[ company_address()['name'] or o.company_id.partner_id.name ]]</para>
1163- <para style="P23">
1164- <font color="white"> </font>
1165- </para>
1166- <para style="P20">Calle: [[ company_address()['street'] or '' ]] Nro. Ext: [[ company_address()['street3'] or '' ]] Int: [[ company_address()['street4'] or '' ]]</para>
1167- <para style="P23">
1168- <font color="white"> </font>
1169- </para>
1170- <para style="P20">Colonia: [[ company_address()['street2'] or '' ]]</para>
1171- <para style="P23">
1172- <font color="white"> </font>
1173- </para>
1174- <para style="P20">Ciudad: [[ company_address()['city'] or '' ]], Estado: [[ company_address()['state_id'] and company_address()['state_id']['name'] or '' ]] </para>
1175- <para style="P24">
1176- <font color="white"> </font>
1177- </para>
1178- <para style="P20">Localidad: [[ company_address()['city2'] or '' ]]</para>
1179- <para style="P23">
1180- <font color="white"> </font>
1181- </para>
1182- <para style="P20">CP: [[ company_address()['zip'] or '' ]]</para>
1183- <para style="P23">
1184+ <para style="P22">
1185+ <font color="white"> </font>
1186+ </para>
1187+ <para style="P20">Calle: [[ o.company_id.address_invoice_parent_company_id.street or '' ]] Nro. Ext: [[ o.company_id.address_invoice_parent_company_id.street3 or '' ]] Int: [[ o.company_id.address_invoice_parent_company_id.street4 or '' ]]</para>
1188+ <para style="P22">
1189+ <font color="white"> </font>
1190+ </para>
1191+ <para style="P20">Colonia: [[ o.company_id.address_invoice_parent_company_id.street2 or '' ]]</para>
1192+ <para style="P22">
1193+ <font color="white"> </font>
1194+ </para>
1195+ <para style="P20">Ciudad: [[ o.company_id.address_invoice_parent_company_id.city or '' ]] Estado: [[ o.company_id.address_invoice_parent_company_id.state_id and o.company_id.address_invoice_parent_company_id.state_id.name or '' ]]</para>
1196+ <para style="P22">
1197+ <font color="white"> </font>
1198+ </para>
1199+ <para style="P20">Localidad: [[ o.company_id.address_invoice_parent_company_id.city2 or '' ]]</para>
1200+ <para style="P22">
1201+ <font color="white"> </font>
1202+ </para>
1203+ <para style="P20">CP: [[ o.company_id.address_invoice_parent_company_id.zip or '' ]]</para>
1204+ <para style="P22">
1205 <font color="white"> </font>
1206 </para>
1207 <para style="P20">RFC: [[ o.company_id.partner_id._columns.has_key('vat_split') and o.company_id.partner_id.vat_split or o.company_id.partner_id.vat ]]</para>
1208- <para style="P23">
1209+ <para style="P22">
1210 <font color="white"> </font>
1211 </para>
1212- <para style="P22">Teléfono(s): </para>
1213- <para style="P22">[[ company_address()['phone'] or removeParentNode('para') ]]</para>
1214- <para style="P22">[[ company_address()['fax'] or removeParentNode('para') ]]</para>
1215- <para style="P22">[[ company_address()['mobile'] or removeParentNode('para') ]]</para>
1216+ <para style="P20">Teléfono(s): </para>
1217+ <para style="P20">[[ o.company_id.address_invoice_parent_company_id.phone or removeParentNode('para') ]]</para>
1218+ <para style="P20">[[ o.company_id.address_invoice_parent_company_id.fax or removeParentNode('para') ]]</para>
1219+ <para style="P20">[[ o.company_id.address_invoice_parent_company_id.mobile or removeParentNode('para') ]]</para>
1220 </td>
1221 <td>
1222 <para style="P9">
1223@@ -175,7 +180,7 @@
1224 <para style="P11">
1225 <font color="white"> </font>
1226 </para>
1227- <para style="Table Contents">[[ company_address()['city'] or '' ]], [[ company_address()['state_id'] and company_address()['state_id']['name'] or '' ]] a</para>
1228+ <para style="Table Contents">[[ o.company_id.address_invoice_parent_company_id.city or '' ]], [[ o.company_id.address_invoice_parent_company_id.state_id and o.company_id.address_invoice_parent_company_id.state_id.name or '' ]] a</para>
1229 <para style="Table Contents">[[ o.date_invoice_tz or '' ]]</para>
1230 <para style="Table Contents">Serie: [[ get_approval() and get_approval().serie or '' ]]</para>
1231 <para style="Table Contents">Aprobación: [[ get_approval() and get_approval().approval_number or '' ]]</para>
1232@@ -194,7 +199,7 @@
1233 <para style="terp_default_8"><font face="Helvetica">Localidad: </font>[[ o.address_invoice_id.city2 or '' ]]</para>
1234 <para style="terp_default_8"><font face="Helvetica">C.P.:</font> [[ o.address_invoice_id.zip or '' ]] </para>
1235 <para style="terp_default_8"><font face="Helvetica">R. F. C. :</font> [[ o.partner_id._columns.has_key('vat_split') and o.partner_id.vat_split or o.partner_id.vat ]]</para>
1236- <para style="P25">Teléfono(s): </para>
1237+ <para style="P23">Teléfono(s): </para>
1238 <para style="P19">[[ o.address_invoice_id.phone or removeParentNode('para') ]]</para>
1239 <para style="P19">[[ o.address_invoice_id.fax or removeParentNode('para') ]]</para>
1240 <para style="P19">[[ o.address_invoice_id.mobile or removeParentNode('para') ]]</para>
1241@@ -203,13 +208,13 @@
1242 <para style="Table Contents">Condición de pago: [[ format(o.payment_term and (o.payment_term.note or o.payment_term.name) or removeParentNode('para') ) ]]</para>
1243 <para style="P3">Origen: [[ o.origin or removeParentNode('para') ]]</para>
1244 <para style="P3">Expedido en:</para>
1245- <para style="P3">[[ subcompany_address()['name'] or o.company_id.partner_id.name ]]</para>
1246- <para style="P3">Calle: [[ subcompany_address()['street'] or '' ]] Nro. Ext: [[ subcompany_address()['street3'] or '' ]] Int: [[ subcompany_address()['street4'] or '' ]]</para>
1247- <para style="P3">Colonia: [[ subcompany_address()['street2'] or '' ]]</para>
1248- <para style="P3">Ciudad: [[ subcompany_address()['city'] or '' ]]</para>
1249- <para style="P3">Localidad: [[ subcompany_address()['city2'] or '' ]]</para>
1250- <para style="P3">Estado: [[ subcompany_address()['state_id'] and subcompany_address()['state_id']['name'] or '' ]]</para>
1251- <para style="P3">CP: [[ subcompany_address()['zip'] or '' ]] </para>
1252+ <para style="P3">[[ (o.address_invoice_company_id and o.address_invoice_company_id.name and o.address_invoice_company_id.name or '') or (o.company_id.partner_id.name and o.company_id.partner_id.name or '') ]]</para>
1253+ <para style="P3">Calle: [[ o.address_invoice_company_id.street or '' ]] Nro. Ext: [[ o.address_invoice_company_id.street3 or '' ]] Int: [[ o.address_invoice_company_id.street4 or '' ]]</para>
1254+ <para style="P3">Colonia: [[ o.address_invoice_company_id.street2 or '' ]]</para>
1255+ <para style="P3">Ciudad: [[ o.address_invoice_company_id.city or '' ]] </para>
1256+ <para style="P3">Estado: [[ o.address_invoice_company_id.state_id and o.address_invoice_company_id.state_id.name or '' ]]</para>
1257+ <para style="P3">Localidad: [[ o.address_invoice_company_id.city2 or '' ]]</para>
1258+ <para style="P3">CP: [[ o.address_invoice_company_id.zip or '' ]] </para>
1259 </td>
1260 </tr>
1261 </blockTable>
1262
1263=== renamed file 'l10n_mx_facturae_pac_sf/report/invoice_facturae_pac_sf_pdf.sxw' => 'l10n_mx_facturae_pac_sf/report/invoice_facturae_pac_sf_pdf.sxw.OTHER'
1264Binary files l10n_mx_facturae_pac_sf/report/invoice_facturae_pac_sf_pdf.sxw 2012-09-08 04:35:43 +0000 and l10n_mx_facturae_pac_sf/report/invoice_facturae_pac_sf_pdf.sxw.OTHER 2012-11-12 20:01:19 +0000 differ