Productos y variantes en Odoo

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

Una pregunta 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). 

Que es un producto y que es una variante?

Un producto es una remera por ejemplo. La cual se compra o vende. Ahora el movimiento en stock se hace en base a las variantes. Uno no almacena 30,000 remeras. Uno almacena 15000 remeras talle L, 5000 remeras talle M y 5000 remeras talle S. 

Un producto puede tener una o muchas variantes. Como se da cuenta uno de eso? En base al SKU o al EAN. Cada variante debe tener su propio SKU o código EAN o GTIN. O en base a los precios. Si segun las caracteristicas del producto, el mismo se vende a diferentes precios.

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.

Atributos

Algo que uno nota es el mal uso de los atributos Se usan atributos para cualquier cosa, por ejemplo "Marca". Cuando se debe crear un atributo? Cuando un atributo (por ejemplo el color) permite identificar un diferente SKU dentro de un mismo producto, ahi uno tiene un atributo.

Lo que lleva al otro corolario, no utilice los atributos para filtrar los resultados del e-commerce, es un gran error.

Cuando usar variantes?

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