Tri Pandita
Tri Pandita

Reputation: 23

Odoo 16 sale.order action_cancel not working

my sales order status not change to cancel after i make call :

models.execute_kw(db, uid, password, 'sale.order', 'action_cancel', ['id'])

but i got response :

{
"name": "Cancel Sales Order",
"view_mode": "form",
"res_model": "sale.order.cancel",
"view_id": 1725,
"type": "ir.actions.act_window",
"context": {
"default_use_template": true,
"default_template_id": 29,
"default_order_id": 14,
"mark_so_as_canceled": true,
"default_email_layout_xmlid": "mail.mail_notification_layout_with_responsible_signature",
"model_description": "Sales Order"
},
"target": "new"
}

i'm using odoo 16 community edition please help..

i also try call :

models.execute_kw(db, uid, password, 'sale.order.cancel', 'action_cancel', ['id'])

and got error 'Record does not exist or has been deleted.

Upvotes: 2

Views: 497

Answers (1)

Kenly
Kenly

Reputation: 26738

You can create a sale.order.cancel record and use its id to call action_cancel

Example:

order_id = 20
wizard_id = models.execute_kw(db, uid, password, 'sale.order.cancel', 'create', [{'order_id': order_id}])
models.execute_kw(db, uid, password, 'sale.order.cancel', 'action_cancel', [wizard_id])

Upvotes: 3

Related Questions