Unidades de medida
Odoo permite administrar sus productos en diferentes unidades de medida. Para habilitar esta funcionalidad, se debe habilitar en la configuración:
Lo que habilita el ingreso de la unidad del producto no solo en el formulario del producto
O en los pedidos, facturas o transferencias. Por ejemplo en los pedidos de compra;
Aca estamos pidiendo el ingreso de tres toneladas de bobinas.
Categorías de producto
Las unidades de medida se agrupan por categoría (peso, volumen, entre otras). Se accede a las mismas en el menú de configuración
Y son creadas automáticamente al instalar el módulo uom (lo que sucede al configurar el uso de múltiples unidades de medida). Cada categoría tiene una unidad de referencia (por ejemplo; la categoría Peso tiene como unidad de referencia el kilogramo). El cual se tomará como referencia para calcular las conversiones entre las diferentes unidades. Tambien se ingresa el factor de conversión entre la unidad de medida y la unidad de referencia, junto con la indicación de si la unidad es mayor o menor a la referencia. Por ejemplo, de vuelta con el peso
Esto es lo que permite convertir los montos y cantidades cuando se ingresan pedidos en diferentes unidades de medida. Por ejemplo, uno puede hacer una compra por tres toneladas de acero, y hacer la recepción por 1,500 kilogramos de acero.
Consideraciones técnicas
El modelo de la unidad de medida (uom.uom) provee dos métodos interesantes. El primero es _compute_quantity. Por ejemplo, si queremos convertir tres toneladas a kilogramos, deberíamos hacer:
# Obtenemos el objeto kilogramo
uom_kg = self.env.ref('uom.product_uom_kgm')
# Obtenemos el objeto tonelada
uom_ton = self.env.ref('uom.product_uom_ton')
# Computamos los 3000 kilogramos a toneladas
final_qty = uom_ton._compute_quantity(3000, uom_kg)
Lo mismo si queremos convertir el precio de un kilogramo a una tonelada. Para ello usamos el método _compute_price
# Obtenemos el objeto kilogramo
uom_kg = self.env.ref('uom.product_uom_kgm')
# Obtenemos el objeto tonelada
uom_ton = self.env.ref('uom.product_uom_ton')
# Computamos el precio de kilogramos a toneladas,
final_amount = uom_ton._compute_price(1000, uom_kg)
Acerca de:
Gustavo Orrillo
Apasionado de la programación, implementa Odoo para distintos tipos de negocios desde el año 2010. En Moldeo Interactive es Socio fundador y Programador; además de escribir en el Blog sobre distintos temas relacionados a los desarrollos que realiza.
Cambiando el tipo de cambio en los pagos en Odoo
Bien... esto funciona en Odoo 15, no ya en Odoo 14. Ya verán porque. En Odoo 15 se permite el ingreso de los pagos; los cuales generan en forma auto...
Seguir leyendoProcesando ingresos de mercadería
Por lo general, los ingresos de mercadería son creados automáticamente desde una orden de compra. Tambien se los puede crear manualmente. Solo tiene...
Seguir leyendoAgregando campos para consultar stocks
Los stocks en Odoo estan representados en el modelo stock.quant. El cual tiene muchos campos por los cuales consultar, pero muchas veces eso no es s...
Seguir leyendo