Ir al contenido
Menú
Se marcó esta pregunta
1 Responder
3234 Vistas

Hello.

Is there any way to automatically cancel deliveries when a sales order is generated without having to uninstall any module? Is it possible from some server action?

Whenever I create a sales order automatically, the deliveries are created, but I want them to be canceled when the sales order is generated.

Thank you! Odoo 16 community

Avatar
Descartar
Mejor respuesta

Hi,

You can try with an automated action, go to setting -> technical -> automated actions.

create an action and try it like this,


deliveries = env['stock.picking'].search([('origin', '=', self.name)])

for delivery in deliveries:

​delivery.action_cancel()


Note: Install the base_automation module if you couldn't find the automated actions menu inside settings.

Thanks

Avatar
Descartar
Autor

I get this error when confirming the quote:
<class 'NameError'>: "name 'self' is not defined" while evaluating
"deliveries = self.env['stock.picking'].search([('sale_id', '=', self.id)])\nfor delivery in deliveries:\n delivery.action_cancel()"

I have updated the answer, remove the self and try.

Autor

Thanks for taking the time to help me, it didn't work either, now it shows me an error in self.id, I'll keep looking for more options..
Thank you!

please try this,
self.env['stock.picking'].search([('origin', '=', self.name)])

Autor

thanks!

Publicaciones relacionadas Respuestas Vistas Actividad
0
mar 15
3619
2
may 24
15553
1
may 25
1124
1
abr 24
3572
1
dic 22
1109