Productos y variantes en Odoo

21 de junio de 2023 por
Gustavo Orrillo
| Sin comentarios aún
 

Una dura recurrente en los proyectos es la diferencia entre productos y variantes. Y la verdad que uno todas las noches se va a dormir agradeciendo a Odoo por haber generado esa confusión. Otra pregunta es cuando se debe activar la opción de "Variantes". Que son separaciones o conceptos que confunden bastante a los usuarios (a menos que trabajen con e-commerce). 

Por defecto un producto en Odoo tiene una variante, pero puede tener más. Al crearse el producto (en el modelo product.template) se crea también una variante (en el modelo product.product). Esto sucede porque el modelo product.product implementa la herencia por delegación. A nivel técnico esto es lo que tenemos que saber. Cada instancia de product.template va a tener relacionada al menos una instancia del modelo product.product relacionadas por el campo product_tmpl_id.

Por que la diferencia entre productos y variantes? Porque no uno solo? Esto surge con el e-commerce. Con la llegada del comercio electrónico nos encontramos conque hay productos (por ejemplo las remeras) que tienen múltiples atributos (como el color o el tamaño). Es por ello que su administración es más sencilla separando al producto genérico (el producto) de los atributos (las variantes). Quiero aclarar que se simplifica su administración, no se la hace facil. Sigue siendo problemática.

Cuando debe usarse esta funcionalidad si uno utiliza el comercio electrónico? Primero recomiendo que la habiliten, ya que hace más facil el uso de los menues por parte de los usuarios. Ahora, a menos que sean un e-commerce o trabajen con MercadoLibre, no la usen. Por que? Usar atributos para clasificar productos parece una buena idea para el inexperto. Pero es dificil de mantener, sobre todo para los programadores. Más cuando se debe hacer reportes. Supongamos que usted necesite hacer una consulta de las ventas para los productos de tamaño Small, o productos cuyo color sea amarillo. Como lo va a hacer? A menos que cuente con la columna tamaño o color en el producto, no lo puede hacer. 

O en su caso extremo, intente aplicar en una siderúrgica los atributos de las variantes para administrar bobinas. Una pesadilla. Supongamos en este caso que se desea aplicar una regla a las órdenes de producción donde solo se pueden consumir los productos del mismo espesor. Como vamos a hacer el control a nivel atributos? No es preferible agregar una columna extra llamada espesor que implemente dicho dato? Toda la vida preferimos esta última opción. O supongamos que quieren conocer el stock de todos los productos de color rojo. Como lo haría con los atributos de las variantes? De vuelta, es una pesadilla.

Es por ello que no conviene usar las variantes. A menos que uno trabaje con comercio electrónico o Tiendanube o con MercadoLibre, abstengase de usar variantes. Los programadores que van a tener que hacer mantenimiento al sistema se lo van a agradecer

Gustavo Orrillo 21 de junio de 2023
Compartir
Archivar
Identificarse dejar un comentario