Conozco poco Odoo Studio. Lo poco que conozco de el fue observando a otros usuarios utilizandolo. Nunca lo usé y por ahora no veo motivos por los cuales usarlo.
Ahora, en los últimos seis meses me encontré ya dos veces con equipos de programadores que utilizaron Odoo Studio como parte de sus desarrollos en Odoo. Y en los dos casos estaban descontentos por varios motivos (no vamos a entrar en ellos). Es por eso que en este post quiero indicar en que circumstancias no se debe utilizar Odoo Studio.
Lo principal es que Odoo Studio no se debe utilizar en las actividades de desarrollo. Si uno necesita agregar un par de campos, cambiar una vista o un par de reportes lo puede hacer mediante módulos. Al fin y al cabo saber xpath no es la muerte de nadie. Me recuerda a los DBAs de finales de los 90s que se quejaban de las bases de datos que se administraban mediante la línea de comandos. Eran ridículos e incompetentes. Desarrollar en Odoo y no hacer el trabajo en módulos (que es como Dios manda) es como ingresar en la Marina y pretender no navegar. Es ridículo.
Lo cual lleva al segundo error que cometen muchos. Hay muchos desarrolladores que hicieron sus trabajos en Odoo Studio y re-utilizar sus campos/reportes/vistas en otros módulos. Lo cual ya es muy dificil. Supongamos que creamos tres o cuatro campos en Odoo Studio y luego tenemos que utilizar la información de dichos campos en un par de métodos definidos en un módulo. Cual sustentable es esa situación? Cuanto tiempo va a pasar antes de que todo vuele por el aire?
El mecanismo que provee Odoo con los módulos (y definición de configuraciones por medio de archivos de datos) puede llegar a no ser perfecta; pero es bastante estable y permite escalar las tareas de desarrollo. Que es fundamental cuando uno trabaja en proyectos de cierta envergadura.
Por último, cuando utilizar Odoo Studio? Yo lo veo a diario con un cliente que cuentan con muchos conocimientos de desarrollo. Y utiliza Odoo Studio en un ambiente de producción para definir reportes personalizados, y vistas personalizadas. Nada más. Y lo hacen en ambientes estables. En cuanto necesita una funcionalidad más compleja ahí ya pasa a desarrollar módulos a la vieja usanza.