Zum Inhalt springen
Menü
Sie müssen registriert sein, um mit der Community zu interagieren.
Diese Frage wurde gekennzeichnet
1 Antworten
3222 Ansichten

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
Verwerfen
Beste Antwort

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
Verwerfen
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!

Verknüpfte Beiträge Antworten Ansichten Aktivität
0
März 15
3615
2
Mai 24
15549
1
Mai 25
1114
1
Apr. 24
3564
1
Dez. 22
1109