Bloqueando automaticamente pedidos de compra
Días atrás publicamos sobre como bloquear automáticamente pedidos de venta. La misma problemática ocurre con los pedidos de compra. Para ello desarrollamos el módulo purchase_automatic_block. Para instalar el mismo solo debe descargarse del repositorio y listo. Al confirmarse el pedido, se impide el ingreso o modificación de líneas del pedido (la verdad, si necesitan modificar pedidos de venta o de compra, deberían re-definir algunos procesos o capacitar mejor a los vendedores/compradores)
Noten que al validarse el pedido, el mismo pasa a estado Bloqueado y no se permite la edición. Tambien se remueven los botones de bloquear y desbloquear.
Aspectos técnicos
El módulo es muy sencillo, se extiende el método que confirma el pedido de compra agregandose la llamada al método que bloquea el pedido
def button_confirm(self):
res = super(PurchaseOrder, self).button_confirm()
self.button_done()
return res
Por otra parte se ocultaron los botones de "Bloquear" y "Desbloquear" en la vista del pedido de ventas
<record id="block_purchase_order_form" model="ir.ui.view">
<field name="name">block.purchase.order.form</field>
<field name="model">purchase.order</field>
<field name="inherit_id" ref="purchase.purchase_order_form"></field>
<field name="arch" type="xml">
<xpath expr="//button[@name='button_done']" position="attributes">
<attribute name="invisible">1</attribute>
</xpath>
<xpath expr="//button[@name='button_unlock']" position="attributes">
<attribute name="invisible">1</attribute>
</xpath>
</field>
</record>
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.