Foro de Odoo Argentina


¡BIENVENIDO AL FORO DE ODOO ARGENTINA!

BRINDAMOS UN ESPACIO A LA COMUNIDAD ARGENTINA DE ODOO PARA CENTRALIZAR EL DEBATE, COMPARTIR IDEAS, DESARROLLOS, Y FORMAR PARTE DE UNA COMUNIDAD QUE CRECE DÍA A DÍA

¿No estás registrado?  REGISTRATE

0

Error al definir un botón para copiar un registro

Avatar
Andy Paredes

Al intentar definir un boton para copiar un registro este me genera un Key error en todos los menus de mi modulo, el metodo lo he puesto asi:

@api.multi
def button_copy(self, default=None):
    self.ensure_one()
    default = dict(default or {})
    return super(Registro, self).copy(default)

Al entrar a los menus obtengo:

Traceback (most recent call last):
  File "/usr/lib/python2.7/dist-packages/odoo/http.py", line 638, in _handle_exception
    return super(JsonRequest, self)._handle_exception(exception)
  File "/usr/lib/python2.7/dist-packages/odoo/http.py", line 675, in dispatch
    result = self._call_function(**self.params)
  File "/usr/lib/python2.7/dist-packages/odoo/http.py", line 331, in _call_function
    return checked_call(self.db, *args, **kwargs)
  File "/usr/lib/python2.7/dist-packages/odoo/service/model.py", line 101, in wrapper
    return f(dbname, *args, **kwargs)
  File "/usr/lib/python2.7/dist-packages/odoo/http.py", line 324, in checked_call
    result = self.endpoint(*a, **kw)
  File "/usr/lib/python2.7/dist-packages/odoo/http.py", line 933, in __call__
    return self.method(*args, **kw)
  File "/usr/lib/python2.7/dist-packages/odoo/http.py", line 504, in response_wrap
    response = f(*args, **kw)
  File "/usr/lib/python2.7/dist-packages/odoo/addons/web/controllers/main.py", line 827, in search_read
    return self.do_search_read(model, fields, offset, limit, domain, sort)
  File "/usr/lib/python2.7/dist-packages/odoo/addons/web/controllers/main.py", line 846, in do_search_read
    Model = request.env[model]
  File "/usr/lib/python2.7/dist-packages/odoo/api.py", line 752, in __getitem__
    return self.registry[model_name]._browse((), self)
  File "/usr/lib/python2.7/dist-packages/odoo/modules/registry.py", line 174, in __getitem__
    return self.models[model_name]
KeyError: u'comprasmayores.registro'

y asi con cada menu... Alguna sugerencia o solucion del por que de esto??
Gracias de antemano, Saludos.

Avatar
Descartar
2 Respuestas
0
Avatar
Andy Paredes
Best Answer

Resuelto definiendo mi metodo asi:

 

@api.multi

def button_copy(self, default=None):

    if default is None:

        default = {}

    default.update({'state': 'restarted'})

    return super(Registro, self).copy(default)

Avatar
Descartar
0
Avatar
Gustavo Orrillo
Best Answer

el problema es que no está encontrando el módulo comprasmayores. Fijate las dependencias del módulo, en el archivo __openerp__.py

5 Comentarios
Avatar
Descartar
Avatar
Andy Paredes
-

Lo cual me parece extrañp, puesto que el modulo lo tengo instalado, el error me lo salta cuando tengo ese metodo activo y lo necesito poder usar. La idea seria poder usarlo con el boton que cree y puse en el header de mi formulario pero no puedo acceder a ningun menu mientras el metodo este en el codigo por lo que lo tengo que comentar para poder seguir con el desarrollo en otras areas del modulo, pero como ya dije necesito este boton funcional.

Avatar
Andy Paredes
-

Estoy trabajando en odoo v10

Avatar
Gustavo Orrillo
-

el módulo por más que este instalado, si no esta definido como dependencia en el archivo __openerp__ del módulo que lo invoca va a dar error

Avatar
Andy Paredes
-

La cuestión es que este es un módulo independiente de los que vienen ya integrados y ninguno depende de este x lo que no veo lógico que este este en el archivo manifest en las dependencias

Avatar
Gustavo Orrillo
-

Si en las vistas se invoca alguna vista de otro módulo, debe ser declarado en el archivo manifest