Skip to Content
Menu
You need to be registered to interact with the community.
This question has been flagged
1 Odgovori
3211 Prikazi

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
Opusti
Best Answer

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
Opusti
Avtor

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.

Avtor

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)])

Avtor

thanks!

Related Posts Odgovori Prikazi Aktivnost
0
mar. 15
3589
2
maj 24
15537
1
maj 25
1111
1
apr. 24
3557
1
dec. 22
1109