Merge lp:~vauxoo/openerp-venezuela-localization/jose-frq into lp:~openerp-venezuela/openerp-venezuela-localization/6.0-trunk

Status: Merged
Approved by: hbto [Vauxoo] http://www.vauxoo.com
Approved revision: 507
Merged at revision: 517
Proposed branch: lp:~vauxoo/openerp-venezuela-localization/jose-frq
Merge into: lp:~openerp-venezuela/openerp-venezuela-localization/6.0-trunk
Diff against target: 51 lines (+22/-13)
1 file modified
l10n_ve_fiscal_requirements/partner.py (+22/-13)
To merge this branch: bzr merge lp:~vauxoo/openerp-venezuela-localization/jose-frq
Reviewer Review Type Date Requested Status
hbto [Vauxoo] http://www.vauxoo.com Approve
Review via email: mp+87870@code.launchpad.net

Description of the change

  [IMP] Improving the way VAT for Venezuela is computed

  [IMP]Checking VAT only for venezuelan VAT

  [FIX] Minor changes

  [FIX] Refactoring connect_seniat method a unnecessary for loop was gotten rid

To post a comment you must log in.
Revision history for this message
hbto [Vauxoo] http://www.vauxoo.com (humbertoarocha) :
review: Approve

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
1=== modified file 'l10n_ve_fiscal_requirements/partner.py'
2--- l10n_ve_fiscal_requirements/partner.py 2011-11-03 19:16:11 +0000
3+++ l10n_ve_fiscal_requirements/partner.py 2012-01-08 05:42:25 +0000
4@@ -215,25 +215,34 @@
5 return False
6 for partner in self.browse(cr,uid,ids):
7 if partner.vat:
8- xml_data = self._load_url(3,url1 %partner.vat[2:])
9- if not self._eval_seniat_data(xml_data,context):
10- dom = parseString(xml_data)
11- res = self.write(cr,uid,partner.id,self._parse_dom(dom,partner.vat[2:],url2))
12- if res:
13- self._update_partner(cr, uid, ids, context)
14+ vat_country, vat_number = self._split_vat(partner.vat)
15+ if vat_country.upper() == 'VE':
16+ xml_data = self._load_url(3,url1 %partner.vat[2:])
17+ if not self._eval_seniat_data(xml_data,context):
18+ dom = parseString(xml_data)
19+ res = self.write(cr,uid,partner.id,self._parse_dom(dom,partner.vat[2:],url2))
20+ if res:
21+ self._update_partner(cr, uid, ids, context)
22+ else:
23+ return False
24+ else:
25+ if partner.address:
26+ invoices_addr_country = [i.country_id and i.country_id.code or False for i in partner.address if i.type == 'invoice']
27+ if invoices_addr_country:
28+ country = [j for j in invoices_addr_country if j]
29+ if country and 'VE' in country and not context.get('all_rif',False):
30+ self._print_error(_('Vat Error !'),_('The field vat is empty'))
31 else:
32- return False
33- else:
34- if not 'all_rif' in context:
35- self._print_error(_('Vat Error !'),_('The field vat is empty'))
36+
37+ pass
38+
39 return True
40
41 def connect_seniat(self, cr, uid, ids, context={}, all_rif=False):
42+ ctx = context.copy()
43 if all_rif:
44- ctx = context.copy()
45 ctx.update({'all_rif': True})
46- for partner in self.browse(cr,uid,ids):
47- self.update_rif(cr, uid, [partner.id], context=ctx)
48+ self.update_rif(cr, uid, ids, context=ctx)
49 return True
50
51 res_partner()