Dependencias de módulos y orden de herencia

135 views
Skip to first unread message

javiera...@gmail.com

unread,
Dec 16, 2015, 2:30:46 PM12/16/15
to Usuarios Odoo / OpenERP en España
Hola

Tengo dos módulos que funcionan independedientemente y que funcionan juntos solo si la herencia de módulos se produce en un orden determinado pero falla si se produce en el contrario. Es decir, tengo módulo A y módulo B, que funcionan bien independientemente. Si instalo los dos y la herencia es módulo original -> módulo A -> módulo B funciona bien, pero si es módulo original -> módulo B -> módulo A no funciona.

Se que se puede marcar el orden de herencia haciendo que un módulo dependa de otro, pero hay alguna forma de indicar el orden de herencia si los dos módulos no dependen el uno del otro? Entiendo que si no se puede la única solución es crear un tercer módulo que se auto instale cuando los dos módulos están instalados y los haga funcionar a los dos.

Salud,

Pedro Manuel Baeza Romero

unread,
Dec 16, 2015, 2:33:59 PM12/16/15
to Usuarios Odoo / OpenERP en España
Si en tu código ocurre eso, me temo que no estás programando correctamente para respetar la herencia. Revisa las llamadas al super, evitar errores de acceso a datos no existentes, etc.

Un saludo.

--
Has recibido este mensaje porque estás suscrito al grupo "Usuarios Odoo / OpenERP en España" de Grupos de Google.
Para anular la suscripción a este grupo y dejar de recibir sus mensajes, envía un correo electrónico a openerp-spain-u...@googlegroups.com.
Para acceder a más opciones, visita https://groups.google.com/d/optout.

javiera...@gmail.com

unread,
Dec 16, 2015, 2:46:11 PM12/16/15
to Usuarios Odoo / OpenERP en España
Hay uno de los módulos donde no es posible llamar a super y hay que sobre-escribir la función completamente (sin llamar a super). Obviamente siempre cabe la posibilidad de se me pase algo, pero para mi es muy claro que no hay otra opción.

Intuyo por tu respuesta que la única solución sería la de crear un tercer módulo que se auto-instale cuando los dos estén instalados y solucione la incompatibilidad.

Saludo,
Para anular la suscripción a este grupo y dejar de recibir sus mensajes, envía un correo electrónico a openerp-spain-users+unsub...@googlegroups.com.

Pedro Manuel Baeza Romero

unread,
Dec 16, 2015, 2:49:03 PM12/16/15
to Usuarios Odoo / OpenERP en España
A veces si no hay un hook es cierto que se hace difícil no sobreescribir, pero siempre hay posibilidades, y más si controlas el código del super (no es algo de Odoo). Yo te diría que intentes un poco más esa opción o coloques el código aquí a ver.

Si no, la solución más bien sería hacer depender uno del otro.

Un saludo.

Para anular la suscripción a este grupo y dejar de recibir sus mensajes, envía un correo electrónico a openerp-spain-u...@googlegroups.com.

Para acceder a más opciones, visita https://groups.google.com/d/optout.

--
Has recibido este mensaje porque estás suscrito al grupo "Usuarios Odoo / OpenERP en España" de Grupos de Google.
Para anular la suscripción a este grupo y dejar de recibir sus mensajes, envía un correo electrónico a openerp-spain-u...@googlegroups.com.

javiera...@gmail.com

unread,
Dec 16, 2015, 3:11:12 PM12/16/15
to Usuarios Odoo / OpenERP en España


El miércoles, 16 de diciembre de 2015, 20:49:03 (UTC+1), Pedro Manuel Baeza Romero escribió:
A veces si no hay un hook es cierto que se hace difícil no sobreescribir, pero siempre hay posibilidades, y más si controlas el código del super (no es algo de Odoo). Yo te diría que intentes un poco más esa opción o coloques el código aquí a ver.

Si no, la solución más bien sería hacer depender uno del otro.

Esto realmente no tendría mucho sentido, ya que los dos módulso tienen funcionalidad muy independiente.

Mañana con la cabeza fresca me volveré a mirar el código, y si no lo pongo por aquí. Gracias por las respuestas.

Un saludo,
 

Un saludo.

El 16 de diciembre de 2015, 20:46, <javiera...@gmail.com> escribió:
Hay uno de los módulos donde no es posible llamar a super y hay que sobre-escribir la función completamente (sin llamar a super). Obviamente siempre cabe la posibilidad de se me pase algo, pero para mi es muy claro que no hay otra opción.

Intuyo por tu respuesta que la única solución sería la de crear un tercer módulo que se auto-instale cuando los dos estén instalados y solucione la incompatibilidad.

Saludo,

El miércoles, 16 de diciembre de 2015, 20:33:59 (UTC+1), Pedro Manuel Baeza Romero escribió:
Si en tu código ocurre eso, me temo que no estás programando correctamente para respetar la herencia. Revisa las llamadas al super, evitar errores de acceso a datos no existentes, etc.

Un saludo.
El 16 de diciembre de 2015, 20:30, <javiera...@gmail.com> escribió:
Hola

Tengo dos módulos que funcionan independedientemente y que funcionan juntos solo si la herencia de módulos se produce en un orden determinado pero falla si se produce en el contrario. Es decir, tengo módulo A y módulo B, que funcionan bien independientemente. Si instalo los dos y la herencia es módulo original -> módulo A -> módulo B funciona bien, pero si es módulo original -> módulo B -> módulo A no funciona.

Se que se puede marcar el orden de herencia haciendo que un módulo dependa de otro, pero hay alguna forma de indicar el orden de herencia si los dos módulos no dependen el uno del otro? Entiendo que si no se puede la única solución es crear un tercer módulo que se auto instale cuando los dos módulos están instalados y los haga funcionar a los dos.

Salud,

--
Has recibido este mensaje porque estás suscrito al grupo "Usuarios Odoo / OpenERP en España" de Grupos de Google.
Para anular la suscripción a este grupo y dejar de recibir sus mensajes, envía un correo electrónico a openerp-spain-users+unsub...@googlegroups.com.

Para acceder a más opciones, visita https://groups.google.com/d/optout.

--
Has recibido este mensaje porque estás suscrito al grupo "Usuarios Odoo / OpenERP en España" de Grupos de Google.
Para anular la suscripción a este grupo y dejar de recibir sus mensajes, envía un correo electrónico a openerp-spain-users+unsub...@googlegroups.com.
Reply all
Reply to author
Forward
0 new messages