diff --git a/.pylintrc b/.pylintrc index 449108e9..1163ad83 100644 --- a/.pylintrc +++ b/.pylintrc @@ -1,5 +1,3 @@ - - [MASTER] load-plugins=pylint_odoo score=n diff --git a/.pylintrc-mandatory b/.pylintrc-mandatory index 164c82fd..b86fae4a 100644 --- a/.pylintrc-mandatory +++ b/.pylintrc-mandatory @@ -1,4 +1,3 @@ - [MASTER] load-plugins=pylint_odoo score=n diff --git a/l10n_ve_base/__init__.py b/l10n_ve_base/__init__.py index 5208fc9d..9c44b730 100755 --- a/l10n_ve_base/__init__.py +++ b/l10n_ve_base/__init__.py @@ -1,4 +1,3 @@ -# -*- coding: utf-8 -*- ############################################################################### # Author: SINAPSYS GLOBAL SA || MASTERCORE SAS # Copyleft: 2020-Present. diff --git a/l10n_ve_base/__manifest__.py b/l10n_ve_base/__manifest__.py index 91b81410..d0cf4672 100755 --- a/l10n_ve_base/__manifest__.py +++ b/l10n_ve_base/__manifest__.py @@ -1,4 +1,3 @@ -# -*- coding: utf-8 -*- ############################################################################### # Author: SINAPSYS GLOBAL SA || MASTERCORE SAS # Copyleft: 2020-Present. @@ -7,8 +6,8 @@ # ############################################################################### { - 'name': "Localización Venezuela Base", - 'description': """ + "name": "Localización Venezuela Base", + "description": """ **Localización VENEZUELA Base** ¡Felicidades!. Este es el módulo Base para la implementación de la @@ -21,26 +20,24 @@ Adicionalmente se registran datos de localización relacionados con otros Modelos. """, - - 'author': "SINAPSYS GLOBAL SA || MASTERCORE SAS", - 'website': "http://sinapsys.global", - 'version': '15.0.1', - 'category': 'Localization', - 'license': 'AGPL-3', - 'depends': ['base','contacts','l10n_ve','territorial_pd','l10n_latam_base'], - 'data': [ - 'security/ir.model.access.csv', - 'data/l10n_latam_identification_type_data.xml', - 'data/l10n_ve_responsibility_type_data.xml', - 'data/res_bank.xml', - 'data/account_tax_data.xml', - 'views/seniat_menuitem.xml', - 'views/l10n_ve_responsibility_type_view.xml', - 'views/res_partner_view.xml', - 'views/res_partner_bank_view.xml', - 'views/res_company_view.xml', - 'views/res_currency_view.xml', - 'wizard/currency_rate_wizard_view.xml' + "author": "SINAPSYS GLOBAL SA || MASTERCORE SAS", + "website": "https://github.com/OCA/l10n-venezuela", + "version": "15.0.1", + "category": "Localization", + "license": "AGPL-3", + "depends": ["base", "contacts", "l10n_ve", "territorial_pd", "l10n_latam_base"], + "data": [ + "security/ir.model.access.csv", + "data/l10n_latam_identification_type_data.xml", + "data/l10n_ve_responsibility_type_data.xml", + "data/res_bank.xml", + "data/account_tax_data.xml", + "views/seniat_menuitem.xml", + "views/l10n_ve_responsibility_type_view.xml", + "views/res_partner_view.xml", + "views/res_partner_bank_view.xml", + "views/res_company_view.xml", + "views/res_currency_view.xml", + "wizard/currency_rate_wizard_view.xml", ], - } diff --git a/l10n_ve_base/data/account_tax_data.xml b/l10n_ve_base/data/account_tax_data.xml index 97104c1a..58a908e0 100644 --- a/l10n_ve_base/data/account_tax_data.xml +++ b/l10n_ve_base/data/account_tax_data.xml @@ -1,4 +1,4 @@ - + @@ -14,8 +14,10 @@ 16 percent sale - - + - + + ]" + /> IVA (16.0%) compras @@ -44,8 +50,10 @@ 16 percent purchase - - + - + + ]" + /> - \ No newline at end of file + diff --git a/l10n_ve_base/data/l10n_latam_identification_type_data.xml b/l10n_ve_base/data/l10n_latam_identification_type_data.xml index e8a50f4c..6847f1e7 100644 --- a/l10n_ve_base/data/l10n_latam_identification_type_data.xml +++ b/l10n_ve_base/data/l10n_latam_identification_type_data.xml @@ -1,9 +1,9 @@ - + Cedula de Identidad Extranjero(a) - + E @@ -13,45 +13,51 @@ Cédula Identidad Cedula de Identidad Venezolano(a) - + V 70 RIF V - Registro Informacion Fiscal Persona Natural Venezolana - + Registro Informacion Fiscal Persona Natural Venezolana + V RIF E - Registro Informacion Fiscal Persona Natural Extranjera - - + Registro Informacion Fiscal Persona Natural Extranjera + + E 110 RIF J Registro Informacion Fiscal Persona Juridica - - + + J 120 RIF G - Registro Informacion Fiscal Persona Gubernamental - - + Registro Informacion Fiscal Persona Gubernamental + + G 130 RIF C Registro Informacion Fiscal Consejo Comunal - - + + C 140 diff --git a/l10n_ve_base/data/l10n_ve_responsibility_type_data.xml b/l10n_ve_base/data/l10n_ve_responsibility_type_data.xml index a6e5fe87..9d2e240d 100644 --- a/l10n_ve_base/data/l10n_ve_responsibility_type_data.xml +++ b/l10n_ve_base/data/l10n_ve_responsibility_type_data.xml @@ -1,18 +1,18 @@ - + 1 Contribuyente Ordinario - + 2 Contribuyente Formal - + 3 Contribuyente Especial - + diff --git a/l10n_ve_base/data/res_bank.xml b/l10n_ve_base/data/res_bank.xml index f1a87f34..13bdf748 100644 --- a/l10n_ve_base/data/res_bank.xml +++ b/l10n_ve_base/data/res_bank.xml @@ -1,252 +1,258 @@ - + 100% BANCO 1 - Av. Blandín. Centro San Ignacio. Torre Copérnico. Piso 10. + Av. Blandín. Centro San Ignacio. Torre Copérnico. Piso 10. Caracas - + 0212-2775444 atencionalcliente@100x100banco.com BANCAMIGA BANCO MICROFINANCIERO, C.A 1 - - + + Caracas - + 0212-9583333 - + BANCO ACTIVO BANCO COMERCIAL, C.A 1 - Av. Francisco de Miranda con Av. Los Cortijos de Campo Alegre, Torre Europa PH. - + Av. Francisco de Miranda con Av. Los Cortijos de Campo Alegre, Torre Europa PH. + Caracas - + 0212-9583333 - + BANCO AGRICOLA, C.A 1 - Av. Francisco de Miranda Edificio Cavendes. Piso 17. + Av. Francisco de Miranda Edificio Cavendes. Piso 17. Urb. Los Palos Grandes Caracas - - - + + + BANCO BICENTENARIO DEL PUEBLO, BANCO UNIVERSAL 1 - - + + Caracas - + 0212-9583333 - + BANCO CARONI, BANCO UNIVERSAL 1 - - + + Caracas - - - + + + BANCO DE DESARROLLO DEL MICROEMPRESARIO 1 - - + + Caracas - - - + + + BANCO DE VENEZUELA S.A.I.C.A 1 - - + + Caracas - - - + + + BANCARIBE C.A 1 - - + + Caracas - - - + + + BANCO DEL TESORO 1 - - + + Caracas - - - + + + BANCO MERCANTIL C.A. 1 - - + + Caracas - - - + + + BANCO NACIONAL DE CREDITO 1 - - + + Caracas - - - + + + BANCO OCCIDENTAL DE DESCUENTO. 1 - - + + Caracas - - - + + + BANCO PLAZA. 1 - - + + Caracas - - - + + + BANCO PROVINCIAL BBVA 1 - - + + Caracas - - - + + + BANCO VENEZOLANO DE CREDITO S.A. 1 - - + + Caracas - - - + + + BANCRECER S.A. BANCO DE DESARROLLO 1 - - + + Caracas - - - + + + BANESCO BANCO UNIVERSAL 1 - - + + Caracas - - - + + + BANFANB 1 - - + + Caracas - - - + + + BANGENTE 1 - - + + Caracas - - - + + + BANPLUS BANCO COMERCIAL C.A 1 - - + + Caracas - - - + + + DELSUR BANCO UNIVERSAL 1 - - + + Ciudad Guayana - - - + + + BANCO FONDO COMUN 1 - - + + Caracas - - - + + + MIBANCO BANCO DE DESARROLLO, C.A. 1 - - + + Caracas - - - + + + SOFITASA 1 - - + + San Cristobal - - - + + + diff --git a/l10n_ve_base/models/__init__.py b/l10n_ve_base/models/__init__.py index da1d7109..d3028fb3 100755 --- a/l10n_ve_base/models/__init__.py +++ b/l10n_ve_base/models/__init__.py @@ -1,4 +1,3 @@ -# -*- coding: utf-8 -*- ################################################################################ # Author: SINAPSYS GLOBAL SA || MASTERCORE SAS # Copyleft: 2020-Present. diff --git a/l10n_ve_base/models/l10n_latam_identification_type.py b/l10n_ve_base/models/l10n_latam_identification_type.py index 9ae0ecf5..81546dae 100644 --- a/l10n_ve_base/models/l10n_latam_identification_type.py +++ b/l10n_ve_base/models/l10n_latam_identification_type.py @@ -1,4 +1,3 @@ -# -*- coding: utf-8 -*- ############################################################################### # Author: SINAPSYS GLOBAL SA || MASTERCORE SAS # Copyleft: 2020-Present. @@ -7,7 +6,7 @@ # ############################################################################### -from odoo import api, fields, models, _ +from odoo import fields, models class L10nLatamIdentificationType(models.Model): diff --git a/l10n_ve_base/models/l10n_ve_responsibility_type.py b/l10n_ve_base/models/l10n_ve_responsibility_type.py index 43d8775b..5d2cdff5 100644 --- a/l10n_ve_base/models/l10n_ve_responsibility_type.py +++ b/l10n_ve_base/models/l10n_ve_responsibility_type.py @@ -1,4 +1,3 @@ -# -*- coding: utf-8 -*- ############################################################################### # Author: SINAPSYS GLOBAL SA || MASTERCORE SAS # Copyleft: 2020-Present. @@ -7,20 +6,23 @@ # ############################################################################### -from odoo import models, fields +from odoo import fields, models -#Reference to -#www.tipsparaempresas.com/tipos-de-contribuyentes-de-impuestos-al-seniat/ + +# Reference to +# www.tipsparaempresas.com/tipos-de-contribuyentes-de-impuestos-al-seniat/ class L10nVeResponsibilityType(models.Model): - _name = 'l10n_ve.responsibility.type' - _description = 'SENIAT Responsibility Type' - _order = 'sequence' + _name = "l10n_ve.responsibility.type" + _description = "SENIAT Responsibility Type" + _order = "sequence" name = fields.Char(required=True, index=True) sequence = fields.Integer() code = fields.Char(required=True, index=True) active = fields.Boolean(default=True) - _sql_constraints = [('name', 'unique(name)', 'Name must be unique!'), - ('code', 'unique(code)', 'Code must be unique!')] + _sql_constraints = [ + ("name", "unique(name)", "Name must be unique!"), + ("code", "unique(code)", "Code must be unique!"), + ] diff --git a/l10n_ve_base/models/res_bank.py b/l10n_ve_base/models/res_bank.py index 56763429..749ad950 100644 --- a/l10n_ve_base/models/res_bank.py +++ b/l10n_ve_base/models/res_bank.py @@ -1,4 +1,3 @@ -# -*- coding: utf-8 -*- ############################################################################### # Author: SINAPSYS GLOBAL SA || MASTERCORE SAS # Copyleft: 2020-Present. @@ -7,19 +6,19 @@ # ############################################################################### -from odoo import api, fields, models, _, exceptions -from odoo.exceptions import UserError +from odoo import _, api, exceptions, models + class res_bank(models.Model): """inherit for res_bank""" - _inherit = 'res.bank' + _inherit = "res.bank" @api.model def create(self, vals): - if not vals['name']: + if not vals["name"]: raise exceptions.UserError( - _(u'Debe indicar el Nombre de la Entidad Bancaria.') + _("Debe indicar el Nombre de la Entidad Bancaria.") ) # if not vals['bic']: # raise exceptions.UserError( @@ -29,10 +28,10 @@ def create(self, vals): return res def write(self, vals): - if 'name' in vals: - if not vals.get('name', False): + if "name" in vals: + if not vals.get("name", False): raise exceptions.UserError( - _(u'Debe indicar el Nombre de la Entidad Bancaria.') + _("Debe indicar el Nombre de la Entidad Bancaria.") ) # if 'bic' in vals: # if not vals.get('bic', False): diff --git a/l10n_ve_base/models/res_company.py b/l10n_ve_base/models/res_company.py index 07dce890..5c139867 100755 --- a/l10n_ve_base/models/res_company.py +++ b/l10n_ve_base/models/res_company.py @@ -1,4 +1,3 @@ -# -*- coding: utf-8 -*- ################################################################################ # Author: SINAPSYS GLOBAL SA || MASTERCORE SAS # Copyleft: 2020-Present. @@ -6,70 +5,65 @@ # # ################################################################################ -from odoo import models, fields, api, _ -from odoo.exceptions import UserError +from odoo import api, fields, models class ResCompany(models.Model): - _inherit = 'res.company' + _inherit = "res.company" country_id = fields.Many2one( - 'res.country', - string=u'País', - ondelete='restrict', - help=u"País", - default=lambda self: self.env['res.country'].search( - [('name', '=', 'Venezuela')] - )[0].id + "res.country", + string="País", + ondelete="restrict", + help="País", + default=lambda self: self.env["res.country"] + .search([("name", "=", "Venezuela")])[0] + .id, ) state_id = fields.Many2one( - "res.country.state", - string='Estado', - ondelete='restrict', - help=u"Estado" + "res.country.state", string="Estado", ondelete="restrict", help="Estado" ) municipality_id = fields.Many2one( "res.country.state.municipality", string="Municipio", domain="[('state_id', '=', state_id)]", - ondelete='restrict', - help=u"Municipio" + ondelete="restrict", + help="Municipio", ) parish_id = fields.Many2one( "res.country.state.municipality.parish", string="Parroquia", - ondelete='restrict', + ondelete="restrict", domain="[('municipality_id', '=', municipality_id)]", - help=u"Parroquia" + help="Parroquia", ) l10n_latam_identification_type_id = fields.Many2one( - 'l10n_latam.identification.type', string="Identification Type", - index=True, auto_join=True, + "l10n_latam.identification.type", + string="Identification Type", + index=True, + auto_join=True, # default=lambda self: self.env.ref('l10n_ve_base.it_rifj'), - help="The type of identification") + help="The type of identification", + ) l10n_ve_responsibility_type_id = fields.Many2one( - 'l10n_ve.responsibility.type', string='SENIAT Responsibility Type', - index=True, help='Defined by SENIAT to identify the type of ' - 'responsibilities that a person or a legal entity could have and that ' - 'impacts in the type of operations and requirements they need.') + "l10n_ve.responsibility.type", + string="SENIAT Responsibility Type", + index=True, + help="Defined by SENIAT to identify the type of " + "responsibilities that a person or a legal entity could have and that " + "impacts in the type of operations and requirements they need.", + ) - @api.onchange('state_id') + @api.onchange("state_id") def _onchange_state_id(self): if self.state_id: return { - 'value': { - 'municipality_id': '', - 'parish_id': '' - }, - 'domain': { - 'municipality_id': [ - ('state_id', '=', self.state_id.id) - ] - }, + "value": {"municipality_id": "", "parish_id": ""}, + "domain": {"municipality_id": [("state_id", "=", self.state_id.id)]}, } else: - return {'domain': {'state_id': []}} + return {"domain": {"state_id": []}} - @api.onchange('municipality_id') + @api.onchange("municipality_id") def _onchange_municipality_id(self): if self.municipality_id: - return {'value': {'parish_id': ''}} + return {"value": {"parish_id": ""}} diff --git a/l10n_ve_base/models/res_currency_rate.py b/l10n_ve_base/models/res_currency_rate.py index f1fb0aac..32d6b92b 100755 --- a/l10n_ve_base/models/res_currency_rate.py +++ b/l10n_ve_base/models/res_currency_rate.py @@ -7,49 +7,49 @@ ############################################################################### -from odoo import api, fields, models -from odoo.tools import float_compare import logging +from odoo import fields, models + _logger = logging.getLogger(__name__) class resCurrencyRate(models.Model): - _inherit = 'res.currency.rate' + _inherit = "res.currency.rate" rate = fields.Float( digits=(16, 16), default=1, - help="The rate of the currency to the currency of rate 1") + help="The rate of the currency to the currency of rate 1", + ) + class resCurrency(models.Model): - _inherit = 'res.currency' + _inherit = "res.currency" rate = fields.Float( - compute='_compute_current_rate', - string='Current Rate', - digits=(16, 16), - help='The rate of the currency to the currency of rate 1.') - + compute="_compute_current_rate", + string="Current Rate", + digits=(16, 16), + help="The rate of the currency to the currency of rate 1.", + ) def action_get_currency_rate(self): currency_id = self.id - company = self.env['res.company'].search( - [('country_id', '=', self.env.ref('base.ve').id)], - limit=1) + company = self.env["res.company"].search( + [("country_id", "=", self.env.ref("base.ve").id)], limit=1 + ) if not company: - raise UserError(_( - 'No company found using Venezuela localization')) + raise UserError(_("No company found using Venezuela localization")) return { - 'type': 'ir.actions.act_window', - 'name': ' Currency rate synchronization wizard', - 'res_model': 'currency.rate.wizard', - 'context': { - 'default_currency_id': currency_id, - 'default_company_id': company.id, + "type": "ir.actions.act_window", + "name": " Currency rate synchronization wizard", + "res_model": "currency.rate.wizard", + "context": { + "default_currency_id": currency_id, + "default_company_id": company.id, }, - 'view_mode': 'form', - 'view_id': self.env.ref( - 'l10n_ve_base.currency_rate_wizard_form').id, - 'target': 'new', + "view_mode": "form", + "view_id": self.env.ref("l10n_ve_base.currency_rate_wizard_form").id, + "target": "new", } diff --git a/l10n_ve_base/models/res_partner.py b/l10n_ve_base/models/res_partner.py index 7a0b8d66..ee305f68 100755 --- a/l10n_ve_base/models/res_partner.py +++ b/l10n_ve_base/models/res_partner.py @@ -1,4 +1,3 @@ -# -*- coding: utf-8 -*- ################################################################################ # Author: SINAPSYS GLOBAL SA || MASTERCORE SAS # Copyleft: 2020-Present. @@ -6,87 +5,80 @@ # # ################################################################################ -from odoo import models, fields, api, _ -from odoo.exceptions import UserError +from odoo import api, fields, models class ResPartner(models.Model): - _inherit = 'res.partner' + _inherit = "res.partner" country_id = fields.Many2one( - 'res.country', - string=u'País', - ondelete='restrict', - help=u"País", - default=lambda self: self.env['res.country'].search( - [('name', '=', 'Venezuela')] - )[0].id + "res.country", + string="País", + ondelete="restrict", + help="País", + default=lambda self: self.env["res.country"] + .search([("name", "=", "Venezuela")])[0] + .id, ) state_id = fields.Many2one( - "res.country.state", - string='Estado', - ondelete='restrict', - help=u"Estado" + "res.country.state", string="Estado", ondelete="restrict", help="Estado" ) municipality_id = fields.Many2one( "res.country.state.municipality", string="Municipio", domain="[('state_id', '=', state_id)]", - ondelete='restrict', - help=u"Municipio" + ondelete="restrict", + help="Municipio", ) parish_id = fields.Many2one( "res.country.state.municipality.parish", string="Parroquia", - ondelete='restrict', + ondelete="restrict", domain="[('municipality_id', '=', municipality_id)]", - help=u"Parroquia" + help="Parroquia", ) l10n_latam_identification_type_id = fields.Many2one( - 'l10n_latam.identification.type', string="Identification Type", - index=True, auto_join=True, + "l10n_latam.identification.type", + string="Identification Type", + index=True, + auto_join=True, # default=lambda self: self.env.ref('l10n_ve_base.it_civ'), - help="The type of identification") + help="The type of identification", + ) l10n_ve_responsibility_type_id = fields.Many2one( - 'l10n_ve.responsibility.type', string='SENIAT Responsibility Type', - index=True, help='Defined by SENIAT to identify the type of ' - 'responsibilities that a person or a legal entity could have and that ' - 'impacts in the type of operations and requirements they need.') + "l10n_ve.responsibility.type", + string="SENIAT Responsibility Type", + index=True, + help="Defined by SENIAT to identify the type of " + "responsibilities that a person or a legal entity could have and that " + "impacts in the type of operations and requirements they need.", + ) - @api.onchange('state_id') + @api.onchange("state_id") def _onchange_state_id(self): if self.state_id: return { - 'value': { - 'municipality_id': '', - 'parish_id': '' - }, - 'domain': { - 'municipality_id': [ - ('state_id', '=', self.state_id.id) - ] - }, + "value": {"municipality_id": "", "parish_id": ""}, + "domain": {"municipality_id": [("state_id", "=", self.state_id.id)]}, } else: - return {'domain': {'state_id': []}} + return {"domain": {"state_id": []}} - @api.onchange('municipality_id') + @api.onchange("municipality_id") def _onchange_municipality_id(self): if self.municipality_id: - return {'value': {'parish_id': ''}} + return {"value": {"parish_id": ""}} - @api.onchange('country_id') + @api.onchange("country_id") def _onchange_country(self): return { - 'value': { - 'l10n_ve_responsibility_type_id': '' - }, + "value": {"l10n_ve_responsibility_type_id": ""}, } - @api.constrains('vat', 'l10n_latam_identification_type_id') + @api.constrains("vat", "l10n_latam_identification_type_id") def check_vat(self): - """ Since we validate more documents than the vat for Venezuelan partners (RIF, CI) we - extend this method in order to process it. """ - #TODO create validation method for each type of vat + """Since we validate more documents than the vat for Venezuelan partners (RIF, CI) we + extend this method in order to process it.""" + # TODO create validation method for each type of vat l10n_ve_partners = self.filtered(lambda x: x.l10n_latam_identification_type_id) - #l10n_ve_partners.l10n_ve_identification_validation() + # l10n_ve_partners.l10n_ve_identification_validation() return super(ResPartner, self - l10n_ve_partners).check_vat() diff --git a/l10n_ve_base/models/res_partner_bank.py b/l10n_ve_base/models/res_partner_bank.py index f7dcc87f..18b521e0 100644 --- a/l10n_ve_base/models/res_partner_bank.py +++ b/l10n_ve_base/models/res_partner_bank.py @@ -6,55 +6,46 @@ # ############################################################################### -from odoo import api, fields, models, _, exceptions -from odoo.exceptions import UserError +from odoo import _, api, exceptions, fields, models + class res_partner_bank(models.Model): """inherit for res_partner_bank""" - _inherit = 'res.partner.bank' + _inherit = "res.partner.bank" l10n_ve_acc_type = fields.Selection( [ - ('ahorro', 'Cuenta Corriente'), - ('corriente', 'Cuenta de Ahorro'), - ('fideicomiso', 'Cuenta Fideicomiso'), - + ("ahorro", "Cuenta Corriente"), + ("corriente", "Cuenta de Ahorro"), + ("fideicomiso", "Cuenta Fideicomiso"), ], - string='Tipo de cuenta', - help=u"Tipo de cuenta." + string="Tipo de cuenta", + help="Tipo de cuenta.", ) - @api.onchange('bank_id') + @api.onchange("bank_id") def _onchange_bank_id(self): if self.bank_id: number = self.bank_id.bic - return { - 'value': {'acc_number': number} - } + return {"value": {"acc_number": number}} else: return { - 'value': {'acc_number': ''}, + "value": {"acc_number": ""}, } @api.model def create(self, vals): - if not vals['bank_id']: - raise exceptions.UserError( - _(u'Debe Seleccionar la Entidad Bancaria.') - ) + if not vals["bank_id"]: + raise exceptions.UserError(_("Debe Seleccionar la Entidad Bancaria.")) res = super(res_partner_bank, self).create(vals) return res def write(self, vals): - if 'bank_id' in vals: - if not vals.get('bank_id', False): - raise exceptions.UserError( - _(u'Debe Seleccionar la Entidad Bancaria.') - ) - if 'acc_number' in vals: - if not vals.get('acc_number', False): - raise exceptions.UserError( - _(u'Debe indicar el numero de cuenta.') - ) + if "bank_id" in vals: + if not vals.get("bank_id", False): + raise exceptions.UserError(_("Debe Seleccionar la Entidad Bancaria.")) + if "acc_number" in vals: + if not vals.get("acc_number", False): + raise exceptions.UserError(_("Debe indicar el numero de cuenta.")) res = super(res_partner_bank, self).write(vals) return res diff --git a/l10n_ve_base/security/ir.model.access.csv b/l10n_ve_base/security/ir.model.access.csv index d8328b59..885182aa 100644 --- a/l10n_ve_base/security/ir.model.access.csv +++ b/l10n_ve_base/security/ir.model.access.csv @@ -1,3 +1,3 @@ id,name,model_id:id,group_id:id,perm_read,perm_write,perm_create,perm_unlink access_l10n_ve_responsibility_type_all,l10n_ve.responsibility.type.all,model_l10n_ve_responsibility_type,,1,0,0,0 -access_currency_rate_wizard_all,currency.rate.wizard.all,model_currency_rate_wizard,base.group_user,1,1,1,1 \ No newline at end of file +access_currency_rate_wizard_all,currency.rate.wizard.all,model_currency_rate_wizard,base.group_user,1,1,1,1 diff --git a/l10n_ve_base/views/l10n_ve_responsibility_type_view.xml b/l10n_ve_base/views/l10n_ve_responsibility_type_view.xml index ce018ea4..e65d7669 100644 --- a/l10n_ve_base/views/l10n_ve_responsibility_type_view.xml +++ b/l10n_ve_base/views/l10n_ve_responsibility_type_view.xml @@ -1,4 +1,4 @@ - + @@ -7,9 +7,9 @@
- - - + + +
@@ -20,9 +20,9 @@ l10n_ve.responsibility.type - - - + + +
@@ -32,10 +32,12 @@ l10n_ve.responsibility.type
- +
diff --git a/l10n_ve_base/views/res_company_view.xml b/l10n_ve_base/views/res_company_view.xml index 4158eb82..65639a46 100644 --- a/l10n_ve_base/views/res_company_view.xml +++ b/l10n_ve_base/views/res_company_view.xml @@ -1,5 +1,5 @@ - - + + @@ -10,40 +10,50 @@
- - - - - - - - + + + + + + + +
- +
diff --git a/l10n_ve_base/views/res_currency_view.xml b/l10n_ve_base/views/res_currency_view.xml index 1f6d2b33..290c02c7 100755 --- a/l10n_ve_base/views/res_currency_view.xml +++ b/l10n_ve_base/views/res_currency_view.xml @@ -1,19 +1,20 @@ - + res.currency.form res.currency - + -