~openerp-venezuela/openerp-venezuela-localization/6.0

« back to all changes in this revision

Viewing changes to l10n_ve_fiscal_requirements/seniat_url.py

  • Committer: Humberto Arocha
  • Date: 2013-06-04 18:32:33 UTC
  • mfrom: (691.1.5 ovl60-bug-1187089)
  • Revision ID: humbertoarocha@gmail.com-20130604183233-nvo3qvd40a8afaoe
[MERGE] Fixes bug #1187089

Show diffs side-by-side

added added

removed removed

Lines of Context:
64
64
                pass
65
65
            retries -= 1
66
66
        return str_error
67
 
    
68
 
    def _buscar_porcentaje(self,rif,url):
69
 
        context={}
70
 
        html_data = self.pool.get('seniat.url')._load_url(3,url %rif)
71
 
        html_data = unicode(html_data, 'ISO-8859-1').encode('utf-8')
72
 
        search_str='La condición de este contribuyente requiere la retención del '
73
 
        pos = html_data.find(search_str)
74
 
        if pos > 0:
75
 
            pos += len(search_str)
76
 
            pct = html_data[pos:pos+4].replace('%','').replace(' ','')
77
 
            return float(pct)
78
 
        else:
79
 
            return 0.0
80
67
 
81
68
    def _parse_dom(self,dom,rif,url_seniat,context={}):
82
69
        rif_aux = dom.childNodes[0].getAttribute('rif:numeroRif')
83
70
        name = dom.childNodes[0].childNodes[0].firstChild.data
84
71
        wh_agent = dom.childNodes[0].childNodes[1].firstChild.data.upper()=='SI' and True or False
85
72
        vat_subjected = dom.childNodes[0].childNodes[2].firstChild.data.upper()=='SI' and True or False
 
73
        wh_rate = dom.childNodes[0].childNodes[3].firstChild.data
86
74
        self.logger.notifyChannel("info", netsvc.LOG_INFO,
87
75
            "RIF: %s Found" % rif)
88
76
        if name.count('(') > 0:
89
77
            name = name[:name.index('(')].rstrip()
90
78
        if context.get('spf_info'):
91
 
            res= {'name': name,'vat_subjected': vat_subjected,'vat':'VE'+rif_aux,'wh_iva_agent':wh_agent}  
 
79
            res= {'name': name,
 
80
                  'vat_subjected': vat_subjected,
 
81
                  'vat': 'VE'+rif_aux,
 
82
                  'wh_iva_rate': wh_rate,
 
83
                  'wh_iva_agent': wh_agent}
92
84
        else:
93
85
            res= {'name': name,'vat_subjected': vat_subjected,'vat':'VE'+rif_aux}  
94
86
        return res